Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Telegesis ETRX2USB и CC2420, нужна помощь
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Wireless/Optic
PAN_Spirit
Всем добрый день. Нужна помощь в освоении IEEE802.5.4. Проблема в следующем:
Имеется два устройства Telegesis ETRX2USB и устройство собственной разработки на Fujitsu MB90F543 + CC2420. Задача сосотит в том, чтобы с моего устройства передавать данные на ETRX2. Координатором выступает ETRX2, моё устройство - RFA. На сегодняшний день написал поддержку СС2420, немного разобрался с IEEE802.5.4. Остановился на том что дописал регистрацию в сети и начал делать передачу данных. Вот тут возникли проблемы. Не могу понять в каком формате надо передать данные на Telegesis чтобы он их воспринял. Думал сделать по простому: написал на свой девайс что-то вроде простого анализатора сети (на фото). По com-порту на мой девыйс передаётся номер канала который надо слушать, после чего все пакеты которые он ловит он передаёт обратно в com-порт. На Builder-е написал прогу которая разбирает пакеты и выводит их на экран. Потом попробовал передавать UNICAST пакеты с одного ETRX2 на другой ETRX2, и посмотреть своим девайсом как Telegesis формирует поле данных. Посмотрел и ничего не понял... Вот пример три раза передал символ "А" в hex-е:
61 88 E3 31 30 00 00 80 08 44 02 00 00 80 08 0A 34 28 19 D0 05 00 3D 12 03 00 00 6F 0D 00 00 E1 7A 23 AF 99 90 1B 0E 6A A2 60 5B B0 3A ED B2 B9 57 78 DB 32 5D 23 F7 9C 8B 37 2A CD B3 FC EB

61 88 E8 31 30 00 00 80 08 44 02 00 00 80 08 0A 39 28 1A D0 05 00 3D 12 03 00 00 6F 0D 00 00 64 88 9C 2C 4F F3 88 20 E1 68 F3 33 AD 3C 0C 01 90 E0 B7 E4 25 BA A5 E9 48 51 71 F0 D7 4C FA EA

61 88 F2 31 30 00 00 80 08 44 02 00 00 80 08 0A 40 28 20 D0 05 00 3D 12 03 00 00 6F 0D 00 00 83 FF B6 CA 1B E8 EB 06 BF BA 8C E8 15 07 87 62 5C F7 CE 58 5D 0D 77 44 7F B8 FB F9 24 83 FC EB

Это пакет данных с двумя котороткими 16-ти битными адресами и упрощённым адресом сети. А вот после полей адреса (начиная с 10-го байта = 0х44) идёт поле данный, где ничего не ясно: 4402 повторяется во всех пакетах, дальше похоже короткий адрес координатора 0000, потом которткий адрес отправителя 8008, потом непонятно что 0A 40 28 20 D0 05 00, дальше похоже длинный адрес отправителя: 3D 12 03 00 00 6F 0D 00, дальше 0000, а вот потом во всех пакетах абсолютно разная информация, похоже на мусор.

Вопрос заключается где в этом пакете это символ "А" и если я его заменю на другой и попробую передать не надо ли расчитывать каки-нить контрольные суммы в поле данных (кроме той контрольной суммы которую расчитывает СС2420 автоматом)?

Второй вариант это как-то заставить Telegesis воспринимать "сырые" данные, т.е. чтобы после адресных полей я сразу смог передать свои данные и как-то уговорить ETRX2 передать эти данные по USB в виртуальный Com-порт.


PAN_Spirit
Тема закрыта, написал в службу поддержки Telegesis (может кому-нить пргдится), получил ответ:

Hello Andrei,

It can be difficult to read back these raw byte streams, but I think I can make sense of some of it. They start with:

61 88 802.15.4 frame control - data

E3 sequence number

31 30 destination PAN ID

00 00 destination address

80 08 source address

44 02 ZigBee frame control

00 00 destination address

80 08 source address

0A 34 28 19 D0 05 00 ??

3D 12 03 00 00 6F 0D 00 source address

The payload of the 802.15.4 packet starts with the ZigBee network header, beginning with frame control. However, once you are past the NWK header the rest of the message is encrypted with the AES128 standard and it will be impossible for you to read it.

RDATAB messages are addressed to 802.15.4 PAN ID 0xFFFF and destination address 0xFFFF and are formatted as an 802.15.4 command. The command identifier is 7C (Ember bootloader) and the user’s data is at the end of the payload. It is therefore not really a ZigBee message and is not encrypted, so you will be able to read it. If you read the message sent from an ETRX2, you ought to be able to repeat the same message from an 802.15.4 device, then just change the data and the checksum.


Best regards,

David Chalmers
Senior Engineer

Получается в конце пакета это не мусор а данные зашифрованные AES128. На данном этапе перешил Telegesis прошивкой R211 чтобы поддерживал "сырые данные" (у меня была прошивка R207 она не поддерживает команду RDATAB). В будующем сделаю поддержку AES128, CC2420 имеет аппаратный шифровальщик.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.