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

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

[复制链接]

5

主题

4

回帖

98

积分

初级渣柚V2

积分
98
发表于 2019-11-6 02:57:51 | 显示全部楼层 |阅读模式
本帖最后由 rainytimes 于 2019-11-6 03:00 编辑 3 l2 [& F- v3 ~1 ~& L0 O( [9 G

% q+ s: s! b9 {参照了目前网上的帖子,但是帖子中有些问题没有说清楚,至少我遇到了问题,这里把我遇到的问题再说下。' o; R+ ?! B* W
原帖是在群晖中执行计划任务中的触发任务,点亮LED灯的同时,利用ping命令检测是否一直能连接百度,从而判断猫盘是否在线,让LED灯根据在线状态显示不同的颜色。
3 q( p2 W; F$ n1 @+ E  [6 p原帖的脚本:
' s' x) n5 q* F3 L5 Q
  1. i2cset -y -f pxa_i2c-i2c 0x45 0x01 0x01          #开启LED控制器
    6 A. y( L/ T0 \1 Y
  2. i2cset -y -f pxa_i2c-i2c 0x45 0x31 0x03          #最大电流不呼吸1 E- N, C. z+ J) l; I% ]  b
  3. i2cset -y -f pxa_i2c-i2c 0x45 0x32 0x03                #最大电流不呼吸
    ! R! v4 x) v: b' ~! y7 l
  4. i2cset -y -f pxa_i2c-i2c 0x45 0x33 0x03                #最大电流不呼吸8 Z$ |8 d" |1 |$ u, ?! b6 ?$ M
  5. i2cset -y -f pxa_i2c-i2c 0x45 0x30 0x07         
    " G* F7 ?, h& L0 Z
  6. while :
    0 l5 f' c: ]) T6 D  c+ c
  7. do
    " D# i) S0 a! q1 G! R( p
  8. ping -W 1 -c 1 www.baidu.com > /dev/null 2>&1
    ; N" s4 u2 m8 Y4 p0 s2 J' L
  9. if [ $? -eq 0 ];then  
    # J. Q5 ]# W* n
  10. i2cset -y -f pxa_i2c-i2c</font> 0x45 0x34 0                 #R3 J# b1 G' c- q8 m1 L; i* E
  11. i2cset -y -f pxa_i2c-i2c</font> 0x45 0x35 255                 #G6 |- ^1 ?3 s0 a# M
  12. i2cset -y -f pxa_i2c-i2c</font> 0x45 0x36 0                 #B4 t9 {+ L3 X6 }. I, S
  13. else9 G7 I; z/ g( f, u' B+ h
  14. i2cset -y -f pxa_i2c-i2c 0x45 0x34 255                #R
    # X: Y" v9 n* X
  15. i2cset -y -f pxa_i2c-i2c 0x45 0x35 0                 #G
    2 q2 j: x% G/ q2 q- w
  16. i2cset -y -f pxa_i2c-i2c 0x45 0x36 0                 #B
    $ z! s, B! H  V" S+ ^. |
  17. fi+ o8 g  K& S/ |. u1 P
  18. sleep 1s
    / w) J) H- s* ]# q/ h" N
  19. done
复制代码
运行的话会报如下错误:
4 I( H' e& C: X( G* c
  1. Error: I2C bus name is not unique!; N+ o' M9 E2 j
  2. Usage: i2cset [-f] [-y] [-m MASK] [-r] I2CBUS CHIP-ADDRESS DATA-ADDRESS [VALUE] ... [MODE]
    3 G4 a4 B; D! T- i
  3.   I2CBUS is an integer or an I2C bus name
    2 i/ S+ F6 N( }. i% f0 h% S* x
  4.   ADDRESS is an integer (0x03 - 0x77)
    1 l* O% ^3 E) ?
  5.   MODE is one of:
    & U3 c: t; K. c+ P+ v
  6.     c (byte, no value)
    4 W( L9 K% d( h/ `, W
  7.     b (byte data, default)7 `1 v3 n2 f8 {; H7 l# x+ z8 l
  8.     w (word data)
    - L6 i" C  h0 d7 Z0 G
  9.     i (I2C block data)
    / K- E( S% s' ]& [' S7 h( V
  10.     s (SMBus block data)
    : x6 r4 s; N! X8 ?/ }$ Z4 p
  11.     Append p for SMBus PEC
复制代码

) A1 r5 r# i' E6 y$ X) d$ O+ b0 R+ S7 L8 _4 {* @/ P
0 W: u, G1 e$ \

/ O5 \$ F- @: e( I& ~; D  J
4 J$ N: ~1 X) k5 |# \* C科普下标红的pxa_i2c-i2c 是i2c总线的名称,我猫盘中的群晖没有这个名称的总线。所以报上面的错误,下面讲如何解决:3 l) r# ~, ]5 a3 h

  l* Q+ P% u! L9 n

' @$ J9 C* ]1 Q1 C$ X# }" d
/ z& Y/ q# i* v2 G# h4 M8 |

/ k9 [  l6 I4 I' ?' H群晖开ssh用root进入这个目录
. D" O1 V6 w6 q
  1. >cd  /sys/bus/i2c/devices
    : i* V' m/ o6 Y- s
  2. > ls " A* A, G/ U# _
  3. i2c-0  i2c-1
复制代码

, l4 C' J1 p- x# b/ J下面看到2个总线设备,我也不知道那个是控制LED灯的,尝试把脚本改成下面也是自己尝试看好用不,我的是0号总线控制灯。我设置1号总线也写入不了,下面的 0 即对应总线标识:i2c-0, V- a( R1 V) I& z- ^0 c7 J: H! G
0 c" n3 c) Z+ z3 ~% P3 {; }

4 N! h" d, y4 ~3 v4 R# [6 }3 x8 X, s" r6 X6 u3 H
  1. i2cset -y -f 0 0x45 0x01 0x01          #开启LED控制器3 d4 N5 ]7 {/ G, Z+ b1 t
  2. i2cset -y -f 0 0x45 0x31 0x03          #最大电流不呼吸
    . C0 K! X6 N; D& G, Y
  3. i2cset -y -f 0 0x45 0x32 0x03                #最大电流不呼吸# ]9 r! i: m. V
  4. i2cset -y -f 0 0x45 0x33 0x03                #最大电流不呼吸4 s% F3 D, g, e! I
  5. i2cset -y -f 0 0x45 0x30 0x07         
      H8 Q. ]& b5 H' A7 ?% _& u
  6. while :
    : N7 S- s8 x0 u$ U; @  w6 l) {% b
  7. do- ^$ e& u! o8 g* j3 P
  8. ping -W 1 -c 1 www.baidu.com > /dev/null 2>&1  t/ P) ^9 k. j/ ^
  9. if [ $? -eq 0 ];then  ( v! d- d0 k+ e; Y; b
  10. i2cset -y -f 0 0x45 0x34 0                 #R& l! l# H# Y' v7 z1 c
  11. i2cset -y -f 0 0x45 0x35 255                 #G$ a) B/ y3 q) S8 B) j% Y7 C
  12. i2cset -y -f 0 0x45 0x36 0                 #B
    2 G* @+ a2 F5 _3 Z
  13. else
    2 k+ F3 ]" P! }+ F- S* a
  14. i2cset -y -f 0 0x45 0x34 255                #R
    ' `% Y) U, D  D& h  e
  15. i2cset -y -f 0 0x45 0x35 0                 #G) i2 Z, F7 l, p
  16. i2cset -y -f 0 0x45 0x36 0                 #B
    ; A) R* R" {8 Y
  17. fi, V1 k- T& {+ [
  18. sleep 10s
    & k" ~. s: J7 {7 w/ j2 W( N
  19. done
复制代码
& K1 }/ j& \: U& y; Z$ |/ L

  ^6 A" P5 `! l! a3 [, {

评分

参与人数 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
4 x* }5 P; @/ I我还花2渣金看看, 和之前不是一样的吗

, {1 T& P9 }& S& u* J6 O说明了下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-6-8 09:31 , Processed in 0.062203 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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