Некоторое время назад мне в очередной раз потребовался USB-Serial адаптер. И не просто адаптер c RX/TX, а чтобы еще присутствовали управляющие сигналы. И не один UART, а несколько. И еще желательно, в виде одного композитного устройства, чтобы все это хозяйство не занимало больше одного USB-порта. Так и началась эта история...
User
Как перестать бояться и полюбить 1-wire
Xiaomi Gateway (eu version — Lumi.gateway.mieu01 ) Hacked
В этой статье я хочу поделится с Вами своими наработками и достигнутыми успехами в разборе Xiaomi шлюза (Версия с евровилкой с беру.ру). Расскажу как установить на него альтернативное ПО, как восстанавливать шлюз с затертым софтом и даже оживлять шлюз с затертым u-boot.
---------МНОГО КАРТИНОК-------------

STM32F3xx + FreeRTOS. Modbus RTU с аппаратным RS485 и CRC без таймеров и семафоров
Операционные усилители: 10 схем на (почти) все случаи жизни
В последнее время я по большей части ушел в цифровую и, отчасти, в силовую электронику и схемы на операционных усилителях использую нечасто. В связи с этим, повинуясь неуклонному закону полураспада памяти, мои знания об операционных усилителях стали постепенно тускнеть, и каждый раз, когда все-таки надо было использовать ту или иную схему с их участием, мне приходилось гуглить ее расчет или искать его в книгах. Это оказалось не очень удобно, поэтому я решил написать своего рода шпаргалку, в которой отразил наиболее часто используемые схемы на операционных усилителях, приведя их расчет, а также результаты моделирования в LTSpice.

Пишем прошивку под TI cc2530 на Z-Stack 3.0 для Zigbee реле Sonoff BASICZBR3 с датчиком ds18b20

Предполагается, что читатель уже имеет начальные знания языка C, что-то знает о Zigbee, чипе cc2530, методах его прошивания и использования, а также знаком с такими проектами, как zigbee2mqtt. Если нет — подготовьтесь или сходите почитать на https://myzigbee.ru и https://www.zigbee2mqtt.io/
Статья написана сперва подробно, но постепенно ускоряется и уже не останавливается на деталях, а описывает готовый код прошивки. Если кому-то не интересны рассуждения, то просто открывайте исходники прошивки и читайте их.
Исходный код готовой прошивки
Код и подход к разработке не претендует на идеальность. “Я не волшебник, я только учусь.”
Цель
Основная цель — разобраться, как писать прошивки под Z-Stack, давно хотел. Поэтому решил реализовать альтернативную прошивку под готовое оборудование (в качестве примера выбрано реле Sonoff BASICZBR3) и добавить возможность подключения популярного датчика температуры ds18b20.
Дополнительно хотел показать начинающим Zigbee-разработчикам пример разработки прошивки под чип TI cc2530 на Z-Stack.
Запуск VPN-сервера за провайдерским NAT'ом
Итак, возникла у меня необходимость подключаться со своего Android-смартфона к домашнему компьютеру, оба девайса подключены к Интернету через провайдерские NAT'ы, плюсом компьютер подключен через домашний роутер, который тоже NAT'ил соединения.
Классическая схема с использованием арендованного VPS/VDS с белым IP-адресом, а также аренда белого IP-адреса у провайдера не рассматривалась по нескольким причинам.
Умный дом xiaomi правильнее, чем home assistant, но можно еще правильнее

В предыдущих сериях я:
- Накупил устройств от Xiaomi для умного дома и посредством паяльника заставил их работать в увлекательной манере — без родных серверов через home assistant (ссылка на пост)
- Завернул web interface от home assistant в electron (ссылка на пост) с поддержкой нотификаций, менюшек, точбара итд (код тут)
- Разобрал протокол miio со стороны рассылки сообщений (ссылка на пост) и реализовал поддержку всяческих кнопок в xiaomi_miio.
Со временем накопилось понимание как устроены разные инкарнации умных домов, с точки зрения реализации сценариев и протоколов взаимодействия. С этим знанием я наделал устройств и реализовал для них "правильную" распределенную среду программирования для IoT с lisp-ом, криптографией и сборкой мусора. Под катом поведаю о ходе и результате процесса.
Нативный способ покрасить SVG-иконки
Обычно используются либо шрифты иконок, либо исходный код SVG скачивается и вставляется в HTML вручную. Шрифт нужно оптимизировать, иначе пользователь загрузит разом все иконки без надобности. Работа с исходным кодом требует тяжелых DOM-операций и потенциально опасна.
Чтобы защититься от вредоносного кода SVG нужно «почистить». Встроенный в Angular санитайзер, к примеру, не работает с SVG и превращает их в пустую строку. Можно воспользоваться проверенным инструментом DOMPurify и подключить его с помощью нашей библиотеки ng-dompurify, о чем я подробно рассказывал.
Давайте посмотрим на еще один способ, доступный в современных браузерах, — тэг USE.

10 советов схемотехнику

Введение в теорию автоматического управления. Основные понятия теории управления техническим системами
Публикую первую главу лекций по теории автоматического управления, после которых ваша жизнь уже никогда не будет прежней.
Лекции по курсу «Управление Техническими Системами», читает Козлов Олег Степанович на кафедре «Ядерные реакторы и энергетические установки», факультета «Энергомашиностроения» МГТУ им. Н.Э. Баумана. За что ему огромная благодарность.
Данные лекции только готовятся к публикации в виде книги, а поскольку здесь есть специалисты по ТАУ, студенты и просто интересующиеся предметом, то любая критика привествуется.

Производительность Raspberry Pi: добавляем ZRAM и изменяем параметры ядра
После установки Raspberry Pi в свою домашнюю серверную я заметил, что в моменты дефицита оперативной памяти она становилась очень невосприимчивой и даже подвисала. Чтобы решить эту проблему, я добавил ZRAM и внёс несколько изменений в параметры ядра.
ДИТ Москвы при проверке пропуска получает разрешение на отправку рекламы на следующие 10 лет
К таким «очевидным» сервисам относится, например, сервис проверки цифрового пропуска https://i.moscow/covid. Если раньше он позволял проверить только организацию по ИНН, то с недавних пор ДИТ Москвы стал массово аннулировать пропуска горожанам за якобы предоставление неверных сведений о месте работы — и отсылать их для подтверждения места работы на указанный сервис.
При нажатии на «Если у Вас заблокировали цифровой пропуск, перейдите по ссылке» сервис выдаёт просьбу ввести сначала номер паспорта, а потом ИНН компании, сопровождаемую непримечательной галочкой:

Абсолютное большинство людей проставят её, не читая сопутствующий документ — и очень зря.
Если говорить коротко, все граждане, попавшие на этот сервис, подписываются на передачу абсолютно всех данных, которые сервис в принципе способен о них собрать — от IP-адреса до номера паспорта и названия работодателя — любым третьим лицам с практически любыми целями, включая рассылку рекламы, на срок в 10 лет.
Спасение 12-ти летней АКБ погрузчика
Огромный плюс в том, что клиент не пытался самостоятельно «восстановить» АКБ, долив туда воды из под крана, кислоты или иной «чудесной» жидкости. Некоторые наши клиенты так и делают – и восстановить батарею после такого «самолечения» чаще всего невозможно.


На время обслуживания снимаем систему автодолива, заменяем ее на обычные пробки.
Вообще говоря, система автодолива – это не всегда хорошо. Как правило, клиенты, на технике у которых она установлена, считают, что система безгрешна, работает как часы и все их проблемы с доливом навсегда решены. Это не так: мы несколько раз тестировали подобные системы, и почти в каждой находился клапан, который не открывался при нормальном для системы давлении – а значит, вода в элемент просто не доходила. В перспективе отсутствие долива воды в один из элементов приводит к его износу: разброс по внутреннему сопротивлению среди элементов возрастает, и в какой-то момент обслуживать всю АКБ целиком попросту бессмысленно – необходимо работать с проблемными элементами отдельно.
Что в Белизне тебе моей или Справочное пособие по гипохлориту натрия («хлорке»)
Сегодня читаем о самом простом, самом доступном и самом действенном антисептике — про гипохлорит натрия (он же «Белизна»). Совместимость с различными материалами, техника безопасности, свойства и эффективность не только против коронавируса, но и против страшной плесени и ее микотоксинов. В качестве «вишенки» — контрольная закупка магазинных отбеливателей и оценка их состава. Чтобы узнать как в эпоху пандемии нас дурят производители бытовой химии и прочий «менеджерский брат» — идем под кат. И обязательно закидываем в закладки. Эта информация пригодится еще не раз ;)

Flutter + arduino nano 33 BLE sense = очень простой BLE sensor

Еще раз о передатчиках и приемниках 433 МГц

О приемниках-передатчиках 433 МГц написано очень много (в том числе и на хабре, конечно). Однако, правильно включать в схему этот комплект по какой-то странной причине, кажется, не умеет никто. Когда я в который раз прочел вот тут, что комплект «принимал на 8-ми метрах в пределах прямой видимости, 9-ый метр осилить не удалось», мое терпение лопнуло. Какие еще 8 метров?! В 40-50 я бы поверил, хотя в реальности, наверное, дальность еще больше.
Помоги компилятору помочь тебе
Предисловие
Современные компиляторы обладают огромным количеством диагностик. И удивительно, что очень малая их часть включена по умолчанию.
Огромное количество претензий, которые предъявляют к языку C++ в этих ваших интернетах, — про сложность, небезопасность, стрельбу по ногам и т.п., — относятся как раз к тем случаям, когда люди просто не знают о том, что можно решить эти проблемы лёгким движением пальцев по клавиатуре.
Давайте же исправим эту вопиющую несправедливость, и прольём свет истины на возможности компилятора по предотвращению ошибок.
Лёгкий способ сделать крохотный USB-хаб для Raspberry Pi

Перевод статьи с сайта самодельщика Retrocution
Бывало у вас такое, что вам не хватает USB-портов при создании проекта на Raspberry Pi Zero? Притом внешние USB-хабы или HATS не подходили из-за ограничений по размеру? Если да, или если вы просто ищете себе интересный проект с пайкой деталей, в результате которого получится нечто полезное, то этот проект – для вас!

7 трюков с Rest и Spread операторами при работе c JS объектами
Привет, Хабр! Представляю вашему вниманию перевод статьи «7 Tricks with Resting and Spreading JavaScript Objects» автора Joel Thoms.
Всем привет, на днях коллега по работе скинул мне ссылку на статью на английском языке в которой перечисляются разные методы работы с rest и spread операторами. Она оказалась мне полезна и я решил её перевести. Итак, начнем.

Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity