Sleepless tech | Евгений J – Telegram
Sleepless tech | Евгений J
782 subscribers
488 photos
80 videos
1 file
216 links
DIY, web, coffee
Автоматизирую все и вся, ремонтирую что сломалось, трачу время на just-for-fun проекты. Пишу про хардвар и софтвар и не только.

http://jem-space.ru

Связь со мной: @jem_jem
Донаты на припой и хостинги: https://bit.ly/2MKcRoJ
Download Telegram
Сегодня развлекался с чековым принтером goojprt qr203.
Когда-то давно купил его на Али для проекта чекового фотика. Потыкался с ним пару дней и подумал что бракованный.

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

Скорее всего реально брак, но всегда ощущение что просто что-то не учел или недогуглил.

Кстати, для таких принтеров есть классная либа для arduino - http://developer.alexanderklimov.ru/arduino/adafruit_thermal.php
#esp #esp32cam #hardware #cctv

Сегодня вечер небольших побед!

Допилил свой конфигурируемый скетч для отправки изображений с esp32CAM на сервер.

Отдельное спасибо @QuoVadisNero, который поделился своими наработками, что позволило увеличить fps с 1 до 5.

Так чем меня так радует эта конфигурация?

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

Во-вторых, добавил сервер на esp в который можно постом прислать конфиг с настройками и он его применит. Поменялись настройки на серверной стороне - послал POST, работаем дальше)

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

Тут я вообще долго примерялся и гуглил куда можно писать конфиг (очень не хотел работать с EEPROM, потому что там нужно точно знать какой длины строки твоих параметров) в итоге нашел что у ESP есть внутренняя файловая система и там можно хранить файлы с конфигами например!! (узнал об этом поковырявшись в исходниках EspEasy)

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

Для этого конечно пришлось разрулить конфликты библиотек - получилось все обернув esp_http_client в неймспес и реализовав в нем класс.

Все обновы тут https://github.com/jemsgit/espCCTV/
Плюс запилил лаконичный корпус для камеры.
Тряхну немного стариной)

Старичок кстати еще жив!
Ты просишь меня сообщить о проблеме, но даже не даёшь мне ссылку для репорта.

Збс UX)
#raspberry

Тут Raspberry выкатили мелкую платку форм-фактора Arduino Nano - Raspberry Pi Pico:

https://www.raspberrypi.org/blog/raspberry-pi-silicon-pico-now-on-sale/

На борту Arm Cortex-M0+, 2 UART, SPI и I2C интерфейсы и 264KB RAM.
Прогать для нее можно на Си или MicroPython.

Обещают за все про все брать 4$. Думаю стоит попробовать.
This media is not supported in your browser
VIEW IN TELEGRAM
Помониторил кстати сколько потребляет ESP32- CAM. В пиковых нагрузках получается где-то 450мА.
После тестирования системы видеонаблюдения на node.js столкнулся с багом ffmpeg при склейке изображений в видео - неправильно проставляются keyframes или вообще не проставляются, что не позволяет перематывать видео на определенный момент времени.

Поплясав с бубном решил проблему дополнительным параметром
-x264-params keyint=5:scenecut=0

где keyint=5 - это число фреймов, после которых выставляется keyframe,
а scenecut=0 - чтобы не добавлялся дополнительный фрем, когда энкодер считает что сцена обрезана

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

ffmpeg -framerate 5 -i %7d.jpeg -vcodec libx264 -x264-params keyint=5:scenecut=0 -b 800k -pix_fmt yuv420p result.mp4
Доброго вечера ✌️

Сегодня развлекался с Github Action. Как отсталый динозавр восполняю пробелы в devops и учусь деплоить не копипастом проектов с компа на сервак, а как нибудь прилично. Github Actions один из самый простых способов это сделать.

Если кто не в курсе, вот неплохая вводная от Вадима Макеева

https://www.youtube.com/watch?v=hevU4NdIsoU&ab_channel=VadimMakeev
Лайфхак дня: чтобы открыть любой публичный GitHub-репозиторий в VS Code прямо в браузере, добавьте 1s к github в адресной строке → https://github.com/conwnet/github1s
Разработчики ноутбуков, которые располагают батарейку биоса под крышкой, автоматически попадают в рай после смерти)
#web

Привет всем грешникам в этом чате!

Я тут выкатил возможность избавиться от грехов при помощи React и NodeJS https://www.nosins.ru

А также небольшую статью о том, что я открыл для себя, пока пилил этот сервис, и с какими демонами боролся в процессе - https://jem-space.ru/pwa_develop_and_deploy/

Буду рад фидбеку!

#web #react #node_js #just_for_fun
This media is not supported in your browser
VIEW IN TELEGRAM
#hardware
В общем такой расклад, ребят. Делаю экономичный слайдер для камеры и не хочу использовать зубчатый ремень. Хочу изъебываться и использовать прорезиненные валы и верёвку😁 Только все равно местами бечевка проскальзывает даже по резинке. Может кто знает какой материал веревки подойдёт лучше?)

Как закончу, расскажу из каких палок собирал и почему не юзал готовые модели)
Внезапно вспомнил про то, что у телеги есть payment api. Решил затестить.

Чтобы принимать платежи нужна Яндекс Касса например (теперь уже Юмани). Поэтому у вас теперь есть уникальная возможность получить прощение грехов через @nosins_bot

Т.к. все на стадии тестирования, то можно провести платеж указав тестовые данные карты:

1111 1111 1111 1026
valid 12/21
cvc 000

Думаю, что бота можно довольно просто положить 😁 Как допилю, накатаю еще одну статейку про это.

Всем доброй ночи!)
#esp #hardware

Нормальную систему мониторинга влажности запилить нет времени, поэтому припаял датчик к аналоговому входу esp12 (на котором уже висит датчик температуры и давления). Как оказалось, АЦП esp12 принимает максимум 1В на вход, поэтому чтобы работало нормально, нужно было ставить делитель.
Но я слишком ленив и устал, поэтому подключил цифровой выход с датчика (который при достижения порога выдает высокий уровень).
Теперь хотя бы так могу наблюдать за влажностью.