Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can you please provide a wiring diagram for using on an Arduino or ESP32 #1

Open
Corruptsector opened this issue Dec 14, 2022 · 17 comments

Comments

@Corruptsector
Copy link

I have tried to connect, but the pins are labeled for i2c, but a lot of the other example are SPI.

Can i use SPI to interface with this board?

@WeActStudio
Copy link
Owner

Yes, it only support spi

@fourgood
Copy link

But WHY are the pins labeled for i2c, if the display only supports SPI ???

@tursoe
Copy link

tursoe commented Dec 19, 2022

Yes, a wiring diagram would be nice.
It's easy to find out yourself, but faster if a diagram was provided for both ESP32 and Arduino Uno.

@fourgood
Copy link

I need it for ESP8266 (sry for hijacking this thread)

@Corruptsector
Copy link
Author

Corruptsector commented Dec 27, 2022

Yes, a wiring diagram would be nice. It's easy to find out yourself, but faster if a diagram was provided for both ESP32 and Arduino Uno.

Did you get it working?

Im trying to get working with ESPHOME. I tried using SDA as MOSI and SCL as CLK, but no joy.

spi:
  clk_pin: GPIO016
  mosi_pin: GPIO017

display:
  - platform: waveshare_epaper
    cs_pin: GPIO018
    dc_pin: GPIO021
    busy_pin: GPIO034
    reset_pin: GPIO033
    model: 2.13in-ttgo-b73
    full_update_every: 2
    lambda: |-
      it.print(0, 0, id(roboto), "Hello World!");

@Corruptsector
Copy link
Author

I think:
SDA = data = MOSI
SCL = clock = SCK

@alinelena
Copy link

Yes, a wiring diagram would be nice. It's easy to find out yourself, but faster if a diagram was provided for both ESP32 and Arduino Uno.

Did you get it working?

Im trying to get working with ESPHOME. I tried using SDA as MOSI and SCL as CLK, but no joy.

spi:
  clk_pin: GPIO016
  mosi_pin: GPIO017

display:
  - platform: waveshare_epaper
    cs_pin: GPIO018
    dc_pin: GPIO021
    busy_pin: GPIO034
    reset_pin: GPIO033
    model: 2.13in-ttgo-b73
    full_update_every: 2
    lambda: |-
      it.print(0, 0, id(roboto), "Hello World!");

I doubt this will work... while the the display I think at base is the same (gooddisplay) things are different... did you get the display working with the esp32 example? I have a similar issue see #2

@alinelena
Copy link

Yes, a wiring diagram would be nice. It's easy to find out yourself, but faster if a diagram was provided for both ESP32 and Arduino Uno.

Did you get it working?

Im trying to get working with ESPHOME. I tried using SDA as MOSI and SCL as CLK, but no joy.

spi:
  clk_pin: GPIO016
  mosi_pin: GPIO017

display:
  - platform: waveshare_epaper
    cs_pin: GPIO018
    dc_pin: GPIO021
    busy_pin: GPIO034
    reset_pin: GPIO033
    model: 2.13in-ttgo-b73
    full_update_every: 2
    lambda: |-
      it.print(0, 0, id(roboto), "Hello World!");

also I suggest to try as model 2.13in-ttgo-dke this seems to match the number that weact is using.

you can check the example folder and the lib for the exact numbers https://github.com/ZinggJM/GxEPD2

@Corruptsector
Copy link
Author

Yes, a wiring diagram would be nice. It's easy to find out yourself, but faster if a diagram was provided for both ESP32 and Arduino Uno.

Did you get it working?
Im trying to get working with ESPHOME. I tried using SDA as MOSI and SCL as CLK, but no joy.

spi:
  clk_pin: GPIO016
  mosi_pin: GPIO017

display:
  - platform: waveshare_epaper
    cs_pin: GPIO018
    dc_pin: GPIO021
    busy_pin: GPIO034
    reset_pin: GPIO033
    model: 2.13in-ttgo-b73
    full_update_every: 2
    lambda: |-
      it.print(0, 0, id(roboto), "Hello World!");

I doubt this will work... while the the display I think at base is the same (gooddisplay) things are different... did you get the display working with the esp32 example? I have a similar issue see #2

