Pull to refresh
-2
0
Алексей @AlexeyPotopakhin

User

Send message

Opensource контроллер умного дома на базе Arduino Mega 2560 с поддержкой MQTT, DMX-512, 1-Wire, Modbus и Openhab

Reading time12 min
Views43K
Сегодня я решился вынести на суд общественности проект, работу над которым вел на протяжении последней пары лет: «LightHub». То, что получилось в итоге, можно назвать, пожалуй, самым дешевым решением для создания Умного дома, которое, тем не менее, умеет:

  • Управлять освещением и силовыми устройствами(Реле, диммеры DMX-512 и Modbus RTU)
  • Управлять теплыми полами (в качестве термодатчиков используются полтора десятка дешевых DS18B20, разведенных по квартире)
  • Управлять задвижками вентиляции/кондиционера
  • Управлять самодельной системой приточной вентиляции.
  • Многое такого, о чем я изначально не задумывался, просто в силу того, что контроллер получился абсолютно открытым, гибко конфигурируемым, и прекрасно дополняющим Опенсорсные решения Openhab+Mosquitto+NodeRed

На вход контроллера подключаются обычные выключатели, кнопки, контактные датчики, датчики протечки и пр. которые могут управлять как локальными нагрузками так и устройствами, подключенными к другим таким же контроллерам или ко всему, что понимает протокол MQTT. У меня, например, подключен геркон, установленный в коробке входной двери. Когда закрываю замок на три оборота — выключаются свет, теплые полы, бойлеры, AV ресивер. Когда возвращаюсь — состояние этих приборов восстанавливается как было до ухода.

На выход — например, такие вот релейные модули, DMX, Modbus переферия.

Контроллеры конфигурируются при помощи JSON файлов, которые при старте контроллера загружаются по http (далее, конфиг можно сохранить в NVRAM через Serial CLI). Ну и, конечно, все это управляется системой Openhab 2, через штатное мобильное приложение.
Задачи «малой автоматизации» решены как при помощи штатных openhab rules (не очень удобных), так и при помощи NodeRed. (По поводу NodeRed вот статья, которая прекрасно описывает пример автоматизации.)

Исходники, вместе с примерами конфигов, выложены на GIThub, описание понемногу выкладываю на сайте проекта. Соответственно, более полная история под катом.
Читать дальше →

Как я научился напрямую перезагружаться в нужную ОС через UEFI

Reading time5 min
Views86K

Добрый вечер, Habrahabr!


Сегодня мы научимся перезагружаться из Linux прямиком в Windows и обратно всего за один (двойной) клик.


image

Читать дальше →

Как прикрутить нормальный поиск к устаревшему SQL-бэкенду

Reading time25 min
Views23K
Предположим, нужно собрать персональную информацию, например, дни рождения, имя, пол, количество детей и т.п., а также некоторые маркетинговые данные — как часто пользователи используют кнопки в корзине мобильного приложения и т.п. У нас уже есть приложение на базе SQL, но (как мы увидим дальше) продолжать использовать SQL для поиска — не лучшая идея. Для поиска придется прикрутить какой-то NoSQL движок.

Как совместить миры SQL и NoSQL? В этой статье будет несколько живых примеров интеграции продвинутого поискового движка Elasticsearch в устаревшие приложения, работающие с RestX, Hibernate и PostgreSQL/MySQL.

Расскажет об этом Дэвид Пилато (David Pilato) — эксперт компании Elastic (это те ребята, что сделали Elasticsearch, Kibana, Beats, and Logstash — то есть, Elastic Stack). У Дэвида есть огромный опыт проведения докладов о продуктах Elastic (конференции Devoxx в Англии, Бельгии и Франции, всевозможные JUG, Web5, Agile France, Mix-IT, Javazone, доклады для конкретных компаний, и так далее). Иначе говоря, излагает Дэвид весьма понятно и доходчиво, а его доклады заменяют тренинги за сотни нефти.

В основе этой публикации — доклад Дэвида на конференции Joker 2016, которая прошла в Санкт-Петербурге в минувшем октябре. Тем не менее, обсуждаемые темы за прошедший год никак не потеряли актуальности.

Статья доступна в двух вариантах: видеозапись доклада и полная текстовая расшифровка (жмите кнопку «читать дальше»  ⇩). В текстовом варианте все необходимые данные представлены в виде скриншотов, так что вы ничего не потеряете.


IoTmanager — мобильный MQTT-клиент с необычной концепцией

