====== Talking Shoe ======
https://github.com/moink/talking_shoe
^ Lolin-Port ^ Part-Port ^ Part ^
| GPIO19 | SDA | ADXL345 |
| GPIO23 | SCL | ADXL345 |
| GPIO17 | RX | DFPlayer |
| GPIO16 | TX | DFPlayer |
| GPIO34 | Resistor Leg, but not on the Resistor | Photo Resistor |
===== Micro Controller: Lolin32 Lite =====
{{ :shoe:lolin32.svg?1000 }}
* Has battery charger built in
* Amazon Reviewer says to use ESP32 Arduino -> WEMOS LOLIN32 board
* Arduino ESP32 can be installed via the Board Manager
* does not contain Lolin Board
* esp32 by Espressif in the Board Manager is the right choice
* contains WEMOS Lolin32 Lite
* can be selected in Tools -> Board
* get Board Info does not return anything useful?
On-Board LED Blinking works:
#define LED_PIN 22 // Pin number for your built-in LED
void setup() {
pinMode(LED_PIN, OUTPUT); // Set the LED pin as an output
}
void loop() {
digitalWrite(LED_PIN, HIGH); // Turn the LED on
delay(500); // Wait 500 milliseconds
digitalWrite(LED_PIN, LOW); // Turn the LED off
delay(500); // Wait 500 milliseconds
}
===== MP3 Player: DFPlayer Mini =====
{{ :shoe:dfplayer.svg?400 }}
* [[https://wiki.dfrobot.com/dfplayer_mini_sku_dfr0299|Wiki Entry]]
* We probably can connect our speaker directly to the SPK pins
* We can read the BUSY line to know if something is playing
* high = busy
* There are three modes.
* We probably want to use the Serial Mode to directly play a certain file
* this means we connect the UART pins between the ESP and the Player
* Theres sample code in the wiki
* Filenames: ''/MP3/0001.mp3''
* [[https://github.com/DFRobot/DFRobotDFPlayerMini|Github Repo]] for Arduino Lib
* Arduino IDE has "DFRobotDFPlayerMini" in the list of libraries
* alternatively one seems to be able to download the zip from github and simply add it via Sketch -> Include Library -> Add .ZIP library
* There are a whole bunch of other libraries when you search for DFPlayer...
* some of them seem to be newer than the original
* some of them might make handling other stuff while playing sound easier
===== Accelleration Sensor: ADXL345 =====
{{ :shoe:adxl345.svg?300 }}
* [[https://learn.adafruit.com/adxl345-digital-accelerometer/overview|Lots of Details at Adafruit]]
* We want to connect to this via the i2c bus
* There's an ADXL345 Library by Adafruit, but also by others
===== Photo Resistor =====
3.3V ── LDR ──+─── GPIO34 (A0)
│
10kΩ
│
GND
===== IR Opto-Switch =====
**we're not using this one**
* I bought [[amazon.de>B00EFOTJZE]] these
* I think we should be able to simply connect them to two GPIO pins
* actually the emitter can probably be just powered permanently
* not sure if I need a resistor, the Amazon page contains really shitty translations
* I should hook up one of the diodes to my component tester
* actually based on the given foward voltage and current, according to an online calculator I need resistor of about 70ohm
* The sensor is a VS 1838B
_____
| |
| |
| |
| |
|_____|
| | |
1 2 3
1: OUT (Signal)
2: GND
3: VCC (typically 3.3–5V)