|
楼主 |
发表于 2020-6-25 12:34:33
|
显示全部楼层
yleshinimab 发表于 2020-6-24 08:575 ~; ?2 ?* D% v& m" l+ J# u$ W
显示屏现在只能显示时间,其他信息都显示不了,显示nan,要怎么才能显示数据
8 L9 I5 B' \. j: }9 q% w: e1 i- G我在hassio下安装了esphome ... - esphome:
5 N- M6 n+ _3 e7 n - name: dsm
+ E7 _( |% q6 y% M - platform: ESP8266
" p5 u6 d' K; r - board: nodemcuv2! ~5 ]/ b% n& D& S
+ E* C6 K! ` L" B! ]- wifi:' H5 K4 j2 z7 p
- ssid: "xxxxxxxxxx"
! p9 _/ U a" V) w( f8 A; [ - password: "xxxxxxxxxxx"
: j" z$ S5 \ g3 m
8 I/ f9 R2 o7 [9 x: l; v6 F- # Enable fallback hotspot (captive portal) in case wifi connection fails
; Y# c5 o/ h% d& K7 w( F/ t - ap:
. P) b# ?) @! B7 N. W - ssid: "nas66.com"
2 X+ _7 U$ p1 _ - password: "nas66.com"
7 L. c' H b4 A1 z7 U
* r" n. T+ ?7 e/ x- captive_portal:) S7 k5 {6 R: J, h! x4 F1 a$ W8 K
- / m$ B- V0 u% o9 {, L4 ~
- # Enable logging, z7 b, j$ H6 u4 M0 e8 O! B" Y0 w/ i
- logger:
: L2 I% H4 A/ z; h - 3 v3 j7 [6 q9 y5 k" D7 K3 E' D$ E: Q
- # Enable Home Assistant API3 U& [6 v; [9 b) V
- api:
9 {8 K# l* W/ j
- D, A, A; g7 ~. v I- o' w! o- i2c:: p3 ~/ S! N3 a( u
- sda: D29 x* v) ?( [0 \1 ~4 G7 t* K$ I+ T
- scl: D4
. P5 g) C% `$ t& b5 q - 7 q, i% M# G* C6 H' E! U& O
- image:
: S4 d8 {8 k/ _7 d# \, ]2 p - - file: "logo.png"9 p1 Y- C7 Z" ^' n7 d, m: \
- id: my_image n. i' K- U* u3 i$ d
- resize: 128x64
; y& A1 b: D+ p4 O s
s- L) V$ A a |' z- time:& l4 G% N+ N' c6 }4 L ?6 x; t8 m
- - platform: sntp
- b+ z# ~5 r& v$ E% ^9 e' w - id: sntp_time0 i, D3 d- l. q
- timezone: Asia/Shanghai3 H# o! t6 v1 a# k! K
- 2 s% s! B! s ]3 Z3 P
- display:
1 b, G5 _! ]8 d" A# ~ - - platform: ssd1306_i2c# Z/ L {: a& l
- model: "SSD1306 128x64"8 H8 E: ~' {* @: y# Z7 j/ Y7 e
- id: "ssd1306"
3 M3 T/ W* z% ^" Q. P3 L - reset_pin: D0
0 C% |( N: h5 ] - address: 0x3C
4 C) J4 Z9 ^9 H7 _- G6 t) x& ^ - rotation: 180
/ O& {! X0 U2 ?/ q9 S! z - brightness: 30%* H$ K! t c7 k6 ~1 c* m
- ! P, @) D8 B: g
- pages:: C8 _4 o' C2 S% K' A0 {
- # - id: page1
! [& |) P' ~5 m" e - # lambda: |-
9 I2 w7 v2 ]1 m& N6 B& r - # it.printf(0, 30, id(font3), "S:%s", id(sec).state ? "ON" : "OFF");
+ g/ v; b. R% o1 e; } - [# n& X( r0 ?+ O6 G
- - id: page1
1 I7 t* N1 J0 |8 R* a) r% b. d - lambda: |-
' F2 Z0 ^4 r# \4 N# ~2 F9 K - it.print(47, 0, id(font2), "Info");
9 \6 C6 n# Z3 |% ]; U1 i - it.line(0, 22, 128, 22);
0 P7 E$ E( U8 U3 j; |, `0 ^% F - it.line(0, 23, 128, 23);8 S9 H# W8 `$ L" q$ n4 ]4 `! k1 B6 Q
- it.line(0, 24, 128, 24);
6 w9 w; C: a& {: ~6 d6 u - it.printf(0, 35, id(font1), "CPU: %.0f%%", id(cpu).state);
2 J4 H, V. x' y* m1 G
5 F; @, K6 w! W/ u7 ~/ J% X- it.printf(0, 55, id(font1), "MEM:%.0f %/%.0fMB", id(memoryused).state,id(memorytotal).state);* d1 p$ g. V) V2 P; t- z
- M/ h* ^- o! K, P* k
- # it.rectangle(0, 0, 128, 64);. M: E: B# b: L- V, ^" s8 n5 z
- - id: page2
1 E: P5 I5 p+ C - lambda: |-* e0 q9 P6 v8 |1 R$ R! R
- it.print(0, 0, id(font2), "Network Speed");3 k5 a0 x: T6 V! A
- it.line(0, 22, 128, 22);& ^$ \8 W6 o5 j. i7 X
- it.line(0, 23, 128, 23);
+ C9 n8 |6 Q }2 H2 Z - it.line(0, 24, 128, 24);. \- N+ j4 U1 E
- it.printf(0, 35, id(font1), "U: %.0f Kbps", id(up).state);
x7 F/ Z! P1 P; K2 ^2 s1 t - it.printf(0, 55, id(font1), "D: %.0f Kbps", id(down).state);
7 m/ K/ w9 A1 b8 Z+ _ - - id: page3
+ c5 X2 t+ N4 ]9 }. }; |& T! I! W - lambda: |-' W; o% F5 Y0 n! I+ `& _/ i
- it.print(24, 0, id(font2), "Disk State ");
5 H) ]0 B, z# W) g; g- c - it.line(0, 22, 128, 22);
8 l9 ]1 H0 p7 [' y0 g+ f - it.line(0, 23, 128, 23);( u- [3 a4 W* U* v7 J s4 ~
- it.line(0, 24, 128, 24);
$ E& h: g5 F: E' w/ ] - it.printf(0, 35, id(font1), "Use:%s%/%s", id(sdausage).state.c_str(),id(sdatotal).state.c_str());6 F" v* b" g8 L: h! n e& T
- it.printf(0, 55, id(font1), "Temp: %.0f °C", id(sdatemp).state);) t3 ~7 Z Q# `& K3 C
- : }: {. n! h7 [- ]9 o$ j- S) i% s
- # - id: page3
- z/ n, N" b1 u/ l - # lambda: |-
! U3 X L u3 b, ~; w. K" I - # it.print(0, 10, id(font3), "WOW!!!");: j* \* C3 T5 Q
- # - id: page44 t1 A6 \3 d) ?1 Q( }( g9 M( `
- # lambda: |-
, n5 @1 V* h& o/ J# r3 M - # it.print(0, 10, id(font3), "Fantastic!!");& Y! ?: {( @4 P: H
- # - id: page59 }6 s1 n2 X N6 a" H
- # lambda: |-& e" c0 v7 z9 c+ J$ r4 ` U! @9 k. E
- # it.image(0, 0, id(my_image));6 i6 M6 q7 V" O, z% `5 _5 n: I
- - id: showtime
; A; Z# _3 P7 D7 [+ q - lambda: |-
+ @8 a( |1 c+ g, Q - it.print(40, 0, id(font2), "Clock");$ G! f* g: U4 U0 |1 E7 }+ Y
- it.line(0, 22, 128, 22);2 {: V6 s. g1 p8 o/ z! W
- it.line(0, 23, 128, 23);4 c- s4 ?2 B {1 g7 U/ k$ ^& ^
- it.line(0, 24, 128, 24);
8 ~ g5 q6 j8 Q4 z# v3 {& n - it.strftime(15, 42, id(font3), "%H:%M:%S", id(sntp_time).now());& m' |/ {. U1 c7 k$ W
- it.strftime(25, 26, id(font1), "%Y-%m-%d", id(sntp_time).now());
7 b) P, j/ U: `8 q" X4 J
+ `$ ^0 K2 K/ l. l& [3 f0 w
+ v4 n. s; D; t- {- ota:
7 |% @4 A7 q- J7 i( _
8 }9 V- e/ G2 h( K f' U- sensor:
2 {2 p7 m( P; X% A - - platform: homeassistant( a# x, H* z& J; l9 A& \
- name: "dsm load"
' v) P3 ?% y" A1 d3 V - id: "cpu"& i7 y( m# g( o( M
- entity_id: sensor.synology_dsm_cpu_load_total* h7 p4 x U- w" F* U+ Q" f, V0 q: s
- a/ {6 s; Y. F+ P. v' m- - platform: homeassistant
+ r+ M% {/ o% ^( a% ^5 W - name: "dsm down"
, v* k y1 H" z4 r) ?2 I - id: "down"9 A- `% ~- W0 h
- entity_id: sensor.synology_dsm_network_down$ ~, z; K+ \' a
- - A% [5 p7 n* r; Q# B! y7 h% O4 O
- - platform: homeassistant
5 X3 b1 u5 c* y0 ^ |% I" t - name: "dsm up"8 D' D" ^. U% {3 l8 V4 H
- id: "up"! N3 }" @9 G6 ]" Q* I8 x5 g/ T
- entity_id: sensor.synology_dsm_network_up9 l+ f3 |$ G$ @
- 9 G7 b0 H8 L3 @2 @
- - platform: homeassistant+ }# w1 M8 S# H# X! S$ D- u+ r
- name: "memory total"; l8 e: u) o0 b( Q
- id: "memorytotal". v1 i9 X" ^+ m: {
- entity_id: sensor.synology_dsm_memory_size0 O4 _/ L# i8 ? P8 Z
- 5 m1 |" a: D% u$ T+ a. F. W6 J
- - platform: homeassistant& y! v) E. O* l
- name: "memory usage"8 l! B) N: _* J9 E7 J
- id: "memoryavailable"( W6 t8 H, V$ H& T' \
- entity_id: sensor.synology_dsm_memory_available_real" b6 M0 [# v$ o# F- I
- . Y% @; J6 h( v% a5 {
- - platform: homeassistant0 ~" M8 g' |" o7 K2 f
- name: "memory usage"
. t- o0 ^( S# R/ _ - id: "memoryusage"
, M" c6 E1 R5 E( r. s/ e - entity_id: sensor.synology_dsm_memory_usage_real" O% j$ g: w, ?! ?0 ]
5 g. y D& X' `6 u/ G, x
( @$ H2 C$ j$ b& r2 Z. r: o8 H- - name: "memoryused"& q B" Q; G0 c3 q" T" r
- id: "memoryused"
: |2 L: K- A1 p - platform: "template"7 ^7 w1 _' S, ?/ p
- lambda: |-' s( j4 z7 j3 h: ~4 L$ V9 W/ k' V
- return id(memorytotal).state - id(memoryusage).state/100*id(memorytotal).state ;" e. x8 R0 O- H: ^! d
- update_interval: 30s
8 _6 r* S/ P; W, r! U' z
) h3 Q9 y' {* W% X) K- - platform: homeassistant8 ^$ B# w( n. y& E, { j1 i
- name: "sdatemperature"* N {) _% f+ \5 t- U- T- u: J& @3 z
- id: "sdatemp"
v; {4 r l! V' w; Z3 S4 } - entity_id: sensor.synology_dsm_temperature_sda $ _- Z' A% z8 ?3 U* Y
- % l, ?. L; P6 F/ D& H6 F
- & s3 W, Z* {, ?- r3 G6 J' R
- text_sensor: g# N$ _, q1 b/ j
- - platform: homeassistant
& S6 _( w4 h( X' e7 z* u# P+ T - name: "sda total"4 Y5 c. R, J7 K/ O# M
- id: "sdatotal"
+ X* S+ K, R0 z ? - entity_id: sensor.synology_dsm_total_size_volume_1
8 N8 s; x) N; U5 R' |0 u$ u* ] - - platform: homeassistant" `) ]$ g3 } v
- name: "sda usage"' z9 ~2 {* S1 ?! ~7 I
- id: "sdausage"
. V7 Q/ I9 j3 s! L- z; Q$ L - entity_id: sensor.synology_dsm_used_space_volume_1 5 |! P! B7 ?& V, h% r
- . o0 R/ c7 q% y5 M {
- binary_sensor:
& t2 G. p' Q9 @. h4 b: s6 L) C( S8 V - - platform: homeassistant0 a( c) C$ r% H. i- j
- name: "sec"7 D7 e: Q8 \( v" B8 E. N
- id: "sec"
: {: R6 b* k2 j- o - entity_id: input_boolean.sec_office
0 A3 g, K: K+ G, R
9 A* u/ g O- O5 J3 G/ c% ~- interval:: ]; w0 g: c+ G& p
- - interval: 10s
3 J5 B' R4 _( H! F `3 U - then:$ ~4 o( F2 z: A" r9 o- k7 @4 u
- - display.page.show_next: ssd1306$ @$ Q2 p- a# Q* m" P
- #- component.update: my_display0 A4 f, X& u+ f; \" _5 B
- font:/ F$ @' Q$ l5 H' t8 f" m
- - file: 'arial.ttf', ~7 c s" D9 K' M
- id: font1: T. u& f9 Q G
- size: 15
, v9 D( C1 E6 _* R - glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"
# N- Q/ B( V: U5 Q1 I - - file: 'arial.ttf'
) x" k& z) R) P! x+ P - id: font2& g2 j8 y- j0 {0 _1 F
- size: 18
) k% R0 i) M7 c% Q7 @: Q i# I - glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"* _' z; e0 ^4 f6 ^
- - z3 ~# |- D) _, \: T
- 5 v. Q+ R/ z6 t9 Q# O. J
- - file: 'arial.ttf'
: r6 S% i2 Y. r' ~; d0 I - id: font3
5 ^4 @* _: J9 U9 i6 l( V - size: 239 Q/ w5 V* J3 q0 z) U; Q
- glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"
复制代码 以上是dsm源码 你稍微阅读一下即可跟着编辑
. n- ], y$ Q7 @$ C9 e1 a3 z0 o( g, g4 N% r6 A( r
) P9 h' ?+ M9 }' T# K. p |
|