Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Управляйте маятником, чтобы построить самую высокую (и устойчивую) башню из падающих сверху постов. Следите за временем на каждый бросок по полоске справа: если она закончится, пост упадет мимо башни.

Башня

Аркады, Строительство, На ловкость

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Arduino + Микроконтроллеры

С этим тегом используют

Электроника Ardublock Самоделки YouTube Своими руками Вертикальное видео Видео ВК Программирование Stm32 Радиолюбители Все
135 постов сначала свежее
9
K715
3 месяца назад

Клуб Контур и бот для удаленного мониторинга⁠⁠

Давненько не было постов от Клуба любителей электроники Контур, поэтому - исправляемся :)

Клуб Контур и бот для удаленного мониторинга Электроника, Разработка, Микроконтроллеры, Arduino, Программирование, Инженер, Длиннопост

Контур-бот вежливо отвечает на вопрос :)

Сегодня поведаем вам о решении одной насущной проблемы, которая заключалась в следующем: периодически нужно знать, открыт в данный момент клуб или нет (так как мы часто открыты вне расписания, а иногда закрыты по расписанию). Проблема решалась согласованием времени заранее либо вопросом в чат; однако это зачастую неудобно - человек может не увидеть/ не ответить вовремя, время может измениться и так далее. Поэтому в один долгий зимний вечер было написано следующее сообщение (орфография сохранена):

«Давно надо сделать что нибудь, чтобы без писания сюда было понятно открыто или нет. Типо фигулины которая при включении света начинает [сообщать] на сервер куда нибудь мол типо я в сети»

Во время проработки предложения возникло множество заблуждений о необходимости покупать домен, выделенный сервер, статический IP и прочие непотребства (вплоть до того, что за API ВКонтакте якобы тоже надо платить), которые быстро развеял один из активных участников нашего клуба и пообещал провернуть всё на одной только ESP8266 с подключением через имеющийся в клубе интернет.

После недолгих обсуждений выяснили, что самый оптимальный вариант реализации – это чат-бот для ВКонтакте с приёмом сообщений через Long Poll. Вскрыв исходники своих старых похожих проектов, дописав всё «как надо» и позанимавшись оптимизацией, человек довольно быстро представил клубу прототип системы с уже разведённой печатной платой:

Клуб Контур и бот для удаленного мониторинга Электроника, Разработка, Микроконтроллеры, Arduino, Программирование, Инженер, Длиннопост

Прототип. Контакты для слота под microSD зарезервированы на будущее…

И практически сразу начался этап альфа-тестирования системы.

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

Клуб Контур и бот для удаленного мониторинга Электроника, Разработка, Микроконтроллеры, Arduino, Программирование, Инженер, Длиннопост

Для безопасности схему датчика решили распаять на отдельной плате

Который мы подключили к освещению:

Клуб Контур и бот для удаленного мониторинга Электроника, Разработка, Микроконтроллеры, Arduino, Программирование, Инженер, Длиннопост

И протянули выходной логический сигнал остатками телефонной лапши:

Клуб Контур и бот для удаленного мониторинга Электроника, Разработка, Микроконтроллеры, Arduino, Программирование, Инженер, Длиннопост

Хоть изначально мы и хотели полностью автоматизировать изменение статуса клуба, но вспомнили, что клуб не всегда открывается именно для приёма посетителей (что-нибудь взять/положить, например), поэтому кнопка осталась на месте, а датчик 220 сделали вспомогательным для определения наличия кого-либо в клубе.

Клуб Контур и бот для удаленного мониторинга Электроника, Разработка, Микроконтроллеры, Arduino, Программирование, Инженер, Длиннопост

Заодно и для отправки админам уведомления

Хоть система всё ещё требует некоторых доработок, она уже радует своего создателя (который часто подходил к клубу «на удачу» и очень расстраивался, когда было закрыто). Из-за относительной слабости ESP8266 бот может задерживать ответ на время до 10 секунд (это время тратится на «холодную» установку SSL-соединения), но для нас это некритично.

Конечно, в клубе нередко происходят перебои в Интернет-соединении (у нас YOTA), но разработчик постарался реализовать автовосстановление, добавил предупреждающие сигналы и («на всякий случай!») автоперезагрузку при долгой потере связи. Заходящие в клуб в момент оборванной связи имеют все шансы услышать звук SOS =)

Клуб Контур и бот для удаленного мониторинга Электроника, Разработка, Микроконтроллеры, Arduino, Программирование, Инженер, Длиннопост

А это про кратковременные обрывы. И так каждую ночь…

Напоследок, для особо любопытных (и желающих повторить что-нибудь подобное) создатель поделился исходным кодом системы: https://github.com/lethanner/kontur-monitor

А чуть менее любопытные могут уже сейчас попробовать спросить нашего бота: «клуб открыт?» https://vk.com/konturbot. ESP8266 ответит вам лично =) Учтите, что мы сохраняем историю запросов!

P.S. автор системы - тот же человек, что занимался Dial-UPом в предыдущих постах :)

Показать полностью 6
[моё] Электроника Разработка Микроконтроллеры Arduino Программирование Инженер Длиннопост
3
2329
monobogdan
monobogdan
Посты о ремонте и моддинге ретрогаджетов.
TECHNO BROTHER
4 месяца назад

Как я превратил старый смартфон в игровую консоль с возможностью звонить⁠⁠

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Осторожно: эта статья точно будет интересной, ведь в ней мы смоделируем, спроектируем и запрограммируем своё видение N-Gage 2! Я очень старался сделать статью интересной даже для тех читателей, кто не разбирается в теме 3D-печати и программирования микроконтроллеров :)

Я очень люблю ретро-игры и игровые консоли. Иногда я люблю позалипать в какую-нибудь классику с NES, Sega Mega Drive или, например, PSP. Однако особое место в моём сердечке занимает игровой телефон Nokia N-Gage, который, к сожалению, не получил продолжения, как и его более современный собрат — Sony Ericsson Xperia Play. Недавно я пересматривал свою коллекцию девайсов и обнаружил на полочке Galaxy S4 Mini. И тут я подумал: а что если...

❯ Предисловие

Думаю многие мои давние читатели заметили, что примерно четверть статей в моем блоге так или иначе касается вопроса игр и портативного гейминга. За почти три года существования блога, мы с вами успели не только поностальгировать и потыкать игровые гаджеты, но и отремонтировать часть из них, узнать как разрабатывались и работали «под капотом» игры и даже попытались спроектировать свою собственную игровую консоль!

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Почти два года назад в моей голове уже возникала идея сделать «портативку» из полурабочего гаджета. В то время я хотел рассказать читателям о том, что многие старые девайсы можно использовать в качестве одноплатных компьютеров и HMI-панелей благодаря наличию пятачков с шиной UART на плате, с которой можно легко взаимодействовать в Android-приложениях! В качестве реального примера использования я взял планшет с нерабочим тачскрином, подключил через UART геймпад, разработанный на базе RP2040 и написал программу, которая читает UART и инжектит состояние кнопок напрямую в драйвер ввода:

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Именно для того чтобы закончить этот проект я приобрел себе Ender3 V2

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

Недавно я осматривал свою коллекцию гаджетов и на полочке с смартфонами Samsung обнаружил легендарный Galaxy S4 Mini, который мне когда-то дарил один из читателей. У смартфона отсутствовала задняя крышка, средняя часть корпуса была немного ободрана, однако несмотря на почтенный возраст в 12 лет, смартфон продолжал нормально работать и даже AMOLED-матрица у него ничуть не выгорела!

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

И тут в моей голове что-то щёлкнуло: я вспомнил что S4 Mini — смартфон с довольно неплохим железом для эмуляторов и очень крутым даже по современным меркам AMOLED дисплеем. На моей памяти, в мире не выходило ни одного серийного игрового телефона в монолитном корпусе с OLED-матрицей, а тут ещё рядом лежал оригинальный N-Gage, который я недавно купил в утиле и восстановил после воды. Я взвесил все за и против, прикинул схему и конструктив будущего устройства и принялся мастерить...

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Всё начинается с кубика...

Перед тем как начать работу, нам необходимо определится с тем что нам нужно будет сделать для реализации такого гаджета на практике:

  • В первую очередь, нам необходимо продумать как геймпад будет общаться с нашим устройством. За исключением моего хака с UART'ом, у нас есть два варианта: первый — микроконтроллер выполняет роль USB-HID устройства (прикидываясь клавиатурой) и подключается к OTG-хосту гаджета. Среди плюсов этого подхода можно выделить низкую задержку, однако минусов гораздо больше. Например, далеко не все старые устройства поддерживают OTG и могут быть проблемы с реализацией одновременной работы USB-хоста и зарядки (зависит от реализации OTG в каждом конкретном устройстве). А второй вариант — это Bluetooth-HID, который работает почти с любыми Android устройствами, однако потребляет чуть больше энергии и может иметь небольшой инпут-лаг.

    После расследования выяснилось, что у S4 Mini OTG нет, а значит остается лишь один вариант — Bluetooth. Среди дешевых микроконтроллеров с BT выделяется лишь ESP32, который стоит буквально три пачки доширака. Его мы с вами и выберем.

  • Далее нам необходимо придумать внешний вид устройства. Изначально мне хотелось, чтобы гаджет по форм-фактору и эргономике напоминал оригинальный N-Gage. Но поскольку мне не хотелось делать слишком длинную «колбасу» и бюджета по свободному пространству в корпусе откровенно не хватало, пришлось пойти на некоторые ухищрения — например, расположить блок кнопок вертикально.

  • Теперь самое сложное — смоделировать более-менее адекватный корпус и подогнать детали так, чтобы их хоть как-то можно было состыковать и закрепить. Я в 3D-печати новичок, а в вопросах проектирования корпусов — вообще неотесанный селюк, поэтому мне оставалось лишь смоделировать в блендере выпуклый меш, импортировать в TinkerCad и затем CSG'шками вырезать в нём дырки отверстия.

  • И самое легкое — написать прошивку для микроконтроллера и спаять всё вместе, дабы наши кнопочки не просто прикольно щелкали, но и на практике работали в системе!