Reading time5 min
Views22K
Снял пост с голосования, т.к модератор безосновательно перенес его в «Я пиарюсь».
В своей недавней статье на GeekTimes про доработку домофона протоколом MQTT я проводил опрос на тему того, какую статью написать следующей, и примерно 50% читателей проголосовало за статью про работу с мобильным приложением MQTT-клиента IoTmanager.

Данное приложение немного отличается концепцией от всех представленных мобильных MQTT-клиентов: внешний вид виджетов задается непосредственно в топиках. Таким образом, все настройки хранятся в одном месте — конечном физическом устройстве, а IoTmanager просто служит для отображения и управления виджетами. Такой подход может оказаться полезным для определенного круга задач.

На Хабре и GeekTimes IoTmanager практически не упоминается, что я считаю незаслуженным и хочу немного рассказать про особенности работы с приложением на примере связки с ESP8266. Приглашаю в комментарии к обсуждению аналогов.
Дисклеймер: Я не имею никакого отношения к автору или приложению, оно полностью бесплатное, не требует регистрации и не имеет встроенной рекламы, пишу статью с целью обучения постигающих азы интернета вещей.

Обнаружены критичные уязвимости в протоколе WPA2 — Key Reinstallation Attacks (KRACK)

Reading time3 min
Views90K

 
Группа исследователей обнаружила серьезные недостатки в протоколе WPA2, обеспечивающем защиту всех современных Wi-Fi сетей. Злоумышленник, находящийся в зоне действия жертвы, может использовать эти недостатки, используя Key Reinstallation Attacks. Злоумышленники могут использовать этот новый метод атаки для чтения информации, которая ранее считалась зашифрованной.

UPD: пост обновлен частичными подробностями атаки и списком обновлений вендоров.

Старый компьютер, Windows XP, 512 Мб оперативки, Firefox и интернет

Level of difficultyMedium
Reading time127 min
Views332K
Несмотря на пройденное время, многие по прежнему ещё пользуются Windows XP. Кто-то вынужден работать на этой ОС или обслуживать такие компьютеры, у кого-то может быть хобби восстановления старых ПК, некоторых полностью устраивает Windows XP или же из-за своих финансовых или прочих убеждений они не хотят менять старого верного «друга» на нового.
Эта статья, возможно поможет многим обладателям старых компьютеров открыть «второе дыхание» своим музейным экспонатам.

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

— Firefox
— Дополнения к браузеру
— Драйверы
— WindowsXP
— BIOS
— Советы по аппаратной части
Читать дальше →

Настройка двусторонней RSA и GOST аутентификации в приложении на JBoss EAP 7

Reading time14 min
Views20K


Здравствуйте!

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

В этой статье расскажу, как мы в своей деятельности применяем один из инструментов обеспечения информационной безопасности.
Читать дальше →

Взлом компьютера за 3 секунды. Делаем USB-уточку с нуля на Arduino

Reading time5 min
Views180K
Начнём с традиционного «Этот материал представлен только в образовательных целях». Если вы используете эту информацию для взлома HBO и выпуска следующего сезона «Игры престолов» бесплатно на YouTube, ну… здорово. В том смысле, что я никак не поощряю подобное поведение.

Если не знаете, что такое «резиновая уточка» (USB Rubber Ducky), это устройство, которое сделал Hak5, на фото. Оно выглядит и ведёт себя как обычная флешка, но её можно запрограммировать на очень быстрый ввод клавиш с клавиатуры. «Уточка» способна взломать любую систему за несколько секунд. Единственный недостаток — вам понадобится физический доступ к компьютеру. И ещё она стоит $50, вот почему я написал эту статью.

Мы используем 5V Adafruit Trinket и кабель microUSB — вот и всё, что нам понадобится.
Читать дальше →

Kotlin в продакшене, что мы получили, и что мы потеряли?

Reading time3 min
Views26K
KotlinС того времени, как Google сделал Kotlin новой любимой женой уже прошло достаточно времени. И сразу же после этого объявления наша команда начала новый проект полностью на Котлине. Проясню: не тестовый или просто внутренний проект, а новый модуль для живого приложения с 600+ тысячами активных пользователей в месяц. Какой опыт мы из этого извлекли? Что мы выиграли и что потеряли?
Читать дальше →

Java собеседование. Коллекции

