Pull to refresh
0
0
Роман @MattLe

User

Send message

Micropython на GSM+GPS модуле A9G

Reading time13 min
Views25K

В этот раз я задумался о том, чтобы спрятать в велосипед GPS-трэкер в качестве меры предосторожности. На рынке есть масса автономных устройств для слежения за автомобилями, грузом, велосипедами, багажом, детьми и животными. Подавляющее большинство из них взаимодействуют с пользователем с помощью СМС. Более дорогие варианты предоставляют функциональность Find my phone, но привязаны к конкретному онлайн-сервису.
В идеале хотелось бы иметь полный контроль над трекером: использовать его в удобном режиме без СМС и регистрации. Поверхностное гугление вывело меня на пару модулей из поднебесной, один из которых, A9G pudding board, я и заказал (~15$).


Модуль


Эта статья о том, как я заставил работать python на этом модуле.

Читать дальше →
Total votes 33: ↑32 and ↓1+31
Comments3

Кто сканирует Интернет и существует ли Австралия

Reading time4 min
Views58K
Любой, кто поднимал сайты знает, что стоит запустить веб-сервер, как на него начинают приходить запросы. Еще и DNS про него толком не знает, а в лог-файле ошибок httpd уже полно записей вроде таких:

image

Вот мне стало интересно, и я решил изучить этот вопрос поглубже. Как только появилось время, я написал парсер логов веб-сервера. Поскольку люблю наглядность, результаты поместил на карту.
И вот какая картина получилась:
Читать дальше →
Total votes 63: ↑55 and ↓8+47
Comments156

Почему мне кажется, что студентов учат ООП неправильно

Reading time5 min
Views232K
Когда я учился в университете мне довольно тяжело было понять ООП (Объектно-ориентированное программирование), сейчас я понимаю, что просто нас учили ООП на не совсем ясных и правильных аналогиях и вообще, кажется, сами преподаватели не совсем понимали, в чем же суть ООП.

image

Вспомните, классические аналогии ООП, вот есть класс Домашние любимцы с методами «голос» и «есть», от него мы наследуем Кошку и Собаку и все хорошо.

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

Мы уже запутались, но Вовочка спрашивает: «а где в этом зоопарке статические методы, интерфейсы, абстрактные классы и чем отличается объект класса от самого класса?». Объяснить, несомненно, можно, но сложно. Понять, еще сложнее.

Или другой классический пример, вот есть прямоугольник, от которого так и хочется унаследовать квадрат (ну по логике, квадрат это частный случай прямоугольника), но у прямоугольника есть длина и ширина, а у квадрата только одна сторона. Что-то тут тоже запутано.

Теперь подумаем как объяснить ООП лучше?
Читать дальше →
Total votes 68: ↑53 and ↓15+38
Comments474

JetBrains CLion для микроконтроллеров

Reading time7 min
Views36K

Предыстория



CLion — это среда для разработки на С/С++, близкий родственник IntelliJ IDEA и, соответственно, Android Studio.


Я представляю вниманию сообщества перевод моего блог поста, в котором по шагам описано, как использовать эту IDE для написания прошивок микроконтроллеров.

Total votes 44: ↑43 and ↓1+42
Comments67

Разъем диагностики OBD-II, как интерфейс для IoT

Reading time12 min
Views34K
Когда-то давно, примерно в середине 90-х, во время появления процессора Pentium Pro, один из основателей компании Intel Гордон Мур заметил, что: «Если бы автомобилестроение развивалось со скоростью эволюции полупроводниковой промышленности, то сегодня Роллс-Ройс мог бы проехать полмиллиона миль на одном галлоне бензина, и было бы дешевле его выбросить, чем платить за парковку». Но, пожалуй, уже сегодня автомобилестроение совершает гигантский шаг развития в направлении, как кардинальной смены типа топлива, так и технологий управления автомобилем. Практически недавно представлены коммерческие электромобили и авто на водородном топливе, а автопилот становится желаемым компонентом электронной «начинки» транспортного средства. В большинстве своем, как раз стремительный рывок автопрома обусловлен появлением надежных и безопасных решений на основе умной электроники для автомобильных бортовых систем управления. Но, где же в повседневной жизни Интернет в автомобиле, где же технологии Интернета вещей (IoT), а также многим известная концепция подключенного к сети автомобиля (Connected Car)?


The Rolls-Royce 103EX. Rolls-Royce unveils driverless, electric concept car, complete with silk love seat – The Telegraph.
Total votes 24: ↑23 and ↓1+22
Comments40

Программирование и передача данных в «Ардуино» по «воздуху» с помощью ESP8266. Часть Третья. Здравствуй, «ANDROID»

