Hi everyone! I’m totally new to ESPHome and circuit boards in general, but I’m doing my best to read through and understand what I’m working with.
I’m trying to implement the following project:
Of course, when I was going to purchase an ESP, I read that the ESP32 was the newer version than the ESP8266 that was used in the project - so I decided to purchase that instead. Totally not realizing that with a new board came new pinouts…
I’ve been researching this and trying to take a crash course in arduino/ESP, and I think I might be close? I’m still waiting for my duponts to arrive to confirm it. From my research, the ESP8266 uses certain pins for certain functions. The four we need to map from the github project are:
GND - Ground
D5 - GPIO14 / SCLK (Slave Clock - but we have this mapped to TX for transmit.
D6 - GPIO12 - MISO (Master in, slave out - which I read as communication from the slave device to the ESP, we have this mapped to RX for Receive, so I think we’re good here.)
D2 - GPIO4 - SDA (Serial Data Pin, where communication is sent back and forth between the devices)
** using this reference: ESP8266 Pinout Reference: Which GPIO pins should you use? | Random Nerd Tutorials
From my research, you can set (certain) GPIO pins to be whatever you want. I think I need to add the following to my yaml file for ESPHome to match the original ESP8226 config?
spi: clk_pin: GPIO14 mosi_pin: GPIO13 miso_pin: GPIO12 uart: id: desk_uart baud_rate: 9600 tx_pin: GPIO14 rx_pin: GPIO12
And then I need to set an SDA pin.
i2c: sda: 21 scl: 22 scan: True id: bus_a
This should set the sda to GPIO21. I’d then replace this in the LoctekMotion_IoT/flexispot_ek5.yaml at 953168b81d6fbc4c019025d930b0a8374f511b17 · iMicknl/LoctekMotion_IoT · GitHub where
D2 is listed.
... switch: - platform: gpio name: "Virtual Screen" pin: number: GPIO21 i2c_id: bus_a # Don't know if I need to define this here... mode: OUTPUT restore_mode: ALWAYS_OFF internal: true ...
Could I get some feedback if I’m on the right track? Should I be using GPIO18 and GPIO19 instead of setting up an spi?
Thanks in advance!