• Полив растений по расписанию (STM32F103)

      Посмотрев на то, что Geektimes выкладываются описания китайских «поливалок» комнатных растений, я решил поделиться и своим опытом. Пусть и несколько поздновато (работает «поливалка» у меня уже 2.5 года).

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

      Посмотрев на то, что есть на e-bay и в магазинах, я решил (по разным причинам), что проще сделать самому из завалявшейся платы с LCD сенсорным экраном.


      Читать дальше →
    • 10 советов по использованию ExecutorService

      Предлагаю читателям «Хабрахабра» перевод публикации «ExecutorService — 10 tips and tricks».



      Абстракция ExecutorService была представлена еще в Java 5. На дворе шел 2004 год… На секунду – сейчас Java 5 и 6 больше не поддерживаются и Java 7 готовится пополнить список. А многие Java-программисты по-прежнему не в полной мере понимают как работает ExecutorService. В вашем распоряжении множество источников, но сейчас я хотел бы рассказать о малоизвестных тонкостях и практиках по работе с ней.
      Читать дальше →
    • FLProg + nooLite

      • Tutorial


      В первую очередь я хочу предупредить, что это не рекламный пост, я не имею никакого отношения к фирме – производителю оборудования описанного в статье и не имею никаких печенек от неё кроме предоставленного для интеграцию в программу оборудования. Это обучающий пост, который показывает, как с помощью программы FLProg управлять этим оборудованием. Естественно будет небольшой обзор имеющихся у меня блоков и моего личного отношения к этим устройствам.

      Теперь небольшая предыстория. Один из пользователей программы обратился в фирму «Ноотехника» с предложением создать пользовательский блок (в то время в программе уже была такая возможность) для работы с производимым ими оборудованием через программу FLProg. Руководитель предприятия пошёл другим путём. Он связался со мной и предложил предоставить мне образцы своей продукции для интеграции их в программу. Изучив предложение, я согласился, поскольку на сайте была библиотека для работы с модулем передатчика, в наличии было хорошее описание, и проблем я не видел. Посылка пришла очень быстро (что странно для почты России) даже с учетом пересечения границы.
      Читать дальше
    • Заблуждения программистов относительно времени

      • Перевод
      За последние пару лет я потратил много времени на дебаггинг чужих тестов. Это была интересная работа, иногда расстраивающая, но всегда поучительная. Кто-то может подумать, что в тестах нет багов, но конечно баги есть везде, и тесты не исключение.

      Я постоянно удивлялся, как много ошибок в коде и тестов, и приложений происходят от неверного понимания и заблуждений насчёт времени. Под этим я имею в виду и компьютерный способ обработки времени, и фундаментальные ошибки, происходящие от несовершенной структуры календаря — летнее время тут лишь вершина айсберга.

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

      В данной статье я расскажу о том, как сделать первый шаг в мир Arduino и смастерить собственную метеостанцию. Метеостанция будет состоять из двух модулей: один модуль будет считывать информацию с подключенных датчиков, другой — выводить считанные данные на небольшой экран. Для передачи информации будем использовать Bluetooth.

      Также приведу информацию по настройке BT-модулей для работы друг с другом.

      image

      Итак, поехали!
      Читать дальше →
    • Пудра для мозга или как сделать порошок для посудомойки в 9,7 раз дешевле

      • Tutorial


      Update
      Новый вариант порошка и более подробный разбор во второй части: DIY порошок для посудомойки: разбираем промышленные средства и улучшаем рецепт

      Сейчас расскажу, как из соды и стирального порошка сделать порошок для посудомоечной машины. Такой же по составу, только дешевле на порядок.

      Есть очень много областей нашей жизни, где наше представление формирует исключительно маркетинговый буллшит. Увы, большинство людей даже не пытаются задумываться о том, что лежит в основе всего этого. Очень часто рыночная ситуация приводит к тому, что себестоимость продукта составляет 0.5% от его цены. Остальное маркетинг, наценки, логистика, упаковка и тому подобное. Почти все в курсе про концепцию продажи чернил для принтера по цене слез гималайских девственниц и настойчивые рекомендации производителей использовать только оригинальные расходные материалы. Например, совсем недавно меня озарило, что 1.5 грамма сухого вещества во флаконе удобрений для растений не могут стоить 200-250 рублей. А ведь именно такое количество может уместиться в относительно стабильном состоянии в виде раствора. Я сразу представил себе гектары полей и грузовики, которые везут тонны порошка. В результате перешел на расфасовки по 1 кг Буйских комплексных сухих удобрений. Можно ванну раствора приготовить.

      Сегодня будем создавать ультра-дешевый порошок для посудомойки. Уменьшение реальной зарплаты и удорожание импортной бытовой химии заставило перерыть учебники, просмотреть кучу материалов с форумов химиков и попытаться найти способы экономии на расходниках. Очень уж ощутимо стал стоить порошок. Результаты вдумчивого исследования и экспериментов сильно удивили. Для промышленного применения чаще всего химиками-технологами создаются индивидуальные рецептуры в зависимости от качества воды и задач. Почему бы нам не попробовать разобраться во всем этом?

      TLDR:

      70% прокаленной соды и 30% стирального порошка вместо моющего средства.
      Если очень лень возиться с содой, то просто порошок Биолан или его аналоги. Сода удешевляет.
      Пищевая соль «Экстра» вместо соли.
      Да начнутся адские эксперименты!
    • Светодиодные лампы Navigator Filament

        Я уже рассказывал о светодиодных лампах Navigator (Лампы с цоколем E27, Диммируемые «свечки» E14), которые оказались одними из лучших на рынке.

        Недавно в ассортименте Navigator появились лампы нового поколения — на светодиодных нитях (filament). Такие лампы более эффективны, чем обычные светодиодные лампы (95-110 Лм/Вт, а у обычных светодиодных ламп только 70-95 Лм/Вт), они почти не греются, меньше слепят глаза и их свет очень похож на свет обычных ламп накаливания.



        Читать дальше →
      • Ethernet Library или почему в природе не существует серверов на Arduino

          image

          В этой статье я опишу ситуацию с которой столкнулся во время разработки проекта Arduino Mega Server. Суть дела заключается в том, что существует такая библиотека Arduino Ethernet Library, написанная для поддержки сетевой платы Ethernet Shield на чипе W5100. Это стандартная плата и стандартная библиотека, которая многие годы поставляется в комплекте со средой разработки Arduino.

          И эта библиотека является основой для всех проектов, использующих обмен информацией по проводной сети. Так вот, оказалось, что эта библиотека попросту профнепригодна. На ней в принципе невозможно построить нормальное сетевое взаимодействие. Можно только «баловаться» одиночными запросами и ответами. Ни о каком построении серверов на базе этой библиотеки речь не может идти. Почему?
          Читать дальше →
        • Здравствуйте, я Meklon и я кофеин-зависимый



            Другие статьи цикла:
            Хроники лаборатории: как мы молотый кофе считали софтом для анализа клеточных структур
            Компот из кофейных сухофруктов. Знакомимся с каскарой — лучшим другом велосипедиста

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

            На Хабре/Гиктаймсе уже не раз обсуждался кофе и все, что с ним связано. Я решил написать пост, посвященный этому напитку и различным эффектам кофеина с медицинской точки зрения. Если хватит времени — возможно это будет цикл статей с экспериментами над людьми, computer vision и прочим непотребством. Увидим. А пока, товарищи кофеиноманы и им сочувствующие, добро пожаловать под кат.
            Получить свою порцию кофеина
          • Амазон готовится к гигантской распродаже и хочет затмить ею «Черную Пятницу»

              На днях крупнейший в мире интернет-гипермаркет Амазон анонсировал крупнейшую распродажу в своей истории — Prime Day. Гигант интернет-ритейла поставил перед собой амбициозную цель — затмить традиционное осеннее скидочное-акционное безумие под названием "Черная Пятница". Кроме того, несколько счастливчиков (по одному из каждой страны, где действует акция) получат приз в размере 10 000 долларов в виде подарочной карты Амазона.

              image

              Чтобы получить доступ к специальным распродажным предложениям Амазона и попасть в число участников розыгрыша, нужно выполнить всего два условия:
              1) стать или уже быть подписчиком Amazon Prime на момент до 15 июля 2015;
              2) на страничке розыгрыша загрузить фото лучшего момента в своей жизни и подтвердить участие.
              Читать дальше →
            • Термометр на Raspberry pi с беспроводным датчиком на rf 433 и МК attiny85

              Данная статья описывает мой опыт создания беспроводного датчика температуры на базе МК Attiny85 + ds18b20 + rf 433 TX, работающего от батареек. Прием данных и программирование Attiny85 сделано на основе Raspberry pi B+.
              Читать дальше →
            • Raspberry Pi: измеряем влажность и температуру с помощью DHT11/DHT22

                На Хабре уже публиковалась статья о подключении датчика температуры DS18B20 к Raspberry Pi. В нашем новом проекте, который строится на Raspberry Pi, понадобилось измерять не только температуру, но и влажность. Я расскажу, как подключить недорогие китайские датчики влажности к Raspberry Pi. Просмотрев несколько вариантов различных датчиков, остановился на двух наиболее массовых на рынке датчиков. Это DHT11, который привлек своей ценой $3 (с доставкой) и датчик DHT22 (около $10 с доставкой).
                Читать дальше →
              • Еще одна библиотека для работы с 433 MHz устройствами

                  Всем привет!

                  Хочу поделиться JAVA библиотекой для работы с радио-устройствами домашней автоматизации (обычно 433.92 МГц) над которой я работаю в последнее время. Она еще достаточно сырая для серьезного использования, но для домашних поделок — в самый раз
                  Адрес на github — github.com/eschava/rf-protocols-java

                  Предпосылки к созданию


                  После покупки Cubietruck решил перенести на него все задачи умного дома, которые выполнялись на Ардуино. В основном это прием и передача радио-сообщений устройствам домашней автоматизации (розетки, датчики, отопление)
                  Все, что было найдено в сети, было либо сделано только для Raspberry Pi, либо слишком заточено под какую-то определенную функциональность. Поэтому решил реализовать все самому, используя привычный язык разработки (Java) и сделать как можно более гибким и расширяемым (реестр фабрик и все такое, как это принято в джаве)

                  Для работы с RF устройствами посредством GPIO портов выбрал достаточно малоизвестную, но многообещающую библиотеку libbulldog которая позволяет абстрагироваться от платформы на которой все запущено. На данный момент поддерживаются (теоретически) Raspberry Pi, BeagleBoard, Cubieboard, но тестировалось только на Cubieboard3 (aka Cubietruck) который есть у меня в наличии.
                  Также поддерживается (опять же теоретически) популярная библиотека для Raspberry PI Pi4j, но, к сожалению, не было возможности опробовать ее на практике

                  Читать дальше →
                  • +15
                  • 21,1k
                  • 3
                • Радиомодем за 7 долларов

                  • Tutorial
                  Доброе время суток!
                  Расскажу я как можно собрать себе радиомодем мощностью 100мВт на 433МГц, по стоимости выходящий примерно на 6-7 долларов. Мощный радиомодем за 200 рублей — заманчиво? Тогда начнём.
                  Внешний вид
                  Требуются скиллы пайки немного выше среднего и опыт заказа в интернет-магазинах.
                  Читать дальше →
                • Двухфакторная аутентификация на домашнем серваке — быстро, дёшево, дружелюбно

                    Двухфакторная аутентификация — предоставления информации от двух различных типов аутентификации информации [»]

                    Например, это могут быть последовательно введённые пароль и код, который выдаёт токен с кнопкой. Думаю, многие из вас такие девайсы видели, а кто-то даже их регулярно использует.



                    Это как если бы на дверь поставили второй замок. Ключ к первому — обычный пароль. Ко второму — действующий в течение 30 секунд одноразовый код. Попасть за дверь можно только если оба ключа окажутся правильными, а не один, как было раньше.

                    С некоторых пор Google сделала доступной двухфакторную аутентификацию в своих сервисах. Теперь токен переехал в ваш мобильный телефон с Android'ом! iPhone и Blackberry тоже сгодятся в такой роли. Очень удобно. Опробовав на Gmail, мне захотелось такую же штуку сделать у себя, тут-то я внезапно и нашёл libpam-google-authenticator.
                    Читать дальше →
                  • Безопасность сетевой инфраструктуры. Расширенные методы взлома и защиты. Видео

                    • Tutorial


                    Мы решили продолжить нашу традицию публиковать записи наших предыдущих вебинаров для всех желающих с целью повышения уровня осведомленности в ИБ. Не лишним будет отметить, что вебинары составляют примерно 20% от наших программ обучения, основной упор делается на практику. Проверить свои знания вы всегда можете в наших лабораториях тестирования на проникновение, например сейчас для всех желающих открыта бесплатная лаборатория тестирования на проникновение Test lab v.7.

                    Программа курса:

                    Первое занятие — «Инструментарий пентестера»
                    Это занятие представляет из себя небольшой обзор истории появления и развития дистрибутива BackTrack и превращением его в Kali Linux.


                    Читать дальше →
                    • +23
                    • 63,2k
                    • 6
                  • VPN везде и всюду: IPsec без L2TP со strongSwan

                      image
                      достаточно сильный лебедь

                      Если вы когда-либо искали VPN, который будет работать на десктопах, мобильных устройствах и роутерах без установки дополнительного ПО и перепрошивки роутера, вы, вероятно, выбирали между PPTP и L2TP+IPsec. У протокола PPTP имеются проблемы с безопасностью и прохождением через брандмауеры и NAT, так что в 2015 году его уже использовать не стоит, а использование L2TP излишне, т.к. L2 VPN, по моему мнению, для обычного удаленного доступа не нужен практически никогда.

                      Удивительно, что в интернете не так-то просто можно найти информацию о настройке чего-то помимо L2TP+IPsec в транспортном режиме, учитывая, что это обширный стек протоколов, который можно конфигурировать буквально как душе угодно, поэтому я попытаюсь устранить такое несовершенство мира.

                      Небольшое введение в мир IPsec

                      Вообще говоря, не совсем правильно называть IPsec VPN. IPsec не предназначен для построения «виртуальных частных сетей», а создан для шифрования или защиты от подмены передаваемых по IP данных. Это специальный слой поверх IP, который, в зависимости от режима и настроек, работает по-разному. В отличие от привычного VPN, который создает новый интерфейс в системе, на который вы, как это чаще всего бывает, назначаете IP-подсеть из диапазона частных адресов (т.е. создаете новый сетевой сегмент), и через который маршрутизируется трафик в зашифрованном виде, IPsec просто шифрует трафик магическим образом между «внешними» интерфейсами сервера и клиента.
                      Читать дальше →
                    • Как легко расшифровать TLS-трафик от браузера в Wireshark

                      • Перевод
                      Многим из вас знаком Wireshark — анализатор трафика, который помогает понять работу сети, диагностировать проблемы, и вообще умеет кучу вещей.

                      image

                      Одна из проблем с тем, как работает Wireshark, заключается в невозможности легко проанализировать зашифрованный трафик, вроде TLS. Раньше вы могли указать Wireshark приватные ключи, если они у вас были, и расшифровывать трафик на лету, но это работало только в том случае, если использовался исключительно RSA. Эта функциональность сломалась из-за того, что люди начали продвигать совершенную прямую секретность (Perfect Forward Secrecy), и приватного ключа стало недостаточно, чтобы получить сессионный ключ, который используется для расшифровки данных. Вторая проблема заключается в том, что приватный ключ не должен или не может быть выгружен с клиента, сервера или HSM (Hardware Security Module), в котором находится. Из-за этого, мне приходилось прибегать к сомнительным ухищрениям с расшифровкой трафика через man-in-the-middle (например, через sslstrip).

                      Логгирование сессионных ключей спешит на помощь!


                      Что ж, друзья, сегодня я вам расскажу о способе проще! Оказалось, что Firefox и Development-версия Chrome поддерживают логгирование симметричных сессионных ключей, которые используются для зашифровки трафика, в файл. Вы можете указать этот файл в Wireshark, и (вуаля!) трафик расшифровался. Давайте-ка настроим это дело.
                      Читать дальше →
                    • Backblaze обновила статистику по надёжности HDD

                        В январе этого года компания Backblaze впервые опубликовала статистику использования дисковых накопителей в своих серверах. Backblaze предоставляет услугу дешёвого облачного бэкапа и поэтому закупается недорогими HDD потребительского класса, которые в 2-2,5 раза дешевле, чем HDD класса Enterprise. За четыре года собрана большая статистика по надёжности дисков Seagate, Hitachi и Western Digital.

                        Пришло время сентябрьского обновления статистики.

                        Читать дальше →
                      • Как сэкономить на фотоаппарате с GPS

                        • Перевод
                        Мне нравятся геотеги в фотографиях. Геотеги так же, или даже более полезные, чем теги лиц. Уже появляются программы, которые позволяют отображать протегированные фото на карте в приятном и полезном виде:



                        Обычно, после поездок с фотоаппаратом я садился за компьютер и проставлял координаты фотографий вручную с мечтами о том, что в один прекрасный день я куплю себе «тушку», в которой будет GPS-приемник. Но несколько недель назад открыл для себя набор программ, которые компенсируют фотоаппарату отсутствие GPS наличием этого модуля в телефоне.
                        Читать дальше →