Как стать автором
Обновить

Sub-GHz во Flipper Zero и бесконечное множество внешних модулей

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров15K

Сейчас большинство владельцев Flipper Zero хоть иногда, но пользуются приложением Sub-GHz, чтобы повзаимодействовать с различными приборами, работающими на частотах ±433 MHz: открыть шлагбаум или ворота, управлять устройствами умного дома или даже использовать флиппер для теста “пищалок” на фудкортах. И всегда находятся люди, кому нужно больше, дальше и лучше, чем есть в стоке, и вот об этом и хочется поговорить.

Конечно, уже есть множество статей про модули для флиппера. Но здесь хочется сделать не очередной обзор о том, какие модули есть, а более детально рассмотреть целое семейство модулей и усилителей, которые работают в УКВ диапазоне до гигагерца (а именно в ± 433MHz) на микросхемах CC1101.

Sub-GHz и встроенная антенна

У Flipper Zero есть встроенный модуль для работы в диапазоне до 1 ГГц (поэтому и Sub-GHz) на основе приемопередатчика CC1101 и встроенной антенны. Встроенный CC1101 и антенна рассчитаны на работу в диапазонах частот 300-348 МГц, 387-464 МГц и 779-928 МГц. Но, как мы знаем, чем более универсален инструмент, тем меньше он подходит под решение конкретной задачи. Так получилось и тут – команда Flipper Devices Inc. провела огромную работу, чтобы покрыть весь УКВ диапазон частот с помощью одной антенны. Но, если вы хотите работать именно на ±433MHz, то вам нужна другая антенна, настроенная на эту конкретную частоту. На наш взгляд, это будет значительно эффективнее, ведь на ±433MHz у встроенной антенны самые компромиссные показатели.

Визуальное сравнение внутренней антенны и от внешнего модуля
Визуальное сравнение внутренней антенны и от внешнего модуля

Мы сделали замеры внутренней антенны флиппера, и по нашим подсчетам получается, что средняя дистанция приёма-передачи составляет около 6-15 метров при указанной мощности. Про замеры внутренней антенны есть очень хорошая статья от ребят из Antenna Test Lab

AMP

TR(dBV)

POW(mW)

Dist aprox (m)

Dist cub_root aprox (m)

Flipper Zero internal module & antenna

-49

0,05188358724

4,58397784

9,815200545

Сразу оговоримся, что в дальнейших экспериментах мы не будем отталкиваться от антенн и проведем замеры без них, используя OSA103 Mini, аттенюатор, парочку хитрых приблуд и науку. 

Если хотите посмотреть на это больше — https://dzen.ru/a/Y8POXYRssWAjicP7
Если хотите посмотреть на это больше — https://dzen.ru/a/Y8POXYRssWAjicP7

Нельзя просто так взять и поменять встроенную антенну на антенну из какого-нибудь брелока Старлайн или подобного, специально настроенную именно на 433MHz. Вы не получите того же результата, как и с внешним модулем, так как на работу радио, кроме антенны, также влияет и приёмо-передающий тракт, согласование всего этого, а ещё мы просто не советуем портить флиппер)))

Были случаи, когда некоторые пользователи нарушали целостность своих устройств и колхозили внешние антенны для встроенных радиомодулей, но это решение по факту ужасное и зверское по отношению к дельфинчику.

Поэтому неравнодушные активные пользователи флипперов посмотрели на это и приняли решение, что надо сделать внешний модуль на GPIO (не просто же так есть гребенка) и сделали внешний модуль с отдельной антенной.

Так мы пришли к тому, что появился модуль на той же микросхеме, что и внутри флиппера (CC1101 Low-Power Sub-1 GHz RF Transceiver), но уже с внешней отстроенной антенной и согласованным на 433MHz трактом.

CC1101 с внешней антенной, а на самом деле E07-M1101D-SMA

Важно отметить, что внешний модуль почему‑то все называют CC1101 ака «ЦЦшка», хотя это только название микросхемы (IC, Integrated circuit), которая стоит внутри флиппера и на которой основаны оба модуля (если хотите — сборки) E07-M1101D‑SMA и E07–433M20S. И сейчас вам начинает казаться, «а зачем мне про это душнят», да? А затем, что дальше будет инфа про другой внешний модуль с усилителем, который все называют E07, но он носит официальную маркировку E07–433M20S. И важно не запутаться, что такое E07, а что CC1101. Но вроде все договорились называть простой модуль без усилителя — CC1101, а с усилителем сигнала — E07:) А пока писали статью, появился ещё модуль E07–400MM10S, который до нас уже назвали E07–400 ¯_(ツ)_/¯

Если внимательно посмотреть на модуль и плату-переходник, которая идёт в составе, (ведь реверс-инжиниринг никто нам не запрещал), то по рассыпухе можно увидеть, что важная часть модуля – это понижайка до напряжения 3,3В. В мануале к микросхеме E07-M1101D-SMA указано, что работает она именно от этого напряжения, а также, что преобразователь – линейный, что благотворно сказывается на уровне шумов при приёме.

При сравнении показателей мощности встроенного и внешнего радиомодуля видим хороший прирост:

AMP

TR(dBV)

POW(mW)

Dist aprox (m)

Dist cub_root aprox (m)

Flipper Zero internal module & antenna

-49

0,05188358724

4,58397784

9,815200545

E07-M1101D-SMA

-29,5

4,62412958

43,27554136

43,84289037

При условии, что микруха тут тот же, что и внутри флиппера, то влияет на такое увеличение правильно отстроенная антенна и согласованный тракт именно под ±433 MHz.

Сделать самому *

Вы можете сами собрать этот модуль, как и любой другой, если у вас есть паяльник, рассыпуха, и, собственно, сам CC1101 модуль. Итак, вам понадобится:

  • Внешний CC1101 с внешней SMA антенной. Все в основном пользуются таким вот модулем, на базе Ebyte 10dBm 530m CC1101 Rf 433MHz Fsk

  • Рассыпуха в виде AMS1117-3.3

  • Макетная плата и некоторое количество соединительного  провода, например можно использовать МГТФ.

Чтобы собрать модуль на базе Ebyte-CC1101, руководствуйтесь распиновкой с  изображения

История появления внешних CC1101 модулей

Тут был блок с кратким пересказом истории появления внешних СС1101 модулей. Но история, пересказанная тут была изучена не до конца и потребовала переработки, а исправлений стало так много что это "вылилось" в большой текст, не связанный с повествованием статьи. Перенесено в закрепленный комментарий в этой статье.

А для других микросхем, таких как D-SUN CC1101 и TI-CC1101, распиновки можно найти тут

Купить готовый

Это проще, чем собрать самому, но стоит шекелей. Если их есть у вас, то чекайте ссылки:

  • Модули на базе CC1101 на маркетплейсе Flipper Addons от разных вендоров в коротком длинном и даже прозрачном форм-факторе, а также в виде плат-переходников для самостоятельной сборки

  • Модуль CC1101 на Flipper.Market

Еще вариант на базе СС1101 в исполнении с E07-400MM10S 

Еще под руку попался интересный модуль на базе E07-400MM10S, которая тоже работает на базе СС1101, как вы уже поняли.

Провели его замеры и получили, что он чуть лучше работает, чем предыдущий модуль.

AMP

TR(dBV)

POW(mW)

Dist aprox (m)

Dist cub_root aprox (m)

Flipper Zero internal module & antenna

-49

0,05188358724

4,58397784

9,815200545

E07-M1101D-SMA

-29,5

4,62412958

43,27554136

43,84289037

E07-400MM10S

-25,17

12,53227729

71,24305092

61,12691962

Все модули, о которых мы говорили, работают на той же CC1101, что и во флиппере, без всякого усиления. Но благодаря настроенному на 433 MHz тракту, и, возможно, экранированию, более эффективны и "дальнобойны" (на 315 и 866 будет хуже, чем встроенный)

А можно еще дальше? Или сказ про усиление на базе E07-433M20S

Люди так устроены, что им хочется больше силы, власти, и, конечно же, им мало просто настроенного на 433 MHz тракта и отстроенной антенны.

Вот так и появился модуль для Flipper Zero на базе модуля E07-433M20S. В нём также используется CC1101, но есть еще и встроенный усилитель сигнала, который позволяет передавать сигнал с флипаря еще дальше.

AMP

TR(dBV)

POW(mW)

Dist aprox (m)

Dist cub_root aprox (m)

Flipper Zero internal module & antenna

-49

0,05188358724

15,27992613

15,18604175

E07-M1101D-SMA

-29,5

4,62412958

43,27554136

43,84289037

E07-400MM10S

-25,17

12,53227729

71,24305092

61,12691962

E07-433M20S Amp OFF

-29,17

4,989189454

44,95132622

44,96754496

E07-433M20S Amp ON

