Прием показаний от tpms с помощью СС1101

Обсуждаем приемники, передатчики, радиомикрофоны, жучки, генераторы, ВЧ-усилители, антенны и прочее радиохозяйство
Ответить
TechMike
Прорезались зубы
Сообщения: 247
Зарегистрирован: Сб дек 15, 2007 23:00:54
Откуда: Moscow
Контактная информация:

Прием показаний от tpms с помощью СС1101

Сообщение TechMike »

Всем привет.

Пытаюсь получить данные с датчика давления в шине (tpms), с помощью rtlsdr данные были успешно получены и декодированы, но при попытках переложить все полученные настройки на cc1101+esp32 (platformio+arduino) принято нормальный пакет данных не получается.

С помощью настройки cc1101 на передачу фиксированного пакета и успешного приема на стороне rtl_433, удалось выяснить, что скорость передачи точно будет 9.6кбс. С этими же настройками на прием ничего не приходит и дальше уже не получается, нужна помощь.

Декодированный пакет с помощью rtl_433 выглядит так (датчик всегда шлет 40 одинаковых пакетов при его активации на 128кгц):
rtl_433 -X 'name=BMW,m=OOK_MC_ZEROBIT,s=122,l=122,r=300,preamble=7fff,get=id:@3:{24}:%x,get=pressure:@27:{9}:%d,get=temp:@36:{9}:%d' -f 433.92M

-f 433.92M - received frequency 433.92 mhz
name=BMW - name decoder (any)
m=OOK_MC_ZEROBIT - On-Off Keying with Manchester Code and a fixed leading zero bit.
s=122 - The expected duration of a "short" pulse or half-bit width in microseconds (µs).
l=122 - The expected duration of a "long" pulse or full-bit width in microseconds (µs
r=300 - The expected duration of a reset gap in microseconds (µs)
preamble=7fff - preamble to the beginning of the data
Данные выглядят вот так:
time : 2025-09-14 20:21:44
model : BMW count : 1 num_rows : 1 rows :
len : 45 data : 058639002238 id : 2c31c8
Pressure : 4 Temp_F : 71 F
codes : {45}058639002238
в Universal Radio Hacker (URH) этот же пакет с данными декодировался как ASK + manchester II
Изображение Изображение
11110101010101010101010101010101111001010101011001101001010101101001010110101001011001010101010101010101100101011001010110101
после раскодировки в NRZ
f5555555e556695695a96555559595a8
Изображение

после manchester2
fffe0b0c7200446
Изображение

уже после сдвига на -3 бита (влево) получаю нужные данные:
7fff058639002400

По настройкам CC1101 использовал библиотеку RadioLib, пробовал много настроек как с её помощь, так и отдельно в регистрах.
Для пакета данных:
Изображение
Preamble bits cannot be changed, but the length can be set (8,16, 32 bits).
Sync word - I set it as 0x7f 0xff
Length field - not set
Address field - not set
Data field - what I need to receive, but it doesn't work.
CRC-16 - not set.
PacketLengt - пробовал 6, 8, and 15 bytes.
BitRate - 9.6 kbps.

Дополнительно специально выключал rssi+lq+crc в регистре PKTCTRL1.APPEND_STATUS
Пробовал задать преамбулу и синхрослово как советует URH, для декодирования в NRZ (после удачного приема уже планировал перекодировать в манчестер):
preamble - 5555555
synchronization - e55

но ничего не прилетает на вход.

Подскажите где я мог ошибиться или что еще попробовать?
Реклама
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Прием показаний от tpms с помощью СС1101

Сообщение Ser60 »

Попробуйте сконфигурировать радио и организовать приём/передачу пакетов как рассказано в моей статье.
Реклама
TechMike
Прорезались зубы
Сообщения: 247
Зарегистрирован: Сб дек 15, 2007 23:00:54
Откуда: Moscow
Контактная информация:

Re: Прием показаний от tpms с помощью СС1101

Сообщение TechMike »

[uquote="Ser60",url="/forum/viewtopic.php?p=4746116#p4746116"]Попробуйте сконфигурировать радио и организовать приём/передачу пакетов как рассказано в моей статье.[/uquote]

Статью я читал, она мне сильно помогла в понимании работы 1101.
Думаете я не правильно сконфигурил регистры 1101 и имеет смысл проверить это с помощью SmartRF Studio?
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Прием показаний от tpms с помощью СС1101

Сообщение Ser60 »

TechMike, очень жаль, но мне некогда разбираться с Вашей конфигурацией, тем более, что я никогда не раборал с библиотекой RadioLib. Рекомендую вложиться и приобрести CC-debugger, с ним всё сильно упрощается.
Реклама
Эиком - электронные компоненты и радиодетали
TechMike
Прорезались зубы
Сообщения: 247
Зарегистрирован: Сб дек 15, 2007 23:00:54
Откуда: Moscow
Контактная информация:

Re: Прием показаний от tpms с помощью СС1101

Сообщение TechMike »

[uquote="Ser60",url="/forum/viewtopic.php?p=4746157#p4746157"]TechMike, очень жаль, но мне некогда разбираться с Вашей конфигурацией, тем более, что я никогда не раборал с библиотекой RadioLib. Рекомендую вложиться и приобрести CC-debugger, с ним всё сильно упрощается.[/uquote]

SmartRF04eb с Ali рабочий вариант?
Реклама
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Прием показаний от tpms с помощью СС1101

Сообщение Ser60 »

Не знаю что это такое. Я использовал оригинальный за $50 и SmartRF Studio. Сам debugger выглядит также как этот.
Реклама
Аватара пользователя
muravei_
Потрогал лапой паяльник
Сообщения: 339
Зарегистрирован: Чт май 20, 2021 13:33:05

Re: Прием показаний от tpms с помощью СС1101

Сообщение muravei_ »

[uquote="TechMike",url="/forum/viewtopic.php?p=4746103#p4746103"]использовал библиотеку RadioLib[/uquote]
Так себе библиотека . Хочет объять необъятное. :)
Долго с ней упражнялся , пытаясь настроить sx1278 прием-передачу пакетов переменной длины на FSK. На rp2040.
Читал Issues , там был вопрос : "Что не передает пакеты меньше 64 б , на что был ответ - больше передает, типа - радуйтесь, а меньше ... передавайте 64 ! :) И еще кто-то жаловался на двойное срабатывание прерывания , посмотрел библиотеку , а там срабатывание по фронту и срезу на пине. :)) Странно бы было , если не было бы, но устранили сами "утопающие" в обработке.
Правда , я не использовал Ардуино, там есть дополнение без него https://github.com/jgromes/RadioLib/tre ... NonArduino

