Can we esphome this
1 Like
No. Not yet at least.
There has been some success with a similar product. Minus the rotary encoder:
I found your thread after this popping up in my feed. I’m not sure if it’s any help tho
Have you created a Feature Request on the ESPhome Git repo? (if there isn’t one already)
I found an ESPHome config file for M5Dial 1.28" Round Touch Screen.
external_components:
- source: github://dgaust/esphome@gc9a01
components: [ ft3267, gc9a01 ]
refresh: 0s
i2c:
- id: bus_internal
sda: GPIO11
scl: GPIO12
scan: False
frequency: 400kHz
touchscreen:
platform: ft3267
binary_sensor:
- platform: touchscreen
name: "Central Circle Touch"
x_min: 90 # Center x - radius
x_max: 150 # Center x + radius
y_min: 90 # Center y - radius
y_max: 150 # Center y + radius
page_id: TestPage
on_release:
- display.page.show: FirstPage
- platform: touchscreen
name: "Circle 2 Touch"
x_min: 160 # Center x - radius
x_max: 220 # Center x + radius
y_min: 90 # Center y - radius
y_max: 150 # Center y + radius
page_id: TestPage
on_release:
then:
- logger.log: "Circle 2 Touched"
- platform: touchscreen
name: "Circle 3 Touch"
x_min: 125 # Center x - radius
x_max: 185 # Center x + radius
y_min: 151 # Center y - radius
y_max: 211 # Center y + radius
page_id: TestPage
on_release:
- display.page.show: WifiQR
- platform: touchscreen
name: "Circle 4 Touch"
page_id: TestPage
x_min: 55 # Center x - radius
x_max: 115 # Center x + radius
y_min: 151 # Center y - radius
y_max: 211 # Center y + radius
on_release:
then:
- logger.log: "Circle 4 Touched"
- platform: touchscreen
name: "Circle 5 Touch"
page_id: TestPage
x_min: 20 # Center x - radius
x_max: 80 # Center x + radius
y_min: 90 # Center y - radius
y_max: 150 # Center y + radius
on_release:
then:
- logger.log: "Circle 5 Touched"
- platform: touchscreen
name: "Circle 6 Touch"
page_id: TestPage
x_min: 55 # Center x - radius
x_max: 115 # Center x + radius
y_min: 29 # Center y - radius
y_max: 89 # Center y + radius
on_release:
- display.page.show: AirConPage
- platform: touchscreen
name: "Circle 7 Touch"
page_id: TestPage
x_min: 125 # Center x - radius
x_max: 185 # Center x + radius
y_min: 29 # Center y - radius
y_max: 89 # Center y + radius
on_release:
then:
- logger.log: "Circle 7 Touched"
And it works !
[09:48:03][D][ft3267.touchscreen:132]: Read 0 status, id: 0, pos 113/73
[09:48:03][D][ft3267.touchscreen:132]: Read 0 status, id: 0, pos 130/79
[09:48:05][D][ft3267.touchscreen:132]: Read 0 status, id: 0, pos 129/44
[09:48:05][D][ft3267.touchscreen:132]: Read 0 status, id: 0, pos 117/11