Reading time18 min
Views42K
Предлагаю вам, уважаемые читатели GeekTimes, очередную статью из цикла по использованию микросхемы ESP8266 в качестве беспроводного моста для AVR микроконтроллеров, на примере аппаратной платформы Arduino Uno (Nano). В этот раз для полета на Луну управления платформой мы задействуем вместо компьютера устройство на базе «ANDROID». Ну, например, смартфон.



Подробности под катом:
Читать дальше →
Total votes 20: ↑16 and ↓4+12
Comments25

Замена механического реле давления на цифровое (обладателям скважин)

Reading time6 min
Views46K
Когда я первый раз столкнулся с тем, чтобы отрегулировать механическое реле давления с пружинками, я понял, что мне нужен звонок другу, а точнее — отцу, так как механизм хоть и хорошо продуманный и отказоустойчивость на высоком уровне, но недостаток даже разовой регулировки на лицо.

image

image

Прошу под кат, там интересней ;)
Total votes 44: ↑38 and ↓6+32
Comments207

Hands Free, но не телефон. Послушный дом, когда рук не хватает

Reading time5 min
Views13K
Здравствуй, Сообщество!

Появилось у меня желание снова поковыряться с микроконтроллером и сделать что-нибудь полезное. Цель сформировалась почти сразу, так как в квартире меня кое-что напрягало.

Как известно, компьютерный стол – он же обеденный, чтобы смотреть Дробышевского или читать Гиктаймс / Зелёного Кота / etc. одновременно с ужином. Но есть проблема – из кухни я иду обычно с обеими занятыми руками, обратно тоже, ведь чашки копятся по 3 шт. Включать и выключать свет на кухне (выключатель тройной – кухня/ванна/туалет) приходится плечом, носом, мизинцем. То есть неудобно никак, а переставить ниже нельзя. Возникла задача управлять как-то дистанционно.

Всякие датчики присутствия и прохода отмёл сразу – не та точность, нет управления по воле хозяина. Решение найдено в звуковом управлении, голосом. Скажу сразу, я не планировал делать рапознавалку речи, она не нужна здесь. Свет, включающийся по хлопку, описан ещё в Радио-80х, но я так не хотел делать. Получилось своеобразное handsfree, когда руки заняты. Подробности — дальше.
Читать дальше →
Total votes 24: ↑24 and ↓0+24
Comments44

[Перевод статьи] 7 базовых правил защиты от фишинга

Reading time7 min
Views33K
image

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


Согласно данным некоторых исследований, в 2016 году ежедневно создавалось около 5000 фишинг сайтов. В 2017 эта цифра будет еще больше. Секрет жизнестойкости этого вида мошенничества в том, что он опирается не на “дыры” в программном обеспечении, а на уязвимость в человеческой сущности, у которой есть доступ к важным данным. Поэтому нелишним будет в очередной раз напомнить, что такое фишинг, каковы самые распространенные виды фишинговых атак, а также способы противодействия им.


Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments9

Разработка для Sailfish OS: использование датчиков (часть 2)

Reading time9 min
Views2K
Здравствуйте! Данная статья является второй частью большой статьи, посвященной использованию датчиков устройства под управлением Sailfish OS. Первая часть доступна тут.
Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments0

10 Вещей с которыми сталкиваются начинающие Android-разработчики

Reading time3 min
Views11K

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




Я решил написать о некоторых типичных ошибках и проблемах, с которыми когда-то столкнулся сам, когда начинал разрабатывать Android-приложения три года назад, и нескольких других, с которыми сталкивались начинающие Андроид-разработчики. Итак, поехали!

Читать дальше →
Total votes 18: ↑10 and ↓8+2
Comments10

Как написать свой первый Linux device driver. Часть 3

Reading time3 min
Views16K
Добрый вечер, хаброчитатели!

В предыдущих статьях (один, два) мы определили понятие символьного устройства и написали простейший пример символьного драйвера. Последняя часть посвещена проверки его работоспособности. На Хабре уже есть примеры как можно протестировать драйвер, например: тык.

Я попытаюсь рассмотреть данный вопрос чуть подробнее, надеюсь, вам понравится.


Читать дальше →
Total votes 32: ↑30 and ↓2+28
Comments2

О трехмерных шутерах на CSS +HTML [перевод]

Reading time3 min
Views15K
Привет, Хабр! Представляю вашему вниманию перевод статьи Building a 3D Game with CSS + HTML автора Michael Bromley.

Не так давно я изучал редко используемые функции CSS — функцию анимации и 3D, а после общения в конференции по JavaScript я собрал вот это demo. Пока я трудился над ним, мне стало любопытно, как далеко можно зайти в конструировании трёхмерной графики на чистом CSS.

image
(скриншот выполнен переводчиком)
Читать дальше →
Total votes 14: ↑12 and ↓2+10
Comments10

Опыт разработки low power устройств на STM32L

Reading time7 min
Views25K
Довольно часто можно встретить статьи, посвященные использованию режимов пониженного энергопотребления. В большинстве случаев в них описываются достоинства и недостатки конкретного микроконтроллера, а все рекомендации сводятся к обобщенной фразе — используй режимы сна.
Читать дальше →
Total votes 39: ↑38 and ↓1+37
Comments25

LVM + lilo > GPT + EFI (или почему GRUB такой неуклюжий)

Reading time5 min
Views21K
TL;DR: автор сокрушается о том, что GRUB не может жить полноценно с LVM и с удивлением открывает, что это отлично умеет заброшенный в 2015 году загрузчик lilo.

MBR?


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

Я еще раз повторю, не надо сейчас мне говорить «так сложилось», а включите логику. MBR ужасна.
Читать дальше →
Total votes 40: ↑37 and ↓3+34
Comments67

Atmega328p + ENC28J60 = мост между UART и Ethernet

Reading time2 min
Views15K
image

Создавая различную электронику и программируя AVR, STM и т.п. всегда встает вопрос как ее подключить к другой периферии для управления и передачи информации, например, к компьютеру.

Есть много различных решений: COM, RS482, WiFi, Zigbee, ZWave, Ethernet и т.п. Из всех вариантов я пробовал WiFi, Zigbee, Ethernet, все остальное крайне неудобно или устарело.

Я хочу рассказать и поделиться, как можно использовать чип ENC28J60 от Microchip и Atmega328p для создания «моста» (далее по тексту) между UART и Ethernet.
Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments3

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

Reading time12 min
Views42K
Сегодня я решился вынести на суд общественности проект, работу над которым вел на протяжении последней пары лет: «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, описание понемногу выкладываю на сайте проекта. Соответственно, более полная история под катом.
Читать дальше →
Total votes 40: ↑39 and ↓1+38
Comments84

Kali Linux: сборка ядра

Reading time7 min
Views26K
В сегодняшнем материале публикуем перевод очередного фрагмента книги «Kali Linux Revealed». Из него вы узнаете о том, как модифицировать и собрать собственное ядро Linux. Этой теме посвящён второй раздел девятой главы.


Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments3

WiFi колонка/плеер на базе Orange Pi Zero или история о потерянном времени

Reading time7 min
Views45K
Доброго дня уважаемым хабровчанам!

Предыстория


История моя началась с того, что по просьбе одного друга нужно было сделать небольшое программируемое устройство с выводом звука и GPIO. Давно хотел поработать с каким-либо одноплатником *Pi и потому сразу решил делать на чем-то подобном (результат + опыт). Друг почти сразу отказался от предложенного проекта, ну а я оказался с купленной платой OrangePi Zero. Некоторое время провалялась она без дела, пока не отдали мне старый МФУ Canon MX320 без поддержки сети. Мне очень не хотелось иметь лишний провод от ноутбука к принтеру, и в результате апельсинка была извлечена, настроена и работает с тех пор в качестве CUPS сервера по USB (результат, кстати, хороший, но это уже совсем другая история).

Завязка


Однажды надоело мне вечно подключать через minijack мой телефон к колонкам. Стоят они хорошо, удобно, и переносить их неохота. А телефон, вечно висящий на линейнике- это уже не мобильный телефон, а что-то похожее на старые проводные аппараты. Ноутбук у меня тоже стоит так, что подключать к нему кабель к колонкам было бы неудобно. Да и сама машинка старая (10 лет уже), лишний аудиоплеер — лишняя нагрузка.

Можно, конечно же, купить bluetooth-колонки. Или bluetooth-адаптер. Но это значит малый радиус действия и проигрывание музыки только на том устройстве, с которым по bluetooth связан телефон. Надо что-то посерьезнее. «Здорово было бы повесить такой сервер на апельсинку, который мог бы принимать аудиопоток с смартфона по WiFi, — подумал я, — ведь она постоянно подсоединена по ethernet к роутеру, малонагружена (так как стоит на ней Ubuntu Server 16.04), разместить можно удобно, электричества потребляет мало.» Сказано — сделано.
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments14

Полный цикл создания модели персонажа для игры

Reading time3 min
Views176K
Процесс создания in-game модели персонажа от эскиза до релиза.

image

Доброго времени суток. Меня зовут Ivan. Сегодня я поделюсь с вами деталями разработки игр, а именно расскажу о полном цикле создания персонажа. Итак, поехали!
Читать дальше →
Total votes 54: ↑51 and ↓3+48
Comments38
1
23 ...

Information

Rating
Does not participate
Location
Тюмень, Тюменская обл. и Ханты-Мансийский АО, Россия
Registered
Activity