-18,64

56,36765863

151,0923616

100,9018613

Вы можете задаться вопросом, почему в этой таблице есть две строчки относительно e07, одна из которых очень сильно повторяет показатели обычного внешнего модуля. На самом деле, все просто – усилитель может работать, а может и не работать. А если он не работает, то по факту у вас в руках просто модуль CC1101 с внешней антенной.

И да, на данный момент официальная прошивка не поддерживает работу усилителя “из коробки” и нужно использовать альтернативную прошивку, где эта поддержка реализована. Если вы будете использовать этот модуль на официальной прошивке, то он просто будет работать как модуль из блока выше.

Да, мы уже второй раз упоминаем про альтернативную прошивку, но я не буду её конкретно называть, чтобы вы сами могли понять, надо ли оно вам, и выбрали нужную (и устроить холивар в комментариях, какая прошивка лучше, и почему это UL https://awesome-flipper.com/ru/firmware/)

Приобрести же этот готовый модуль можно тут. А вот схем по самостоятельной сборке с пинаутом и рассыпухой мы не нашли в свободном доступе.

“Only a Sith deals in absolutes” или “Надо больше усиления”

Естественно, на E07-433M20S все не закончилось, ведь есть и другие усилители сигнала, которые попались нам под руку, а именно:

  • 50M-6GHz Low Noise Amplifier LNA RF Power Amplifier Gain 20dB Powered By USB OpenSourceSDR Lab

  • 20dB 50MHz to 6000MHz UHF 2.4G Broadband Low Noise Amplifier RF LNA Amp Module VHF HF

Что важно тут отметить – так это то, что эти усилители уже требуют внешнего питания, а не тянут 5v с флиппера, как это делает E07-433M20S.

Первый подопытный у нас LNA усилитель от компании Open Source SDR Lab.

Мы запитали его от банки, ибо на борту имеется порт micro-usb, что кажется оч удобным (и банка не шумит, проверили тоже). Небольшой минус в том, что придется носить с собой не только флиппер, но и банку)) Значит, понадобится рюкзак или сумка.

Измерив его работу в аналогичных условиях, что и для предыдущих подопытных, получили уже данные немного интереснее. Как видите – расчётная дальность увеличилась почти ни на сколько, по сравнению с E07. Да и наврали китайцы про 20 dB усиления.

AMP

TR(dBV)

POW(mW)

Dist aprox (m)

Dist cub_root aprox (m)

Flipper Zero internal module & antenna

-49

0,05188358724

4,58397784

9,815200545

E07-M1101D-SMA

-29,5

4,62412958

43,27554136

43,84289037

E07-400MM10S

-25,17

12,53227729

71,24305092

61,12691962

E07-433M20S Amp OFF

-29,17

4,989189454

44,95132622

44,96754496

E07-433M20S Amp ON

-18,64

56,36765863

151,0923616

100,9018613

OSDRL Amp

-19

51,88358724

144,9581072

98,15200545

А что если взять еще более “мощный” на вид LNA усилитель, у которого тоже 20dB, как и у предыдущего, но запитать его не от банки, а от 12v? Именно так мы и сделали, взяв в руки еще один усилитель сигнала.

AMP

TR(dBV)

POW(mW)

Dist aprox (m)

Dist cub_root aprox (m)

Flipper Zero internal module & antenna

-49

0,05188358724

4,58397784

9,815200545

E07-M1101D-SMA

-29,5

4,62412958

43,27554136

43,84289037

E07-400MM10S

-25,17

12,53227729

71,24305092

61,12691962

E07-433M20S Amp OFF

-29,17

4,989189454

44,95132622

44,96754496

E07-433M20S Amp ON

-18,64

56,36765863

151,0923616

100,9018613

OSDRL Amp

-19

51,88358724

144,9581072

98,15200545

Chi Amp

-19

51,88358724

144,9581072

98,15200545

И получили такие же показатели, как у прошлого ¯_(ツ)/¯.

На этом мы остановились и цеплять большие  промышленные усилители не стали. И так с усилителями мощность получилась больше разрешенных 10 милливатт (это если у вас нет радиолюбительской категории и позывного, а у нас есть, так что усилки нам можно :)

Про подсчеты

Сразу хочется оговориться, что расчёты сделаны весьма приближённо и, скорее эмпирически.

В настоящей науке расстояние устойчивой вычисляют совсем по другом (расчётом бюджета радиоканала), но у нас недостаточно данных (особенно по антеннам), недостаточно точное измерительное оборудование и окружающая среда тоже сильно отличается от теоретической.

