Нет описания

vad7 48156f11fc IN DEVELOP: sniffer mode by default - find packets with valid CRC 3 лет назад
lib e5df1ca6f9 upd (using RX_FIFO) 3 лет назад
LICENSE 2d95840136 Create LICENSE 3 лет назад
Nrf24_Scanner.fap d2f99907b9 FAP v1.15 3 лет назад
README.md cd38e5cb47 Update README.md 3 лет назад
Screenshot-1.png 79027ae52d Release v1.15 3 лет назад
Screenshot-2.png ec54c52a26 upd 3 лет назад
Screenshot-3.png 24d7beabb0 upd 3 лет назад
Screenshot-4.png ad41c9a294 Decode CRC in ESB packets scanned as non-ESB and marking them 3 лет назад
Screenshot-5.png ad41c9a294 Decode CRC in ESB packets scanned as non-ESB and marking them 3 лет назад
addr-WCO1.txt 2a1b4d2da4 Optional decode the packet control field when ESB off 3 лет назад
addr_sniff.txt b6c3deeff5 New settings: Enhanced SB, Dynamic payload, CRC 3 лет назад
application.fam 4fe19b28f5 init 3 лет назад
nrf24_packet_decoder.py e01b7b3e83 FAP v1.15 3 лет назад
nrf24scan.c 48156f11fc IN DEVELOP: sniffer mode by default - find packets with valid CRC 3 лет назад
nrf24scan.h 76299c69b5 upd 3 лет назад
nrf24scan_10px.png 4fe19b28f5 init 3 лет назад
settings.txt 2a1b4d2da4 Optional decode the packet control field when ESB off 3 лет назад

README.md

NRF24 scanner with logging and resend ability for Flipper Zero

An NRF24 driver for the Flipper Zero device. The NRF24 is a popular line of 2.4GHz radio transceivers from Nordic Semiconductors.
NRF24L01+ Enhanced ShockBurst packet decoder example using Python: nrf24_packet_decoder.py

Flipper Zero FAP file: Nrf24_Scanner.fap



Приложение для Flipper Zero, читающее эфир на радиомодулях nRF24L01.
Выбор пукта меню - стрелки вверх/вниз, стрелки влево/вправо либо изменют настройки либо управляют видом списка, кнопка ОК либо выбирает режим (короткое нажатие), либо выполняет дополнительное действие (длительное нажатие).


На начальном экране можно загрузить файл настроек (по умолчанию загружается settings.txt из папки nrf24_scanner на SD карте).
В файле настройке задаются адреса (максимум 6) в шестнадцатеричном виде (старший байт - первый), длина адреса вычисляется по P0.
Остальные настройки можно поменять интерактивно
Настройки сохраняются длительным нажатием на ОК.

Описание настроек:
Ch - номер канала.
Rate - скорость передачи данных
Next Ch time - через сколько секунд будет увеличен номер канала
Log - выбор режима авто сохраннения в файлы log-xx.txt. Yes - сохранять в новый файл при заполнении буфера в 99 записей, Append - добавлять в последний файл, Clear - только очистка буфера

В пунктах Ch, Rate, Next при нажатии OK меняются параметры связи:
ESB - Enhanced ShockBurst (включена автоотправка подтверждения получения пакета, работающий приемник тоже попытается это сделать, возможны коллизии)
DPL - Динамический пакет
CRC1/2 - Размер CRC в байтах
Payload - размер пакета в байтах

Просмотр принятых пакетов


В пункте "Start scan" можно выбрать стрелками сканировать и смотреть или просто смотреть (view).
Если в файле настройки было несколько адресов, то первая цифра - номер канала (pipe) от 0 до 5.
Стрелки - перемещение по списку и горизонтальное скролирование
OK - отправка пакета
Длительное нажатие OK - вход в режим просмотра адресов и включения декодирования заголовка ESB пакета и CRC.
При декодировании заголовка (PCF) - первые 2 цифры - длина пакета в hex или 33, если длина пакета фиксирована
3-я цифра - PID (2bit) << 1 + флаг NO_ACK
Если включен режим декодирования CRC, то по всему пакету ищется подходящая CRC и подчеркивается в списке, а так же вместо ":" выводится "=" после номера записи в буфере








Settings file (default addr.txt) format:

Rate: 0/1/2 - rate in Mbps (=0.25/1/2)
Ch: 0..125 - default channel
ESB: 0/1 (1 - Enhanced ShockBurst)
DPL: 0/1 (1 - Dynamic Payload Length)
CRC: 0/1/2 (CRC length)
Payload: 1..32 (bytes)
P0: address pipe #0 in hex (max 5 bytes, LSB last)
P1: address pipe #1 in hex (max 5 bytes, LSB last)
P2: address pipe #2, LSB in hex (1 byte)
P3: address pipe #3, LSB in hex (1 byte)
P4: address pipe #4, LSB in hex (1 byte)
P5: address pipe #5, LSB in hex (1 byte)
captured data in raw format, first byte = address # 0..5, Payload len if DPL
... up to MAX_LOG_RECORDS-1

In the list of the received:
Press OK - send the packet,
Long press OK - view addresses.

Decode the Packet Control Field and check CRC (long press OK in the list and then press '<' / '>').
ESB (Enhanced Shockburst) option must be turned off. Press '>' to decode CRC.
1 - pipe #
2 - Payload length (for valide packet must be 1..20 or 33 hex)
3 - PID (2 bit) + NO_ACK (1 bit)



PinOut from from NoComp/Frog

NRF24 pinout by UberGuidoZ

2/A7 on FZ goes to MOSI/6 on nrf24l01
3/A6 on FZ goes to MISO/7 on nrf24l01
4/A4 on FZ goes to CSN/4 on nrf24l01
5/B3 on FZ goes to SCK/5 on nrf24l01
6/B2 on FZ goes to CE/3 on nrf24l01
8/GND on FZ goes to GND/1 on nrf24l01
9/3V3 on FZ goes to VCC/2 on nrf24l01
IRQ/8 is left disconnected on nrf24l01 NRF_Pins If the nRF module is acting a bit flakey, try adding a capacitor to the vcc/gnd lines! I've not tried the Plus model so it may have a bigger need for a cap. Otherwise, I haven't had any major issues. Anything from a 3.3 uF to 10 uF should do. (Watch your positive/negative placement! Negative to ground.) I learned if you wanna get fancy, include a 0.1 uF cap in parallel. The 3.3 uF to 10 uF will respond to slow freq changes while the 0.1 uF will respond to the high freq switching spikes that the larger one cannot. That said, a single 10 uF will likely suffice for the Mousejack attack. ¯\_(ツ)_/¯ NRF_Capacitor