Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Майнинг на микроконтроллере ESP32 оказался не очень выгоден

Ненормальное программирование *Криптовалюты


20-летний немецкий программист Джейк описал свой эксперимент по майнингу на микроконтроллере ESP32.

ESP32 — серия недорогих микроконтроллеров, которые используются в некоторых гаджетах, например, в браслетах, умных лампах и одноплатных компьютерах. Майнинг на таких устройствах имеет мало смысла, но интересен как концептуальный эксперимент. Теоретически, можно представить, что в будущем количество умных устройств в мире кардинально увеличится. Возможно, кто-то уже сейчас продумывает технологию для создания гигантского многомиллиардого ботнета.
Читать дальше →
Всего голосов 23: ↑20 и ↓3 +17
Просмотры 18K
Комментарии 11

Linux 5.0 запустили на процессоре ESP32 с 8 МБ RAM

Блог компании ITSumma Настройка Linux *Open source *Программирование микроконтроллеров *Интернет вещей

ESP32 Espressif ESP-WROOM-32 Dev Board

ESP32 — серия бюджетных микроконтроллеров с низким энергопотреблением. Используются в различных устройствах Интернета вещей. Представляют собой SoC с интегрированными контроллерами Wi-Fi и Bluetooth и антеннами.

Процессор ESP32 поддерживает до 8 МБ RAM, что соответствует минимальным требованиям для запуска Linux. В этом мало практической пользы, но почему бы не проверить теорию на практике.
Всего голосов 24: ↑24 и ↓0 +24
Просмотры 5.1K
Комментарии 2

ESP32: знакомимся, пишем и запускаем первую прошивку

Программирование микроконтроллеров *Разработка для интернета вещей *
Из песочницы
Tutorial
Всем привет. Несколько дней назад мне достался экземпляр ESP32 Demo Board V2, о чем я сразу радостно заявил у себя на FB. Конечно, ведь получить его сейчас не очень просто: первая партия (штук 600), которая поступила на продажу на Seeed Studio разлетелась за считанные часы!



Но как разработчик и hardware интегратор Open-Source библиотеки для Blynk, я часто получаю ранний доступ к различным девайсам. Blynk позволяет быстро прототипировать и строить iOS/Android Apps для интернета вещей, используя drag'n'drop блоки прямо на телефоне.
Читать дальше →
Всего голосов 42: ↑42 и ↓0 +42
Просмотры 187K
Комментарии 30

Pygest #22. Релизы, статьи, интересные проекты, пакеты и библиотеки из мира Python [18 января 2018 — 4 февраля 2018]

Python *Читальный зал

image Всем привет! Это уже двадцать второй выпуск дайджеста на Хабрахабр о новостях из мира Python. В этом выпуске вы найдете статьи о MicroPython, сравнение производительности Python, Numba и C ++, основах веб скрапинга и многое другое.

Присылайте свои интересные события из мира Python.

С предыдущим digest можно ознакомиться здесь.

Читать дальше →
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 8.3K
Комментарии 2

«Привет, Хабр» на частоте 835 кГц

Ненормальное программирование *Программирование микроконтроллеров *Разработка для интернета вещей *Звук
Как-то раз в голове возникла мысль, а что бы сделать такое, чтобы скрестить старый радиоприемник в деревянном корпусе и современный контроллер для интернета-вещей ESP32? То ли с головой не так что-то, то ли делать мне нечего, но скрестить получилось. Не шаблонно, в целом, хотя судить вам, дорогие читатели Хабра).

За подробностями прошу под кат.
Читать дальше →
Всего голосов 35: ↑35 и ↓0 +35
Просмотры 18K
Комментарии 10

Умные шторы своими руками

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



По многочисленным просьбам, выкладываю все свои наработки по переделке обычных рулонных штор в автоматизированные с удаленным управлением. Осторожно, много фотографий!
Всего голосов 78: ↑76 и ↓2 +74
Просмотры 111K
Комментарии 66

Матрица: революция. Часть вторая — ESP8266

Умный дом Интернет вещей DIY или Сделай сам Будущее здесь
image

В своей статье я обещал показать вам наше светлое будущее в техногенном окружении, цитата: «В общем, будет интересно, как говорится, оставайтесь с нами». Выполняю своё обещание и представляю беспрецедентное решение для рынка IoT за $2 на ESP8266.
Читать дальше →
Всего голосов 20: ↑11 и ↓9 +2
Просмотры 22K
Комментарии 56