Ser60, Нет ли какого-нибудь недорогого уст-ва , могущего гарантировано принимать - передавать FSK ? А то, задача с двумя неизвестными . Или не передает , или не принимает , или оба. :)
У меня есть tinysa , но оно только показывает факт передачи , или я ошибаюсь?
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Прием показаний от tpms с помощью СС1101

Сообщение Ser60 »

Понимаю, с такой задачей с 2-мя неизвестными действительно легко попадаешь в состояние погони за собственным хвостом. При разработке радио-трактов на SI или CC чипах я раньше всегда начинал с отладки передатчика. В качестве приёмника использовал CC-debugger, подключенный по SPI к CC1101 и RF-Studio. В ней можно настроить чип на приём графическим конфигуратором и Studio сама генерирует нужный код для конфигурации CC1101 на приём и показывает побайтно что принимается. При этом чип будет гарантированно правильно настроен на приём. Когда передатчик отлажен и пакеты от него принимаются, то число неизвестных сокращается до 1. Можно и наоборот - настроить гарантированно в Studio чип на передачу и отлаживать свой приёмник. В обоих случаях Studio знает как правильно настроить чип на соответствующий режим.

Но в последнее время я от такого способа перешёл на библиотеки Rail и Connect. Они, правда, только для силлабовских МК серий EFR32FGxxx с радиотрактом, как писал в своих статьях. Благодаря высокоуровневым API производится гарантированная настройка трансиверов на соответствующий режим и ничего в плане протокола самому додумывать не требуется и всё работает из коробки. Однако, LoRa эти устройства (пока?) не поддерживают. Но Bluetooth/Zigbee/Proprietary и Sub1G запросто. Кстати, и Силлабов появились SiP модули FGM230s на диапазон 868/915, содержашие в себе радио+МК+антенный фильтр+всю пассивную обвязку. Подключай к ним только антенну и вперёд. Приобрёл такой недавно, пытаюсь выкроить время на попробовать.
TechMike
Прорезались зубы
Сообщения: 247
Зарегистрирован: Сб дек 15, 2007 23:00:54
Откуда: Moscow
Контактная информация:

Re: Прием показаний от tpms с помощью СС1101

Сообщение TechMike »

На текущий момент получилось принять данные от датчика tpms но с использованием sx1278, попытки переделать настройку приемной части на cc1101 пока не успешны (не принимает хотя-бы похожие на правду данные совсем).
Пытался менять основные параметры по приему для 1101 (частота, вид модуляции, длинну преамбулы, длинна данных, синхрослово), но пока безуспешно.
Ответить

Вернуться в «Радиотехника: приемники, передатчики, антенны»