MeshCore
1 пост
1 пост
Если ввести в поисковую строку "аудиофил мем", то первым будет вот эта картинка. В целом не плохо отражает суть всех аудиофилов. Толстые провода, дорогие ЦАП и все что так любят товарищи аудиофилы.
Мое знакомство с аудиофилией пришлось с детства. У бати были огромные колонки S-90. Пара колонок как на фото ниже. И отец дико гордился своей аудиосистемной, называя все более современное - китайским говном. Особенно ненавидя популярные тогда бумбоксы.
К колонкам цеплялся еще усилитель с крутилками нижних и верхних частот. А к усилителю подключалась верхушка всего этого айсберга - кассетный проигрыватель. Вся эта система была сродни жигули: вечно что-то отваливалось. То магнитная головка выходила из строя, то разъем усилителя тупо отпаялся, то изнашивалась мембрана динамиков низких частот. На фото выше - там где самые большие круги. Но качество звучания меня на тот момент поражало.
Шли годы, колонки давно уже стояли на чердаке, а у меня, как у подростка нулевых, был запрос на мобильность. Тогда я попросил у родителей плеер и мне купили. Купили невообразимую херню Купили по средствам на рынке плеер с моно выходом и который высаживал батарейки за 3 часа.
Но мне было норм, все гудело-пердело, но я вполне себе слушал Любе, БИ-2 и какую то пиратскую кассету "Энергия" где было 20 зарубежных ритмичных песен.
Все изменилось в 2007 году, когда мне подарили телефон Nokia N70 Music Edition с годными, по тем временам, наушниками. Вот это уже был отвал жопы, звук был ощутимо качественнее всего, что я слушал до этого. Были у меня Сименсы, но там был WAV с битретом 64kbps. А новая Нокия умела в mp3, звук казался объемным и сочным (пошли аудиофильские термины).
Когда я поступил в универ, то узнал о FLAC. Уже даже не помню кто мне рассказал о звуке без потерь (Lossless). Я заходил на рутрекер и скачивал альбомами свои любимые группы. Мне тогда казалось, что ну вот же разница точно есть, вот же она! Богомерзкое mp3 я тогда слушать почти перестал, скачивал только lossless-музыку, так как там была та самая душа. Причем, flac весит в ~10 раз больше чем mp3/aac. Докупил себе наушники-затычки с Aliexpress.
На 3 курсе попал на стажировку в одну компанию. Компания занималась разработкой в среде телетрансляций, потокового вещания и прочих разработок связанных с трансляциями видео и аудио на широкую аудиторию. Мне дали задание разработать визуализацию спектрограмм из аудиофайла. Зачем то им нужна была своя простая реализация. И тогда я познакомился с Быстрым Преобразованием Фурье, окном Ханна и другими методами, которые позволяли визуализировать аудиопоток.
И тогда, в академическом смысле, я все понял. Понял как строить звук, как разложить на массив данных. Я сравнивал разные форматы, сравнивал пики точеные спектра, сравнивал, где сжатие обрезает верха. Даже в универе написал курсач по этой теме.
Потом нашел видео, где челы в слепом тесте пытались различить flac и mp3 192kbps. "Ну и лошары" - подумал я тогда. Нашел свои наушники и сам попытался различить. Меня обдало холодным потом: у меня ничего не получается. Звук звучал одинаково. Я ошибался, ошибался, иногда попадал и снова ошибался. А далее я нашел youtube-канал stalker29218.
Кажется это видео было первым. И меня как током пробило, все это увлечение FLACом все эти годы не имело смысла, разницы почти нет. С точки зрения оборудования и сил спектра - разница конечно же есть, но для уха разницы нет.
Аудиофилия лечится исключительно двойным слепым тестированием. По-другому вылечить эту болезнь невозможно.
Cоздал сайт-сервис для слепого тестирования аудио со сжатием и без сжатия. Для проверки себя и своего слуха. Сервис абсолютно бесплатный, коммерческой выгоды я не преследую, рекламы там нет (и не будет).
Проверить свой аудиофильский слух можно тут.
Лично я не набираю больше 5 баллов.
Слушайте музыку, а не провода.
Одним жарким летом мы приехали на Птичий Рынок на Садоводе. Чего там только нет: от рыбок для аквариума до змей и прочей экзотики.
Но нам в глаза бросился стеллаж с радужными крабами. Они сидели в маленьких пластмассовых контейнерах, а на дне было немного воды и кусочек вареной морковки. Недолго думая, мы взяли аж целых двух крабов. Почему взять пару было большой ошибкой — поговорим позже.
Крабов превеликое множество, каких только нет. В мире больше 7 тысяч видов и они очень разные: от японского краба-паука с размахом ног под четыре метра до крошечных крабиков, которые помещаются на ногте. Дома тоже держат разных: красных мангровых, малюсеньких «вампирских» крабов с горящими жёлтыми глазами, речных крабов. А раки-отшельники, вопреки названию, вообще не настоящие крабы, а их дальние родственники.
На этом фоне радужный краб выигрывает сразу по нескольким пунктам. Он крупный, но не гигантский, поэтому за ним интересно наблюдать, а террариум не займёт пол комнаты. Он яркий: тёмно-синий панцирь, оранжевые ноги и светлые клешни выглядят так, будто его раскрашивал ребёнок, которому выдали все фломастеры сразу. Он выносливый и прощает новичку мелкие ошибки. И он сухопутный: ему не нужен полноценный аквариум с фильтрами, хватит террариума с бассейном.
Научное имя нашего героя — Cardisoma armatum. Вторая часть переводится с латыни как «вооружённый», и любой, кого он хоть раз ущипнул, согласится, что назвали его точно. Он относится к семейству сухопутных крабов (Gecarcinidae), а родом из Западной Африки: живёт на побережье примерно от Сенегала до Анголы. Там он селится в мангровых зарослях, у лагун, болот и в устьях рек, то есть недалеко от воды, но на суше. Днём радужный краб сидит в глубоких норах, которые сам роет во влажной земле, а ночью выходит искать еду. В другие страны он попал вместе с торговлей экзотическими животными. Кстати, в англоязычных странах его зовут не только rainbow crab, но и patriot crab, «краб-патриот», потому что его цвета похожи на американский флаг.
Если вы подумали «заведу пару, буду разводить», придётся вас расстроить. Радужные крабы живут на суше, но размножаются по морскому сценарию: самка выпускает икру в солёную воду, и из неё выходят крошечные личинки, которые неделями плавают в океане как планктон, прежде чем превратиться в настоящих крабиков. Чтобы повторить это дома, нужна маленькая лаборатория морской биологии, а выживают личинки плохо даже в природе. Поэтому почти все радужные крабы в продаже пойманы в дикой природе, и каждый из них проделал долгий путь из Западной Африки до вашего террариума. Это, кстати, ещё одно «почти»: купить краба можно, а вот вырастить своего с нуля, увы, нет.
Если вам кажется, что одному крабу скучно и надо взять ему друга, крабы с вами не согласятся. Радужные крабы — убеждённые одиночки и территориалы. В природе у каждого своя нора, и гостей там не ждут. В террариуме деваться некуда, поэтому двое начинают делить всё подряд: укрытия, лучшее место для копания, бассейн и особенно еду. Делят клешнями, и потеря ноги в такой разборке — обычное дело. Но самое опасное начинается во время линьки. Краб, только что сбросивший старый панцирь, мягкий и беззащитный, и для соседа он в этот момент не товарищ, а ужин. Так что держать двух крабов вместе — значит покупать огромный террариум с кучей укрытий, следить за каждой линькой и в любой момент быть готовым их рассадить. А по факту чаще всего всё равно приходится заводить второй террариум. Вот ещё одно «почти»: радужный краб идеален, но только если он у вас один.
Панцирь краба — это его скелет, только снаружи. Он защищает, но не растягивается, поэтому чтобы вырасти, крабу приходится время от времени вылезать из старой брони и отращивать новую. Это и есть линька, самое загадочное и нервное событие в жизни владельца. Приближение линьки обычно заметно заранее: краб начинает меньше есть, становится вялым, цвета как будто тускнеют (панцирь становится оранжевым), а потом он начинает часами сидеть в воде. Может просидеть целую неделю. Главное правило линьки: краба лучше нельзя лишний раз не тревожить. Сам процесс линьки занимает около часа.
Краб набирает воду, разбухает, старый панцирь лопается по шву на спине, и краб буквально выбирается из самого себя, вместе со всеми ногами, клешнями и даже жабрами. Новый панцирь сначала мягкий как резина и затвердевает постепенно. Пока этого не случилось, краб совершенно беззащитен, поэтому и прячется так глубоко. Старую шкурку он потом съедает, ведь в ней много кальция для новой брони. Так что если вы найдёте в террариуме пустой панцирь, не спешите его выбрасывать: это не мусор, а обед. А ещё линька — время чудес в прямом смысле: если краб когда-то потерял ногу или клешню, после линьки у него отрастёт новая. Иногда, это занимает две линьки. Сначала вырастает маленькая, но с каждой следующей линькой она будет всё больше.
Что может сделать хозяин? Немного, но это важно: обязательно посолить воду в его бассейне. И дать ему покой. Молодые крабы линяют чаще, взрослые реже, и каждый раз это небольшой стресс для нас. Так как во время линьки краб может погибнуть. Просто не хватит сил чтобы сбросить старый хитин.
Через пробы, через ошибки, но мы пришли к почти к идеальной домашней среде для краба. И выглядит это как на фото ниже:
Почти идеальный наполнитель — это кокосовый субстракт. Менять его надо раз в полгода. Для радужного краба грунт — не декор, а половина жизни: в нём он роет норы, прячется днём. Поэтому лучший вариант — кокосовый субстрат, то есть измельчённая кокосовая скорлупа и волокно. Во-первых, он отлично держит влагу и отдаёт её постепенно, а значит, в террариуме дольше сохраняется нужная крабу влажность. Во-вторых, он мягкий, натуральный и безопасный: в нём нет острых частиц, и ничего страшного не случится, если краб случайно что-то проглотит вместе с едой (жрет его регулярно получая черные какашки). В-третьих, это его любимое развлечение — копать субстракт, поверьте, он это будет делать часами.
Ну и бонус: стоит он недорого, продаётся в любом зоомагазине в виде спрессованного кирпича, который при замачивании разбухает в целое ведро грунта. Многие владельцы смешивают кокос с песком, чтобы норы были ещё прочнее. Главное — не переборщить с водой: грунт должен быть влажным, но не мокрым, иначе в нём быстро заведётся плесень. Влажность — по-хорошему, примерно как у отжатой губки: при сжатии в кулаке комок держит форму, но вода из него не течёт.
Радужный краб всеядный, и в еде он почти не привередлив, но рацион всё же должен быть разнообразным. Основа меню — растительная еда: кабачок, огурец, морковь, тыква, листья салата, а из фруктов яблоко, банан или манго, но понемногу, потому что в них много сахара. Пару раз в месяц крабу нужен белок: кусочек рыбы, креветка, мидия, сверчки или мучные черви, варёное яйцо. Обязательно нужен кальций для крепкого панциря, особенно перед линькой. Проще всего положить в террариум кусочек сепии (раковины каракатицы, продаётся в зоомагазинах для птиц) или измельчённую яичную скорлупу. Всё должно быть без соли, специй и масла, а фрукты и овощи — хорошо вымыты от химии. Кормить лучше вечером, ведь краб ночной житель, и небольшими порциями каждый день или через день. Утром всё недоеденное нужно убрать, иначе к вечеру в террариуме появится плесень и запах. И не пугайтесь, если краб вдруг перестал есть: часто это значит, что скоро линька. Краба без еды можно оставлять до двух недель. Но без еды он не останется — он будет жрать субстракт!
Так почему же радужный краб — (почти) идеальный питомец? Он не лает по утрам, не требует прогулок в дождь, не дерёт диван и не вызывает аллергию. Ему не нужен дорогой корм.Его не нужно таскать к грумеру, а уезжая на выходные или в отпуск, можно не искать передержку. При этом он невероятно красивый, живёт годами и каждую ночь устраивает в террариуме свою маленькую стройку, за которой можно наблюдать бесконечно. Да, он не придёт к вам на колени и скорее ущипнёт, чем позволит себя погладить. Он ведёт ночную жизнь, иногда пропадает под землёй на месяц, а дружить согласен только с самим собой. Но если вам нужен не плюшевый компаньон, а маленький инопланетянин в панцире, который живёт по своим правилам и время от времени удивляет, лучше варианта не найти.
Обожаю готовые платы с экранчиками. По сути это уже готовые для программирования девайсы. Сразу можно что-либо реализовать. Мне попала в руки плата от Waveshare. Плата сразу с RLCD экраном 4.2 дюйма (ST7305 300 x 400), 18650, микрофоном, спикером и чипом ESP32-S3.
Для понимания, что вообще за плата и из чего состоит внизу будут фото. Полное описание и конфигурация платы на wiki разработчика. А купить можно на популярных маркетплейсах.
Честный ответ: потому что в таком форм-факторе и в такой же конфигурации не было e-ink. В добавок e-ink медленно обновляется. Особо медленно если экран на электронных чернилах трехцветный. Скорость обновления RLCD такая же как на обычном LCD, вполне можно разогнать до 60 кадров в секунду. Поэтому можно юзать не только для часов, но об этом позже.
Программировать мы будем через VSCode + Platform IO (PIO). Можно через Arduino IDE, однако это не самая удобная и гибкая платформа для работы с кодом, а вот PIO сильно удобнее. Кодом я тут не буду душить аудиторию, единственное что скажу буду юзать либу U8g2 - библиотека графики для монохромных дисплеев на микроконтроллерах, автор Оливер Краус. Самая популярная в этой нише.
Что мне действительно хотелось видеть каждый день на столе это часы и погоду. Но ведь у меня в телефоне есть часы и погода! Крайне удобно перед выходом куда либо посмотреть будут ли осадки, какая температура, УФ-индекс. И да, погоду хочется видеть на 12 часов вперед на каждый час. Больше нет смысла смотреть, имхо, прогноз дальше суток крайне не точен. Убеждался в этом неоднократно. А вот на 12 часов можно посмотреть с вероятностью осадков - то что нужно знать сегодня. Итог ниже.
Давайте разберем по частям тут выведенное. К погоде я еще добавил давление, влажность и загрязнение воздуха в моем районе. Встроенные датчики не использовал. В качестве источника погоды использую 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 режима переключаются одной кнопкой по кругу. То есть всё это в одной прошивке!
В интернете еще нашел вот такой забавный проект радара на той же плате
Нужен еще радар LD2450 который подсоединяется к плате. В целом интересная штука, без понятия где это можно на практике примерить.
А что вы бы реализовали на такой плате?
Пользуюсь 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. Как быстро подключится к MeshCore если такая нода у вас уже есть в этом видео. Подключаете антенну, а потом аккум и вуаля, вы уже можете как принимать сообщения от других абонентов так и общаться с ними. Для личного использования я лично рекомендую Heltec T114 - черезвычайно автономное переносное устройство. Заряда аккума хватает на трое суток. Идет сразу в стильном корпусе и с антенной.
MeshCore работает отлично там где большая плотность абонентов и репитеров. Как упомянул автор из статьи можно ставить репитер, а можно не ставить. Если хотите помочь сети и преисполнились в своем сознании - то пожалуйста, абоненты сети скажут вам спасибо. Репитер, он же повторитель, он же репа, он же ретранслятор - занимается тем что пересылает сообщения между другими репитерами и конечными нодами (компаньонами). Лучше всего это увидеть своими глазами на сайте Мешкортеля.
Теоретически при прямой видимости дальность достигает ~15 километров между двумя нодами, на практике в условиях городской застройки стабильная связь в радиусе 1 километра. Но учитывая взлет Mesh-сетей за последний год покрытие становится все лучше и больше.
А также есть царь-репа, легендарная в некоторых кругах Варшавка, которая вещает сигналом на половину Москвы. Найти на карте по ссылкам выше не составит труда.
Meshtastic появился сильно раньше в 2020 (на 5 лет раньше MeshCore) году и обладает примерно тем же функционалом. Почему бы не использовать уже проверенную технологию? Да и комьюнити там больше. Если коротко - Meshtastic не подходит для города и городских сетей. В поход - да, на природу - да, в спасательные операции - да. Но не в статичную урбанизированную сеть. Первый архитектурный затык - 7 хопов (в Meshcore 32/64). А по умолчанию вообще стоит 3.
Хоп (от англ. hop — «прыжок») — это одна ретрансляция пакета от узла к узлу. Каждый раз, когда сообщение принимает промежуточная нода и передаёт его дальше по эфиру, засчитывается один хоп.
Второе ограничение это его же философия - каждая Meshtastic нода по умолчанию ретрансилует сообщения, учитывая что большинство таких нод находятся в квартирах - ретранслятор получает отвратительным, да и сам аккум ноды высаживается очень быстро. Квартира как клетка Фарадея, сигналы из квартиры плохо как "выходят" так и "заходят".
И третье напоследок, Meshtastic - это все таки первый порожек, это как рекламная вывеска со входом где много новичков, а в чатах все просто пингуют друг друга без какого то нормального общения. Все абоненты MeshCore - это бывшие абоненты Meshtastic.
Всем спасибо за внимание, это мой первый пост на Пикабу. Если пост вызовет отклик - выпущу продолжение, есть еще о чем рассказать.
