Skip to content

Commit 47926cd

Browse files
committed
Ability to save in file read data (ReadBatch) as WriteBatch
1 parent aa5fca0 commit 47926cd

File tree

5 files changed

+127
-57
lines changed

5 files changed

+127
-57
lines changed

Distr/nrf24batch/CO2_mini.txt

+3-3
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ R: OSCCAL=0x51,RAM
2020
R: OSCCAL_EMEM=0
2121
R: CO2=0x67,RAM,0xC2
2222

23-
R: RxAddr=1
23+
R: RxAddr=1#
2424
W: RxAddr=,1
2525

2626
R: Ch=2
2727
W: Ch=,2
2828

29-
R: nRF RETR=3
29+
R: nRF RETR=3#
3030
W: nRF RETR=,3
3131

3232
R: Send period=4
@@ -38,7 +38,7 @@ W: CO2 threshold=,5,0x82
3838
R: CO2 correct*2=7,,0xC2
3939
W: CO2 correct=,7,0x82
4040

41-
R: FanLSB[10]=i:9
41+
R: FanLSB[10]=i:9#
4242
W: FanLSB=,i:9
4343

4444
W: Reset=,RESET,0xC1

Pics/descript.png

-11.9 KB
Loading

README.md

+9-8
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,21 @@ Flipper Zero application for nRF24L01 external board. Sends batch commands. (IN
55
Можно использовать для настройки или чтения данных с удаленного устройства. На удаленной стороне для команды чтения требуется поддержка.<br>
66
Сначала выбирается файл настройки с описанием команд.
77
Затем стрелками влево или вправо выбирается нужный режим - Пакетное чтение (Read Batch), Чтение по одной команде (Read cmd), Пакетная запись (Write Batch).
8-
<br>
8+
<br><br>
99
Есть два вида команд: запрос-ответ и запись.<br>
1010
Запрос-ответ - отправка пакета, переключение на прием и отображение на экране, что получили.<br>
1111
Запись - фактически отправка пакетов подряд с нужными данными.<br>
12-
<br>
13-
Формат пакета для отправки (payload) задается в виде размера полей структуры в байтах, например, так "Payload struct: 2,1,1",<br>
14-
что означает структуру из 3 полей: 2 байта, 1 байт, 1 байт.<br>
12+
<br><br>
13+
Формат пакета для отправки (payload) задается в виде размера полей структуры в байтах, например, так "Payload struct: 2,1,1", что означает структуру из 3 полей: 2 байта, 1 байт, 1 байт.<br>
1514
Полученный в ответ пакет состоит из одного значения, размерность по умолчанию 1 байт (int8), при необходимости, задается числом после '*' после имени команды.<br><br>
1615
Перед отправкой пакета, он заполняется сначала шаблону по умолчанию "R default" для запроса чтения, "W default" - для записи.<br>
1716
Можно использовать константы по их имени, они задаются в формате "имя=число", число либо десятичное или шестнадцатеричное с префиксом 0x.<br>
18-
Затем берутся заполненные значения из самой команды ("R:" или "W:").<br>
19-
Пакет состоит из списка имен команд, перечисленных через ";".<br>
20-
Перед пакетом команд для записи отправляется пакет 'Write start', если эта строка присутствует в файле.<br>
21-
Значение команды для записи можно редактировать - Ok на списке команд, стрелка +/- и переход по цифрам, завершить - Назад, вставка цифры - Ok, удаление цифру - длительный Ok.<br>
17+
Затем берутся заполненные значения полей из самой команды ("R:" или "W:").<br>
18+
Если в конце строки с командой чтения символ '#', считанное значение будет показано в шестнадцатеричном виде.<br><br>
19+
Пакет состоит из списка имен команд, перечисленных через ";".<br><br>
20+
Отправка пакета для записи - длительно нажать Ok в списке и подтвердить.<br>
21+
Перед пакетом команд для записи отправляется пакет 'Write start', если эта строка присутствует в файле настроек.<br><br>
22+
Значение команды для записи можно редактировать - Ok на списке команд, стрелки - +/- и переход по цифрам, завершить - Назад, вставка цифры - Ok, удаление цифры - длительный Ok.<br>
2223
<br>
2324
Пример файл [CO2_mini](https://raw.githubusercontent.com/vad7/nRF24-Batch/main/Distr/nrf24batch/CO2_mini.txt)<br>
2425
Для устройства на Attiny44A, которое отправляет данные с датчика CO2 на контроллеры, управляющие вентиляцией или проветриватели: https://github.com/vad7/CO2-mini

descript.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Write start: 0,0,0x8F <- if exist in the file - packet before write a batc
1616

1717
R: ID*=,ID <- Read cmd, '*' - means string like device ID, result in bytes = { 0, 0, 3, 0xC1 }
1818
R: OSCCAL=0x51,RAM <- Read cmd, result in bytes = { 0x51, 0, 1, 0xC1 }
19-
R: OSCCAL_EMEM=0 <- Read cmd, result in bytes = { 0, 0, 0, 0xC1 }
19+
R: OSCCAL_EMEM=0# <- Read cmd, result in bytes = { 0, 0, 0, 0xC1 }, in the end of line - '#', returned value in hexadecimal format
2020
R: CO2=0x67,RAM,0xC2 <- Read cmd, result in bytes = { 0x67, 0, 1, 0xC2 }
2121

2222
R: CO2 threshold*2=5,,0xC2 <- Read cmd, '*2' - means received field with 2 bytes size (int16), result in bytes = { 5, 0, 0, 0xC2 }

0 commit comments

Comments
 (0)