• Новый отечественный motor-control микроконтроллер К1921ВК01Т ОАО «НИИЭТ»


      Как-то прошла мимо новость о появлении нового микроконтроллера К1921ВК01Т ОАО «НИИЭТ». Чем он примечателен? Своей периферией, предназначенной для управления электродвигателями (motorcontrol). Это не просто пара-тройка ШИМ каналов. Это девять навороченных двухканальных модулей ШИМ (PWM), из них три модуля (HRPWM) с режимом «высокого» разрешения. Это шесть отдельных 32х разрядных модулей захвата CAP. Двадцать четыре(!) канала 12ти разрядных АЦП с гибким менеджером их запуска, встроенным усреднителем и цифровыми компараторами. Два квадратурных декодера (QEP), куча интерфейсов связи, внутренняя пользовательская память, часы – и всё это на ядре ARM Cortex-M4F с мегабайтом флеш-памяти «на борту» и производительностью 100 MIPS! Интересно?
      Читать дальше →
    • Бэкдоры в микрокоде ассемблерных инструкций процессоров x86

        Софту мы не доверяем уже давно, и поэтому осуществляем его аудит, проводим обратную инженерию, прогоняем в пошаговом режиме, запускаем в песочнице. Что же насчёт процессора, на котором выполняется наш софт? – Мы слепо и беззаветно доверяем этому маленькому кусочку кремния. Однако современное железо имеет те же самые проблемы, что и софт: секретную недокументированную функциональность, ошибки, уязвимости, малварь, трояны, руткиты, бэкдоры.



        ISA (Instruction Set Architecture) x86 – одна из самых долгих непрерывно изменяющихся «архитектур набора команд» в истории. Начиная с дизайна 8086, разработанного в 1976 году, ISA претерпевает постоянные изменения и обновления; сохраняя при этом обратную совместимость и поддержку исходной спецификации. За 40 лет своего взросления, архитектура ISA обросла и продолжает обрастать множеством новых режимов и наборов инструкций, каждый из которых добавляет к предшествующему дизайну, и без того перегруженному, новый слой. Из-за политики полной обратной совместимости, в современных процессорах x86 присутствуют даже те инструкции и режимы, которые на сегодняшний день уже преданы полному забвению. В результате мы имеем архитектуру процессора, которая представляет собой сложно переплетающийся лабиринт новых и антикварных технологий. Такая чрезвычайно сложная среда – порождает множество проблем с кибербезопасностью процессора. Поэтому процессоры x86 не могут претендовать на роль доверенного корня критической киберинфраструктуры.

        Читать дальше →
      • Право на ремонт: первые шаги в правильном направлении от Motorola



          «Право на ремонт», то есть возможность ремонтировать купленные устройства и транспортные средства руками самих покупателей сейчас больная тема. Компании вроде Apple и John Deere всеми силами стараются оставить всю индустрию сервисного обслуживания и ремонта в сфере своего влияния. Немудрено — ведь просто замена неработающей кнопки Home в iPhone без гарантии может обойтись покупателю в $100-200, если речь идет об официальном ремонте. При этом себестоимость кнопочки — центы, так что компания зарабатывает на одной замене десятки или даже сотни долларов.

          Проблемы с независимым ремонтом вроде бы и нет, никто не запрещает выполнять его самостоятельно. Но у сторонних компаний нет доступа к официальным каналам оригинальных деталей и специализированного программного обеспечения. Кроме того, некоторые вещи сторонние сервисные центры делать просто не могут. Пример — все та же замена кнопки Home, к примеру, на iPhone 7 и 8. Работать новая кнопка, представляющая собой точную копию старой не будет — необходимо специализированное оборудование и ПО для прошивки кнопки под конкретную материнскую плату. Ситуация не самая радужная, но сейчас появилась информация о том, что некоторые компании поддерживают идею «права на ремонт». Такой компанией является, в частности, Motorola.
          Читать дальше →
        • Mozilla разработала открытый шлюз для Интернета вещей



            Apple, Google, Amazon, Samsung — у каждой из этих компаний собственные стандарты и программы для управления «умными» устройствами собственной марки. В результате они зачастую могут общаться только со своими «родственниками» производства той же фирмы. Смарт-колонка Apple HomePod откажется делать резервную копию данных в облако Amazon или Google и не будет выполнять команды с Andrioid-смартфона. Получается, что для полной интеграции вся техника в доме должна быть от одной компании. Это явно ненормальная ситуация.

            В прошлом году организация Mozilla объявила, что работает над созданием единого свободного фреймворка — программ и сервисов для Интернета вещей, работающих по открытому стандарту Web Things API, который использует JSON, REST и WebSockets API.

            Фреймворк должен стать единым шлюзом для взаимодействия «умных» устройств разных производителей (Things Gateway). Сейчас организация официально объявила о запуске проекта Mozilla IoT, выложила стек программ и опубликовала руководство по построению системы «умного дома» с использованием Raspberry Pi. Заявка на стандартизацию Web Things API подана в консорциум W3C 2 февраля 2018 года.
            Читать дальше →
          • Как ИП сэкономить на налогах в 13,3 раз


              Если вы не торопитесь легализовать свою предпринимательскую деятельность только потому, что налоги ИП кажутся вам неподъемным бременем, то вы просто не умеете их готовить. Разобраться в основных нюансах систем налогообложения стоит уже ради экономии собственных денег. А сэкономленные деньги, как известно, ничуть не хуже заработанных. Так что, немного терпения, и вы станете чуть-чуть богаче.
              Читать дальше →
            • Статический анализ PHP-кода на примере PHPStan, Phan и Psalm



                Компания Badoo существует уже более 12 лет. У нас очень много PHP-кода (миллионы строк) и наверняка даже сохранились строки, написанные 12 лет назад. У нас есть код, написанный ещё во времена PHP 4 и PHP 5. Мы выкладываем код два раза в день, и каждая выкладка содержит примерно 10—20 задач. Помимо этого, программисты могут выкладывать срочные патчи — небольшие изменения. И в день таких патчей у нас набирается пара десятков. В общем, наш код меняется очень активно.

                Мы постоянно ищем возможности как для ускорения разработки, так и для повышения качества кода. И вот однажды мы решили внедрить статический анализ кода. Что из этого получилось, читайте под катом.
                Читать дальше →
              • TensorFlow.js и clmtrackr.js: отслеживание направления взгляда пользователя в браузере

                • Перевод
                Автор статьи, перевод которой мы публикуем, предлагает поговорить о решении задач из сферы компьютерного зрения исключительно средствами веб-браузера. Решить подобную задачу не так уж и трудно благодаря JavaScript-библиотеке TensorFlow. Вместо того, чтобы обучать собственную модель и предлагать её пользователям в составе готового продукта, мы дадим им возможность самостоятельно собрать данные и обучить модель прямо в браузере, на собственном компьютере. При таком подходе серверная обработка данных совершенно не нужна.


                Испытать то, созданию чего посвящён этот материал, можно здесь. Вам для этого понадобится современный браузер, веб-камера и мышь. Вот исходный код проекта. Он не рассчитан на работу на мобильных устройствах, автор материала говорит, что у него не было времени на соответствующие доработки. Кроме того, он отмечает, что рассматриваемая тут задача усложнится в том случае, если придётся обрабатывать видеопоток с движущейся камеры.
                Читать дальше →
                • +28
                • 13,2k
                • 8
              • Применение перепиленных гражданских дронов для профессиональной геодезической аэрофотосъёмки местности



                  Привет!

                  Я геодезист, коллеги из КРОК попросили меня рассказать про то, как мы переделываем дроны, как программируем полёт и как всё потом обрабатываем, превращая снимки, полученные с беспилотника, в детальные ортофотопланы, высокоточные трёхмерные модели местности и топографические планы масштабов 1:500–1:10 000.

                  Мы с командой попробовали несколько разных дронов и в итоге остановились на «рабочей лошадке» DJI Phantom 4 PRO с несколькими модификациями. Первое и главное, что мы с ним сделали, — это оснастили его геодезическим GNSS-приёмником, который позволяет определять центры фотографирования с сантиметровой точностью.

                  Стандартный его GPS обеспечивал точность порядка 15–20 метров. Для решения геодезических задач при такой точности нужны либо специальные кресты на земле, либо ещё какое-нибудь извращение вроде раскладывания бумажных тарелок по известным координатам.
                  Читать дальше →
                • Установка FreeSWITCH 1.8 на Debian 9 (Raspbian Stretch, базовый образ системы «Умного дома» MajorDoMo на Rasbperri Pi)

                  • Tutorial
                  Продолжаю небольшой цикл статей посвященному созданию «Умного дома» и пошаговых инструкций для самостоятельной установки/настройки.

                  Но сейчас речь пойдет в основном про Freeswitch и IP телефонию.

                  В августе разработчик открытой VoIP платформы IP телефонии FreeSWITCH, компания Signalwire опубликовал публичный релиз новой версии ПО – 1.8. (на данный момент уже выпущена 1.8.2).
                  В связи с выходом этой версии платформы IP телефонии Freesfitch 1.8, появилось решение установить его у себя на Raspberry 3 с установленным базовым образом системы умного дома MajorDoMo, под операционной системой Raspbian (Debian 9 Stretch) с некоторыми элементами автоматизации дома.



                  Под катом, описание установки платформы VoIP из исходных кодов с небольшими заметками и пояснениями.
                  Читать дальше →
                • Машинка на Arduino, управляемая Android-устройством по Bluetooth, — полный цикл (часть 1)

                  Введение


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

                  Немного об уровне, авторе и предостережения


                  Я, автор, пацан 16-17 лет с подмосковной деревни, специализируюсь на написании android-приложений (а там сложнее что-то сжечь), поэтому ответственность за оптимальный подход к решению задач с себя снимаю.

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

                  Задача


                  Задача легчайшая – заставить ездить машинку, управляемую Arduino, а пульт заменить андроидом. Но в большинстве моментов пришлось изобретать колесо, потому что в интернетах подходящего решения найдено не было.
                  Читать дальше →
                • Устройство защиты от искрения УЗИс-С1-40

                    Искрение проводки — наиболее частая причина возникновения пожаров. Искрение может возникать в местах соединения проводов (скрутки, ослабленные контакты, механическое повреждение провода) и не заметно до тех пор, пока нагрев проводов не приведёт к пожару.

                    Устройство УЗИс-С1-40 способно детектировать искрение и отключать электричество. Кроме того это же устройство защищает электроприборы от повышенного напряжения в сети, которое может возникнуть например из-за обрыва или «отгорания» нулевого провода.

                    Читать дальше →
                  • Использование аккумулятора от iPhone при разработке носимой электроники

                      Приветствую, читатель.

                      Довольно часто у меня возникает задача разработки портативных устройств с питанием от одной ячейки Li-ion аккумулятора. И, если заказчика обычно это не беспокоит, то у меня, как у опытного инженера, при виде такого ТЗ по спине пробегает дрожь. Это связано с тем, что оценка уровня заряда аккумулятора, а также оставшегося времени работы — это очень непростая задача, хотя на первый взгляд может показаться иначе.



                      Есть несколько вариантов действия в таком случае, о них поговорим ниже.
                      Читать дальше →
                    • Присосаться к I2C. Сделай простой логический анализатор

                        Здравствуйте. Хочу показать простой USB-логический анализатор, который можно собрать на любой отладочной плате с микроконтроллером STM32F042 например NUCLEO-F042K6 от ST. А впрочем, по ссылкам найдёте исходники и легко переделаете на любой другой из этого семейства. В этой конструкции 8 каналов. Под них в микроконтроллере задействованы порты PA0-PA7. Максимальная частота выборки – 8 МГц. Максимальная частота входного сигнала – 2 МГц. Максимальное количество выборок на канал – 4096.

                        Вот здесь нужно отметить, что логический анализатор это железо & ПО для захвата сигнала и его последующего исследования, измерения, анализа интерфейсов.


                        Читать дальше →
                      • Таймер — начало

                        Все началось с него. Это была первая моя покупка на Алиэкспресс для первой автоматизации на даче — захотелось сделать автополив в теплице. Таймер пришел в помятой коробке, с треснутым защитным колпаком, но рабочий. Он прекрасно отработал весь летний сезон поливая огурцы.На зиму был снят и спрятан в теплое и сухое место. Но на следующий сезон меня ждал неприятный сюрприз  — таймер стал зависать, переставал реагировать на кнопки управления и открывать воду. Сначала я грешил на дешевые батарейки и заменил их на фирменные Duraсell. Думал проблема в питании и пусковых токах. Не помогло. Тогда я достал паяльник и пропаял в нем все, что только можно, даже добавил некоторые недостающие конденсаторы. Но он упорно продолжал зависать. К сожалению, изделие не очень ремонтопригодно — в том что было у меня используется бескорпусная микросхема-капля и, видимо, что-то расконтачилось именно под компаундом с микросхемой. Кое-как сезон был закончен с таким барахлящим таймером и я начал думать чем же мне его заменить.
                        Читать дальше →
                      • Новые возможности FLProg – ESP8266 как контроллер, а не модем



                          Источник

                          Добрый день.

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

                          Если Вы не знакомы с проектом, можно посмотреть его историю в блоге.

                          Сейчас на сайте программы ведётся тестирование предрелизовой версии с номером 3.1.4. Начиная с версии 3.1, в программе появилась поддержка контроллеров ESP8266 как полноценного контроллера.
                          Читать дальше →
                        • Плюс один процент автоматизации



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

                            Раньше общее потребление контролировал однофазный счетчик с Modbus-интерфейсом. Следить за текущими показаниями потребления полезно, чтобы не превышать разумные лимиты и не дожидаться отключения групповых автоматов. С этой задачей он справлялся на «ура». Но гораздо интереснее следить за каждым потребителем в отдельности. Для чего и как это сделать попробую рассказать в этой статье.
                            Читать дальше →
                          • 5 приемов работы с CSS, о которых вам следует знать


                              Наблюдая за потоком вопросов по CSS на Тостере уже давно заметил, что многие из них повторяются много-много раз. Да, есть совсем глупые вопросы, на которые так и тянет ответить RTFM! Но есть и более занятные. Они связаны с не совсем стандартной версткой. Не такой, чтобы глаза на лоб лезли, но и заметно выходящей за рамки условного бутстрапа и традиционных туториалов для новичков. Похожие вопросы довольно сложно загуглить — обычно вся суть в картинке, но и отвечать каждый раз надоедает. В этой статье мы постараемся посмотреть некоторые приемы, охватывающие довольно широкий круг подобных вопросов. Информация в первую очередь адресуется начинающим верстальщикам, но возможно и опытным будет, чем вдохновиться.

                              Читать дальше →
                            • USB устройства для Android

                                Одной из самых интересных новинок, представленных на Google I/O 2011, можно считать анонс полноценной работы Android устройств с USB.
                                Новый Android поддерживает два USB режима — хост (Host mode) и устройство (Accessory mode).

                                С хост режимом все просто и понятно — это подключение к Android устройству клавиатуры, мыши, цифровой камеры, внешних накопителей и т.д.
                                А вот с режимом USB устройства все намного интереснее.
                                Читать дальше →
                              • «Машинный звук»: синтезаторы на базе нейросетей

                                  Разработчики из исследовательского проекта Magenta (подразделение Google) представили синтезатор с открытым исходным кодом NSynth Super. В его основе лежит система искусственного интеллекта, которая миксует несколько предварительно загруженных сэмплов (например, звучание гитары и пианино) в новый звук с уникальными характеристиками.

                                  Подробнее о системе NSynth Super и других алгоритмах-композиторах расскажем далее.

                                  Читать дальше →
                                  • +10
                                  • 4,3k
                                  • 8
                                • WireGuard «придет» в ядро Linux — почему?

                                    В конце июля разработчики VPN-туннеля WireGuard предложили набор патчей, которые сделают их ПО для организации VPN-туннелей частью ядра Linux. Однако точная дата реализации «задумки» пока остается неизвестной. Под катом поговорим об этом инструменте подробнее.

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