ESP32 и Ардуино

Компьютерное железо Умный дом Интернет вещей DIY или Сделай сам
image

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

Работает ли это вообще? Что там с поддержкой этих модулей в Arduino IDE? Стоит ли платить больше или лучше ограничиться ставшим уже привычным ESP8266? Мы постараемся вместе ответить на все эти вопросы, а в конце статьи я дам ссылку на реальное воплощение работы ESP32 с Ардуино — дистрибутив бесплатной версии Arduino Mega Server для платформы ESP32.
Читать дальше →
Всего голосов 36: ↑35 и ↓1 +34
Просмотры 150K
Комментарии 82

Полный цикл разработки IoT устройства управления подогревом бассейна на ESP8266 в среде Arduino

Программирование микроконтроллеров *Схемотехника *Разработка под Arduino *Умный дом
Из песочницы

В данной публикации я поделюсь опытом о создании IoT устройства с ноля: от появления идеи и воплощении ее в «железе» до создания микропрограммы для контроллера и web-интерфейса для управления созданным устройством через сеть интернет.


До создания этого устройства я:


  • Почти не разбирался схемотехнике. Только на уровне принципов работы
    резистора/транзистора… Я не имел никакого опыта в создании сколь-нибудь сложных схем.
  • Никогда не проектировал печатных плат.
  • Никогда не паял SMD компонент. Уровень владения паяльником был на уровне припаивания проводов и какого-нибудь реле.
  • Никогда не писал таких сложных программ для микроконтроллера. Весь опыт был на уровне «зажги светодиод в Arduino», а контроллер ESP8266 я встретил впервые.
  • Совсем немного писал на C++ для «большого брата», но это было более десятка лет назад и все давно забылось.

Конечно, опыт работы программистом (главным образом это Microsoft .NET) и системное мышление помогли мне разобраться в теме. Думаю, сможет и читатель этой публикации. Полезных ссылок и статей в интернете море. Самые, на мой взгляд интересные, и помогающие разобраться в теме, я привожу по ходу статьи.

Читать дальше →
Всего голосов 55: ↑52 и ↓3 +49
Просмотры 33K
Комментарии 115

Особенности FIFO буфера UART в ESP32

Программирование микроконтроллеров *

У ESP32 есть три UART-а. Каждый из которых размещает FIFO буфер приемника и FIFO буфер передатчика в общей памяти размером 1024 байта (ESP32 technical reference manual 3.5):



Однако при попытке увеличить размер FIFO буфера передатчика UART2 с 128 до 256 байт получил неожиданный эффект — передаваемые данные портили FIFO буфер приемника UART0, чего согласно документации быть не должно.

Читать дальше →
Всего голосов 27: ↑27 и ↓0 +27
Просмотры 9.2K
Комментарии 2

Бюджетный отладчик к ESP-32 и его настройка

Отладка *Программирование микроконтроллеров *
Из песочницы
Tutorial

Недавно при написании библиотеки к ESP-32 возникла необходимость ловить дедлоки, которые возникали иногда из-за моей криворукости, что породило необходимость покупки платы-отладчика с интерфейсом JTAG. Что из этого вышло — читайте под катом.

Читать дальше →
Всего голосов 15: ↑15 и ↓0 +15
Просмотры 18K
Комментарии 12

Программирование микроконтроллеров ESP8266/ESP32 написанием YAML конфиг файлов

Ненормальное программирование *Программирование микроконтроллеров *Разработка под Arduino *Умный дом DIY или Сделай сам
Tutorial

Будучи поклонником системы управления "умным домом" Home Assistant я недавно открыл для себя интересный инструмент, тесно с HA интегрированный и ранее на Хабре не освещенный — ESP Home (ранее ESPhomeYAML).


ESP Home представляет собой набор библиотек и инструментов, генерирующих прошивку для микроконтроллеров ESP8266 и ESP32 из созданного пользователем конфиг файла в формате YAML. Это значительно упрощает написание прошивок малого и среднего уровня сложности в особенности для тех, кто не силен в программировании под Arduino и сильно сокращает количество строк кода/конфигурации для тех, кто силен.


Для удобства настройки поддерживается обновление прошивки по воздуху.


