Alexex14

Alexex14

На Пикабу
134 рейтинг 2 подписчика 0 подписок 2 поста 0 в горячем
14

Еще одна попытка сделать по-настоящему умные часы

Обожаю готовые платы с экранчиками. По сути это уже готовые для программирования девайсы. Сразу можно что-либо реализовать. Мне попала в руки плата от Waveshare. Плата сразу с RLCD экраном 4.2 дюйма (ST7305 300 x 400), 18650, микрофоном, спикером и чипом ESP32-S3.

Для понимания, что вообще за плата и из чего состоит внизу будут фото. Полное описание и конфигурация платы на wiki разработчика. А купить можно на популярных маркетплейсах.

Демо прошивка c завода показывающая возможности платы

Демо прошивка c завода показывающая возможности платы

Вид сзади (аккум в комплекте не идет)

Вид сзади (аккум в комплекте не идет)

А вот что там внутри

А вот что там внутри

Почему не e-ink?

Честный ответ: потому что в таком форм-факторе и в такой же конфигурации не было e-ink. В добавок e-ink медленно обновляется. Особо медленно если экран на электронных чернилах трехцветный. Скорость обновления RLCD такая же как на обычном LCD, вполне можно разогнать до 60 кадров в секунду. Поэтому можно юзать не только для часов, но об этом позже.

Как программировать?

Программировать мы будем через VSCode + Platform IO (PIO). Можно через Arduino IDE, однако это не самая удобная и гибкая платформа для работы с кодом, а вот PIO сильно удобнее. Кодом я тут не буду душить аудиторию, единственное что скажу буду юзать либу U8g2 - библиотека графики для монохромных дисплеев на микроконтроллерах, автор Оливер Краус. Самая популярная в этой нише.

Часы (и погода)

Что мне действительно хотелось видеть каждый день на столе это часы и погоду. Но ведь у меня в телефоне есть часы и погода! Крайне удобно перед выходом куда либо посмотреть будут ли осадки, какая температура, УФ-индекс. И да, погоду хочется видеть на 12 часов вперед на каждый час. Больше нет смысла смотреть, имхо, прогноз дальше суток крайне не точен. Убеждался в этом неоднократно. А вот на 12 часов можно посмотреть с вероятностью осадков - то что нужно знать сегодня. Итог ниже.

Надо было сфоткать 09:42

Надо было сфоткать 09:42

Давайте разберем по частям тут выведенное. К погоде я еще добавил давление, влажность и загрязнение воздуха в моем районе. Встроенные датчики не использовал. В качестве источника погоды использую Open-Meteo. Строчка чуть выше ЗАКАТа пустая, это не баг, там отображается вероятность осадков. Если пустая значит 0%. Цифр и так иного, поэтому так. Погода обновляется днем раз в полчаса, ночью раз в час. Помимо того что я обновляю погоду через интернет еще обновляется точное время через NTP. Такая точность более чем достаточна для настольных часов.

Энергосбережение

И тут самое время поговорить про энергосбережение, так как вы могли заметить что девайс питается от аккума. Сначала я отображал секунды, но обновление раз в секунду значит что микроконтроллер (МК) не засыпает, он постоянно работает. ESP32-S3 это вообще не про экономию, это невероятно прожорливый мощный чип.

Секунды было решено убрать. Теперь чип засыпает примерно на ~59 сек, просыпается, обновляет время и засыпает снова на ~59 секунд. В момент сна плата потребляет 8мА, во время обновления через интернеты (несколько секунд каждые полчаса/час) около 50мА.

Получаем, что при таких условиях таких часов хватит на пару недель автономной работы. Что более чем приемлимо на мой взгляд для данного типа МК и типа экрана.

Новости

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

Не дня без политоты

Не дня без политоты

В бесплатном NewsAPI, который я юзал, три источника на русском языке: DW, BBC и RT. Остановился на первых двух, но думаю надо придумать что-то получше для новостей.

Телеграм-пейджер

Тут как говорится proof of concept. Если можно выводить текст, то наверно можно выводить тот текст который я написал в бота? Конечно! Только вот для телеги надо подключить SOCKS5, ибо из моей сети оно не работает. Пишешь в бот и сообщение со звуковым сигналом отображается на экране:

Догадаетесь откуда цитаты?

Догадаетесь откуда цитаты?

В целом эту фичу можно использовать для заметок которые будут перед глазами.

Мониторинг ПК

Наверное самое сложное по коду и реализации. Как взять показания который отображает MSI Afterburner и RivaTuner Statistics Server (RTSS)?

Все что мне нужно, чтобы не отображать в углу экрана

Все что мне нужно, чтобы не отображать в углу экрана

В начале статьи упоминал, что E-ink в некоторых сценариях не подходит, вот это как раз этот случай. Отображать надо 2 раза в секунду, можно и чаще конечно, но и так достаточно. Серверная часть на ПК написана на Go и скомпилирована в exe-файл, который поднимает API на определенном порту по одной кнопке. А плата подключается к этому порту и читает в бинарном виде показания. И это прям киллер-фича, те самые циферки где-то вне экрана.

Все эти 4 режима переключаются одной кнопкой по кругу. То есть всё это в одной прошивке!

А что еще делают на этой плате?

В интернете еще нашел вот такой забавный проект радара на той же плате

Можно отслеживать до 3 человек

Можно отслеживать до 3 человек

Нужен еще радар LD2450 который подсоединяется к плате. В целом интересная штука, без понятия где это можно на практике примерить.

А что вы бы реализовали на такой плате?

Показать полностью 8
26

MeshCore: как новая эра в радиолюбительстве

Серия MeshCore

Пользуюсь MeshCore уже почти год, держу свои репитеры. Недавно на Пикабу вышла статья про MeshCore - и это здорово, чем больше людей узнают про технологию, тем живее сеть. Несколько мест в той статье меня, честно говоря, царапнули. Автор там оговорился, что он не специалист как будто я специалист, не будем его винить. Давайте разберёмся, как оно работает слегка углубившись в подробности.

Истоки

Радиолюбительство как хобби известно уже более 100 лет. А Mesh-сети на основе компактных нод это логичное продолжение этого увлечения. Новые поколения радиолюбитилей уже не хотят разговаривать голосом с незнакомцами по коротким (КВ) и ультракоротким (УКВ) волнам. Чатиться в разы удобнее. Поэтому все эти Mesh-сети можно описать как текстовое радио. Есть как личные сообщения так и чаты. Чаты тоже могут быть общедоступными или по секретному ключу. Общение крайне оживленное, на актуальные темы и в разных каналах. И главное без интернета. О чем общаются можно увидеть вот тут, через обсерверы (специальные репитеры с доступом в интернет - об этом как нибудь потом) сообщения попадают в Мешкартель.

Да простят меня авторы этих сообщений

Да простят меня авторы этих сообщений

Технические подробности протокола

Немного помучаю терминами и цифрами. В основе MeshCore лежит радиоинтерфейс LoRa - модуляция Semtech на базе CSS (Chirp Spread Spectrum), где данные кодируются линейно-частотными чирпами, что даёт работу ниже шумовой полки (отрицательный SNR) и большую дальность. Всё определяют три параметра - SF (Spreading Factor), BW (Bandwidth) и CR (Coding Rate): выше SF - больше дальность и чувствительность, но длиннее airtime (время приема-передачи) и ниже битрейт.

Исторически сети сидели на SF11, но примерно с октября 2025 многие регионы перешли на узкий пресет - BW 62.5 кГц и более низкий SF (7-9) вместо SF11, поскольку узкая полоса и низкий SF дают более низкий уровень шума, лучший SNR и более быстрые передачи. Работает MeshCore в нелицензируемых диапазонах: 868 МГц в UK/EU и 915 МГц в Австралии, Новой Зеландии и США, есть и сборки под 433 МГц; в Европе это диапазон 863-870 МГц с типовыми частотами 868.1/868.3/868.5 МГц. Конкретную частоту и пресет берут в местном сообществе, а в Европе действует ограничение по duty cycle - не более 10% эфирного времени в час. Чтобы ноды видели друг друга, у них должны совпадать частота, SF, BW и CR.

