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/1024volts
- 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)'where- nis a count of how many times- [Fired]was- 1for- i = [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).