Recovery Node Display in rocketview
Note: Message IDs are described in the form DEFINED_MESSAGE_NAME = [16bit ID] = [11bit ID] [RTR] [length] [byte0] ... [byte7]
, where the 16bit ID is the 16 bit "packed value" of the ID (11 bits CAN ID + 1 bit RTR + 4 bits length).
If the data is unkown - e.g., because a message has not been received which sets this data - then display a dash(-).
Recovery Node ([-|Safe|2m Armed|Armed]) |
Here's how to map CAN messages to the display:
The recovery node's mode is set by 2m REC_REPORT_MODE = 941 = 4a 0 1 [0x30|0x33|0x3F]
where:
- 0x30 =
'Safe'
- 0x33 =
'2m Armed'
- 0x3F =
'Armed'
Power
is set by REC_REPORT_BATTERY = 9C6 = 4E 0 6 [batt] [Vb MSB] [Vb LSB] [Ib MSB] [Ib LSB] [EXT PWR]
where:
[EXT PWR] = 0 -> 'HAP'
[EXT PWR] = 1 -> 'External'
Charge
is set by REC_REPORT_BATTERY = 9C6 = 4E 0 6 [batt] [Vb MSB] [Vb LSB] [Ib MSB] [Ib LSB] [EXT PWR]
where:
[batt] = 0 -> 'Off'
[batt] = 1 -> 'Trickle'
[batt] = 2 -> 'Fast'
Battery
is set by set by REC_REPORT_BATTERY = 9C6 = 4E 0 6 [batt] [Vb MSB] [Vb LSB] [Ib MSB] [Ib LSB] [EXT PWR]
where:
- Battery voltage is
(([Vb MSB] << 8) + [Vb LSB])*5/1024
volts - Battery current is
([Ib MSB] << 8) + [Ib LSB]
which is the raw 10bit ADC value (thus the "#A" units in the display)
Last DTMF
is set by REC_REPORT_DTMF = 9A3 = 4D 0 3 [DTMF tone] [tone_number] [tone_sequence]
where:
i (j,k)
is DTMF tone 1..12 (tone number, tone sequence)- The DTMF tones from 1..12 are 1234567890*#
- The control will show the received DTMF sequence starting with #. Sending a # will reset the sequence.
Timer i:
is set by REC_REPORT_TIMER = 923 = 49 0 3 [MSB timer] [LSB timer] [timer #]
where:
i = [timer # 1..4]
([MSB timer] << 8) + [LSB timer]
Pyro i:
is set by REC_REPORT_PYRO = 902 = 48 0 2 [pyro #] [Fired]
where:
i = [pyro # 1..4]
'Fired(nx)'
wheren
is a count of how many times[Fired]
was1
fori = [pyro #]
- Please don't ever clear this, even if you get a
[Fired] = 0
. If[Fired]
is ever equal to 1, then just increment the number of firings (1x, 2x, 3x, etc) and never reset it (until rocketview is restarted, of course).