• AWS IoT и безопасность

      Если речь идет о безопасности Интернета вещей (IoT), то следует сразу оговорится о какой стороне безопасности пойдет речь. Дело в том, что не существует системы, которую нельзя взломать или которая является абсолютно надежной. Вопрос только во времени, деньгах или банальной случайности. Казалось бы, оптоволоконные сети связи достаточно надежны в силу их физической природы соединения, но все равно, если нет шифрования данных, к самому потоку информации злоумышленники могут вполне добраться. Что остается говорить о беспроводных сетях и, фактически основе Интернета вещей – технологии Wi-Fi или, более правильно ее называть – IEEE 802.11? При этом не стоит забывать, что любые системы могут ломаться и не выдерживать нагрузок. Роботы, электроника, различные механические устройства с подключением к Интернет, впрочем, как и без подключения, потенциально могут нанести вред. Кстати, сейчас совсем забыли направление, которым занимается мехатроника, которая идеально подходит в ключе описания стека IoT. В общем, безопасность – это многогранное понятие и в данной публикации хотелось бы затронуть только небольшую часть этой проблемы, на примере решения задач шифрования и передачи данных для устройств IoT.


      The 10 Most Vulnerable IoT Security Targets – Internet of Things Institute
      Читать дальше →
    • Arduino в Linux: копаемся в кишках проекта

      • Tutorial

      Введение


      В предыдущей статье был описан процесс превращения Qt Creator в полноценную IDE для проектов на платформе Arduino. Шаги были описаны подробно, но без описания смысла происходящего, поэтому эффект от такой статьи небольшой. В каждом конкретном случае могут возникать и возникают разнообразные нюансы и разобраться в них без понимания того как устроен проект сложно.

      Поэтому в данной заметке мы разберемся в структуре и настройках проекта.
      Читать дальше →
    • Arduino в Linux: настраиваем Qt Creator в качестве среды разработки

      • Tutorial
      Платформа Arduino популярна, независимо от того, ругают её или хвалят. Её создателям удалось снизить порог вхождения до уровня несколько кликов мышью + пара строк кода и вуаля — вот вам моргающий светодиодик. И вообще, для быстрого прототипирования поделок на AVR, Arduino вещь крайне удобная. Единственное что им не удалось это IDE, которую и IDE-то назвать сложно. Среди функций IDE она обеспечивает только одну — автоматизацию создания и сборки проекта.

      Для пользователей Windows существует альтернатива: MS Visual Studio Community + плагин vMicro который позволяет писать скетчи, но уже со всеми вкусностями, предоставляемыми IDE. Плагин без проблем качается в самой студии через меню «Инструменты» и в триале работает сколько угодно. Платная версия в теории поддерживает пошаговую отладку, но меня, как владельца лицензионной копии vMicro они не очень-то и впечатлили.

      Для пользователей Linux всё как всегда: хотим хорошую IDE — выбираем «жертву» и пытаемся прикрутить к ней нужный функционал. Существуют решения на базе Eclipse, но я не люблю эклипс, о чём уже однажды писал. Я мирюсь с ним как с неизбежным злом, когда под рукой нет вообще ничего подходящего. Из всех бесплатных IDE я больше всего уважаю мощный и замечательный Qt Creator, в котором я и моя команда работаем уже больше года. Поэтому и рассказывать буду о том, как превратить его в среду разработки для Arduino.
      Читать дальше →
    • 19 ноября приглашаем на пятый DIY Meetup



        Всем привет! DIY-сообщество Mail.Ru Group — разработчики, которые в свободное от работы время мастерят всякие крутые, неожиданные вещи (умный дом и умные часы, обнимишка, тепловизор на FLIR Lepton своими руками, электровелосипед и многое другое, всё это вы можете найти в нашем блоге на Гиктаймс) — периодически собираются, чтобы рассказать о своих разработках желающим и обменяться опытом с друзьями по разуму.

        В воскресенье, 19 ноября, приглашаем всех желающих на пятый открытый DIY Meetup Mail.Ru Group в Москве: скорее регистрируйтесь! По итогам голосования мы сформировали программу митапа, смотрите её под катом.
        Читать дальше →
      • Русификация библиотеки LiquidCrystal_I2C для OLED-дисплеев Winstar

          Для строчных дисплеев Winstar очень соблазнительно сократить число управляющих соединений, которых даже при четырехпроводном включении получается не меньше шести (R/W можно не подключать, см. вот эту публикацию автора). Говорят (в том числе и сами винстары, см. оф. сайт), что контроллер WS0010 может управляться по SPI (а некоторые даже и по I2C!), но инструкций в документации на эту тему упорно не помещают, и как с этим управляться — непонятно. К тому же SPI помогает не сильно — вместо шести соединений получаем четыре привязанных к дисплею, потому что еще для каких-то целей SPI в любительской практике употребляют нечасто. Потому самое удобное решение в плане сокращения числа соединений для стандартных плат Arduino — использовать так называемый расширитель (экспандер) портов на основе шины I2C под названием PCF8574. Это позволяет сократить число необходимых соединений до двух (не считая питания), причем на основе выводов стандартного порта TWI, что не мешает подключать к нему же различные датчики, часы и т.п.
          Читать дальше →
        • Как мы разрабатывали платформу для электронных украшений

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


            Читать дальше →
          • Никаких подозрительных скриптов, только релевантные баннеры. Не релевантные? Пиши на: adv@tmtm.ru с темой «Полундра»

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

            Сегодня я решился вынести на суд общественности проект, работу над которым вел на протяжении последней пары лет: «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, описание понемногу выкладываю на сайте проекта. Соответственно, более полная история под катом.
            Читать дальше →
          • Платформа ARM и брокер MQTT, как современная основа решений для Интернета вещей

              Протокол MQTT, на текущее время, завоевал свою популярность и стал стандартом де факто в проектах, направленных на создание решений для Интернета вещей (IoT). Конечно, Интернет вещей – это определенная абстракция или, правильнее, концепция построения распределенных сетей устройств или машин. При этом, частные задачи взаимодействия машин Machine-to-Machine (M2M), уже сегодня эффективно решаются, включая и уровень подключения этих систем к Интернет, как для создания промышленных систем автоматики, так, например, и для построения систем «умного дома». Очевидно, что для критически важных систем требуется наличие локального арбитра или брокера и устройств, позволяющих отработать решение ситуации не зависимо от качества Интернет-подключения, а также в случае полного разрыва связи.

              При этом, в качестве аппаратной платформы для запуска такого брокера MQTT, отлично себя зарекомендовали энергоэффективные, но от этого не менее производительные, микропроцессоры на базе архитектуры ARM. Такая взаимосвязь аппаратной платформы, протоколов обмена сообщениями и их программной реализации стала отправной точкой в стремительном прогрессе развития современных систем автоматизации. Далее рассмотрим подробнее аппаратные решения и программные компоненты для реализации одного из наиболее успешных протоколов обмена сообщениями в технических системах.


              ClusterHAT review: Raspberry Pi cluster computer kit. Photo: MagPi magazine
              Читать дальше →
            • Приручение дикой зверушки: добавляем поддержку Homekit в «умную розетку» Redmond SkyPlug RSP-100S

              • Tutorial


              Предыстория


              Впервые про данную розетку я узнал из статьи Умная розетка Redmond SkyPlug RSP-100S Анализ конструкции и схемы электрической принципиальной. Выявление недостатков. Помню, что прочитав ее, в первую очередь заинтересовался схемой бестрансформаторного источника питания и тем, насколько компактно размещены элементы в корпусе розетки при том, что внутри полноценное реле, а не, скажем, симистор.

              О каких-то попытках перепрограммировать Bluetooth-модуль и речи не было, тк программирование BLE устройств исторически было делом очень непростым. Вот пример: Разработка IoT устройств с использованием Bluetooth LE, явно не DIY уровень.

              Однако, за прошедший год ситуация кардинальным образом изменилась…
              Читать дальше →
            • Как заварить чай по MQTT или доступная умная розетка с контролем температуры и тока

              • Tutorial

              Зачем?


              Даже в этом хабе наблюдается повышение интереса к IoT, по моему субъективному мнению это глобальная тенденция, выходящая далеко за рамки этого сайта. А значит стоит вставить и свои 5 копеек в развитие направления, тем более что давно крутилась мысль сделать узел для умного дома, который смог бы контролировать потребление любого прибора питающегося от сети 220В и давал возможность программировать логику управления в зависимости от параметров потребления, температуры, фазы луны и т.д. Существуют готовые решения, но часто в них что-то не устраивает, да и готовое это не наш метод если можно попробовать построить свой уникальный велосипед.



              Параметры будущего велосипеда:

              — Дешевое устройство из общедоступных компонентов.
              — Контроль тока в цепи потребителя.
              — Управление устройством по протоколу MQTT.
              — Контроль температуры устройства.
              — Два выносных датчика для контроля температуры потребителя.
              — Индикация состояния на экране устройства.
              — Аварийное отключения потребителя если температура или ток превысили задаваемые значения.
              Читать дальше →
            Самое читаемое