7 #define MODULE_SIGNATURE "RC1701"
23 #define END_OF_RESPONSE '>'
24 #define START_BYTE 0x68
25 #define STOP_BYTE 0x16
28 #define CMD_ENTER_CONFIG (char) 0x00
29 #define CMD_EXIT_CONFIG (char) 0x58
30 #define CMD_NO_RESPONSE (char) 0xFB
31 #define CMD_KEY_CHALLENGE (char) 0xFC
32 #define CMD_IDLE_ENABLE_RF (char) 0xFD
33 #define CMD_IDLE_DISABLE_RF (char) 0xFF
34 #define CMD_AWAKE (char) 0xFF // Deprecated
35 #define CMD_EXIT_MEMORY (char) 0xFF // Deprecated
38 #define CMD_AUTO_MESSAGE_FLAGS 'A'
40 #define CMD_CHANNEL 'C'
42 #define CMD_ENCRYPT 'E'
43 #define CMD_CONTROL_FIELD 'F'
44 #define CMD_MBUS_MODE 'G'
45 #define CMD_INSTALL_MODE 'I'
46 #define CMD_KEY_REGISTER 'K'
47 #define CMD_LIST_BINDING 'L'
48 #define CMD_WRITE_MEMORY 'M'
49 #define CMD_ACCESS_NUMBER 'N'
50 #define CMD_READ_AUTO_MESSAGE_FLAGS 'O'
51 #define CMD_RF_POWER 'P'
52 #define CMD_QUALITY 'Q'
53 #define CMD_READ_MAILBOX 'R'
55 #define CMD_DESTINATION 'T'
56 #define CMD_TEMPERATURE 'U'
57 #define CMD_VOLTAGE 'V'
58 #define CMD_WRITE_MAILBOX 'W'
59 #define CMD_READ_MEMORY 'Y'
61 #define CMD_RSSI_CONTINUOUS 's'
62 #define CMD_TEST_MODE_0 '0'
119 0x00, 0xFF, 0x01, 0x02, 0xFF, 0x03, 0x04, 0x05, 0xFF, 0x0A,
120 0x10, 0x12, 0x16, 0x19, 0x1B, 0x1F, 0x20, 0x30, 0x35, 0x36,
121 0x37, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x61,
127 0x00, 0xFF, 0x01, 0x02, 0xFF, 0x03, 0x04, 0x05, 0xFF, 0x0A,
128 0x10, 0x12, 0x16, 0x19, 0x1B, 0x1F, 0x20, 0x30, 0x35, 0x36,
129 0x37, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x89,
135 0x00, 0x01, 0x04, 0x02, 0x03, 0x05, 0x06, 0x07, 0x08, 0xFF,
136 0x10, 0x12, 0x16, 0x19, 0x1B, 0x1F, 0x20, 0x30, 0x35, 0x36,
137 0x37, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x89,
144 #define CHANNEL_100 1
145 #define CHANNEL_110 2
146 #define CHANNEL_120 3
147 #define CHANNEL_130 4
148 #define CHANNEL_140 5
149 #define CHANNEL_150 6
160 #define CHANNEL_10 10
161 #define CHANNEL_11 11
162 #define CHANNEL_12 12
163 #define CHANNEL_13 13
164 #define CHANNEL_14 14
165 #define CHANNEL_15 15
166 #define CHANNEL_16 16
167 #define CHANNEL_17 17
168 #define CHANNEL_18 18
169 #define CHANNEL_19 19
170 #define CHANNEL_20 20
171 #define CHANNEL_21 21
172 #define CHANNEL_22 22
173 #define CHANNEL_23 23
174 #define CHANNEL_24 24
175 #define CHANNEL_25 25
176 #define CHANNEL_26 26
177 #define CHANNEL_27 27
178 #define CHANNEL_28 28
179 #define CHANNEL_29 29
180 #define CHANNEL_30 30
181 #define CHANNEL_31 31
182 #define CHANNEL_32 32
183 #define CHANNEL_33 33
184 #define CHANNEL_34 34
185 #define CHANNEL_35 35
186 #define CHANNEL_36 36
187 #define CHANNEL_37 37
188 #define CHANNEL_38 38
189 #define CHANNEL_39 39
190 #define CHANNEL_40 40
191 #define CHANNEL_41 41
194 #define DATARATE_2400bps 0x01 // Only OSP & WIZE
195 #define DATARATE_4800bps 0x02 // Only OSP & WIZE
196 #define DATARATE_6400bps 0x03 // Only WIZE
197 #define DATARATE_19200bps 0x04 // Only OSP
198 #define DATARATE_6400bps_OSP 0x05 // Only OSP
200 static const uint32_t
DATARATES[4] = {2400, 4800, 6400, 9600};
203 #define POWER_14dBm 0x01
204 #define POWER_17dBm 0x02
205 #define POWER_20dBm 0x03
206 #define POWER_24dBm 0x04
207 #define POWER_27dBm 0x05
210 #define MBUS_MODE_S2 0x00
211 #define MBUS_MODE_T1 0x01
212 #define MBUS_MODE_T2 0x02
213 #define MBUS_MODE_S1 0x03
214 #define MBUS_MODE_R 0x04
215 #define MBUS_MODE_T1_C 0x0A
216 #define MBUS_MODE_T2_C 0x0B
217 #define MBUS_MODE_N2 0x10
218 #define MBUS_MODE_N1 0x11
219 #define MBUS_MODE_OSP 0x12
222 #define INSTALL_MODE_NORMAL 0x00
223 #define INSTALL_MODE_INSTALL 0x01
224 #define INSTALL_MODE_HOST 0x02
227 #define SLEEP_MODE_DISABLE 0x00
228 #define SLEEP_MODE_AFTER_TX 0x01
229 #define SLEEP_MODE_AFTER_TX_RX 0x03
230 #define SLEEP_MODE_AFTER_TX_TIMEOUT 0x05
231 #define SLEEP_MODE_AFTER_TX_RX_TIMEOUT 0x07
234 #define NETWORK_ROLE_SLAVE 0x00
235 #define NETWORK_ROLE_MASTER 0x01
236 #define NETWORK_ROLE_REPEATER 0x02
239 #define LED_CONTROL_DISABLED 0x00
240 #define LED_CONTROL_RX_TX 0x01
241 #define LED_CONTROL_UART_RF_IDLE 0x02
242 #define LED_CONTROL_RF_RX_TX 0x03
245 #define ENCRYPT_DISABLED 0x00
246 #define ENCRYPT_ENABLED 0x01
247 #define ENCRYPT_ENABLED_CRC 0x03
250 #define DATA_INTERFACE_ID_ADDR 0x00
251 #define DATA_INTERFACE_APP_ONLY 0x01
252 #define DATA_INTERFACE_APP_ACK 0x03
253 #define DATA_INTERFACE_START_STOP 0x04
254 #define DATA_INTERFACE_CRC 0x08
255 #define DATA_INTERFACE_CRC_START_STOP 0x0C
258 #define PREAMBLE_FORMAT_A 0x00
259 #define PREAMBLE_FORMAT_B 0x02
262 #define BAUDRATE_2400 0x01
263 #define BAUDRATE_4800 0x02
264 #define BAUDRATE_9600 0x03
265 #define BAUDRATE_14400 0x04
266 #define BAUDRATE_19200 0x05
267 #define BAUDRATE_28800 0x06
268 #define BAUDRATE_38400 0x07
269 #define BAUDRATE_57600 0x08
270 #define BAUDRATE_76800 0x09
271 #define BAUDRATE_115200 0x0A
272 #define BAUDRATE_230400 0x0B
274 static const uint32_t
BAUDRATES[11] = {2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 76800, 115200, 230400};