|
|
楼主 |
jakc
发表于 2020-6-25 12:34:33
|
显示全部楼层
IP:–广东–揭阳 电信
- esphome:
# M5 O, M9 ?) e: e, T9 \ - name: dsm3 D! y: x) D4 D3 c9 Z [) |
- platform: ESP8266/ N! b5 L- C4 F& x; g/ a' {" {
- board: nodemcuv2
( h/ R0 G: @+ W. q# s - " T+ t$ j8 q- T" }5 x3 R
- wifi:* p- e k3 s/ K+ ]( x
- ssid: "xxxxxxxxxx"
4 R3 |# ^+ F5 l$ Z6 a - password: "xxxxxxxxxxx"
3 f5 b5 L' @# X3 y3 r; T. O3 C
4 W+ n0 V1 ]& m4 ]9 {9 j* s1 e& F9 B- # Enable fallback hotspot (captive portal) in case wifi connection fails& b9 X1 Q) y* X( e
- ap:
. C5 {" ]9 ], l+ v - ssid: "nas66.com"
% m, y" r/ o2 l; J: @: E0 U - password: "nas66.com"
8 t! q0 b! @9 T C4 L3 p1 J
% u* b* B; a+ l0 |0 a( G2 F. l- captive_portal:4 U. [- s; U' T9 R
- 3 Y0 ]8 G/ c0 c5 H* n, E& A
- # Enable logging
% I2 v; R' F2 ^ L5 N9 g. K - logger:3 o5 r3 m* Y) P$ T+ A! ^" H
- , A( k+ f9 z- D7 t# e
- # Enable Home Assistant API. Z6 ?/ M; y& e
- api:
" q6 I% u$ \9 S0 Y; U; ]- J
' W4 w: `8 d( [* F/ c. N& \- i2c:9 d. D& _( O& D4 |# P/ c( b
- sda: D2) a/ F" x: D0 J3 ^* L8 t
- scl: D4
% F: q+ g2 A( D: [ - 6 M: a j" f8 J( ]' O. |5 f
- image:
+ m' H% f$ }5 D8 c" l( u4 z - - file: "logo.png"
7 J j: ?5 f- N" l - id: my_image% r+ h* s: ^$ y* l: r+ [* O7 i
- resize: 128x64
& y& w' B/ b# h9 p5 g - ' p7 Q! f6 u* Y( M
- time:$ h8 B' B0 T+ `4 E% b
- - platform: sntp
; r9 b5 T! R5 w& H& Q: {4 ?/ K! _ - id: sntp_time" T" M) s4 g, y( @
- timezone: Asia/Shanghai# c5 M, W& _+ }2 f% a8 B
- + I/ Q+ {, D5 u+ N8 {( R$ h2 M
- display:
$ ]! P0 w9 R/ z6 t! |# ^/ M+ Q- J - - platform: ssd1306_i2c1 ?4 M' \% `% p* s# K
- model: "SSD1306 128x64"
; h ?) O2 M$ j- i - id: "ssd1306"+ U, v' A0 E1 F; X" @% t
- reset_pin: D0
: K- @! N8 r3 @) e2 B7 Z - address: 0x3C
( H( d/ Q: k" G) K# \ k- Q - rotation: 1800 Y1 V# g/ p( E6 h3 s( w
- brightness: 30%! P; E1 |- F# Y4 P/ W
- 9 w3 x! t6 m! H" R
- pages:" ^* O5 f" P9 F# T
- # - id: page1# W1 ]5 f1 S' P8 Y& _* r6 `- p9 m
- # lambda: |-% O! u& T) A l
- # it.printf(0, 30, id(font3), "S:%s", id(sec).state ? "ON" : "OFF");
0 g+ ~$ x9 p7 E, X: d, ~. \
) y1 e5 i; B. G, C; A. h- - id: page19 u. `2 H5 E. X& P
- lambda: |-" u$ k+ J1 x, q: o9 h c4 g9 I
- it.print(47, 0, id(font2), "Info");
- X7 Z% X9 Q3 j5 ^: U* P* \/ m. Y" H - it.line(0, 22, 128, 22);
2 Y$ V- Z6 F- N, l. I - it.line(0, 23, 128, 23);$ R- \0 D5 ^( k u
- it.line(0, 24, 128, 24);
( Z+ _$ Y4 Z+ [ Y - it.printf(0, 35, id(font1), "CPU: %.0f%%", id(cpu).state);
, k/ m+ V& p8 b
E4 I; j; g" N+ i5 \1 y' M+ J- it.printf(0, 55, id(font1), "MEM:%.0f %/%.0fMB", id(memoryused).state,id(memorytotal).state);9 W _: F: H* [! X+ q. P% G
-
1 O: t# o+ F6 C1 n- E/ O - # it.rectangle(0, 0, 128, 64);; a' _2 h: B$ S2 K# n$ a
- - id: page2
0 J0 f9 \& j8 F1 h1 a( m! H' h( ` - lambda: |-. |' P* G0 V9 M
- it.print(0, 0, id(font2), "Network Speed");- H6 E3 O9 y% {6 f6 O. l2 `
- it.line(0, 22, 128, 22);
* D+ [6 {, R" L! w9 H - it.line(0, 23, 128, 23);8 Z+ c/ ?4 H) Q$ ?# V* i" x( ?
- it.line(0, 24, 128, 24);4 v" N7 k* U0 ?! T
- it.printf(0, 35, id(font1), "U: %.0f Kbps", id(up).state);3 |! }8 U9 c) n# i; p3 F6 s* c
- it.printf(0, 55, id(font1), "D: %.0f Kbps", id(down).state);1 g' D! w/ z c ]7 b0 A
- - id: page3
% K6 D$ p! ~2 P8 Z - lambda: |-
- S$ K2 i* y3 S/ [% z7 t: u - it.print(24, 0, id(font2), "Disk State ");2 J1 Y, ~2 y- d% f. u! Z- `9 i
- it.line(0, 22, 128, 22);
) R4 s8 p! c5 w3 T - it.line(0, 23, 128, 23);
- C- M S/ G/ H- ]# B! l1 r - it.line(0, 24, 128, 24);
- |# f) G7 m/ X2 j - it.printf(0, 35, id(font1), "Use:%s%/%s", id(sdausage).state.c_str(),id(sdatotal).state.c_str());7 p. t) P0 ?. }) X
- it.printf(0, 55, id(font1), "Temp: %.0f °C", id(sdatemp).state);
; q! ^5 Y+ a) Y) q7 G8 l: V - & A0 ~9 T- ]4 E: e/ R
- # - id: page3
9 z9 z% {" s5 B8 Z% b K! S% L - # lambda: |-1 N0 G. b, _) O! i4 Y
- # it.print(0, 10, id(font3), "WOW!!!");+ F/ d3 [' m5 U2 x3 y! b3 x
- # - id: page4$ e" L) y! q9 u5 k5 D* F" w& ~
- # lambda: |-
" Z2 O& X/ R# }5 R$ X - # it.print(0, 10, id(font3), "Fantastic!!");: N* ]$ x2 Z! y. D' L+ r
- # - id: page5
$ B! ]3 i$ g5 L. I- _0 D - # lambda: |- w1 y2 N; J& P0 m @2 b
- # it.image(0, 0, id(my_image));
# @0 a8 o# g+ @ - - id: showtime
& ~+ }$ |) o; y1 Y% Z - lambda: |-! a5 k" m2 C! b
- it.print(40, 0, id(font2), "Clock");
5 B2 t9 S( V$ v d3 V - it.line(0, 22, 128, 22);
, d" l4 x# E8 a' H4 c7 r - it.line(0, 23, 128, 23);
" T4 u `9 x: [" M' N5 P3 E8 D7 ] - it.line(0, 24, 128, 24);- m) s+ [: w* L) i
- it.strftime(15, 42, id(font3), "%H:%M:%S", id(sntp_time).now());
p: ~. b1 m" L. K$ W$ k - it.strftime(25, 26, id(font1), "%Y-%m-%d", id(sntp_time).now());
' d5 E9 b* r, S$ s! X* Q - , e6 `7 i: n2 P0 E! j* l* W2 ~$ ^6 e
- / y5 q, J0 A+ A& {4 h( n, e
- ota:
% L7 z' s/ ?; `- G9 E% p. `, K X' T - / `9 _" s( o6 `7 Z; W: V4 {2 E
- sensor:
5 i9 \7 a Z# `3 c1 p - - platform: homeassistant9 T: |+ n% V/ ~ A) v- I2 i9 ~
- name: "dsm load"
$ S8 m' o4 m7 H! Z - id: "cpu"( }0 N. m' E$ r5 C
- entity_id: sensor.synology_dsm_cpu_load_total' ^$ w# {5 K' M% u: A8 V/ M# J
- % @% Q# e, Q6 Y/ x) Y, w( o# b
- - platform: homeassistant
$ n+ D! W( H# b# I: E' ^ - name: "dsm down"& E9 G2 v, _( F }$ a) z
- id: "down"4 ~ t7 R( R, l% ^; q' X8 c
- entity_id: sensor.synology_dsm_network_down
) J# x( M' i8 d - ; h, D. n1 B5 r- }/ s1 v! g
- - platform: homeassistant
) D5 U" S* p" x. ]% W4 u - name: "dsm up"
+ {% \ ?) v. m# {# j9 f. m9 \ - id: "up"
& T$ z! U8 j4 L/ U+ O - entity_id: sensor.synology_dsm_network_up* F# [+ P" H! \% q" X
- 8 u, A+ T" r3 L* j9 E% V
- - platform: homeassistant- |/ i8 a% J6 o' v; N2 a
- name: "memory total"8 k' m. Y" { i8 r/ O$ X$ M2 Z
- id: "memorytotal"
5 T( \+ K( I4 j- S - entity_id: sensor.synology_dsm_memory_size
5 V) o1 K! R1 u! ^" t( O2 z - + S. |6 B" n [1 l, }
- - platform: homeassistant$ f, H; Y% v* b t( }5 @ v# U
- name: "memory usage"9 j4 k/ N$ f3 J6 o5 t
- id: "memoryavailable"' g n9 W$ M( K. j# b c! C/ W: _
- entity_id: sensor.synology_dsm_memory_available_real
% A5 D% k5 m) H# X' j - 8 K( D( U% s( g% _ C# L8 `
- - platform: homeassistant
5 o- z" {$ }" ` - name: "memory usage"
' K7 s* s; b' j - id: "memoryusage"
) F% C! B- F# `. ]- _ - entity_id: sensor.synology_dsm_memory_usage_real
. z) c1 }, j7 ^; U, h$ y - + p( z0 E* @. N( C
- 7 Q) y& W! R6 Q% N
- - name: "memoryused"* Q5 C% R% l5 P. ~4 i) V- }
- id: "memoryused"
! _% |( s4 K% q - platform: "template"
2 M: W' Y; N5 j - lambda: |-8 B$ Z, f8 r/ d ]% u( s
- return id(memorytotal).state - id(memoryusage).state/100*id(memorytotal).state ;
- c1 Z5 g# ]" j" D+ S) T - update_interval: 30s
6 l" ^) Y9 V6 P! y - / l/ s2 {# d4 q) J3 G' O2 U
- - platform: homeassistant- O g$ v/ \. n% [( f
- name: "sdatemperature"
, l/ a" o/ Q, I+ s8 G - id: "sdatemp"9 t5 M% f5 C; v
- entity_id: sensor.synology_dsm_temperature_sda
$ H) ^. S; X8 G& ?( g
! v% i* m% A% D, J/ n5 w3 _8 b4 I
- @' w- m3 U8 M& |& i' ?- text_sensor:2 a+ b" @2 C7 v4 z
- - platform: homeassistant; q8 ^7 `7 L& L, ~& Y2 P8 M! r
- name: "sda total"
. d, ?( l; l4 V8 o - id: "sdatotal"4 M) l) H1 B1 X6 L+ P" i6 b
- entity_id: sensor.synology_dsm_total_size_volume_1
3 ?8 |; v5 p/ `( s - - platform: homeassistant
1 e5 x- s5 U2 M8 a3 H - name: "sda usage"
4 m: b' I- N" [' _ - id: "sdausage"
4 S! ]$ L6 ]" k& J: T7 B - entity_id: sensor.synology_dsm_used_space_volume_1 ) O- f- N( N+ k
- 4 j+ z. I/ u; Q' Y( l
- binary_sensor:
' W" @* C9 h2 G0 Z* J# P0 S' [" V8 k - - platform: homeassistant
3 z6 t$ X* m* F+ C: P: O - name: "sec"- g m( A5 M% T
- id: "sec"' z3 O0 Y2 N C* X0 {
- entity_id: input_boolean.sec_office
6 o7 _" @ Z+ M8 ]' d! ~3 s4 w9 p - . W6 ]& \, M) k8 a2 J3 |
- interval:
2 t* l8 F% T# a/ p) V' w - - interval: 10s
# ^; g% T- ^% Y - then:- ~7 [, N4 ]; e, C+ c- H1 e, y* ]9 C
- - display.page.show_next: ssd1306
, U! T' t3 X* U) K8 D/ U) N R - #- component.update: my_display
' D% p$ W3 I$ H! T# F% f - font:: Z& s" A/ ?! \: {9 w i$ }
- - file: 'arial.ttf'
0 [) N7 x' o/ i e; Q - id: font1( S0 ~: E6 W/ E& T& B* k! p
- size: 15
% W6 c1 Q1 O+ z0 G/ s" f - glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"; I/ V5 @0 x0 s! q' i
- - file: 'arial.ttf'
/ E0 X. J' }# D2 {5 s% D1 h0 Z G - id: font2, U- d# D8 K0 V( Y1 P& j L
- size: 18
% i; _/ F o* L8 b# Q - glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"
J/ E( g) O4 }1 R. W - / b! r9 C; {7 u Z& g U
8 Y5 [& a+ Y* m$ V. C5 P, H- q- - file: 'arial.ttf'5 S- {7 U0 x3 J7 v% X8 m: i& _
- id: font3
& d& x+ T- t2 A1 V9 u" V - size: 23
8 j. b9 a L% x# S5 C - glyphs: "/!%()+,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz"
复制代码 以上是dsm源码 你稍微阅读一下即可跟着编辑
+ ^1 u- O0 i( Q" `7 K1 @
, \; E6 O; M6 I7 k
; t6 o' A4 A7 Z' n |
|