|
|
楼主 |
jakc
发表于 2020-6-25 12:34:33
|
显示全部楼层
IP:–广东–揭阳 电信
- esphome:
1 y* y$ ?8 v/ f5 t G* r6 D1 a* Z - name: dsm* C9 T; x( e2 O) R. y: A1 R- F
- platform: ESP82669 n8 F7 r. i3 a0 x
- board: nodemcuv2/ ~: a7 x4 X: Q9 k- T6 Q
- # f7 ?. B2 Q7 @+ D$ U! L
- wifi:) r3 m7 ~2 h5 Z: C* `* y/ X) R
- ssid: "xxxxxxxxxx"+ [6 t* U1 P Q5 f
- password: "xxxxxxxxxxx"
& H. n) c) K+ L6 X9 y/ U7 a6 |
0 f! X+ g6 M& B/ ~2 y. H- # Enable fallback hotspot (captive portal) in case wifi connection fails
& {& M# `: r( ^' [+ ^ - ap: I @* U9 `: E3 s
- ssid: "nas66.com"
5 _4 t$ K$ A9 o* }3 ^ - password: "nas66.com"' n+ C# o4 k6 n' `
8 H( Z% \. F; B0 X! y- captive_portal:
( c2 z- c9 V: l' t
4 ]9 }# G& `7 x/ b- # Enable logging
1 b4 I" h% E d$ Y2 a0 R - logger:3 @8 U& ]+ e, ^; t: i# u
, I, F% G B% ]5 C1 j, `/ q- # Enable Home Assistant API* u) c( V; h, _3 \* z# U3 j
- api:, s" |; x) F! W8 Z9 I4 C
- r% ]5 W h; \% B( s. L- i2c:
9 N0 k r5 x" `# Q3 V" E9 O - sda: D25 `$ K7 q6 |! b$ i
- scl: D4
; s% ]- {- @+ P8 c
' G1 d. B: ?% C- image:
+ @- h2 p1 E* \0 ~6 t/ s - - file: "logo.png"
: s S# ~" k8 @! ? - id: my_image" a+ S' S- x, S) F
- resize: 128x64# L) @& S2 K, ^! n4 f8 u1 T
- ' X1 j. O8 }9 X9 g) A% L& a
- time:. I1 P; p) H% h
- - platform: sntp
/ Z. K; y4 x# u. } - id: sntp_time
. ^. y4 Z# _$ J6 ~ - timezone: Asia/Shanghai) F% M+ w6 O3 j: Q% k" M8 L* x
" \0 {- a% }: j$ I) y- i4 K3 D- display:# s. E3 G% N: W! C9 ]% h6 b5 ? p
- - platform: ssd1306_i2c, X! a/ F$ B$ g: \+ n
- model: "SSD1306 128x64"$ ?! V% ~+ L q: F a; W) l
- id: "ssd1306"2 i$ `. A7 Y& M- u+ V, d3 H v& t5 L7 e
- reset_pin: D0
9 C) J' T6 E* E: R( y - address: 0x3C* q) V0 J1 {% E I7 ~( A
- rotation: 180
; m* }, Y3 r! V0 i# A- C - brightness: 30%- |6 C& W% q m. z( i
3 l. U+ {* N* C0 r/ }; L' r- pages:
. z }/ T& }$ o, h6 b% }/ f - # - id: page1
; I8 t% R# x" w) g - # lambda: |-
* v4 _# n [- W! I" G - # it.printf(0, 30, id(font3), "S:%s", id(sec).state ? "ON" : "OFF");
8 ]8 V2 J1 l: b( h0 j& z/ Z - . X# q6 `0 }- ?# d/ b9 A& R
- - id: page1
/ }$ t/ `6 Z2 r* d. ^! ~ - lambda: |-
% W' Y+ H% i! X. I4 O - it.print(47, 0, id(font2), "Info");
" Q$ ?4 O% v; M* N/ v) a7 o0 L5 X5 x - it.line(0, 22, 128, 22);
/ j2 h9 U+ D/ P5 i' b - it.line(0, 23, 128, 23);
' `8 r5 t0 e+ I! U# g - it.line(0, 24, 128, 24);" V7 k4 D# J7 z! t0 d7 Y
- it.printf(0, 35, id(font1), "CPU: %.0f%%", id(cpu).state);% p1 M' n' R. J
- $ z* M: P- {8 O/ B
- it.printf(0, 55, id(font1), "MEM:%.0f %/%.0fMB", id(memoryused).state,id(memorytotal).state);
/ _, U# n) J5 f! _ - * C/ v2 A+ |- C4 T% l, {1 Q
- # it.rectangle(0, 0, 128, 64);
" }/ v% N. V! b2 l - - id: page29 l2 A3 i* p0 j# p8 H- K
- lambda: |-3 P1 U$ N" o: I* f
- it.print(0, 0, id(font2), "Network Speed");0 e) ~: O/ O" }; s, U; f7 K
- it.line(0, 22, 128, 22); p# L* e5 m6 b6 D& Y# G$ f
- it.line(0, 23, 128, 23);
w: W! m7 i1 e2 Y - it.line(0, 24, 128, 24);
8 [' E! }. |8 E0 a - it.printf(0, 35, id(font1), "U: %.0f Kbps", id(up).state);9 S) m5 `; H5 I' E5 ^
- it.printf(0, 55, id(font1), "D: %.0f Kbps", id(down).state);
- f! G6 S( h! U - - id: page3, |: ?5 X& i% Z) ?; X3 Q0 u- t
- lambda: |-6 |, u" Q% F7 P5 X
- it.print(24, 0, id(font2), "Disk State ");
0 V6 @6 T: b- }# ?4 _' \. J( ] - it.line(0, 22, 128, 22);
. Y; f I+ L' s8 W# u+ y; N - it.line(0, 23, 128, 23);
7 k) U+ Q/ I/ L& m9 _ - it.line(0, 24, 128, 24);) P" ^' T5 F2 d' M5 m/ H
- it.printf(0, 35, id(font1), "Use:%s%/%s", id(sdausage).state.c_str(),id(sdatotal).state.c_str()); H/ y; Q# f) n6 B, H
- it.printf(0, 55, id(font1), "Temp: %.0f °C", id(sdatemp).state);, S: |% r8 O7 m7 o# _, F. }
: U, w2 w2 e* k. c! ^0 r- # - id: page3$ b; x6 q# }; h# z
- # lambda: |-$ t+ L, |+ N5 @/ R: E6 v& @
- # it.print(0, 10, id(font3), "WOW!!!");* R3 y) {# a0 G) P' u: \: g4 u
- # - id: page4" d; ]; M% g, ]5 z
- # lambda: |-' _: t3 a& u% h6 b
- # it.print(0, 10, id(font3), "Fantastic!!");
. b) w+ b( r; [+ a9 B - # - id: page5
/ T8 \* |# ]- N/ T+ u - # lambda: |-/ V3 |1 P) D, C8 ]& B
- # it.image(0, 0, id(my_image));) G2 t" {/ i. U% J# ^# Q% w
- - id: showtime& C, @. d4 V0 i2 {/ m
- lambda: |-2 m' l- ^5 O; X1 p, _/ U% F
- it.print(40, 0, id(font2), "Clock");
" r, X" f6 T$ {) o$ Q1 r - it.line(0, 22, 128, 22);
+ z, D5 _7 `5 f/ K& ? - it.line(0, 23, 128, 23);: E7 h, W/ A3 e% E% p3 P
- it.line(0, 24, 128, 24);
. E$ D! v9 }* v6 w% n" h - it.strftime(15, 42, id(font3), "%H:%M:%S", id(sntp_time).now());/ s5 D9 Q. p) D# ?) r2 }7 V
- it.strftime(25, 26, id(font1), "%Y-%m-%d", id(sntp_time).now());
, B5 @- F% W; `5 p* l$ t - & Q' i- _1 x& \5 k$ A* _
% O1 d$ s8 U7 h4 S- ota:5 T# ?2 [$ l& x7 E0 L8 q
; C3 r( P1 E8 y+ |/ E& B5 ~2 z- sensor:
8 n; i6 f6 h! E% L# T6 q - - platform: homeassistant
5 S- y8 V4 f1 j) v7 Q+ y0 Y$ O7 a ]5 @ - name: "dsm load"
$ s; K* b7 X; }3 Z9 V( H - id: "cpu"
: `# c# [$ i* Z, h - entity_id: sensor.synology_dsm_cpu_load_total: L7 |" e# l' u9 O" @8 ]: J
- 5 |8 |% I9 z) D1 w) l$ W/ b
- - platform: homeassistant
- F$ r+ ~% ~- @ f - name: "dsm down"0 \2 |: i1 T6 d& `) L
- id: "down"" O% @* r% _ C' z. f. `
- entity_id: sensor.synology_dsm_network_down- H$ s7 g- Q/ _2 ~$ c
8 v; {4 j. O* F5 @- t( Y3 {- - platform: homeassistant
$ l$ {. f& g3 B) W - name: "dsm up"+ Z6 E9 B: A! q3 {, J$ l
- id: "up"
* v' w" w: E* R( B {# A, ? N - entity_id: sensor.synology_dsm_network_up
$ z. X0 `5 T+ Z+ t
P9 e* [! m' F+ g% y- - platform: homeassistant( f; h+ V, _* N2 k% C, g
- name: "memory total"0 P/ T: `$ s( x# R3 {( V6 E. l
- id: "memorytotal"/ w5 x5 X4 o& e X
- entity_id: sensor.synology_dsm_memory_size
( x& T, C+ ?) T) o
$ _- X& N; }6 T8 n* D- - platform: homeassistant" r' Y2 u7 T0 h# X4 v. l
- name: "memory usage"# u8 B8 X, G; O5 |
- id: "memoryavailable"
' i; S) [" B3 U - entity_id: sensor.synology_dsm_memory_available_real* w% o O0 H3 c9 y) p
- ! P( s: T+ L8 @8 ?
- - platform: homeassistant
0 N" y5 S. S) y: n a/ F - name: "memory usage"
4 _' R4 T6 d; ^0 H. c9 {9 ^ - id: "memoryusage"
: i9 ?+ _0 e3 B) q- [3 b - entity_id: sensor.synology_dsm_memory_usage_real V- b @! `5 z3 y
0 p/ b% \+ q6 q S( `- K- 7 z2 L# H; i; ~% n0 ~6 A$ [
- - name: "memoryused"( \' @& e& H; R1 V6 F6 @9 t- f7 E
- id: "memoryused") ?( n0 m: \ ]2 Y1 O% D
- platform: "template"( e' {9 T& ~. @- I
- lambda: |-+ S5 B [6 S" {6 ?3 _, I! I2 A! E
- return id(memorytotal).state - id(memoryusage).state/100*id(memorytotal).state ;
) ], ~7 B* V( m - update_interval: 30s9 N% M( }; U3 R8 P9 [' ~, @
$ t M6 U8 }' t- - platform: homeassistant
# i' Y1 `, e" p& W5 a7 }* x3 T - name: "sdatemperature"
D1 B# } f! ~$ O: P8 ^6 T' U - id: "sdatemp"
) X$ D% b7 b" h* A5 G8 X - entity_id: sensor.synology_dsm_temperature_sda / \" T4 e) M0 ^
- 5 o( \6 ]* U/ s ^6 l0 `6 O- G( Z# J# M
- ' i2 F; C$ d; ]$ h( Q1 p% Y. ?
- text_sensor:" L( e" w9 g. P E( F. f1 @
- - platform: homeassistant0 g" n# }8 p/ ?3 l' o
- name: "sda total"( R' Z, f' }3 B4 }
- id: "sdatotal") j0 L+ C" i& @0 s8 Z9 ~+ ]' m
- entity_id: sensor.synology_dsm_total_size_volume_19 }: p, A. G2 }! p
- - platform: homeassistant. a& `, ~( C# Z4 I$ T/ [
- name: "sda usage". C9 G, K5 M; ^0 D% O- P$ C
- id: "sdausage": x8 f% C, v" x- t H9 p ]
- entity_id: sensor.synology_dsm_used_space_volume_1
% b$ p1 p1 S# ~
}, [) m& w0 r5 w- binary_sensor:
+ \/ Z; O0 n8 t( J y m3 i/ m, O( f - - platform: homeassistant, R: N8 y' }( Y7 f
- name: "sec"
- @* @8 @/ Z* E1 r6 [( G2 O - id: "sec"
; H2 F8 z1 p' j/ z7 s9 W; X" T0 f* ^ - entity_id: input_boolean.sec_office- p3 o: D! a. N6 `0 N! Z6 @
- / b" L T. ~) Z" t1 T' X: D
- interval:1 `0 I8 h* U. f N/ a& E; z n
- - interval: 10s8 n5 ?6 ^- [% A
- then:
. Z0 ^8 e& Z: t# P" G' l. M - - display.page.show_next: ssd1306* m. l( n0 h- w% z+ E% M; t
- #- component.update: my_display
) |: Z6 W6 N; {! Q9 X" P - font:
, r( O: T* F m/ Y - - file: 'arial.ttf'% F, a5 U7 O ^) N4 ^
- id: font1
# K6 h( a" E6 p - size: 15. y3 E2 }9 i! M/ r1 Q( g1 O
- glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"9 n! G" A# _2 y. o3 e! m
- - file: 'arial.ttf'# V* b! i! N. \
- id: font2
1 ~3 ?3 `) A3 a( P% O* [; E - size: 18
" C0 n$ C! ~& ]+ T8 { - glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"' I! y6 K6 e" v+ I6 T
- 2 _+ k8 v9 E6 |* K6 G3 f! @
: t0 Q0 f, G7 {0 }: e8 s" p+ w1 ]0 u- - file: 'arial.ttf'
; ?. G( @. Q8 @ - id: font3
+ z! l- b# J9 Y9 t9 N - size: 233 k; q6 R9 u, ^1 C4 O3 T0 i0 @2 ~
- glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"
复制代码 以上是dsm源码 你稍微阅读一下即可跟着编辑# H0 T9 G8 _) y, T# ?0 j; ~: u" [
6 I* t+ f! @" ~. j) a/ H1 m7 F# h4 j3 ~/ U" q5 U5 a1 f
|
|