GithubHelp home page GithubHelp logo

radiopizza / slideremote Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 4.42 MB

DIY ESP-NOW remote control for PC

License: MIT License

C++ 98.20% C 1.80%
avr digispark diy electronics esp-now esp32 esp8266 microcontroller-firmware pcb remote-control

slideremote's Introduction

Logo

Пульт для презентаций на ESP8266

Содержание

Описание проекта

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

Схема электрическая структурная

StructuralCircuit

Железо

  • Проект собран на базе пары микроконтроллеров ESP8266. Для передачи данных между ними используется ESP-NOW (упрощенный протокол связи WiFi с передачей коротких пакетов между парами сопряженных устройств).
  • Для реализации USB HID используется микроконтроллер Attiny85 за неимением у ESP8266 аппаратного USB (можно попробовать отказаться от AVR костыля, используя V-USB, проект открыт для ваших PR). Attiny85 подключается к принимающей ESP четырьмя проводами: пара для питания и пара для передачи данных. Передача данных реалзована весьма примитивно, так как требуется лишь отслеживание логических состояний (нажата/не нажата) для двух кнопок.

Фишки

  • Пара кнопок для навигации по слайдам: "впёрёд" и "назад"
  • Интегрированная лазерная указка
  • Автономное питание от литиевого аккумулятора и встроенная зарядка для него - батарейки не понадобятся!
  • Быстрое соединение благодаря ESP-NOW - ничего устанавливать на компьютер и настраивать перед выступлением не нужно!

Папки

  • circuits - электрические схемы
  • datasheets - техническая документация на используемые компоненты
  • firmware - прошивки для микроконтроллеров
  • libraries - все необходимые библиотеки, испрользуемые в коде

Схемы

Схема электрическая функциональная

FunctionalCircuit

Схема макета

PrototypeCircuit

Материалы и компоненты

Наименование Цена Кол-во Стоимость Ссылка Комментарий
Wemos D1 Mini 150 ₽ 2 шт. 300 ₽ https://aliexpress.ru/item/1005004691735010.html?sku_id=12000030118892637&spm=.search_results.2.b5fe6debne6nar https://aliexpress.ru/item/1005001621784437.html?sku_id=12000030876907542&spm=.search_results.0.b5fe6debne6nar Можно использовать любые другие отладочные платы на базе ESP8266
Кнопки 5 ₽ 3 шт. 15 ₽ https://aliexpress.ru/item/1005002483504604.html?sku_id=12000020816258869&spm=a2g2w.productlist.search_results.0.295d5690FECFoV https://aliexpress.ru/item/32815841388.html?sku_id=64712982838&spm=a2g2w.productlist.search_results.0.5ebf17d7lz9Jjz Подойдут абсолютно любые
Лазерный диод 30 ₽ 1 шт. 30 ₽ https://aliexpress.ru/item/32436757591.html?sku_id=65633931684&spm=a2g2w.productlist.search_results.2.372f151e5sMS8q https://aliexpress.ru/item/590519565.html?sku_id=65690681743&spm=a2g2w.productlist.search_results.0.372f151e5sMS8q 5 В, 5 мВт, 650 нм
Модуль зарядки TP4056 30 ₽ 1 шт. 30 ₽ https://aliexpress.ru/item/32467578996.html?sku_id=10000003716909975&spm=a2g2w.productlist.search_results.0.3c313100BdBFoH https://aliexpress.ru/item/1005005741783050.html?sku_id=12000034179251543&spm=a2g2w.productlist.search_results.2.5f2666cfGdj9Ts Необходимо выбирать со встроенной схемой защиты
Аккумулятор 250 ₽ 1 шт. 250 ₽ https://aliexpress.ru/item/1005005684424738.html?sku_id=12000037283578784&spm=a2g2w.productlist.search_results.3.b37f312dNCFooa https://aliexpress.ru/item/4000939330410.html?sku_id=10000011329005536&spm=a2g2w.productlist.search_results.10.38178760eEMGWR Можно использовать аккумуляторы из одноразок
Digispark 250 ₽ 1 шт. 250 ₽ https://aliexpress.ru/item/32807895683.html?sku_id=10000007831801690&spm=a2g2w.productlist.search_results.0.57674f500AUV34 https://aliexpress.ru/item/1005004203065658.html?sku_id=12000028365468636&spm=a2g2w.productlist.search_results.3.5d115ba6QB8ZHz
Переключатель 20 ₽ 1 шт. 20 ₽ https://aliexpress.ru/item/4001202080623.html?sku_id=10000015286215548&spm=a2g2w.productlist.search_results.15.36e9243dFkvmUQ https://aliexpress.ru/item/1005001513148147.html?sku_id=12000031633680801&spm=a2g2w.productlist.search_results.0.6c5450dcP7qKsL Нужен для отключения питания

Можно вместо одной из плат Wemos D1 Mini и платы TP4056 использовать очень интересную плату ESP-Wroom-02 D1 Mini + 18650, представляющую собой ESP8266 со встроенной зарядкой для литиевых аккумуляторов и холдером для аккумуляторов 18650.

Итоговая стоимость варьируется от 450 рублей (при покупке мелким оптом и повторном использовании кнопок и аккумулятора) до 2000 рублей (при покупке в розницу в местных магазинах и использовании нового большого аккумулятора)

Как скачать и прошить

  1. Установить и запустить Arduino IDE - официальный сайт
  2. Установить драйвера для контроллеров:
  1. Добавить допополнительные ссылки для менеджера плат:
  • Arduino IDE/Файл/Настройки/Дополнительные ссылки … добавить через ,
    • http://arduino.esp8266.com/stable/package_esp8266com_index.json
    • https://raw.githubusercontent.com/digistump/arduino-boards-index/master/package_digistump_index.json
  1. Установить в менеджере плат:
  • ESP8266 boards рекомендуется версия 2.7.4
  • Digistump AVR Boards рекомендуется версия 1.6.7
  1. Скачать архив с проектом (зелёная кнопка Code/Download ZIP)
  2. Установить библиотеки (заменить имеющиеся версии) в
  • C:\Program Files (x86)\Arduino\libraries\ (Windows x64)
  • C:\Program Files\Arduino\libraries\ (Windows x86)
  1. По очереди открыть файлы прошивки для каждого из микроконтроллеров, выбирая использумые платы и порт, прошить их
  • LOLIN Wemos D1 R2 & mini изменяйте в зависимости от используемой платы
  • Digispark (Default – 16.5mhz) ДО ПОДКЛЮЧЕНИЯ платы нажимаем загрузка, ждём компиляции. Появится надпись “подключите плату”. Втыкаем плату в USB и прошивка загружается.

Настройки в коде

SlideRemoteTX.ino

// Настройка пинов подключения
#define BTN_PREV_PIN 5   // это D1 на Wemos
#define BTN_NEXT_PIN 4   // это D2 на Wemos
#define BTN_LASER_PIN 0  // это D3 на Wemos
#define LED_LASER_PIN 16 // это D0 на Wemos

// MAC адрес приёмника
uint8_t broadcastAddress[] = {0x48, 0x55, 0x19, 0xDE, 0xB3, 0x6B};

SlideRemoteRX.ino

// Настройка пинов подключения
#define PREV_PIN 2 // это D4 на Wemos
#define NEXT_PIN 0 // это D3 на Wemos

SlideRemoteHID.ino

// Настройка пинов подключения
#define PREV_PIN 0
#define NEXT_PIN 1

Обратная связь

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

slideremote's People

Contributors

radiopizza avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.