Ik ben dit https://esphome.io/cookbook/display_time_temp_oled.html proberen werkend te krijgen
wat ik al geprobeerd heb?, tja wat niet...
Het schermpje werkt. en ik zie de tijd op het display.
nu kunnen we ook 2 temperaturen weergegeven worden. En die krijg ik maar niet aan de gang?
ik heb het onderstaande via ESPHome Builde in de controller gezet. En de klok doet het dus.
Dus ik denk dat de draden en adress enz enz dan goed moeten staan.
eerst gaf het display geen beeld , maar toen ik frequency: 400kHz had toegevoegd gaf jij wel beeld.
maar het vreemde is, toen het scherm het niet deed, zag ik in de log wel dat de temperaturen gelezen werden, en toen het schermpje werkte, werden die temperaturen niet meer gelezen?
https://www.dropbox.com/s...vzc6d7ts&st=qqmzdb54&dl=0
een plaatje van de 2 log naast elkaar.... links deed het scherm het niet, maar werden wel de temperaturen gelezen, rechts werkt het scherm, maae ik zie op het schermpje geen temperaturen, en ik zie ze in de log ook niet meer gelezen worden?
Iemand misschien ideeen waar het aan zou kunnen leggen?
oja... die sensoren die ik lees, dat zie je ook links, staat wel waarde in , maar ik heb ook al andere geprobeerd, want ik dacht misschien ligt het aan de komma ofzo... maar ook andere worden niet gelezen?
wat ik al geprobeerd heb?, tja wat niet...
Het schermpje werkt. en ik zie de tijd op het display.
nu kunnen we ook 2 temperaturen weergegeven worden. En die krijg ik maar niet aan de gang?
ik heb het onderstaande via ESPHome Builde in de controller gezet. En de klok doet het dus.
Dus ik denk dat de draden en adress enz enz dan goed moeten staan.
eerst gaf het display geen beeld , maar toen ik frequency: 400kHz had toegevoegd gaf jij wel beeld.
maar het vreemde is, toen het scherm het niet deed, zag ik in de log wel dat de temperaturen gelezen werden, en toen het schermpje werkte, werden die temperaturen niet meer gelezen?
https://www.dropbox.com/s...vzc6d7ts&st=qqmzdb54&dl=0
een plaatje van de 2 log naast elkaar.... links deed het scherm het niet, maar werden wel de temperaturen gelezen, rechts werkt het scherm, maae ik zie op het schermpje geen temperaturen, en ik zie ze in de log ook niet meer gelezen worden?
Iemand misschien ideeen waar het aan zou kunnen leggen?
oja... die sensoren die ik lees, dat zie je ook links, staat wel waarde in , maar ik heb ook al andere geprobeerd, want ik dacht misschien ligt het aan de komma ofzo... maar ook andere worden niet gelezen?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
| esphome:
name: oled
friendly_name: Oled
esp32:
board: esp32dev
framework:
type: arduino
# Enable logging
logger:
level: DEBUG
# Enable Home Assistant API
api:
encryption:
key: "tF9fGjxs5e720gviMkNlWjLPzPAn0HDRkYggKyuXK0U="
ota:
- platform: esphome
password: "61aff694b707109d80642b6f2b9259f3"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Oled Fallback Hotspot"
password: "BjWUDoK3okud"
captive_portal:
font:
- file: 'font/slkscr.ttf'
id: font1
size: 8
- file: 'font/BebasNeue-Regular.ttf'
id: font2
size: 48
- file: 'font/Arial.ttf'
id: font3
size: 14
time:
- platform: homeassistant
id: esptime
sensor:
- platform: homeassistant
id: inside_temperature
entity_id: sensor.dht22_mmwave_bh1750_2_temperature
internal: True
- platform: homeassistant
id: outside_temperature
entity_id: sensor.dht22_mmwave_bh1750_temperature
internal: True
i2c:
sda: GPIO21
scl: GPIO22
scan: False
#id: bus_a
frequency: 400kHz
display:
- platform: ssd1306_i2c
model: "SH1106 128x64"
#reset_pin: GPIO20
address: 0x3C
lambda: |-
it.printf(64, 0, id(font1), TextAlign::TOP_CENTER, "Swets");
it.strftime(0, 60, id(font2), TextAlign::BASELINE_LEFT, "%H:%M", id(esptime).now());
it.printf(127, 23, id(font3), TextAlign::TOP_RIGHT , "%.1f°", id(inside_temperature).state);
if (id(inside_temperature).has_state()) {
it.printf(127, 23, id(font3), TextAlign::TOP_RIGHT , "%.1f°", id(inside_temperature).state);
}
if (id(outside_temperature).has_state()) {
it.printf(127, 60, id(font3), TextAlign::BASELINE_RIGHT , "%.1f°", id(outside_temperature).state);
} |
http://www.arjan-swets.com