Звучит как приключение на 5 минут. Но вот как на практике? Давайте посмотрим!

❯ Моделируем корпус

В первую очередь я сел моделировать корпус устройства и прикидывать его размеры. В TinkerCad'е CSG'шками сделать корпус по референсу проблематично (по крайней мере для меня), поэтому я решил смоделировать основу в блендере. Я взял рендеры N-Gage с фронтальной части, установил камеру в ортографическую проекцию и принялся повторять контур корпуса оригинального телефона. После этого я создал грани на одной половинке корпуса, продублировал все вершины и отзеркалил их с другой стороны. Таким образом, корпус получился одинаковым (кривым) с обеих сторон.

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Далее я убрал лишние рёбра посередине и вытянул корпус по оси Z с помощью инструмента Extrude. Теперь это напоминает поделку семикласника на уроке обращения с рубанком:

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Внимательные читатели могли заметить косяк, который из-за затенения я не замечал вплоть до первой печати

Дальше я использовал инструмент Inset faces, дабы создать новые грани на плоскости и вытянуть из них фронтальную часть корпуса. Таким образом, мы получаем ровные и мягкие стенки, которые затем можно смягчить ещё больше с помощью модификатора Bevel:

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Однако сейчас геометрия нашего корпуса полая, внутри неё ничего нет. Чтобы добавить внутренние стенки, мы воспользуемся модификатором Boolean (CSG) в блендере: дублируем геометрию нашего корпуса, немного уменьшаем её по оси X и Y (чем меньше дубль, тем толще будут стенки), и затем сдвигаем немного вниз, а затем на основном объекте корпуса добавляем модификатор Boolean, устанавливаем режим Difference, ставим дубль в качестве второго объекта и жмём Apply. Теперь у нашего корпуса внутри отнюдь не пустота!

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Далее экспортируем модель в STL, импортируем её в TinkerCad и берём линейку в зубы. Пора замерять габариты нашего устройства и размер дисплея.

Поскольку S4 Mini уж очень скругленный, я аппроксимировал его размеры до прямоугольника (ни слово про мыло!). Над этим прямоугольником я расположил прямоугольник размером с дисплей, который и вырежет нам пространство для этого самого дисплея:

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

На этом подготовка болванки корпуса закончена, переходим к реализации геймпада.

❯ Геймпад

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

В качестве кнопок я решил использовать обычные DIP-микрики, поскольку в моем городе не было ни плоских SMD-кнопок, ни тем более мягких мембранных. А ещё они прикольно щёлкают. Я, как пользователь механической клавиатуры, гарантирую это!

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Ошметки текстолита можно счистить надфилем или просто подровнять канцелярским ножом

Для реализации обработки кнопок есть несколько подходов:

  • «В лоб»: самый простой и самый подходящий для геймпадов. На один входной GPIO микроконтроллера вешается подтягивающий резистор и кнопка, которая коммутирует массу. Главный плюс такого подхода — возможность зажимать сколько угодно кнопок одновременно, а если ножек на микроконтроллере не хватает, то всегда можно использовать сдвиговый регистр!

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

  • Матричный: используется в клавиатурах, в том числе и в телефонах. Позволяет реализовать 16-кнопочную клавиатуру всего с 8-ю сигнальными линиями, однако с таким подходом нельзя нажимать сразу несколько кнопок кнопок в одной «линии» одновременно. Этим и страдали некоторые китайские игровые консоли, на которых нельзя было одновременно зажать вверх и влево или A и B!

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

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

После этого я наконец-то напечатал первую примерочную болванку, в которой всё помещалось идеально! Время от раздумий до первой болванки — ~5-6 часов:

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

❯ Стыкуем корпус

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

Сначала я решил сделать толкатели кнопок. Для «стрелок» я решил сделать классическую крестовину в духе GBA, а кнопки действий решил сделать цилиндрическими. Здесь в целом ничего сложного: подгоняем размеры толкателей к размерам кнопок, делаем у них небольшую выемку снизу, которая будет «шляпкой» для самих кнопок, а также добавляем «юбку» по бокам как ограничитель, дабы они не выпадали из корпуса:

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

А она ей как раз!

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

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Мне кажется что это невероятный говнокод и костыль от мира инженеров. Напишите своё мнение на этот счёт в комментариях.

Когда зазоры были подогнаны, я принялся моделировать заднюю крышку. Дабы она не выбивалась из общего стиля, я сделал её из фронтальной части корпуса: продублировал, отменил все CSG-операции характерные для основного корпуса и обрезал стенки одним большим кубиком.

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Нарезаем модель в слайсере и печатаем! Как по мне, получилось очень даже стильно. Да, кто-то скажет, мол, видно, что это колхоз, не Industrial-grade, но как по мне для самоделки вполне на уровне!

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

На этом разработка корпуса наконец-то закончена!

❯ Пишем прошивку

Теперь, когда корпус нашего устройства готов и элементы в нём более-менее стыкуются, можно перейти к написанию прошивки. Как я уже говорил ранее, в качестве микроконтроллера я решил выбрать ESP32 благодаря копеечной цене и наличию неплохого BT-стека:

В качестве основы я взял официальный сэмпл BT HID-устройства с гитхаба Espressif. Собрав прошивку и протестировав что всё работает нормально, я принялся адаптировать её под свои задачи. Сначала я написал код для опроса кнопок: устанавливаем GPIO в режим входа с подтяжкой к высокому уровню, затем по запросу итерируемся по массиву с GPIO и заносим состояние кнопок в отдельный массив:

uint8_t input_gpio_mapping[] = {
INPUT_GPIO_LEFT,
INPUT_GPIO_RIGHT,
INPUT_GPIO_UP,
INPUT_GPIO_DOWN,
INPUT_GPIO_A,
INPUT_GPIO_B,
INPUT_GPIO_C,
INPUT_GPIO_D,
INPUT_GPIO_E,
INPUT_GPIO_F
};

uint8_t input_key_states[INPUT_KEYS_COUNT];

void input_initialize_hw()
{
for(int i = 0; i < INPUT_KEYS_COUNT; i++)
{
gpio_reset_pin(input_gpio_mapping[i]);
gpio_set_direction(input_gpio_mapping[i], GPIO_MODE_INPUT);
gpio_set_pull_mode(input_gpio_mapping[i], GPIO_PULLUP_ONLY);
}
}

void input_update_key_state()
{
for(int i = 0; i < INPUT_KEYS_COUNT; i++)
input_key_states[i] = !gpio_get_level(input_gpio_mapping[i]); // TODO: Implement timestamp-based debouncing
}

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

Все HID-устройства описываются специальным дескриптором, однако формат пакетов с репортами о состоянии устройства у них очень сильно отличается: мышки передают ускорение по осям X и Y, а также состояние кнопок, клавиатуры передают до 8-нажатых клавиш одновременно (наследие PS/2), а у геймпадов целый ворох стандартов (DirectInput, XInput... чего только нет. Кстати именно поэтому внешние геймпады обычно имеют несколько режимов). Алгоритм отправки репортов очень прост: 60 раз в секунду проверяем состояние кнопок, если какие-то нажаты — заполняем буфер с нажатыми клавишами и затем отправляем репорт хост-устройству.

// Internal input keycode mapping to HID
int hid_key_mapping[] = {
HID_KEY_DOWN_ARROW,
HID_KEY_LEFT_ARROW,
HID_KEY_UP_ARROW,
HID_KEY_RIGHT_ARROW,
HID_KEY_Z,
HID_KEY_LEFT_GUI,
HID_KEY_V,
HID_KEY_ENTER,
HID_KEY_C,
HID_KEY_X
};
uint8_t hid_report[8];

vTaskDelay(1000 / portTICK_PERIOD_MS);

while(1) {
input_update_key_state();

vTaskDelay((1000 / 60) / portTICK_PERIOD_MS);
if (sec_conn) {
int hid_report_offs = 0;
memset(&hid_report, 0, sizeof(hid_report));

// Not more than 8 keys pressed at once
for(int i = 0; i < INPUT_KEYS_COUNT; i++)
{
if(hid_report_offs == 8)
break;

if(input_key_states[i])
{
hid_report[hid_report_offs] = hid_key_mapping[i];
hid_report_offs++;
}
}

esp_hidd_send_keyboard_value(hid_conn_id, 0, &hid_report, hid_report_offs);
}
}

Вуаля! Всё работает идеально!

❯ Доводим ПО смартфона

Мы уже почти дошли до финала, осталось лишь чуть-чуть доработать прошивку смартфона! Для этого, его сначала необходимо рутировать: ставим CWM через Odin и устанавливаем SuperSU!

Поскольку кнопку включения я не предусмотрел в корпусе, было решено реализовать автостарт устройства от зарядки — прямо как на айфоне! Большинство смартфонов при отображении анимации зарядки на самом деле загружают ядро Linux и запускают специальную программу. Если эту программу подменить на перезагрузку в обычный режим — мы получим автостарт устройства!

На смартфонах Samsung за это отвечает бинарник /system/bin/lpm или же /system/bin/playlpm. Изначально я хотел сделать жёсткую ссылку на программу reboot, которая не работала пока не были запущены какие-то Samsung'овские службы. Затем я узнал что есть возможность напрямую направить ядру запрос о перезагрузке устройства с помощью sysrq.

Далее был написан простенький скрипт:

#!/system/bin/sh
echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger

Который тоже не работал. И я понял что lpm нужно подменять другой самопальной программой. Так была написана и собрана с помощью NDK вот такая мелкая утилита, с которой уже всё заработало:

int main(int argc, char** argv)
{
system("echo 1 > /proc/sys/kernel/sysrq");
system("echo b > /proc/sysrq-trigger");
}

Далее необходимо было решить вопрос с виртуальными кнопками: поскольку в корпусе консоли виден только дисплей смартфона без кнопки Home, нам нужен был способ как-то управлять системой. Для этого было достаточно лишь пропатчить build.prop и добавить qemu.hw.mainkeys=0. В S4 Mini программные кнопки работают немного кривовато (только в портретной ориентации - т.е в нашем случае в режиме смартфона), но в целом пойдет. Я ещё немного поигрался в build.prop ради фана и добавил упоминания N-Gage :)

❯ Аппаратные доработки

Далее необходимо было решить вопрос с зарядкой. Как я уже говорил выше, было решено использовать Type-C. Я заказал разъём на плате, разобрал смартфон и кинул перемычки с цепи питания и сигнальных линий на разъем.

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

У Samsung'ов в те годы были не совсем стандартные разъемы с кучей пластика и к VBus'у аккуратно подпаяться немного проблематично

Теперь нужно решить задачу запитывания микроконтроллера. ESP32 в режиме BLE кушает целые 130мА (что очень много, телефоны нулевых кушали меньше с учетом параллельно работающего GSM-тракта!) в режиме активной передачи данных. Поскольку на самой плате с ESP32 используется LDO AMS1117 с высоким dropout-напряжением в 1.2В, для использования с обычным литий-ионным аккумулятором необходимо было использовать ULDO с дропаутом в ~0.3В...

...но зачем, если контроллер питания смартфона — буквально и есть многоканальный DC-DC преобразователь, который выдаёт сразу несколько различных напряжений:

  • 0.8В-1.2В - VCore, это шина питания ядер процессора. Именно на ней работает вся или почти вся внутренняя логика системы на кристалле.

  • 1.2V-1.8V VRef - обычно это референсное напряжение для работы процессора с внешней логикой. Впрочем, с таким напряжением может быть и одна из шин питания для каких-то модулей (например камеры), это зависит от платформы.

  • 3.3V - Ну, здесь всё очевидно. 3.3В — одно из самых распространенных напряжений в микроэлектронике и может использоваться в широком спектре модулей. Например оно может использоваться для запитки модуля камеры, различных датчиков, контроллера тачскрина, усилителя и т.п. Именно эта шина питания в идеале нам и нужна.

Однако 3v3 уровни могут быть и логическими. Крайне не рекомендую вешать нагрузку аж в целых 130мАч на какую-нибудь цифровую линию, есть неиллюзорный риск спалить процессор или контролер питания. Лучше всего брать эту шину питания с здоровых decoupling-конденсаторов, однако имейте ввиду что шина может быть нагружена другими устройствами и вы со своей нагрузкой в сотню миллиампер можете увести КП в защиту!

В случае с S4 Mini у меня был сервис-мануал с схемой, где я принялся искать нужное напряжение. Изначально у меня была возможность взять 3.3В с питания eMMC, однако по ходу изучения схемы я заметил ещё одну подходящую шину питания — 3P0 (т.е 3В ровно), которая питает Wi-Fi, ИК-порт и тачскрин.

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Я решил заглянуть в даташит на микроконтроллер и убедился, что он умеет работать в том числе и при 3В на входе, однако это пороговое напряжение при котором может работать чип. Если питание нестабильное и проседает, то МК либо зависнет, либо упадет в ресет. Однако я был уверен что на выходе DC-DC с КП смартфона точно должно быть всё нормальным. Я быстренько вывел перемычку и запитал МК буквально «в воздухе», проверил что всё работает стабильно, а затем припаял несколько жилок с LVDS-кабеля и закрепил УФ-маской.

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

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

На МК ничего не слиплось — просто на момент фотографии мне всё ещё не пришёл флюкс-офф)

И вот, наконец-то моё детище собрано! Давайте же посмотрим что я там насобирал!

❯ Тестируем

Одним из основных критериев будущего игрового смартфона была конечно-же возможность сохранить функционал телефона. Иными словами, мне очень хотелось чтобы девайс повторял концепцию N-Gage и действительно в себе совмещал возможность звонить и удобно играть в игры!

В целом, я считаю что у меня это вполне получилось. Помимо функций самой звонилки, Android 4.4 всё ещё вполне может порадовать владельца базовым серфингом сети (большинство сайтов не откроется... ну нам и опеннета хватит!) и мессенджерами - здесь пока ещё работают и Telegram, и ВК в лице в Kate Mobile. Однако есть определенный нюанс... я взял GT-I9190 - т.е односимочную 3G-версию S4 Mini. А как известно, 3G в России уже практически не используется, поэтому вне Wi-Fi придется ограничится EDGE :)

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Вчера я сделал анонс статьи на Пикабу и несколько читателей задали резонный вопрос: это же буквально смартфон 2013 года, он же, на первый взгляд, ничего не умеет в современных реалиях. Однако спешу вас заверить что под капотом всё не так уж и плохо! 400'ого Snapdragon'а хватает для большинства мобильных игр тех лет, не говоря уже об эмуляторах. При этом в отличии от старших 600'ых снапов (тогда 800'ый ещё не вышел), он не слишком сильно греется и более лоялен к и без того не самому объёмному аккумулятору!

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

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

Когда запускаешь любимый Super Mario Bros на офигенной AMOLED-матрице, то сразу понимаешь что весь проект был затеян точно не зря. После отключения линейного фильтра и растягивания картинки на весь экран, то диву даешься какие тут сочные цвета - не как на ЭЛТ-телевизоре, но тоже очень годно! Эмулятор работает очень шустро!

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Ещё раз ноапомню что справа не рамка, а забагованные софт-кнопки. А вот сверху - рукопопие :)

Давайте же перейдем к чему-то ещё более пестрому и "графонистому" - а именно к Sega Mega Drive с оригинальным Соником! Здесь игра точно также летает, звук не хрипит, а картинка выглядят максимально приятной. Когда-то AMOLED-матрицы Samsung ругали за PenTile и немного не естественную цветовую схему... но в эмуляторах она как-будто какой-то шарм придает.

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Далее предлагаю опробовать DOS'овскую классику - Wolfenstein 3D. Помимо "вольфа", я хотел добавить в тесты также и Quake... но порты попались кривые и не запускались. Очевидно что игра, которая шла даже на 286'ом, будет отлично летать на S4 Mini:

Как я превратил старый смартфон в игровую консоль с возможностью звонить Опрос, Рукоделие с процессом, Поделки, Смартфон, Гаджеты, Телефон, Игры, Консоли, Своими руками, Программирование, Esp32, Микроконтроллеры, Samsung, Android, Arduino, Длиннопост

Ну и нативные игрушки здесь тоже работают неплохо. В какие-нибудь аркады типа Angry Brids, Fruit Ninja или Asphalt можно поиграть с большим удовольствием!

❯ Заключение

Вот такой незамысловатый и полезный девайс у нас с вами сегодня получился. Вы можете собрать такой и сами, схему, код прошивки и исходные файлы моделей я выкладываю на своём Github. Корпус можно "пощупать" в TinkerCad.

Сама разработка заняла всего 7 дней, большая часть времени ушла на подгонку деталей. Да, эту неделю я определенно точно почти не спал и даже один раз попсиховал. Однако все время разработки мне было дико весело и интересно. Ну, а что ещё пареньку в 23 года то нужно, кроме как писать код, копаться в девайсах и ТАЗах!?

Жду ваше мнение о моей самоделке в комментариях! А если вам интересна тематика ремонта, моддинга и программирования для гаджетов прошлых лет, подписывайтесь на мой Telegram-канал «Клуб фанатов балдежа», куда я публикую бэкстейджи статей, иногда полезные посты ну и немножечко щитпоста! Если вам интересны мои видео той же тематики — предлагаю подписаться на мой YouTube-канал.

Как вам статья?
Всего голосов:
Как вам девайс?
Всего голосов:

Важно

Друзья! Для подготовки статей с разработкой самопальных игрушек под необычные устройства, объявляется розыск телефонов и консолей! В 2000-х годах, китайцы часто делали дешевые телефоны с игровым уклоном — обычно у них было подобие геймпада (джойстика) или хотя бы две кнопки с верхней части устройства, выполняющие функцию A/B, а также предустановлены эмуляторы NES/Sega. Фишка в том, что на таких телефонах можно выполнять нативный код и портировать на них новые эмуляторы, чем я и хочу заняться и написать об этом подробную статью и записать видео! Если у вас есть телефон подобного формата и вы готовы его задонатить или продать, пожалуйста напишите мне в Telegram (@monobogdan) или в комментарии. Также интересуют смартфоны-консоли на Android (на рынке РФ точно была Func Much-01), там будет контент чуточку другого формата :)

А также я ищу старые (2010-2014) подделки на брендовые смартфоны Samsung, Apple и т. п. Они зачастую работают на весьма интересных чипсетах и поддаются хорошему моддингу, парочку статей уже вышло, но у меня ещё есть идеи по их моддингу! Также может у кого-то остались самые первые смартфоны Xiaomi (серии Mi), Meizu (ещё на Exynos) или телефоны Motorola на Linux (например, EM30, RAZR V8, ROKR Z6, ROKR E2, ROKR E5, ZINE ZN5 и т.п, о них я хотел бы подготовить специальную статью и видео т. к. на самом деле они работали на очень мощных для своих лет процессорах, поддавались серьезному моддингу и были способны запустить даже Quake!). Всем большое спасибо за донаты!

Статья подготовлена при поддержке TimeWeb Cloud. Подписывайтесь на меня и @Timeweb.Cloud чтобы не пропускать новые статьи каждую неделю!

Показать полностью 24 2
[моё] Опрос Рукоделие с процессом Поделки Смартфон Гаджеты Телефон Игры Консоли Своими руками Программирование Esp32 Микроконтроллеры Samsung Android Arduino Длиннопост
232
94
user10100567
user10100567
5 месяцев назад
Arduino & Pi

Как я нашел новое увлечение в Клубе электроники на Пражской⁠⁠