Поэтому наши расчёты отталкиваются от того, что мы можем спокойно померить. А это мощность и расстояние. Мощность измерена ОСОй, далее пересчитана из dBV милливаты ( (10^(dBV+A/20))^2 / 50 ) * 10^3 (соррян, не смог вставть формулой))), А - ослабление аттенюатора и аналогового тракта Осы. И если ослабление аттенюатора мы ещё можем проверить ей же (-20.15dB получилось, верим), то с трактом сложнее, почитав мануал примем его в -3dB.

Расстояние же мы считали эмпирическими формулами, говорящими что дальность растёт пропорционально квадратному корню из мощности. Что немного странно, это было бы справедливо для двумерной волны… Или пропорционально кубическому корню, что справедливо для трехмерной волны, но у нас всё же не лампочка без рассеивателя…

Короче, мы решили использовать и то и другое, и посмотреть, что же лучше с экспериментом согласуется, что-то подсказывает, что реальное значение где-то между этими двумя. Замерили расстояние на одном модуле и приёмнике и посчитали через него всё остальное.

Отдельно про встроенный модуль: поскольку замерить его проблематично, и очень сильно на него влияет встроенная антенна, то в таблице указана мощность эквивалентного передатчика, работай он на антенну, которую мы использовали для всех остальных тестов, а не его реальная мощность. (Значение получено шаолиньскими методиками замера и медитации на правдоподобность)

Заключение

Не все так однозначно и правительство скрывает от нас правду, но выглядит примерно так:

  • Модуль E07-M1101D-SMA с настроенной внешней антенной работает лучше встроенного во Flipper Zero приемника (спасибо, Кэп)

  • E07-400MM10S лучше чем “дефолтная ЦЦшка” E07-M1101D-SMA, но кажется, что тут выигрываем на спичках 

  • Модуль на базе E07-433M20S со встроенным усилителем работает лучше, но нужна альтернативная прошивка для поддержки дополнительного питания на встроенный усилитель сигнала

  • Внешние усилители сигнала не дают ощутимого результата, да, скорее, на этих частотах и в наших условиях

  • E07-433M20S пока выглядит имбой, но так как он чуть больше обычного CC1101 модуля, то выпирает и “на постоянку его не поносишь”, как я ношу, например свой модуль (тут фотка моего с 3в1, и комментом что мне дальность не нужна, ибо я на машине к воротам подъезжаю и все легально юзаю))

А что с приемом сигналов?

Хорошо, а как быть с приемом сигнала? А то только про передачу говорим, которая от нескольких метров выросла в разы.

Усилитель может работать и для принимаемого сигнала, но есть нюанс. Усиливает не только входной сигнал, но и помехи, ещё и добавляя свои шумы. Поэтому для уверенного приёма  без хорошей направленной антенны и приёмника с большим динамическим диапазоном, коим СС1101 не является, не обойтись. 

И тут сказать можно тезисно тоже кратко

  • Модуль с настроенной внешней антенной принимает лучше встроенной антенны Flipper Zero 

  • Усилители, в случае с флиппером, не сильно помогут вам (но немного помогут) ибо не дают хорошего прироста в дальности приема, о котором все мечтают Кроме того, сильно усложняют модульную конструкцию до монструозной.

  • Хорошая приёмная антенна даст намного больше пользы, чем усилитель на приёме*

  • А хорошая направленная антенна ещё лучше, и при передаче, и при приёме*

———————

* История появления и создания внешнего модуля, которая была описана в статье -- оказалась не самой точной. А так как это "тянет" на отдельный пласт истории развития внешних модулей, мы решили вынести это в комментарий закрепленный, нежели в отдельную статью или часть этой статьи.

** На большой пятой ежегодной конференции у коллег из DEFCON Нижний Новгород, 24-25 февраля 2024 года мы проведем доклад “Sub-GHz дельфина: большой обзор модулей и антенн для Flipper Zero” с более глубоким погружением в техническую составляющую. А так же рассмотрим антенны с их особенностями и покажем как работать с флиппером на расстояниях больше пары километров ;) 

Теги:
Хабы:
Всего голосов 17: ↑17 и ↓0+17
Комментарии25

Публикации

Истории

Ближайшие события

2 – 18 декабря
Yandex DataLens Festival 2024
МоскваОнлайн
11 – 13 декабря
Международная конференция по AI/ML «AI Journey»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань