diff --git a/en/messages/common.md b/en/messages/common.md
index ce677bfa..6deb5db1 100644
--- a/en/messages/common.md
+++ b/en/messages/common.md
@@ -3284,17 +3284,34 @@ pos_yaw | `float[5]` | rad | Yaw. Set to NaN for unchanged
### CELLULAR_STATUS (334) {#CELLULAR_STATUS}
-Report current used cellular network status
+Cellular network status as reported by a particular modem.
-Field Name | Type | Values | Description
---- | --- | --- | ---
-status | `uint8_t` | [CELLULAR_STATUS_FLAG](#CELLULAR_STATUS_FLAG) | Cellular modem status
-failure_reason | `uint8_t` | [CELLULAR_NETWORK_FAILED_REASON](#CELLULAR_NETWORK_FAILED_REASON) | Failure reason when status in in [CELLULAR_STATUS_FLAG_FAILED](#CELLULAR_STATUS_FLAG_FAILED)
-type | `uint8_t` | [CELLULAR_NETWORK_RADIO_TYPE](#CELLULAR_NETWORK_RADIO_TYPE) | Cellular network radio type: gsm, cdma, lte...
-quality | `uint8_t` | invalid:UINT8_MAX | Signal quality in percent. If unknown, set to UINT8_MAX
-mcc | `uint16_t` | invalid:UINT16_MAX | Mobile country code. If unknown, set to UINT16_MAX
-mnc | `uint16_t` | invalid:UINT16_MAX | Mobile network code. If unknown, set to UINT16_MAX
-lac | `uint16_t` | invalid:0 | Location area code. If unknown, set to 0
+
+This is primarily intended for logging, but a GCS may choose to display link_tx_rate and link_rx_rate.
+
+Note that a value of 0 in the id field indicates that the sender does not support reporting of multiple modems.
+Message data should be from a single modem, but that is not guaranteed.
+
+Field Name | Type | Units | Values | Description
+--- | --- | --- | --- | ---
+status | `uint8_t` | | [CELLULAR_STATUS_FLAG](#CELLULAR_STATUS_FLAG) | Cellular modem status
+failure_reason | `uint8_t` | | [CELLULAR_NETWORK_FAILED_REASON](#CELLULAR_NETWORK_FAILED_REASON) | Failure reason when status in in [CELLULAR_STATUS_FLAG_FAILED](#CELLULAR_STATUS_FLAG_FAILED)
+type | `uint8_t` | | [CELLULAR_NETWORK_RADIO_TYPE](#CELLULAR_NETWORK_RADIO_TYPE) | Cellular network radio type: gsm, cdma, lte...
+quality | `uint8_t` | | invalid:UINT8_MAX | Signal quality in percent. If unknown, set to UINT8_MAX
+mcc | `uint16_t` | | invalid:UINT16_MAX | Mobile country code. If unknown, set to UINT16_MAX
+mnc | `uint16_t` | | invalid:UINT16_MAX | Mobile network code. If unknown, set to UINT16_MAX
+lac | `uint16_t` | | invalid:0 | Location area code. If unknown, set to 0
+id ++ | `uint8_t` | | min:1 | Cellular modem instance number. Indexed from 1.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component.
+link_tx_rate ++ | `uint32_t` | KiB/s | invalid:0 | Download rate.
+link_rx_rate ++ | `uint32_t` | KiB/s | invalid:0 | Upload rate.
+cell_tower_id ++ | `char[9]` | | invalid:0 | ID of the currently connected cell tower. This must be NULL terminated if the length is less than 9 human-readable chars, and without the null termination (NULL) byte if the length is exactly 9 chars.
+band_number ++ | `uint8_t` | | invalid:0 | LTE frequency band number.
+band_frequency ++ | `float` | MHz | invalid:0 | LTE radio frequency.
+channel_number ++ | `uint32_t` | | invalid:0 | The channel number (CN). Absolute radio-frequency (ARFCN) / E-UTRA (EARFCN) / UTRA (UARFCN) / New radio ([NR_CH](#NR_CH)).
+rx_level ++ | `float` | dBm | invalid:0 | On 3G is Received Signal Code Power (RSCP). On LTE is Reference Signal Received Power (RSRP). On 5G is New Radio Reference Signal Received Power ([NR_RSRP](#NR_RSRP)).
+tx_level ++ | `float` | dBm | invalid:0 | Transmitter (modem) signal absolute power level.
+rx_quality ++ | `float` | dBm | invalid:0 | On 3G is Receiver Quality (RxQual). On LTE is Reference Signal Received Quality (RSRQ). On 5G is New Radio Reference Signal Received Quality ([NR_RSRQ](#NR_RSRQ)).
+sinr ++ | `float` | dB | invalid:0 | Signal to interference plus noise ratio (SINR).
### ISBD_LINK_STATUS (335) {#ISBD_LINK_STATUS}