找回密码
 立即注册
查看: 1322|回复: 5

[教程] 猫盘刷群晖LED灯的问题

[复制链接]

5

主题

4

回帖

98

积分

初级渣柚V2

积分
98
发表于 2019-11-6 02:57:51 | 显示全部楼层 |阅读模式
本帖最后由 rainytimes 于 2019-11-6 03:00 编辑
& @' ~* r5 N" Y: [' t" }; J: Z, P9 Z6 F) E$ o
参照了目前网上的帖子,但是帖子中有些问题没有说清楚,至少我遇到了问题,这里把我遇到的问题再说下。
" _3 c, R' J2 z% S, ]8 s# `3 a原帖是在群晖中执行计划任务中的触发任务,点亮LED灯的同时,利用ping命令检测是否一直能连接百度,从而判断猫盘是否在线,让LED灯根据在线状态显示不同的颜色。4 B) T+ A, J+ m. _
原帖的脚本:$ q0 F1 W' S2 F: N2 P
  1. i2cset -y -f pxa_i2c-i2c 0x45 0x01 0x01          #开启LED控制器
    . [# s4 z: v. a9 K
  2. i2cset -y -f pxa_i2c-i2c 0x45 0x31 0x03          #最大电流不呼吸$ a( |$ Y# D# ]  U! h
  3. i2cset -y -f pxa_i2c-i2c 0x45 0x32 0x03                #最大电流不呼吸
    6 N2 j9 N* B7 s/ ?0 Z0 g
  4. i2cset -y -f pxa_i2c-i2c 0x45 0x33 0x03                #最大电流不呼吸; T- r9 o4 q9 P+ h: a
  5. i2cset -y -f pxa_i2c-i2c 0x45 0x30 0x07          . G5 e' c+ J# C8 W8 X  L  L) W6 e. ]
  6. while :
    % K6 C) Y) I: P0 `* H) n
  7. do
    / \; y) e% N$ Z  L' }
  8. ping -W 1 -c 1 www.baidu.com > /dev/null 2>&1+ E2 ]7 @1 c# q9 B
  9. if [ $? -eq 0 ];then  9 z* _- G/ t5 U6 I( W6 |3 r4 I" B; I$ x
  10. i2cset -y -f pxa_i2c-i2c</font> 0x45 0x34 0                 #R
    1 X" \' b1 ~6 l1 B- a% f
  11. i2cset -y -f pxa_i2c-i2c</font> 0x45 0x35 255                 #G
    $ n4 z# n$ h. @& H4 A2 X% L
  12. i2cset -y -f pxa_i2c-i2c</font> 0x45 0x36 0                 #B
    9 H  B7 w. [8 C9 X* E4 j2 Y
  13. else/ V  q3 Q- h& \9 [2 ]
  14. i2cset -y -f pxa_i2c-i2c 0x45 0x34 255                #R
    7 K0 W+ p& o( f! q% R
  15. i2cset -y -f pxa_i2c-i2c 0x45 0x35 0                 #G& {* S; h: o! `! c
  16. i2cset -y -f pxa_i2c-i2c 0x45 0x36 0                 #B
    . w' d5 o0 F$ R
  17. fi2 a6 Y; D2 C1 l# Z4 t; n1 K* F- |
  18. sleep 1s! E. y: F% o  d* S# v8 j$ X4 o
  19. done
复制代码
运行的话会报如下错误:
8 I  S' G+ ]& s8 Z% U4 Z
  1. Error: I2C bus name is not unique!
    $ h4 @* X9 n  F! D- Q
  2. Usage: i2cset [-f] [-y] [-m MASK] [-r] I2CBUS CHIP-ADDRESS DATA-ADDRESS [VALUE] ... [MODE]
    ) b/ Z" K! b* u* ~! d
  3.   I2CBUS is an integer or an I2C bus name4 g( X2 Z% c, K
  4.   ADDRESS is an integer (0x03 - 0x77)
    + t( K' e3 Z6 n# T# Z
  5.   MODE is one of:: X3 X! [# f' v
  6.     c (byte, no value)
    / o  U+ Q: M$ S) J
  7.     b (byte data, default)+ n$ J; x2 K1 }
  8.     w (word data)2 M  z, n! i2 W+ b
  9.     i (I2C block data)* o& D* O+ q8 Z! O+ I; O4 Q
  10.     s (SMBus block data)
    & m4 [! T6 v0 Z9 i3 M
  11.     Append p for SMBus PEC
复制代码

1 }) r- z' w; W0 j& q. O  t% O) M$ u- m3 u$ \  D7 x

, j4 n: o2 }  Z1 n" _; u3 }: O- d2 d, ^9 o6 u" @2 v1 f
. h) m) M# I5 j& K4 z
科普下标红的pxa_i2c-i2c 是i2c总线的名称,我猫盘中的群晖没有这个名称的总线。所以报上面的错误,下面讲如何解决:
- @7 c4 D: P, ~+ T+ ^2 Q: }/ f! {; O5 b- l6 B( h
% m4 M2 W/ D. E! ~

+ @. N+ ]% \) n( d
( R4 c4 i$ `3 T+ {) s2 s
群晖开ssh用root进入这个目录 , P6 O" b5 J; x2 Q( C! \3 ]
  1. >cd  /sys/bus/i2c/devices 3 r6 Q) s: X4 R; _# u
  2. > ls
    ) ]% ]* l- O$ k: K
  3. i2c-0  i2c-1
复制代码
/ R, l' A) p  o/ G7 L! j; X
下面看到2个总线设备,我也不知道那个是控制LED灯的,尝试把脚本改成下面也是自己尝试看好用不,我的是0号总线控制灯。我设置1号总线也写入不了,下面的 0 即对应总线标识:i2c-0
  s; y% {& ^, e: ^) o. |% P1 o% C
: a% R" {/ @5 Z
: T" M0 \% [: s; f! G' W2 Q' ^( p7 W# Y7 D/ z! D7 U
  1. i2cset -y -f 0 0x45 0x01 0x01          #开启LED控制器
    9 s0 k1 r# ~: P
  2. i2cset -y -f 0 0x45 0x31 0x03          #最大电流不呼吸, ]" U; |1 }8 g$ T  q' J  q
  3. i2cset -y -f 0 0x45 0x32 0x03                #最大电流不呼吸
    ) J7 ]/ u3 r. O; ^' r
  4. i2cset -y -f 0 0x45 0x33 0x03                #最大电流不呼吸) D4 [+ g  d3 O$ b0 `4 F$ [( o
  5. i2cset -y -f 0 0x45 0x30 0x07         
    8 d& Q" \8 a( ]) G
  6. while :; o  |* E& P  C% @
  7. do
    ! l. |9 ^3 s, p
  8. ping -W 1 -c 1 www.baidu.com > /dev/null 2>&1
    * r7 ]# P5 A- h& q- h
  9. if [ $? -eq 0 ];then  
    * X' N, o6 C! d7 {
  10. i2cset -y -f 0 0x45 0x34 0                 #R
    . O& |0 C, j& u1 E
  11. i2cset -y -f 0 0x45 0x35 255                 #G
    6 _) W9 A: w6 W& r* n
  12. i2cset -y -f 0 0x45 0x36 0                 #B
    3 ]' ]0 I. B7 ?  s& w1 c+ m2 y, {
  13. else
    . b2 ?: o) t" R( Z  R
  14. i2cset -y -f 0 0x45 0x34 255                #R: W* M) R- x) F5 `/ e6 K/ |
  15. i2cset -y -f 0 0x45 0x35 0                 #G9 Z" f6 ~# i- P$ t
  16. i2cset -y -f 0 0x45 0x36 0                 #B
    ! m6 ]& L8 Y) Z) D% |
  17. fi, z( ^# T' y/ g$ K, Z4 @
  18. sleep 10s! i8 I! @& P  K( q9 K. M/ y1 E. _3 ~
  19. done
复制代码

+ f. U( M; N2 g+ N! T# g/ I' a* x, U( D5 v/ Z# n+ o

评分

参与人数 1渣金 +10 经验值 +5 收起 理由
zystbbs + 10 + 5 淡定

查看全部评分

5

主题

89

回帖

373

积分

中级渣柚V1

积分
373
发表于 2019-11-6 08:11:58 | 显示全部楼层
我还花2渣金看看, 和之前不是一样的吗

5

主题

4

回帖

98

积分

初级渣柚V2

积分
98
 楼主| 发表于 2019-11-6 12:18:21 | 显示全部楼层
Entropy 发表于 2019-11-6 08:11
5 _' R! U! L. t我还花2渣金看看, 和之前不是一样的吗

8 ~% W: M$ T8 t: Q+ A* J说明了下i2c总线怎么查看的事,别的没啥。

4

主题

63

回帖

668

积分

中级渣柚V2

积分
668
发表于 2019-11-10 21:35:03 | 显示全部楼层
呃呃,渣金……

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-11-15 11:18:39 | 显示全部楼层
mark... 紫薯补丁~

2

主题

29

回帖

197

积分

初级渣柚V2

积分
197
发表于 2019-11-16 15:33:21 | 显示全部楼层
顶一下,
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|矿渣社区 ( 黔ICP备2024020525号-1 )

GMT+8, 2025-5-13 22:42 , Processed in 0.066897 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表