Reading time10 min
Views903K
С недавнего времени у меня появилась настойчивая мысль, что профессиональное развитие сильно замедлилось и это хочется как-то исправить. Да, читаю книги, слушаю курсы, но в то же время приходит и понимание того, что возможно пришло время сменить работу, здесь вроде как все изучено, плавно уходим в рутину. Данная мысль сподвигла меня на рассылку своего резюме в несколько компаний — лидеров рынка. После прохождения собеседования в 3 из них, я решил, как водится внести свои 5 копеек в освещение обширной темы собеседования, а именно технических вопросов по Java коллекциям, с которыми приходится сталкиваться. Да, знаю, читатель скажет: «коллекции — избитая тема, сколько можно», но часть из приведенных ниже вопросов, я задавал своим знакомым разработчикам, которые занимают именно позиции разработчиков («крепких середнячков», по меркам недалекой от Москвы глубинки, которые уверенно справляются со своей работой на практике, а вот в теории скажем так есть пробелы, потому, что работа не требует решения каких-то нетривиальных задач, да и потому что не всем это интересно — изучать как внутри работает структура данных), вызывало растерянность. Думаю, что рассмотренный материал будет не очень интересен разработчикам выше уровня Junior (я попрошу их комментировать, дополнять и критиковать изложенный здесь материал), а вот Junior`ы уверен, найдут в этой статье интересное для себя.
Читать дальше →

Программирование и обмен данными с «ARDUINO» по WI-FI посредством ESP8266 Часть Первая

Reading time23 min
Views78K
Как и многие другие самоделкины, я регулярно использую микроконтроллеры AVR для всяких разных любительских поделок. А благодаря концепции «Arduino» эти поделки теперь приобретают еще и элегантный вид. Действительно, за какие-то 300-400 рублей мы получаем миниатюрную многослойную плату с маской, шелкографией и с полностью разведенной на ней периферией для микроконтроллера (причем в SMD исполнении!). Я уже не говорю о всевозможных подключаемых модулях этой же «Arduino» серии: датчиках, контролерах, дисплеях и целых наборов, так нужной нам дополнительной периферии. И опять же всё также недорогих и в прекрасном исполнении. Практически уже нет необходимости, что-то разводить и допаивать на «коленке».­­­­­­­­­


Но все эти разнообразные любительские поделки, требуют естественно, предварительного программирования. Да и в последующем при разных усовершенствованиях, постоянно приходится эти поделки перепрошивать. Понятное дело, что удобнее делать это дистанционно, чем постоянно таскать их к обычному программатору. Вообще, благодаря той же платформе «Arduino», вариантов и здесь много: Bluetooth, ZigBee, радиоканал с вашим личным протоколом, IR, и даже Wi-Fi. Все они позволяют наладить беспроводной контакт с вашим микроконтроллером. Но мы же остановимся на последнем варианте. Основных причин здесь четыре:

1: современно, интернет вещей же!

2: беспроводной роутер есть в каждой квартире, регистрируй в домашней сети свои устройства и вуаля!

3: ваши поделки осуществляют революционный скачок в своём развитии; мало того, что их можно программировать на расстоянии, они теперь ещё и сами могут общаться с окружающим их миром: электронные часы самостоятельно берут точное время с часовых NTP-серверов, исполнительные устройства управляются с другого конца города или страны, регистрирующие девайсы сохраняют накопленные данные в облако и т.д. и т.п.

4: есть замечательная серия микросхем ESP8266 на которой не очень легко всё это реализовать.
Читать дальше →

Прокачиваем домофон протоколом MQTT для управления с телефона

Reading time4 min
Views126K
Всем привет. Расскажу немного про свою последнюю междуделку — доработку домофона WiFi-модулем NodeMCU. Заранее прошу прощения за выбор модуля — всех уже, наверное, достала эта ESP’шка…

Конечно, работу ClusterM с его автоответчиком никому не переплюнуть, но такой функционал я считаю излишним. Мне, с рождением дочки, лишь понадобилось бесшумно открывать домофон гостям, чтобы не стоять у трубки и не ждать входящего звонка, который наверняка разбудит малую. Да и себе иногда легче открыть дверь с телефона, нежели лезть за ключами и прикладывать таблетку туда-сюда, чтобы она сработала (у меня очень сильно тупит панель в подъезде). Проект получился небольшой, так что в статье тоже не так много букв, зато есть фотографии.
Читать дальше →
12 ...
11

Information

Rating
Does not participate
Location
Донецк, Донецкая обл., Украина
Registered
Activity

Specialization

Backend Developer, Fullstack Developer
Git
JavaScript
HTML
CSS
Web development
TypeScript
Angular.js
Angular
Spring Boot
MongoDB