Друзья, очень сильно прошу вашей помощи. Суть такая. Имеется цифровая запись LORA с CSS модуляцией, под которую написан демодулятор. Запись сделана с платы CDEBYTE E32. На выходе демодулятора имею массив десятичных символов, например, data=[0, 0, 0, 0, 0, 0, 0, 0, 8, 16, 509, 1141, 4093, 1709, 1901, 3565, 1549, 1045, 1500, 3780, 204, 3276, 976, 1508, 664, 2896, 3064, 3364, 3140, 296, 3084, 304, 2424] (SF=12). Нулевые символы соответствуют преамбуле (немодулированные чирпы). Пробовал обрабатывать стандартным стеком LoRa WAN (декодирование заголовка с последующей подстройкой тракта, который включает скремблер, перемежитель, ПУ-кодер).Исходные данные, передаваемые в сигнале получить не удалось. Наткнулся на интересную тему (Щупаем CDEBYTE E32 (LoRa)) , исходя из которой, оказывается, в Е32 применяется другой протокол. Может кто-нибудь помочь с получением символов из сигнала? Передавалось 1234567890. Очень нужно для дипломного проекта.
Что передавало и что получало?
Пишите дамп в HEX, так гораздо быстрее помощь найдёте.
передавалась последовательность [‘0x1’, ‘0x2’, ‘0x3’, ‘0x4’, ‘0x5’, ‘0x6’, ‘0x7’, ‘0x8’, ‘0x9’, ‘0x0’], а получена: [‘0x0’, ‘0x0’, ‘0x0’, ‘0x0’, ‘0x0’, ‘0x0’, ‘0x0’, ‘0x0’, ‘0x8’,
‘0x10’, ‘0x1fd’, ‘0x475’, ‘0xffd’, ‘0x6ad’, ‘0x76d’, ‘0xded’,
‘0x60d’, ‘0x415’, ‘0x5dc’, ‘0xec4’, ‘0xcc’, ‘0xccc’, ‘0x3d0’,
‘0x5e4’, ‘0x298’, ‘0xb50’, ‘0xbf8’, ‘0xd24’, ‘0xc44’, ‘0x128’,
‘0xc0c’, ‘0x130’, ‘0x978’] (Для SF=12, есть сгенерированы записи с другим коэффициентом расширения спектра). Я опираюсь на вашу статью, ссылку на которую я оставил в описании к вопросу. Может быть, Вы можете поделиться опорным материалом, откуда Вы брали эту информацию?
Еще разок: какое устройство было передатчиком и какое - приемником?
Я начинал с issues к библиотеке. Где-то в своём обзоре я её упоминал… Потом просто брутфорсил.
Шлите в хексе, к примеру, сначала 000, потом 111. Или 222, 2222, 22222. Возможно будет понятно как кодируется длина, цифры и пр. В любом случае отловите постоянную и изменяющуюся части пакета.
Моя задача - написание демодулятора излучения и получение переданной информации. Друг замодулировал последовательность 1,2,3,4,5,6,7,8,9,10 и записал полученный сигнал через SDR в формате IQ16, с которым я уже и работал. Плата аналогичная описанной Вами ( CDEBYTE E32 (LoRa)
Просто очень интересно, как Вы определили таблицу перестановок FEC. В официальном мануале LoRa WAN декодируется сначала преамбула (Хэмминг 4/5, перемежитель с длиной кодослова SF-2 и дополнительная битовая перестановка), затем подстраивается тракт обработки дата-поля (скремблер, перемежитель, Хэмминг со скоростью, полученной из заголовка). Получается, платы E32 не соответствуют протоколу LoRa WAN?
С физикой помочь я не могу, т.к. изначально работал с, положим, presentation layer, а это гораздо выше по стеку. Да и было это почти пару лет назад - уж позабыл что куда.
FEC - таблица нагло спёрта на Западе.
Повторю совет: ищите место расположения данных повторяющимися байтами. В противном случае может показаться, что пакет формируется по рандомайзу. И, конечно, одного экземпляра дампа всегда мало.
А то, что E32 формирует передачу своим, китайским, образом - вполне вероятно.