ESP Home поддерживает устройства на базе ESP8266 и ESP32, очень популярных среди любителей домашней автоматизации и прочих самоделкиных, а также несколько десятков сенсоров и различную периферию — дисплеи, сетевые карты и т.д. Для обмена данными с запрограммированным устройством поддерживаются MQTT, UART, I2C, SPI и API, интегрированное с Home Assistant.


Ниже короткий пример установки ESP Home и простой настройки устройства

Читать дальше →
Всего голосов 25: ↑23 и ↓2 +21
Просмотры 42K
Комментарии 27

Взлом цветного картриджа HP: превращаем его в ручной принтер

Реверс-инжиниринг *Производство и разработка электроники *Компьютерное железо DIY или Сделай сам
Перевод
image

Введение


Ещё с юности, когда у нас был старый DeskJet, меня интересовали картриджи струйных принтеров. Эти картриджи казались очень интересными и как только в них заканчивались чернила, я сразу забирал их себе. В то время я не мог сделать с ними ничего, кроме как разобрать и пачкать руки… Хоть я и знал, что там внутри есть какая-то сложная электроника, но при касании контактов батарейкой не происходило ничего интересного, а моих знаний по электронике на большее не хватало.

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

Недавно моя девушка занялась рисованием, поэтому это стало хорошим оправданием для возврата к струйным картриджам в надежде, что и мне удастся нарисовать что-то на холсте. На этот раз мне повезло: удалось найти способ привязки всех сопел к правильным сигналам. Кроме того, сегодня картриджи принтеров управляют бОльшим количеством сопел используя меньшее количество сигналов, что упрощает управление картриджем и увеличивает поверхность, которую можно покрыть за один проход.
Всего голосов 156: ↑155 и ↓1 +154
Просмотры 78K
Комментарии 41

Миниатюрный Macintosh Plus

Производство и разработка электроники *Старое железо DIY или Сделай сам
Перевод
image

В начале эпохи домашних компьютеров существовала компания под названием Apple. Она только что заработала огромный успех благодаря линейке компьютеров Apple II, но чтобы оставаться на вершине быстро развивающегося компьютерного рынка, ей необходимы были инновации. Компания уже работала над линейкой Lisa, которая вдохновлялась мини-компьютерами и была предназначена для бизнес-пользователей, а значит, и имела соответствующую цену, но для среднестатистического потребителя она казалась слишком дорогой. В качестве дополнительного проекта был разработан Macintosh, который должен был стать реализацией идеи нового поколения компьютеров для «людей с улицы» и стоить около 500 долларов. Проектом занялся Стив Джобс, и под его руководством «железо» стало более продвинутым, ПО получило вместо текстового интерфейса GUI, а цена взлетела почти до 2500 долларов. Хотя оборудование, получаемое за эту цену, немного разочаровывало, например, ему не хватало графических ускорителей и звуковых возможностей, имевшихся у других машин, зато цену оправдывало ПО. Первым Macintosh был Mac 128K, и его успех подтолкнул к созданию более продвинутых моделей этого компактного Mac, в частности, Macintosh 512K, Macintosh Plus и серии Macintosh SE.

Хотя разработка Macintosh происходила примерно в 1984 году, задолго до того, как я начал разбираться в компьютерах, я питаю к компактным Macintosh какую-то слабость: первым компьютером, купленным моими родителями, был Macintosh Plus. Позже он был дополнен жёстким диском SCSI на 20 МБ, и на этой машине я писал свои первые программы на Basic. Когда ещё жил в Нидерландах, я купил сломанную машину SE/30 и превратил её в Linux-сервер, который тем не менее способен был запускать ПО для Mac. Однако я оставил эту машину в Нидерландах, а здесь, в Шанхае, у меня больше нет классического «железа» Apple.

Хоть и очевидно, что в повседневной жизни Mac Plus мне больше не понадобится, мне понравилась идея иметь его под рукой на случай приступов ностальгии.
Всего голосов 77: ↑76 и ↓1 +75
Просмотры 15K
Комментарии 25

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

Программирование микроконтроллеров *DIY или Сделай сам

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


Модуль


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

Читать дальше →
Всего голосов 33: ↑32 и ↓1 +31
Просмотры 19K
Комментарии 3

ESP32-CAM Video Streaming Server Подключение I2C и SPI дисплеев

C++ *Программирование микроконтроллеров *
Tutorial
ESP-32 CAM модуль с камерой от Diymore

ESP32-CAM Video Streaming Server


Пример использования находится тут.

Предварительно надо установить библиотеки: Esp32 board in Arduino Ide Windows / Esp32 board in Arduino Ide Linux and Mac

Подробные настройки есть в статье.

В моем случае я использовал модуль AI-THINKER поэтому раскомментировал
#define CAMERA_MODEL_AI_THINKER

У меня не заработала функиональность распознования лиц. Коментарий в статье был полезен.
Всего голосов 34: ↑33 и ↓1 +32
Просмотры 53K
Комментарии 23

История постройки гусеничного робота

Разработка робототехники *DIY или Сделай сам
Из песочницы
image

Моя история погружения в изучение робототехники и создание робота с помощью 3d принтера. Ошибки, с которыми я столкнулся и что хотел-бы получить в итоге
Читать дальше →
Всего голосов 68: ↑67 и ↓1 +66
Просмотры 12K
Комментарии 21

Управление ESP32 через BLE

Программирование микроконтроллеров *Разработка под Arduino *
Tutorial

Интро


Уже сравнительно давно микроконтроллер ESP32 стал неким стандартом для множества DIY проектов. И действительно, возможность работы с Wi-Fi, Bluetooth, встроенная энергонезависимая память, а так же большое число выводов позволяют сделать массу интересных проектов.

В этой статье, мы поговорим про управление конроллером с помощью BLE используя доступные в AppStore приложения. А в следующей, если она будет, про создание собственного приложения для iOS.
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 6.3K
Комментарии 2

ThingJS v1.0-alpha

JavaScript *C++ *Программирование микроконтроллеров *Разработка для интернета вещей *Интернет вещей


Последние два года я разрабатывал собственную IoT платформу и сегодня готов показать ее альфа версию.


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


Статья будет интересна людям, которым близка тема IoT и они уже что-то делали в этой сфере. Важным замечанием будет то, что платформа должна заинтересовать (внезапно) JavaScript разработчиков, т.к. именно этот язык выбран как основа платформы. Конечно, и С/С++ разработчикам тоже будет что почитать.


Сначала я расскажу о том, какие ключевые проблемы мы встретили при разработке IoT устройств, затем опишу, как платформа с ними справляется, а в завершении, все самое скучное: видео, техническая часть и можно будет потрогать все вживую.

Всего голосов 28: ↑26 и ↓2 +24
Просмотры 8.9K
Комментарии 24

Хранение настроек в памяти Базового устройства

Разработка под Arduino *
Из песочницы

Привет! Если Вам посчастливилось подержать в руках микроконтроллер ESP32 (мне посчастливилось больше и у меня в руках M5Stack) от китайской компании ESPRESSIF, то этот пост, возможно, будет полезен.



Бывает ситуация, когда необходимо сохранить какие-то параметры в энергонезависимой памяти (например: подсчитывать количество включений устройства за всё время или сохранять настройки Wi-Fi). Это можно сделать с лёгкостью с помощью библиотеки Preferences.


Объявим экземпляр класса Preferences, а там видно будет...


Первое, что мы должны сделать — это создать связку ключей путём вызова метода begin с парой аргументов (но можно только с одним первым): именем связки и флагом "только для чтения".


Чтобы сохранить строковое значение в памяти, нужно передать ключ и само значение в метод, имя которого состоит из двух частей: первой — put и второй — имени типа, например: String. Всё ясно и понятно. Правда, есть ещё "сырые" байты без обжарки, которым никто не хочет присвоить тип. В таком случае метод принимает ещё и третий аргумент с количеством этих байтов. С этой процедурой вроде всё.


После того, как значение было записано, можно его прочесть с помощью метода (имя которого аналогично предыдущему), где первая часть будет get. Данный метод возвращает значение для ключа соответственного типа. Помните про случай с байтами? Если Вы не знаете (или не помните) сколько байт лежит по ключу, то дёргайте метод getBytesLength с единственным аргументом — ключом, она всё посчитает и вернёт количество в size_t.


Если Вы хотите удалить определённый ключ из связки, то отдайте его единственным аргументом методу remove.


Хотите навести настоящий марафет и очистить ВСЮ связку? Вызывайте без всяких аргументов метод clear!


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


Читать дальше →
Всего голосов 14: ↑10 и ↓4 +6
Просмотры 4.4K
Комментарии 7