No Sorry i didnt. It showed my hello world, but then started flashing and showing heaps of noise. So i guess my pinout is correct, but this model didnt work in ESPHOME

@Corruptsector
Copy link
Author

Yes, a wiring diagram would be nice. It's easy to find out yourself, but faster if a diagram was provided for both ESP32 and Arduino Uno.

Did you get it working?
Im trying to get working with ESPHOME. I tried using SDA as MOSI and SCL as CLK, but no joy.

spi:
  clk_pin: GPIO016
  mosi_pin: GPIO017

display:
  - platform: waveshare_epaper
    cs_pin: GPIO018
    dc_pin: GPIO021
    busy_pin: GPIO034
    reset_pin: GPIO033
    model: 2.13in-ttgo-b73
    full_update_every: 2
    lambda: |-
      it.print(0, 0, id(roboto), "Hello World!");

also I suggest to try as model 2.13in-ttgo-dke this seems to match the number that weact is using.

you can check the example folder and the lib for the exact numbers https://github.com/ZinggJM/GxEPD2

Im tried all the models in ESPhome without any luck. But ill try again.

@alinelena
Copy link

No Sorry i didnt. It showed my hello world, but then started flashing and showing heaps of noise. So i guess my pinout is correct, but this model didnt work in ESPHOME

indeed that indicates the screen is working. a link to the example you tried and the pinout you used will be useful. also to double check you are using bw only model.
i am in the same boat as you but mine does not even turn out

@alinelena
Copy link

the pinout from the esp32 example is

|epd | esp32|
VCC VCC
GND GND
SDA(MOSI) 23
SCL(SCK) 18
CS 5
D/C 0
RES 2
BUSY 15

@alinelena
Copy link

just to update with the above connection and following esphome i got the 2.13 inch bw working

substitutions:
  devicename: boron
  update: 900s

esphome:
  name: $devicename
  platform: ESP32
  board: nodemcu-32s

wifi:
  ssid: !secret wifi
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: ${devicename} Fallback Hotspot
    password: "MLO4IA0MZb10"

captive_portal:

# Enable logging
#logger:

# Enable Home Assistant API
#api:
#  password: !secret ota_password

ota:
  password: !secret ota_password

text_sensor:
  - platform: wifi_info
    ip_address:
      id: my_ip
      name: "ip"
      internal: true

sensor:
  - platform: wifi_signal
    name: "wifi signal"
    id: my_rssi
    internal: true
    update_interval: ${update}

spi:
  id: bus_a
  clk_pin: GPIO18
  mosi_pin: GPIO23
  miso_pin: GPIO19

font:
  - file: "droid.ttf"
    id: my_font
    size: 10

display:
  - platform: waveshare_epaper
    spi_id: bus_a
    model: "2.13in-ttgo-dke"
    reset_pin: GPIO02
    cs_pin: GPIO05
    dc_pin: GPIO00
    busy_pin: GPIO15
    rotation: 90
    full_update_every: 60
    update_interval: 120s
    lambda: |-
      it.printf(0, 10, id(my_font), "ip: %s",id(my_ip).state.c_str());
      it.printf(0, 25, id(my_font), "rssi: %.2f",id(my_rssi).state);
      it.printf(0, 40, id(my_font), "Hello world!");


@deepak-gunasekaran
Copy link

deepak-gunasekaran commented Jan 26, 2023

Does it work with raspberry pi? I could not make it work with waveshare 2.13 display python code. Can you please help?

@MarAlMe
Copy link

MarAlMe commented Apr 9, 2023

I made an wiring diagram for an esp8266 (wemos d1 mini v4) and an esp32-s2 (wemos d1 mini). The VBUS is 5V.

// ESP8266 CS=15,SCL(SCK)=14,SDA(MOSI)=13,BUSY=16,RST=5,DC=4

WeAct_EPaper_ESP826

// ESP32-S2 CS=34,SCL(SCK)=36,SDA(MOSI)=35,BUSY=3,RST=9,DC=38

WeAct_EPaper_ESP32-S2

@OperatorB
Copy link

Thanks for the wiring diagram! By the way what tool do you @MarAlMe use to make this pretty diagram above, it looks amazing?

@MarAlMe
Copy link

MarAlMe commented Jul 31, 2023

Thank you @OperatorB, its just Gimp 😎

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants