2021-04-11

Новое устройство для экспериментов с Asterisk

Собрал новое устройство для экспериментов с Asterisk. Почему-то прошивка сделанная автором raspberry-asterisk у меня зависает в случайные моменты времени. Иногда работает несколько дней, иногда зависает через несколько минут. Поначалу грешил на саму малинку, потом на SD карточку, потом на блок питания. Заменил последовательно все, однако устройство стабильно зависает.

Да, я знаю, что на плате стоимостью в десять долларов невозможно собрать стабильно работающее устройство с астериском, которое будет полностью выполнять функции "взрослой" АТС. Я знаю что для чего-то более серьезного нужно более серьезное оборудование. Но я тем не менее, хочу знать как это сделать!

Настроив монториг памяти и температуры устройства, я заметил, что устройство не потребляет много памяти и не уходит в cpu троттлинг, но, тем не менее, температура процессора немного выше чем на аналогичном устройстве без астериска.

Решил, что все дело в самой прошивке, ведь, даже автор raspberry-asterisk больше не поддерживает в новых образах Raspberry Pi Zero.

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

Компиляция астериска заняла несколько часов, однако все сработало как надо и в конце концов у меня получилась вполне работающая система.

Пока устройство работает стабильно - посмотрим, как долго проработает в этой инкарнации.

 

Коментариев: 2

 
  2021-04-05

Автоматический полив комнатных растений

Выложил на гитхаб файлы из проекта "Поливалка".

Наверно, любая домохозяйка время от времени сталкивается с вопросом - кому бы поручить полив комнатных растений во время длительного отсутствия, например во время отпуска. Конечно на помощь всегда могут прийти добрые родственники или соседи. Если беспокоить других людей не хочется - на помощь могут прийти подручные средства из пластиковых бутылок мокрых тряпок и тазиков…. Однако по приезду можно обнаружить, что  цветы все равно завяли така как система которую вы установили перед отъездом дала сбой, корни засохли, а вся вода из емкости вылилась на пол и залила соседей… 

Но если подумать, только ли во время отъезда нужно автоматизировать полив комнатных растений? Ведь некоторые рассеянные люди вроде меня, даже когда никуда не уезжают, постоянно забывают поливать цветы. То и дело, обнаруживаешь, что твой любимый фикус начинает засыхать, потому что его уже неделю никто не поливает. Даже цветы в офисе иногда начинают терять листья, так как никому в нашем мужском коллективе не приходит в голову регулярно их поливать... 

Читать дальше в разделе "Статьи"...

 

Оставить комментарий

 
  2021-04-05

Видео стриминг с ESP32

В сети есть много примеров того как превратить плату esp32 cam в веб-камеру способную стримить видео поток. Однако, такая веб-камера может раздавать контент только на одно устройство, что делает такое решение не очень функциональным.

Задался вопросом, как сделать так, чтобы видеопоток от веб-камеры можно было принимать на нескольких устройствах. К удивлению, в сети, почему-то, очень мало успешных решений для потокового вещания с ESP32, хотя подобный проект мог бы быть довольно интересным.

Однако, существуют примеры того, как организовать потоковое вещание при помощи nginx от других источников, ту же идею можно применить и для нашего случая.

После нескольких вечеров экспериментов мне удалось организовать стриминг от устройства на esp32 cam в локальной сети на несколько устройств. В качестве реверсивного прокси-сервера используется nginx. FFMpeg преобразует RTSP поток от веб-камеры в RTMP видео поток который посылается на веб-сервер и раздается нескольким устройствам одновременно. В качестве видео плеера я использовал VLC но может подойти и любой другой.

Таким образом, сервер получает трафик виде одного потока от камеры esp32 который затем уже раздаётся на несколько потребителей. Веб сервер был поднят на устройстве Raspberry Pi Zero W -  мини компьютера размером с половину пластиковой карточки и стоимостью в десять долларов. Вычислительных способностей этого малыша оказалось достаточно для перекодирования в реальном времени видеопотока с ESP32 Cam и раздачи его на оконечные устройства.

Команда для перекодирования потока при помощи ffmpeg у меня получилась вот такой:

ffmpeg -rtsp_transport tcp -i rtsp://192.168.0.61:8554/mjpeg/1 \
    -f flv -tune zerolatency -preset ultrafast -r 10 -an \
    rtmp://localhost:1935/live/ccc

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

 

 

Оставить комментарий

 
  2021-02-05

Чем снимали фильм про дворец Путина

На сайте радио свобода статья посвященная модели дрона, который использовался для съёмки фильма.

Оказывается, что поскольку территория над дворцом Путина объявлена бесполетной зоной и дроны DJI залетать в нее не могут из-за ограничений в прошивке, а вот Autel Evo II вполне может!

Похоже, продажи этих коптеров теперь подскочат!

 

Оставить комментарий

 
  2021-01-24

Самобалансирующий робот из Lego EV3

Давно хотел сделать самобалансирующего робота. У ребенка есть Lego EV3 Home Edition. В сети есть инструкции как собрать такого из набора EV3 Education у которого в комплекте есть гиро датчик. В Home Edition гиро датчика нет - но ведь его можно купить!

Зашел на сайт Lego сделал заказ и через два дня посылка была у меня, благо в Берлине доставка не занимает много времени.

GyroBoy показался мне слишком сложным - к тому же у нас не было некоторых деталей, поэтому решил собрать модель попроще Balanc3R. Вот она наша прелесть:

 

Оставить комментарий

 
  2020-12-18

Измерение ёмкости аккумулятора

Потребовалось измерить емкость аккумуляторной батареи. Однако никакого готового устройства для этого в доме не оказалось.

Заказывать на амазоне не хотелось, поэтому собрал из того что было небольшое устройство для измерения ёмкости аккумулятора на базе Arduino и ino219.

На макетной плате расположены arduino pro mini датчик тока и напряжения ina219 контроллер зарядки TP4056 и стабилизатор step-up который повышает напряжение 3.7 Вольт аккумулятора до 5 Вольт который нужен arduino и OLED дисплей. Устройство питается от элемента 18650.

Данная схема позволяет измерять ёмкость аккумулятора при зарядке и разрядке литий-ионных аккумуляторов и отображать ее на дисплее.

Когда внешнего питания нет устройство работает от аккумулятора и одновременно измеряет ёмкость аккумулятора при его разрядке. 

На дисплее показывается циклические напряжение аккумулятора ток который течет через него и одновременно накапливается ёмкость в ампер часах и в Ватт часах. 

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

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

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

Таким образом можно измерить емкость литий-ионного или литий-полимерного аккумулятора при его разрядке или зарядке. 

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

Прошивка, как всегда, выложена на github.

 
 

Оставить комментарий

 
  2020-12-03

Новый гаджет от TTGO и не только

Приехал TTGO ESP32 T-SIM7000G. Ушлые немецкие почтальоны смогли затолкать девайс в почтовый ящик! Удивительно, но ничего, вроде, не поломалось.

Однако, встала другая проблема - чтобы запустить нужна батарейка формата 18650 а у меня такой дома не наблюдается. Решил посмотреть можно ли купить на Амазоне онлайн. Оказалось что просто так купить литиевый аккумулятор нельзя - но можно купить фонарик с четытьмя аккумуляторами в комплекте. При этом за смешные деньги - в Conrad Electornics за ту же сумму можно купить только один элемент и без фонарика, поэтому заказал на амазоне. Видими всилу каких то особенностей Амазона там запрещено подавать аккумуляторы просто так, вот продавцы и выкручиваются, делая вид что продают фонарики и батарейки к ним.

Однако тут я вспомнил, что у меня лежит старая батарейка от ноутбука в которой... тада! аж шесть аккумуляторов 19850. Несколько минут работы кусачаками и аккумуляторами я обеспечен.

Вообще данный формат аккумулятора оказался очень удобным, - достаточно ёмкий и при этом достаточно компактный - идеальный формат для небольших самоделок.

Но тут я, почитав обзоры понял, что для полной энергонезависимости мне просто необходимы солнечные батареи - TTGO ESP32 T-SIM7000G заточен на работу именно с ними. Сказано - сделано, на амазоне же заказал три небольших элемента.

Теперь вот думаю как измерять токи зарядки, емкости батареек и прочии параметры свалившегося на меня богатства, для чего уже собираю отладочную схему для опытов на базе ino219 ардуины и AMOLED индикатора. Интересно, получится ли из этого что нибудь? 

 

Оставить комментарий

 
  2020-11-30

Платы - визитки

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

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

Мне особенно нравится идея визиток-электронных устройств которые не только содержат твою контактнную информаацию но и презентуют твои инженерные навыки.

Френк Цао сделал визитку, которая, если вставить ее в USB порт компьютера, печтает приветствие в текстовом редакторе:

 

Еще интересный вариант - визитка не требующая питания и работающая через NFC - считываешь такую при помощи мобильника с NFC и на мобильнике открывается страничка с твоими данными, а на карточке при этом еще и светодиод загорается!

Если питание от USB или от NFC катушки вам не нравится можно запитать устройство от батарейки, благо современные плоские батарейки достаточно плоские:

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

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

 

Оставить комментарий

 
  2020-11-15

Заказал интересную плату

Вторую неделю вся контекстная реклама мне подсовывает новую железку от TTGo : TTGO T-SIM7000G Module ESP32-WROVER-B Chip WiFi Bluetooth 18560 Batterie Halter Solar Ladung Entwicklung Bord

Выглядит очень интересно - процессор ESP32, на борту 3g интернет, WiFi, GPS, и все это питается от аккумулятора 18560 с возможностью зарядки от солнечной батареи. По автономности это должна быть очень крутая штука для всяких дистанционных устройств - онлайн трекеров и подобных самоделок с автономным питанием.

Стоит удовольствие около 30 Евро. Неизвестно правда, нужно ли будет платить пошлину - в Германии весь китайский импорт облагается пошлиной, и не маленькой, - вот и посмотрим.

P.S. Уже давно амфиботропная асфиксия мешает мне заказать нормальный Raspberry Pi чтобы, наконец, доделать GSM гейт - а тут под действием момента взял и заказал совершенно ненужный девайс. Сработала контекстная реклама.

 

Оставить комментарий

 
  2020-08-23

Велотрекер

Согласно статистике каждые полторы минуты в одной только Германии воруют один велосипед. В прошлом году было украдено 332 486 велосипедов на сумму более 120 миллионов евро, и это только задокументированные случаи воровства. Во всем остальном мире ситуация обстоит не лучшим образом.

После того как моему любимому велосипеду приделали ноги, стал думать как бы этого можно было бы избежать подобного в будущем. Как правило, украденный велосипед не увозят далеко - одному моему коллеге повезло больше чем мне - тот нашел свой велосипед на соседней улице пристегнутым к забору другим замком. Свой велосипед подобным образом мне найти, увы, не удалось. Если бы на велосипеде стоял GPS трекер, то его можно было бы найти за считанные минуты.

После того как TTGO выпустили плату с ESP32 и SIM600 на борту я подумал, что это почти готовый GPS трекер, на нём уже есть контроллер LiPo аккумулятора и слот для SIM карты - нужно только добавить в связку GPS! Из недорогих на рынке оказался модуль NEO6m который удивительно прост в управлении. Трекер питается от LiPo аккумулятора емкостью 700mAh

Все компоненты достаточно компактные, их можно поместить, например, в велофонарь, раму, сиденье - в велосипеде не так много вариантов, но они есть.

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

Трекер посылает телеметрию на собственный сервер каждые десять минут - возможно в будущем это время будет увеличено чтобы добиться большей автономности.

Готовое устройство внешне выглядит как обычный задний велофонарь и является неразборным, для герметичности фара залита термоклеем, поэтому прошивку нужно обновлять по воздуху, это первое что я реализовал, так как снимать устройство каждый раз когда нужно залить новую прошивку мне совершенно не хочется. Сама прошивка написана на C++ в среде Ардуино.

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

Все ссылке в этой статье ведут на немецкий Амазон где я заказывал компоненты устройства. В России те же самые детали можно купить на AliExpress, в Германии из за высоких пошлин и трудностей с таможней AliExpress, увы, не так популярен. 

В ближайшее время планирую сфокусироваться на функциональности - добавить в работу bluetooth и wifi, улучшить автономность, сделать мобильное приложение и улучшить серверную часть. Как только будет возможно - выложу исходники и схему в открытый доступ. Пока же, если кто-нибудь захочет поучаствовать в разработке или повторить - пишите мне в личку - обязательно поделюсь исходниками. 

 

Оставить комментарий