SimTX API v24/Packets/CoverageMapRequest: Difference between revisions
Appearance
SimTX API documentation |
Archive the v24 protocol reference: use the v24 templates, links and categories |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
{{SimTX API navigation}} | {{SimTX API v24 navigation}} | ||
{{SimTX packet | {{SimTX packet v24 | ||
| name = CoverageMapRequest | | name = CoverageMapRequest | ||
| id = 24 | | id = 24 | ||
| hex = 0x18 | | hex = 0x18 | ||
| direction = c2s | | direction = c2s | ||
| session = [[SimTX API/Control session|Control]] | | session = [[SimTX API v24/Control session|Control]] | ||
| size = Variable | | size = Variable | ||
| permission = None | | permission = None | ||
| reply = [[SimTX API/Packets/CoverageMapResponse|CoverageMapResponse]] | | reply = [[SimTX API v24/Packets/CoverageMapResponse|CoverageMapResponse]] | ||
| group = control | | group = control | ||
}} | }} | ||
'''CoverageMapRequest''' asks the server to predict where a hypothetical transmitter could be heard. The server computes the received power at a grid of points covering the whole globe and returns it in a [[SimTX API/Packets/CoverageMapResponse|CoverageMapResponse]]. The official transmitter uses it for its coverage heat map. | '''CoverageMapRequest''' asks the server to predict where a hypothetical transmitter could be heard. The server computes the received power at a grid of points covering the whole globe and returns it in a [[SimTX API v24/Packets/CoverageMapResponse|CoverageMapResponse]]. The official transmitter uses it for its coverage heat map. | ||
== Layout == | == Layout == | ||
| Line 21: | Line 21: | ||
| <code>requestId</code> || <code>i64</code> || Chosen by the client and echoed in the response. | | <code>requestId</code> || <code>i64</code> || Chosen by the client and echoed in the response. | ||
|- | |- | ||
| <code>location</code> || [[SimTX API/Data types#GeoPoint|GeoPoint]] || Transmitter position. | | <code>location</code> || [[SimTX API v24/Data types#GeoPoint|GeoPoint]] || Transmitter position. | ||
|- | |- | ||
| <code>antenna</code> || [[SimTX API/Data types#AntennaConfig|AntennaConfig]] || Transmitting antenna. <code>wireLengthMeters × frequencyHz / c</code> may not exceed 40 wavelengths. | | <code>antenna</code> || [[SimTX API v24/Data types#AntennaConfig|AntennaConfig]] || Transmitting antenna. <code>wireLengthMeters × frequencyHz / c</code> may not exceed 40 wavelengths. | ||
|- | |- | ||
| <code>modulation</code> || <code>UTF</code> || A [[SimTX API/Data types#Modulation|Modulation]] name. | | <code>modulation</code> || <code>UTF</code> || A [[SimTX API v24/Data types#Modulation|Modulation]] name. | ||
|- | |- | ||
| <code>frequencyHz</code> || <code>f32</code> || Greater than 0 and at most 3 GHz. | | <code>frequencyHz</code> || <code>f32</code> || Greater than 0 and at most 3 GHz. | ||
| Line 42: | Line 42: | ||
* Predictions are expensive. The server runs one at a time and keeps at most one more waiting; further requests are answered ''Coverage prediction server is busy''. | * Predictions are expensive. The server runs one at a time and keeps at most one more waiting; further requests are answered ''Coverage prediction server is busy''. | ||
* A new request from the same session cancels that session's previous one. The cancelled request normally gets no response, so match responses by <code>requestId</code>. | * A new request from the same session cancels that session's previous one. The cancelled request normally gets no response, so match responses by <code>requestId</code>. | ||
* It is a heavy request for [[SimTX API/Control session#Rate limits|rate limiting]]. No permission is needed. | * It is a heavy request for [[SimTX API v24/Control session#Rate limits|rate limiting]]. No permission is needed. | ||
* Invalid values close the connection. | * Invalid values close the connection. | ||
{{SimTX API navbox}} | {{SimTX API v24 navbox}} | ||
[[Category:SimTX API]] | [[Category:SimTX API v24]] | ||
Latest revision as of 16:14, 24 October 2026
| Packet ID | 24(0x18)
|
|---|---|
| Direction | Client → server |
| Session | Control |
| Body size | Variable |
| Permission | None |
| Answered by | CoverageMapResponse |
CoverageMapRequest asks the server to predict where a hypothetical transmitter could be heard. The server computes the received power at a grid of points covering the whole globe and returns it in a CoverageMapResponse. The official transmitter uses it for its coverage heat map.
Layout[edit | edit source]
| Field | Type | Description |
|---|---|---|
packetId |
u8 |
Always 24.
|
requestId |
i64 |
Chosen by the client and echoed in the response. |
location |
GeoPoint | Transmitter position. |
antenna |
AntennaConfig | Transmitting antenna. wireLengthMeters × frequencyHz / c may not exceed 40 wavelengths.
|
modulation |
UTF |
A Modulation name. |
frequencyHz |
f32 |
Greater than 0 and at most 3 GHz. |
powerWatts |
f32 |
Greater than 0 and at most 109. |
bandwidthHz |
f32 |
Greater than 0 and at most 2,400,000. |
width |
i32 |
Raster columns, 4–54. |
height |
i32 |
Raster rows, 2–27. |
Behaviour[edit | edit source]
- Coverage prediction is optional and disabled by default. A server without it answers every request with
available = falseand the message Server propagation heatmaps are disabled. - Predictions are expensive. The server runs one at a time and keeps at most one more waiting; further requests are answered Coverage prediction server is busy.
- A new request from the same session cancels that session's previous one. The cancelled request normally gets no response, so match responses by
requestId. - It is a heavy request for rate limiting. No permission is needed.
- Invalid values close the connection.