Как я нашел новое увлечение в Клубе электроники на Пражской Личный опыт, Arduino, Сборка, Микроконтроллеры, Электроника, Схемотехника, Изобретатели, Длиннопост, Обучение

Привет, друзья! Хочу поделиться своей недавней находкой — Клуб электроники на Пражской. Если коротко, это место, где ты реально начинаешь понимать, как работают все эти загадочные схемы, микроконтроллеры и платы, которые всегда казались чем-то из другой вселенной.

Я давно хотел попробовать что-то новое, связанное с технологиями, изучить нюансы электроники и также реализовать одну идею. Еще лет 10 назад пытался найти подобные клубы, но тогда ничего стоящего в Москве не нашел, да и сейчас такие места - это редкость. Поэтому, когда я случайно узнал о новом Клубе электроники, решил, что это мой шанс! Собрался записаться на курсы, и честно говоря, вообще не пожалел.

На первом занятии нас сразу погрузили в мир электроники: объяснили, как работают базовые компоненты, показали, как собирать простейшие схемы. А еще дали попробовать сделать свой первый проект — собрать светодиодный индикатор. Это невероятно, когда ты видишь, как твои усилия буквально начинают светиться!

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

Кстати, осциллограф сначала звучал как что-то невероятно сложное, но когда преподаватели объяснили, как им пользоваться, оказалось, что это очень полезная и даже увлекательная штука. Теперь я понимаю, как визуализировать сигналы и анализировать работу схем — это действительно круто!

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

Как я нашел новое увлечение в Клубе электроники на Пражской Личный опыт, Arduino, Сборка, Микроконтроллеры, Электроника, Схемотехника, Изобретатели, Длиннопост, Обучение

Преподаватели в клубе очень крутые. Они не просто знают, о чем говорят, но и реально могут объяснить так, чтобы ты понял. Даже если ты, как я, полный новичок, тебя всегда поддержат и направят. Народа пока ходит мало, я с позитивным впечатлением пообещал им порекламировать клуб)

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

Если вы тоже задумывались о чем-то подобном, советую заглянуть сюда. У клуба есть сайт nb6.ru, там можно посмотреть расписание и записаться на пробное занятие. Также на Яндекс Картах можно найти отзывы. Попробуйте, возможно, это тоже станет вашим новым любимым хобби!

Пишите, кому интересно такое направление и что хотели бы создать/изобрести. Есть в ваших городах такие клубы или курсы?

Показать полностью 1
[моё] Личный опыт Arduino Сборка Микроконтроллеры Электроника Схемотехника Изобретатели Длиннопост Обучение
58
39
MiheevSanity
MiheevSanity
5 месяцев назад
Arduino & Pi

Создал пульт управления звуком на ESP 32, для тренировки⁠⁠

Создал пульт управления звуком на ESP 32, для тренировки Arduino, Инженер, Электроника, Esp32, Микроконтроллеры, Spi, Аккумулятор 18650, Fdm печать, 3D печать, Длиннопост

В 2024 году кроме нормального развития в программировании,
(Где так и не закончена единственная задача! В виде стабильности сети.) Включая изучения распределённых файловых систем, работы с 3D в браузере.

Под его конец создано первое рабочее физическое устройство.
Первой реализована одна из простых идей, всего которых уже не счесть.🫢

Создал пульт управления звуком на ESP 32, для тренировки Arduino, Инженер, Электроника, Esp32, Микроконтроллеры, Spi, Аккумулятор 18650, Fdm печать, 3D печать, Длиннопост

Пульт управления звуком, на основе ESP32 на C++.

Корпус спроектирован самостоятельно в FreeCad, многие элементы не имеют чертежа и нужно измерять самостоятельно штангенциркулем.
И распечатан самостоятельно в FDM принтере.

Создал пульт управления звуком на ESP 32, для тренировки Arduino, Инженер, Электроника, Esp32, Микроконтроллеры, Spi, Аккумулятор 18650, Fdm печать, 3D печать, Длиннопост


Пока соединение по WIFI🛜 в мобильное приложение на смартфоне, принимающее команды.
Но возможно использовать и Bluetooth.

Может регулировать громкость потенциометром,
переключать треки вперёд назад 5 позиционной кнопкой.
Считывая аналоговые и цифровые сигналы, и обмениваясь пакетами по UDP.
Посылая медиа-сигналы в смартфон, который уже запускает музыку.

Имеет 2 экрана, I2C и SPI. Позволяющих выводить как ЧБ так и RGB изображения.
Питается аккумулятором 18650.

Создал пульт управления звуком на ESP 32, для тренировки Arduino, Инженер, Электроника, Esp32, Микроконтроллеры, Spi, Аккумулятор 18650, Fdm печать, 3D печать, Длиннопост

За примерно 14 дней, в первую половину декабря. Не считая доставки.

В процессе был сожжён один DAC по неопытности.🥲
И несколько слабых блоков питания.
Получен огромный опыт за короткое время.

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

Наивный первый шаг к реализации идей мирового масштаба.

Показать полностью 4
[моё] Arduino Инженер Электроника Esp32 Микроконтроллеры Spi Аккумулятор 18650 Fdm печать 3D печать Длиннопост
19
20
Salomanov
6 месяцев назад

Подключение датчика температуры к Guition ESP32-S3-4848S040⁠⁠

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

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

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

То что установлено сейчас

Выбор пал на Guition ESP32-S3-4848S040 так как можно его прошить как готовой прошивкой так и создать свою, сенсорный цветной экран, с возможностью создать свой интерфейс и 3 реле для управления нагрузкой

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

Guition ESP32-S3-4848S040

Сразу после покупки залил прошивкой от tasmota (изначально стоит демонстрационная). Прежде чем покупать заранее узнал, что в нём нет датчика температуры, а в моделе с датчиком отсутствуют реле. Решил, что реле важнее, а датчик как-нибудь приделаю. В качестве датчика решил использовать BME280, он показывает температуру, влажность и давление.

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

BME280

Разобрав модуль видим на плате несколько разъемов: подключение батарейки, динамика, реле и UART

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

Контроллер и дисплей при работе немного греются, поэтому датчик лучше сделать выносным. К сожалению разъема для подключения датчика по I2C тут нет, но так как UART мне тут не пригодится я решил переделать его под I2C. Для этого нужно выпаять компоненты Q1, R31, R7, R6, тем самым отключим UART от разъёма.

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

К дорожкам идущим к разъёму припаиваем питание 3,3 вольта, его можно взять с точки с маркировкой S3. I2C на этом модуле подключен на 19 и 45 пинам контроллера. SDA это пин 19, SCL это 45.

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

Разъём для подключения я взял от вентилятора ноутбука, перепиновав для того чтобы цвета примерно совпадали

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

А в качестве основного провода, кабель подключения USB передней панели системного блока, тоже перепиновываем, чтобы совпадало с датчиком

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост
Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

Корпус для датчика взял от регулятора вентилятора системного блока

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

Остаётся только сделать отверстие в высоковольтном модуле и всё собрать

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

Ни чего прописывать в прошивке не нужно, датчик сразу определяется

Подключение датчика температуры к Guition ESP32-S3-4848S040 Своими руками, Микроконтроллеры, Arduino, Термостат, Умный дом, Изготовление, Самоделки, Сборка, Длиннопост

На этом пока всё, впереди у меня создание управления через сенсор и настройка термостата. Но это позже...

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

https://youtu.be/z0Ocq2e2oYA

Показать полностью 12
[моё] Своими руками Микроконтроллеры Arduino Термостат Умный дом Изготовление Самоделки Сборка Длиннопост
9
3
linuxtester
linuxtester
7 месяцев назад

Плата esp32 с ethernet⁠⁠

Плата esp32 с ethernet Юмор, Фотография, Микроконтроллеры, Esp32, Arduino, Rj-45, Смех (реакция)

RJ45(точнее 8P8C) + esp32

Показать полностью 1
[моё] Юмор Фотография Микроконтроллеры Esp32 Arduino Rj-45 Смех (реакция)
2
1157
trapwalker
trapwalker
Умный дом, проекты, философия ИИ, ностальгия, ПУТЕШЕСТВИЯ, футурология, критическое мышление, научпоп, выживалово, геймдев, просто о сложном
Инженериум DIY
Серия ОчУмелыеРучки
7 месяцев назад

Тут народ всякую херню за лайки клянчит⁠⁠

А я что, рыжий что ли? Но я не буду про отжимания и подобную хрень.

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

Тут народ всякую херню за лайки клянчит Arduino, Идея, Esp8266, Проект, Wi-Fi, Bluetooth, Как достать, Соседи, Проблемные соседи, Квест, Квесты в реальности, Своими руками, Электроника, Микроконтроллеры

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

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

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

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

Ещё в планах проекты:

- Обнаружение домочадцев на подходе к дому\квартире (по сигналу вайфая и блютуса), интеграция в умный дом (mqtt Home Assistant), Алису, Telegram и прочее. Фактически это датчик присутствия конкретного смартфона (блютус гарнитуры, смарт-часов, и т.д.) для умного дома.

- Городской геотрекер по файфаям.

- Небольшой иммерсивный квест "Загадочный WiFi в Лесу".

- Устройство генерации нервного тика у врагов путём злостного нерегулярного попискивания. С беспалевным управлением через Bluetooth или WiFi.

Показать полностью
[моё] Arduino Идея Esp8266 Проект Wi-Fi Bluetooth Как достать Соседи Проблемные соседи Квест Квесты в реальности Своими руками Электроника Микроконтроллеры
285
20
Dudarion
Dudarion
7 месяцев назад
Arduino & Pi

Как создается электроника⁠⁠

В этом видео мы с нуля разработаем и изготовим несложное электронное устройство. Исходники платы, кода и 3д моделей на гитхабе: https://github.com/Dudarion/BLE_wheel.git

[моё] Гаджеты Электроника Микроконтроллеры Акселерометр Гироскоп Altium Solidworks 3D печать Печатная плата Arduino Видео YouTube
2
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии