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

Пикаджамп

Аркады, Казуальные, На ловкость

Играть

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

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

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

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

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

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

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

Arduino + Raspberry pi

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

Электроника Ardublock Самоделки YouTube Своими руками Вертикальное видео Видео ВК Linux Программирование Компьютер Все
79 постов сначала свежее
21
AnatoliyB
AnatoliyB
1 год назад
Arduino & Pi

Пол – это лава⁠⁠

Тег [моё], т.к я полностью сам разработал, спаял и запрограммировал эту штуку, готов ответить на ваши вопросы.

А для тех, кому интересно последить за развитием проекта, оставлю ссылку на мой телеграм канал: Pixel Quest – канал о разработке. Пишу там исключительно сам и не чаще одного раза в 4-7 дней, маркетинговой информации и рекламы не будет, больше планирую рассказывать про техническую составляющую проекта с постепенным уклоном в IT.

Показать полностью
[моё] Игровая комната Электроника Raspberry pi Светодиоды Видео Пиксельные игры Arduino Самоделки
6
13
user4932718
1 год назад
Arduino & Pi

Нестандартные дисплеи и Raspberry Pi 3B⁠⁠

Есть у меня три штуки одинаковых Raspberry Pi 3B и разные дисплеи от смартфонов, ноутбука....Кто-то знает, можно ли их прицепить на DSI разъём, не через скалеры HDMI и прочее?

Нестандартные дисплеи и Raspberry Pi 3B Raspberry pi, Жк-дисплей, Arduino
Показать полностью 1
[моё] Raspberry pi Жк-дисплей Arduino
11
53
A.Kristina
A.Kristina
1 год назад
Интересный AliExpress
Серия DIY Электроника

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7]⁠⁠

1) Модуль камеры за 110 руб.

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Цифровая VGA камера OV7670 для Arduino с разрешением 640×480 px, 30 к/с. Максимально упрощенный вариант фото-видео камеры для совместной работы с любыми микроконтроллерами, в том числе и с контроллерами серии Ардуино. Стоит такая 110 руб. Ссылка на источник

2) Набор радиосигнального RFID-модуля RC522 + карта + брелок

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

RFID-модуль RC522 — радиосигнальный модуль, работающий на частоте 13.56 МГц с SPI-интерфейсом. В комплекте c модулем идет 2 RFID-метки — в виде карты и брелока. Стоит такой набор 105 руб. с бесплатной доставкой. ссылка

3) Фотодиод

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Приёмник оптического излучения BPW34 - кремниевый PIN-фотодиод с высокой скоростью и высокой светочувствительностью в миниатюрном, плоском и прозрачном корпусе из пластика. Он чувствителен к видимому и близкому к ИК излучению. Стоит такой 38 рублей . ссылка

4) Корпус для размещения электроники

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Пластиковый короб для скрытия и размещения плат и электроники. Стоит самая маленькая 31 руб. ссылка

5) Набор из 840 перемычек

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

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

6) Сенсорный диммер

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Емкостный сенсорный диммер постоянного напряжения для регулировки яркости светодиодов, стоит такой 50 руб. ссылка

7) Магнитный извещатель

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Магнитный извещатель (геркон) — это переключатель и магнит, помещенные в пластиковые корпуса. Работа по принципу "замкнутый контакт - разомкнутый контакт", извещатель позволяет использовать его в широком круге задач: контроль открытия дверей, счетчики срабатываний/скорости/частоты и т.д. Стоит такой 60 руб с бесплатной доставкой. ссылка

8) 6-канальный релейный модуль

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

6-канальный релейный модуль может управлять одновременно 6 нагрузками, состояние каждого реле можно определить по светодиодам, которые установлены на каждом канале. Стоит такой модуль на 12v - 330 руб. ссылка на источник.

9) Поплавковый выключатель

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Горизонтальный датчик-выключатель, используемый для определения уровня жидкости в резервуаре. Переключатель может использоваться в насосе, индикаторе, сигнале тревоги или других устройствах.. Стоит такой 140 руб. ссылка

10) Импульсный генератор

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Модуль NE555 генератора импульсов на микросхеме NE555 (YS-32), которая способна работать от 10 до 200 кГц. Стоит такой набор 66 руб. ссылка.

11) Радиомодуль RDA5807M

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Стерео-модуль, который способен принимать FM-частоты в диапазоне от 50 МГц до 115 МГц, обладающий мощным цифровым аудиопроцессором, и который позволяет напрямую слушать звук через наушники или динамик со встроенным усилителем. Стоит такой 66 руб. ссылка.

12) Солнечная панель

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Панель солнечная 5V, 0.5W стоит такая 78 руб. ссылка на источник

13) Беспроводной модуль связи на 1000 метров

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Не смотря на свои миниатюрные размеры, радиус действия этого передатчика (чип SI4432) на открытой местности составляет 1000 метров. Это отличное решение для создание проектов с низким токо-потреблением и малым размером. Стоит такой 185 руб. ссылка

14) Импульсный повышающий трансформатор 20кВ

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Мощный повышающий трансформатор. Стоит такой 163 рубля. ссылка

15) Кабель USB к UART TTL

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Кабель на микросхеме PL2303HX с 4-контактами позволяет подключаться к компьютеру для программирования. Стоит такой 119 руб. ссылка на источник

16) Модуль LAN8720 для Arduino

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Модуль Ethernet LAN8720 - предназначен для сборки устройства управления электрическими приборами через интернет. Стоит такой 173 рубля. ссылка

17) Модуль записи голоса SD1820

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Модуль ISD1820 для записи и воспроизведения одного голосового сообщения длиной до 10 секунд. Стоит такой 126 руб. ссылка на источник

18) Плата расширения

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Плата расширения CNC Shield v3  предназначена  для создания на основе контроллера Arduino UNO  3D принтеров, станков с числовым программным управлением, в том числе гравировальных, фрезерных, маркировальных, станков портальной резки, промышленных роботов. Контроллер Arduino позволяет работать станку автономно или управлять с помощью компьютера через USB-порт. Стоит такая 111 руб. с бесплатной доставкой ссылка

19) Оптический модуль для считывания отпеча пальцев

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Сканер отпечатков пальцев, стоит такой 985 руб. ссылка

20) Элемент Пельтье

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Под действием электрического тока элемент Пельтье  TEC1-12706 способен создавать разность температур на своих сторонах (эффект Пельтье). Этот эффект имеет и обратное действие (эффект Зеебека): при создании на сторонах элемента Пельтье разности температур, он способен вырабатывать электрический ток. При работе элемента Пельтье одна его сторона значительно нагревается, а вторая охлаждается. Чтобы получить на охлаждающей стороне элемента Пельтье температуры ниже температуры окружающего воздуха необходимо принудительно охлаждать нагревающуюся сторону элемента, например, с помощью радиатора и термопасты. С помощью элемент Пельтье можно соорудить небольшой холодильник, мобильный мини-кондиционер или портативный нагреватель. Кроме того, используя обратный эффект, создавая большой перепад температур по средствам нагрева одной стороны элемента Пельтье и охлаждения другой стороны, можно добиться выработки электричества, что позволит создать зарядное устройство.. Стоит такой 1964 руб. ссылка на источник

21) Плата управления MEGA2560

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Arduino Mega построена на микроконтроллере ATmega2560, реализованной на микросхеме CH340, может быть применим в сложных устройствах, например таких, как интеллектуальные роботы или принтеры трёхмерной печати. Стоит такая плата 1162 руб. ссылка

22) Модуль датчика напряжения 0-25В

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Модуль датчика напряжения (вольтметр), для измерения напряжения в диапазоне 0-25В. Стоит такой 61 рубль. ссылка

23) Сервопривод

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Сервопривод для Arduino ESP32. Стоит такой 136 руб. с бесплатной доставкой ссылка

24) Устройство для слежения за светом

Интеллектуальное устройство для слежения за светом с солнечной панелью для Arduino. Стоит такой набор для сборки 4 252 руб. ссылка

25) Шасси гусеничное для робота

Топ 25 интересных модулей и датчиков для любителей робототехники и программирования [Часть 7] AliExpress, Электроника, Товары, Китайские товары, Гаджеты, Робототехника, Программирование, Arduino, Модуль, Датчик, Самоделки, Сборка, Хобби, Разработка, Робот, Роботизация, Видео, Без звука, Длиннопост, Raspberry pi

Набор с гусеничным шасси и приемником для создания робота. Стоит такой набор около 13 000 руб. ссылка на источник.

Показать полностью 23 1
AliExpress Электроника Товары Китайские товары Гаджеты Робототехника Программирование Arduino Модуль Датчик Самоделки Сборка Хобби Разработка Робот Роботизация Видео Без звука Длиннопост Raspberry pi
5
85
AnatoliyB
AnatoliyB
1 год назад
Arduino & Pi

Пол – это лава: я таки открыл свою игровую комнату⁠⁠

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

[моё] Игровая комната YouTube Raspberry pi Пиксельные игры Электроника Пол это лава Своими руками Arduino Вертикальное видео Видео
9
316
A.Kristina
A.Kristina
1 год назад
Интересный AliExpress
Серия DIY Электроника

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6]⁠⁠

1) Антенна GSM/GPRS/3G за 39 рублей

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Миниатюрная антенна совместимая с модулями Sim800, sim900 и с усилениеем 3DBI. Стоит такая штука 39 руб. с бесплатной доставкой. ссылка на источник

2) Датчик скорости

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Компактный модуль измерения скорости с инфракрасным щелевым датчиком. Модуль применяется для контроля движения в колесных роботах и прочих устройствах. Стоит такой 53 рубля. ссылка

3) Герконовый модуль

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Модуль представляет собой миниатюрный магнитный геркон Y213 (нормально разомкнутый) с обвязкой. При приближении магнита контакты замыкаются и модуль символизирует о наличии питания и о срабатывании датчика. Контакты геркона замыкают вход компаратора. Благодаря применению компаратора в модуле через геркон протекает очень малый ток, что значительно продлевает срок службы датчика. Состояние выхода цифрового сигнала говорит о наличии магнитного поля. На модуле установлен подстроечный резистор номиналом 10 кОм. Служит для установки пределов срабатывания геркона и таким образом отрегулировать чувствительность. Также на плате установлен компаратор LM393 для исключения ложных срабатываний магнитного датчика. При считывании показаний с модуля, если геркон разомкнут - выводится "1", если замкнут - выводится "0". Стоит такой 87 руб. ссылка

4) Защитная плата для литий-ионных батарей

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Модуль защиты для зарядки аккумуляторов. Стоит такой около 55 руб. ссылка

5) Гигрометр HR31

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Датчик для измерения влажности. Стоит такой 55 руб. ссылка на источник

6) Бегущая линия светодиодов

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Набор 'сделай сам' - бегущие светодиоды, регулировка через потенциометр. Стоит такой набор 58 рублей с бесплатной доставкой. ссылка

7) Модуль датчика температуры

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Термистор для arduino, с помощью регулировки потенциометра вы можете изменить порог обнаружения температуры. Стоит такой 56 руб. ссылка

8) Датчик обхода препятствий

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Инфракрасный датчик обхода препятствий для создания Arduino роботов. Стоит такой 57 руб. ссылка

9) Модуль программирования чипов

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Модкль для чипов ATtiny13A/ATtiny25 /ATtiny45/ATtiny85. Стоит такой 61 руб. ссылка

10) Разъем типа C

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Разъем Type-c для передачи данных. стоит такой 62 рубля. ссылка на источник

11) Датчик управления светом

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Набор для самостоятельной сборки фоточувствительного датчика. Стоит такой 63 рубля. ссылка

12) Модуль питания

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Плата модуля питания 3.3V, 5V, 12V. Стоит такой 65 рублей ссылка

13) Сигнал тревоги

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Сигнал тревоги 95 дБ, 3-24 В. стоит такой 66 руб. ссылка

14) Кнопки

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Набор кнопок для изготовления платы управления. Стоит такой набор 70 руб. ссылка

15) Низкоуровневый триггер

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

1-канальный релейный модуль 5В. Стоит такой 73 рубля с бесплатной доставкой. ссылка на источник

16) Датчик удара

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Модуль датчика удара для Arduino, 3 контакта. Стоит такой 78 руб. ссылка

17) Мигающая лампочка

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Модуль с 7-цветным мигающим светодиодом диаметром 5-миллиметров. Стоит такой 78 рублей. ссылка

18) Инфракрасный излучатель

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

10 пар инфракрасного излучателя и ИК-приемника. Стоит 76 руб. с бесплатной доставкой. ссылка

19) Разноцветные светодиоды

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Разноцветные светодиоды диаметром 3 мм. Идут партиями по 100 штук. Стоит набор 79 руб. ссылка

20) Датчик наклона

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Стандартный модуль датчика наклона KY020, 3 контакта. Стоит такой 79 руб с бесплатной доставкой. ссылка на источник

21) Пятипозиционный модуль навигации

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

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

22) Датчик сердцебиения

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Датчик Arduino KY-039 служит для измерения пульса (сердцебиения) на пальце. Данный сенсор реагирует на изменение прозрачности пальца для инфракрасного излучения от светодиода при колебаниях кровяного давления. Стоит такой 81 руб. ссылка

23) Датчик пламени

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Датчик огня KY-026 (flame sensor Arduino) позволяет определить наличие открытого пламени с помощью инфракрасного приемника. Стоит такой 82 рубля. ссылка

24) Модуль энкодера

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Модуль энкодера KY-040 для arduino (Ардуино) - это датчик угла поворота. Другое его название - модуль датчика вращения или валкодер. Модуль напоминает переменный резистор, но в отличии от него не имеет ограничений по количеству оборотов, его можно использовать в качестве кнопки. Фактически у него два режима вращения - без нажатия и с нажатием ручки энкодера. Модуль - механический датчик, преобразующий угол поворота в электрические сигналы. Стоит такой 82 рубля ссылка

25) Антенна для IP-модуля SIM800L

Топ 25 дешевых датчиков и модулей для создания роботов на Arduino и других электронных проектов/самоделок [Часть 6] AliExpress, Электроника, Товары, Китайские товары, Робототехника, Модуль, Датчик, Хобби, Сборка, Программирование, Самоделки, Своими руками, Arduino, Raspberry pi, Длиннопост

Антенна для IP-модуля SIM800L GPRS TCP предназначена для усиления сигнала и обеспечения стабильной связи в сети GPRS и TCP. Стоит такая 86 рублей с бесплатной доставкой. Ссылка на источник.

Предыдущие материалы по теме:

Топ 25 датчиков и модулей для различных электронных поделок [Часть 1]

Топ-25 дешевых плат, модулей и датчиков для различных электронных проектов [Часть 2]

Топ 25 дешевых датчиков, модулей и контроллеров для модернизации ламп и освещения

Топ-25 дешевых плат, модулей и датчиков для создания различных электронных проектов на Arduino [Часть 4]

Топ 25 самых дешевых датчиков и модулей [Часть 5]

Показать полностью 24
AliExpress Электроника Товары Китайские товары Робототехника Модуль Датчик Хобби Сборка Программирование Самоделки Своими руками Arduino Raspberry pi Длиннопост
48
7
MarkParker.5
MarkParker.5
2 года назад
Умный дом
Серия MajorDom

Внутри MajorDom v1.0 — Разбираем архитектуру новой системы умного дома⁠⁠

Статья на английском / read in english

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

МажорДом состоит из нескольких ключевых компонентов: девайсы, хаб, облако, мост, мобильное приложение и голосовой ассистент.

Девайсы обеспечивают управление физическими устройствами в доме. С помощью радиомодулей и протокола "Мерлин", они обмениваются данными, получают команды от хаба и отправляют ему события.

Хаб является центральным элементом системы. Он обеспечивает управление девайсами и координирует их работу. Хаб хранит основную базу данных с информацией о пользователях, доме, комнатах и девайсах. Через локальный HTTP-сервер и WS-сервер, хаб предоставляет API для работы с базой данных и высокоуровневого управления девайсами.

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

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

Таких мостов в системе может быть несколько и они могут располагаться в разных местах. Клиенты выбирают ближайший или наименее загруженный мост для минимизации задержек при обмене данными.

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

Нестрашна даже полная потеря интернет-соединения на хабе. Вся логика и обработка команд происходят локально, что обеспечивает независимость от интернет-соединения и сохраняет возможность управления устройствами в локальной сети. Но такой сценарий редкость, ведь хаб может подключаться одновременно по wifi и ethernet кабелю, а в будущем будет добавлена поддержка сим-карт сотовой сети.

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

Как и хаб, голосовой ассистент может работать полностью офлайн, что обеспечивает безопасность, конфиденциальность и надежность использования.

Самое главное: теперь установить систему "МажорДом" могут даже те, кто не имеет опыта в программировании. В следующей статье я поделюсь подробным руководством о том, как это сделать.

Показать полностью
[моё] IT Программирование Arduino Разработка Приложение Умный дом Автоматизация Голосовой помощник Голосовое управление Raspberry pi Текст
1
194
monobogdan
monobogdan
2 года назад
TECHNO BROTHER

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера⁠⁠

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост

К сожалению, в наше время многие старые, но весьма неплохие по характеристикам гаджеты отправляются напрямую в помойку, и их владельцы не подозревают, что им можно найти применение. Сервер, мультимедийная-станция, да даже просто как TV-приставка — люди в упор не замечают сфер, где старенький планшет мог бы быть полезен. Но как быть, если посвящаешь жизнь портативным гаджетам, кодингу и копанию в железе? Правильно: сделать довольно мощную игровую консоль из старого планшета самому! Сегодня вам расскажу, как я сделал свою портативную приставку из планшета с нерабочим тачскрином, Raspberry Pi Pico и 8 кнопок! За рабочим результатом прячется несколько дней работы: поиск UART на плате, разработка контроллера геймпада на базе RPi Pico, написание приложения-сервиса, которое слушает события и отправляет их в подсистему ввода Linux в обход Android. Интересно? Тогда жду вас под катом!

❯ Мотивация


Прошло уже практически 10 лет с того момента, как у меня появилась моя первая портативная консоль. Несмотря на то, что я был заядлым ПК-игроком, я уже успел посмотреть на PS3 и PSP, но денег на их покупку у меня особо не было, да и к тому времени уже был в наличии Android-планшет. Но к моему 13-летию в 2014 году, когда я ходил и выбирал себе будущий девайс на день рождения, отец и мама решили подарить мне мою первую портативную консоль. Изначально, я уговаривал её купить мне целых два девайса, но бюджет был ограничен 4.000 рублей, а я хотел взять смартфон Fly IQ239 и консоль JXD S601 одновременно:

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост


Однако, увидев здоровую 7-дюймовую консоль в магазине TREC (думаю, жители южной части РФ помнят такой), мама уговорила меня взять именно её, мотивируя это «ну и чего ты будешь тыкаться в этот мелкий экран? Возьми большую». После покупки гаджета, я был доволен: играл какие-то игрушки с ретро-платформ, устанавливал игры на Android, сидел в ВК через Kate Mobile. Что еще нужно было школяру? Однако, планшет прожил у меня недолго: с очередного лага я психанул и ударил по нему кулачком, унеся на тот свет и дисплей и тачскрин. Так консолька и пролежала в подвале около 8 лет. Впрочем, мне продолжали импонировать подобные устройства и в прошлом году я купил и написал про несколько подобных девайсов.

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост



Несколько месяцев назад, мой читатель Кирилл Севостьянов с Хабра прислал мне HTC HD2 в качестве донора и планшет Prestigio PMP7170B3G, который был рабочим, но… у него отказал тачскрин. Я всё думал, чего бы с ним сделать и решил реализовать игровую консольку своими руками из подручных средств. Идея крутилась в голове довольно давно, но реализовал я её только сейчас.

❯ Что нам нужно сделать?


Итак, что должно быть у портативной консоли? Чипсет, дисплей, звук, ОС — это всё нам уже предоставляет планшет. Нам остаётся лишь сделать свой геймпад. Давайте подумаем, что нам будет нужно для того, чтобы его сделать и передавать от него события на планшет:

  • Контроллер для геймпада: тут нам подойдет практически любой микроконтроллер, который работает от 3.3в. Выбор большой: Arduino Pro Mini 3.3v, ESP32, RPi Pico. Я остановился на последнем: недавно я взял себе две штучки «пощупать» их — и они мне очень понравились!

  • Физический интерфейс: с планшетом нужно как-то общаться. У нас есть три варианта: USB (не факт, что поддержка преобразователей включена в ядре), UART и SPI/I2C на пятачках тачскрина (потребуют написания драйвера т. к. в android-устройствах нет прямого доступа к SPI/I2C из userland'а). Я остановился на UART: его легко найти на большинстве китайских планшетов, а если не получилось — то на помощь может прийти схема платы.

  • Программная реализация: как это будет работать? Я решил реализовать геймпад в виде сервиса на Android, который слушает состояния кнопок с UART и «инжектит» события напрямую в драйвер ввода. Таким образом, поддержка нашего геймпада появляется даже в самой системе — можно управлять менюшкой или приложениями как с клавиатуры!


    С планом определились, пора начать с программной части: сначала нам обязательно понадобится ROOT-доступ. Его получение на разных девайсах отличается — на prestigio уже был порт CWM и я просто поставил SuperSU. Без ROOT доступа мы не сможем использовать UART!

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост


Теперь нам нужно найти пятачки UART на плате. Разведен он не везде, но в случае устройств на MediaTek — почти всегда, ещё и пятачки подписаны. На моём планшете он нашёлся сразу: был между двух металлических экранов и соответствовал 4-ому каналу UART. Получить к нему доступ можно в /dev/ttyMT3. Я использую ESP32 в качестве UART преобразователя: подпаиваемся к RX/TX, запускаем putty и заходим в adb shell. Определяем бодрейт (скорость) нашего UART порта — на MediaTek он обычно равен 921600, на других чипсетах — 115200. Пытаемся что-то вывести и хоба — мы уже можем «поболтать» с планшетом!

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост

❯ Приложение-сервис


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

  1. InputManager.injectInputEvent — именно этим методом пользуется команда input, которую вы можете использовать через adb. Но увы, он работает только при наличие разрешения INJECT_EVENTS, который доступен только системным приложениям — находятся они в /system/app и подписаны тем же сертификатом, что и остальная прошивка.

  2. Модуль uinput дает возможность создать виртуальное устройство ввода и посылать события из userland'а — т. е. из прикладного приложения. У моего планшета было устройство /dev/uinput, но lsmod показывал, что сам модуль не загружен. Так что отметаем — он есть не везде.

  3. Прямой инжект событий в character устройство — весьма грязный хак, который позволяет инжектить события, не притворяясь системным приложением, но имеет некоторые ограничения. Именно его я и выбрал и о ограничениях ниже.


Сначала нам нужно узнать, какие кнопки поддерживают загруженные устройства ввода в системе. Для этого используем команду getevent -li. Там есть разные устройства ввода, в том числе и тачскрин (если вам нужно симулировать нажатия на экран), мне же подошёл драйвер физических кнопок mtk-kpd. Он занимается обработкой кнопок громкости, включения и т. п. Тут важно обратить внимание на то, что если попытаться послать кнопку, которое устройство не реализует (например пробел), то ничего не произойдет:

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост



Инжект событий я писал на C, т. к. это требовало прямой записи input_event, а в Java прокинул его через Jni. Концепция простая: открываем устройство /dev/input/event2 и посылаем в него события ввода и синхронизации (это обязательно!), которые затем Android читает и обрабатывает:

#include <linux/uinput.h>

#include <fcntl.h>

#include <unistd.h>

#include <stdio.h>

#include <stdlib.h>

#include <android/log.h>

#include <jni.h>

int uinput;

extern "C" JNIEXPORT void JNICALL Java_com_monobogdan_inputservicebridge_InputNative_init(JNIEnv *env, jclass clazz) {

uinput = open("/dev/input/event2", O_WRONLY);

__android_log_print(ANDROID_LOG_DEBUG , "Test", uinput >= 0 ? "Open event OK" : "Failed to open event"); }

void emit(int fd, int type, int code, int val) {

struct input_event ie; ie.type = type;

ie.code = code; ie.value = val;

ie.time.tv_sec = 0;

ie.time.tv_usec = 0;

write(fd, &ie, sizeof(ie)); }

extern "C" JNIEXPORT void JNICALL Java_com_monobogdan_inputservicebridge_InputNative_sendKeyEvent(JNIEnv *env, jclass clazz, jint key_code, jboolean pressed) {

__android_log_print(ANDROID_LOG_DEBUG , "Test", "Send");

emit(uinput, EV_KEY, key_code, (bool)pressed ? 1 : 0);

emit(uinput, EV_SYN, SYN_REPORT, 0);

}

Основной обработкой занимается сервис, который я реализовал в отдельном потоке: он слушает события с UART и посылает соответствующие изменения состояния через sendKeyEvent. На вход приходят простые сообщения вида:

U L где U/D — нажато, не нажато, а L — однобайтовый идентификатор кнопки. В случае L — это влево, R — вправо и т. п. Вся доступная раскладка хранится в словаре. Причём само чтение из UART реализовано костылем с чтением «чужого» stdout, т. к. android-приложения не умеют сами по себе работать с root правами. В теории, это могло дать неприятный оверхед, но на практике никакого серьезного инпут лага это не создает. Не забываем сделать устройство event записываемым — ставим ему права 777:

package com.monobogdan.inputservicebridge;

public class InputListener extends Service {

private static final int tty = 3;

private InputManager iManager;

private Map<Character, Integer> keyMap;

private Method injectMethod;

private Process runAsRoot(String cmd)

{

try {

return Runtime.getRuntime().exec(new String[] { "su", "-c", cmd });

}

catch (IOException e)

{

e.printStackTrace();

return null;

}

}

@override

public void onCreate() {

super.onCreate();

// According to linux key map (input-event-codes.h)

keyMap = new HashMap<>();

keyMap.put('U', 103);

keyMap.put('D', 108);

keyMap.put('L', 105);

keyMap.put('R', 106);

keyMap.put('E', 115);

keyMap.put('B', 158);

keyMap.put('A', 232);

keyMap.put('C', 212);

InputNative.init();

try {

runAsRoot("chmod 777 /dev/input/event2").waitFor();

} catch (InterruptedException e) {

throw new RuntimeException(e);

}

Executors.newSingleThreadExecutor().execute(new Runnable() {

@override

public void run() {

Process proc = runAsRoot("cat /dev/ttyMT" + tty);

BufferedReader reader = new BufferedReader(new InputStreamReader(proc.getInputStream()));

while(true)

{

try {

String line = reader.readLine();

if(line != null && line.length() > 0) {

Log.i("Hi", "run: " + line);

boolean pressing = line.charAt(0) == 'D';

int keyCode = keyMap.get(line.charAt(2));

Log.i("TAG", "run: " + keyCode);

InputNative.sendKeyEvent(keyCode, pressing);

}

}

catch(IOException e)

{

e.printStackTrace();

}

/*try {

Thread.sleep(1000 / 30);

} catch (InterruptedException e) {

e.printStackTrace();

}*/

}

}

});

}

@override

public IBinder onBind(Intent intent) {

return null;

}

}

Таким образом, если мы отправляем с ПК «D L» — система считает, что мы зажали стрелку влево, а U L — считает что мы отпустили. Но если mtk-kpd поддерживает стрелки и еще некоторые действия без каких либо проблем, то enter в список обрабатываемых кнопок не входит: придется мудрить! И тут нам приходит на помощь механизм трансляции кодов кнопок в действия: они хранятся в специальных файлах .kl в /system/usr/keylayout/. Я назначил DPAD_CENTER на… кнопку регулировки громкости звука! Ну, а почему бы и нет. :) Таким образом можно переназначить уже имеющиеся кнопки громкости на, например, start/select.

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост

❯ Геймпад


После того, как сервис был готов и отлажен, нужно было реализовать хардварную часть проекта — сам геймпад. В качестве контроллера я, как уже говорил, выбрал Raspberry Pi Pico на базе МК RP2040 — бодреньком контроллере с двумя ARM Cortex-M0 ядрами. Стоит копейки, а в отличии от ESP'шек, его SDK не такое перегруженное и выглядит более приближенным к bare-metal.

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост



На данный момент, я решил развести все кнопки на бредборде — макетной плате без пайки, т. к. макеток для пайки у меня под рукой не было. Сделал примитивный геймпад:

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост



Развел на соответствующие GPIO:

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост



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

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include "pico/stdlib.h"

#include "pico/time.h"

#include "hardware/uart.h"

struct keyMap

{

int gpio;

char key;

bool pressed;

int lastTick;

};

keyMap keys[] = {

{

15,

'L',

false,

0

},

{

14,

'U',

false,

0

},

{

13,

'D',

false,

0

},

{

12,

'R',

false,

0

},

{

11,

'E',

false,

0

},

{

10,

'B',

false,

0

},

{

20,

'A',

false,

0

},

{

21,

'C',

false,

0

}

};

#define KEY_NUM 8

int main() {

stdio_init_all();

uart_init(uart0, 921600);

gpio_set_function(PICO_DEFAULT_UART_TX_PIN, GPIO_FUNC_UART);

gpio_set_function(PICO_DEFAULT_UART_RX_PIN, GPIO_FUNC_UART);

sleep_ms(1000); // Allow serial monitor to settle

for(int i = 0; i < KEY_NUM; i++)

{

gpio_init(keys[i].gpio);

gpio_set_dir(keys[i].gpio, false);

gpio_pull_up(keys[i].gpio);

}

while(true)

{

int now = time_us_32();

for(int i = 0; i < KEY_NUM; i++)

{

char buf[5];

buf[1] = ' ';

buf[3] = '\n';

buf[4] = 0;

if(!gpio_get(keys[i].gpio) && !keys[i].pressed && now - keys[i].lastTick > 15500)

{

buf[0] = 'D';

buf[2] = keys[i].key;

puts(buf);

keys[i].lastTick = now;

keys[i].pressed = true;

continue;

}

if(gpio_get(keys[i].gpio) && keys[i].pressed && now - keys[i].lastTick > 15500)

{

buf[0] = 'U';

buf[2] = keys[i].key;

puts(buf);

keys[i].pressed = false;

keys[i].lastTick = now;

}

}

}

}

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

Сам себе игровая консоль: превращаем планшет с нерабочим тачскрином в игровой девайс из 8 кнопок и микроконтроллера Смартфон, Телефон, Идея, Своими руками, Arduino, Embedded, Встраиваемые системы, Планшет, Игры, Консоли, Самоделки, Моддинг, Android, Linux, Java, C++, Kernel, Покупка, Raspberry pi, Микроконтроллеры, Видео, Длиннопост



А почему бы не попробовать поиграть в какую-нибудь игру? Ну мы же консоль вроде делаем: берём эмулятор NES, биндим кнопки в настройках и наслаждаемся игрой в Марио!

❯ Заключение


Реализация этого проекта заняла у меня не так уж и много времени: всего около 3-х дней работы по вечерам. Вероятно кто-то спросит: «а чего ты просто Bluetooth геймпад не купил?». Так это не прикольно ведь. Гораздо приятнее играть в девайс, к которому ты приложил руку сам. Более того, не у всех старых планшетов есть BT. Обошёлся на данной стадии проект недорого: планшет мне подарили бесплатно (точно также у вас дома может лежать подобный), RPi Pico — 350 рублей, кнопки по 10 рублей/штучка.

В целом, я сам по себе обожаю копаться в различных железках и их софтварной части (вспомнить хотя-бы статью про перекомпиляциюu-boot из вендорских исходников для нонейм консоли), а созидать что-то свое вообще вызывает какие-то нереальные всплески эндорфина — оно и понятно! :)

Однако несмотря на то, что мы уже имеем рабочий «прототип», проект далёк от завершения: я намерен довести его до конца и окончательно перевоплотить старый планшет в автономную игровую консоль (и рассказать об этом во второй части статьи). Для этого мне понадобится распечатать корпус и кнопки на 3D-принтере. К сожалению, у меня в городе ни у кого особо нет 3D-принтеров, поэтому начну копить на Ender 3, а от вас, читателей, с удовольствием почитаю мнение в комментариях и советы касательно выбора принтера!

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

Показать полностью 10 1
[моё] Смартфон Телефон Идея Своими руками Arduino Embedded Встраиваемые системы Планшет Игры Консоли Самоделки Моддинг Android Linux Java C++ Kernel Покупка Raspberry pi Микроконтроллеры Видео Длиннопост
33
Партнёрский материал Реклама
specials
specials

Сколько нужно времени, чтобы уложить теплый пол?⁠⁠

Точно не скажем, но в нашем проекте с этим можно справиться буквально за минуту одной левой!

Попробовать

Ремонт Теплый пол Текст
206
droidbot.store
droidbot.store
2 года назад
Arduino & Pi

Продолжение поста «Гусеничное шасси-робот на базе Arduino V2.0»⁠⁠1

А вот и небольшое обновление:

Продолжение поста «Гусеничное шасси-робот на базе Arduino V2.0» 3D моделирование, Arduino, Esp32, Raspberry pi, Самоделки, Робототехника, Длиннопост, 3D печать, Ответ на пост
Продолжение поста «Гусеничное шасси-робот на базе Arduino V2.0» 3D моделирование, Arduino, Esp32, Raspberry pi, Самоделки, Робототехника, Длиннопост, 3D печать, Ответ на пост

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

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