Контроллер №2

В процессе проектирования новой версии контроллера (сразу с внутренним БП и 4-мя управляемыми розетками 220В) я уже жалел, что затеял его в OpenSCAD. Столько формул и привязок пришлось писать, что мозги часто закипали. Не-не-не, для более-менее сложных объектов буду брать теперь SolidWorks. Но, к счастью, снова с размерами нигде критично не промазал, потому перепечатывать не пришлось. Разве что розетки чуть-чуть пришлось подправить канцелярским ножом, бо слишком тяжело вставлялись. А вчера, наконец, появились саморезы необходимого размера, так что появился повод уже допаять все до конца и протестировать.

Парадок Монти-Холла -> симуляция

Попался мне на одном канале сюжет про парадокс Монти-Холла. Про ту игру, в которой три двери, за которыми автомобиль и две козы. Давным-давно я даже по телевизору это видел, вроде бы. Захотелось вспомнить детство, когда я на “ZX Spectrum” написал симулятор игры в казино, где проверялась стратегия удвоения ставок (мартингейл), которую я тогда и придумал. Решил на python написать симуляцию этой телевизионной игры с выбором дверей. Причем, написать так, чтобы код был максимально нагляден даже для непрограммистов.

Portsnap fetch update...

Попалось на глаза видео “FreeBSD | Обзор, мнение, пригодность для десктопа”. Что-то ностальгическое отозвалось в голове. Дай, думаю, включу. Ну и слушал в фоне ролик, пока там про обновление портов не началось. Вспоминаю, что и мне не помешало бы. Захожу на Debian и … почти начинаю писать “portsnap fetch update”. 🙂 Вот это впечаталось. Хотя я даже и вспомнить уже не могу когда FreeBSD перестал использовать. Но их “порты” в момент первого знакомства с этой системой мне очень пригодились.

Контроллер №1

Последний этап создания контроллера для теплицы меня даже затянул. Тут и попрограммировать раздолье, и интерфейс порисовать. То туда сдвинуть на несколько пикселей, то сюда, то пиктограммки захотелось добавить. В конце еще и OTA добавил (удаленная перепрошивка микроконтроллера по WiFi). А 3D модель сделал на удивление точную по размерам. Все с первого раза совпало. Разве что улучшить пару моментов захотелось, да корпус покрепче напечатать. Но это как-нибудь позже.

Прошел все круги ада с этими микроконтроллерами

В конце нескольких часов паяния вдруг обнаружилось, что Wemos D1 mini не видит WiFi… А нормально выпаять там нереально, так что разрушил все и начал с нуля с другим микро-контроллером (ESP-12E). То начались непонятные перезагрузки модуля, как только управляющий пин управлял мосфетом с включенной индуктивной нагрузкой. И защитные диоды, гасящие обратный ток, и сглаживающие конденсаторы везде, где только есть смысл. И даже психанул и полностью переписал прошивку, сделав ее совместимой командами с оупэнсорсной Tasmota, которую часто используют вместо родной Sonoff (и еще целой кучи устройств).

Программирование микроконтроллеров на C и Python

Сижу тут, пишу себе прошивку для микроконтроллера esp8266 на C и ловлю себя на мысли: до чего же иногда уже раздражает писать примитивную низкоуровневую логику. Принять по MQTT char *topic, пройтись в цикле по каждому char, сделать tolower(), потому что там нет strcmpi(), потом делать strcmp()… Как же к хорошему (к Python) привыкаешь. :) На нем программирование превращается в процесс творения. А на Си это какой-то бег по кругу с препятствиями.

Twisted WiFi Controlled Desk Lamp

Пока я еще помню, надо для истории записать про лампу, которую мне захотелось собрать сразу, как я начал играться с 3D-печатью. Вот такой интересный проект мне попался на Thingiverse В круглой версии у автора лампа выглядит так: Но я печатал уже “искривленный” вариант: Так вот, меня тогда попросили посчитать себестоимость такой лампы по материалам. Расчет вышел таким (итог в $ внизу): Twisted WiFi Controlled Desk Lamp

Домашний Squid для Ipad. URL filter.

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

До чего дошел прогресс. Воюют роботы, а не человек (с)

Попалась статейка на Habr.com о том, как разработчик боролся с ошибочной блокировкой приложения в Google Play Store: В этот раз ответ пришлось ждать 48 часов, но ответ меня снова порадовал, т.к. это была точная копия предыдущего ответа, даже от того же самого парня по имени Edward. Мол, все OK-ей, публикуйся. Мне вот интересно. Неужели он ни разу не заподозрил, что все эти манипуляции разбанили/забанили ПОЛНОСТЬЮ АВТОМАТИЧЕСКИЕ? :) И что этот Эдвард - тоже бот.

Тестирую адресную светодиодную ленту Ws2812b с Arduino

Заказал на AliExpress адресную светодиодную ленту WS2812B (3 метра). Это такая лента, в которой управлять можно отдельно свечением каждого диода. И делается все это по специальному цифровому протоколу при помощи контроллера (например, Arduino). Это позволяет реализовать какие угодно эффекты и анимации. Можно сделать Ambilight, как на телевизорах Philips, можно отображать статус какого-то процесса (путем включения нужного цвета), а можно вообще светомузыку сделать. Я пока тестирую как будет выглядеть эта светодиодная лента на шкафу.