В Московском регионе используется частота 868.731 МГц (SF=7, CR=7, BW 62.5). Многие кто был в радиоклубах и те кто общались на LPD-частотах ушли в MeshCore. Тот же радиоклуб "Соседи" юга Москвы, например.

Привыкни к аппарату

Эти маломощные устройства умного дома превратились в средство связи между абонентами. Изначально не было таких вот красивых нод, они не продавались. До 2024 года сами паяли ноды из ESP32/NRF чипов и модулей LoRa. А уже далее рынок дал ответ на спрос и появились готовые к использованию устройства которые можно приконнектить по BT к вашему Андроед/Эпол телефону и начать чатиться.

Голенький Heltec V4

Голенький Heltec V4

Ноду можно спаять как самому так и заказать у китайских продаванов с различных маркетплейсов. На фото выше популярные ноды Heltec. Как быстро подключится к MeshCore если такая нода у вас уже есть в этом видео. Подключаете антенну, а потом аккум и вуаля, вы уже можете как принимать сообщения от других абонентов так и общаться с ними. Для личного использования я лично рекомендую Heltec T114 - черезвычайно автономное переносное устройство. Заряда аккума хватает на трое суток. Идет сразу в стильном корпусе и с антенной.

Уже принимает сообщения Heltec T114 - в своем родном корпусе

Уже принимает сообщения Heltec T114 - в своем родном корпусе

Никто не мешает напечатать свой корпус. На данном фото антенна находится внутри корпуса.

Никто не мешает напечатать свой корпус. На данном фото антенна находится внутри корпуса.

Дальность и репитеры

MeshCore работает отлично там где большая плотность абонентов и репитеров. Как упомянул автор из статьи можно ставить репитер, а можно не ставить. Если хотите помочь сети и преисполнились в своем сознании - то пожалуйста, абоненты сети скажут вам спасибо. Репитер, он же повторитель, он же репа, он же ретранслятор - занимается тем что пересылает сообщения между другими репитерами и конечными нодами (компаньонами). Лучше всего это увидеть своими глазами на сайте Мешкортеля.

Теоретически при прямой видимости дальность достигает ~15 километров между двумя нодами, на практике в условиях городской застройки стабильная связь в радиусе 1 километра. Но учитывая взлет Mesh-сетей за последний год покрытие становится все лучше и больше.

А также есть царь-репа, легендарная в некоторых кругах Варшавка, которая вещает сигналом на половину Москвы. Найти на карте по ссылкам выше не составит труда.

Антенна с круговой направленностью на балконе для репитера

Антенна с круговой направленностью на балконе для репитера

Почему не Meshtastic?

Meshtastic появился сильно раньше в 2020 (на 5 лет раньше MeshCore) году и обладает примерно тем же функционалом. Почему бы не использовать уже проверенную технологию? Да и комьюнити там больше. Если коротко - Meshtastic не подходит для города и городских сетей. В поход - да, на природу - да, в спасательные операции - да. Но не в статичную урбанизированную сеть. Первый архитектурный затык - 7 хопов (в Meshcore 32/64). А по умолчанию вообще стоит 3.

Хоп (от англ. hop — «прыжок») — это одна ретрансляция пакета от узла к узлу. Каждый раз, когда сообщение принимает промежуточная нода и передаёт его дальше по эфиру, засчитывается один хоп.

Второе ограничение это его же философия - каждая Meshtastic нода по умолчанию ретрансилует сообщения, учитывая что большинство таких нод находятся в квартирах - ретранслятор получает отвратительным, да и сам аккум ноды высаживается очень быстро. Квартира как клетка Фарадея, сигналы из квартиры плохо как "выходят" так и "заходят".

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

Всем спасибо за внимание, это мой первый пост на Пикабу. Если пост вызовет отклик - выпущу продолжение, есть еще о чем рассказать.

Показать полностью 5
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества