Firefly控制自带的Led灯
在前面的文章中,衣服自己洗提及为了打开自带的Led灯,而不得不安装golang的环境,后来在官网上发现了他们有开源python版本的库:pyFireflyP,开源地址为https://github.com/T-Firefly/pyFireflyP。
对于linux系统而言,很多都已经自带python了,而且安装也比golang容易的多。
从github上clone或者下载这个包,然后进入到目录下安装:
cd pyFireflyP
sudo python setup.py install
我的Firefly运行后会报错,显示FireflyP do not support <Rockchip (Device Tree)>! 应该是系统内核没有正确赋值,按照官方的说法,只需要修改setup.py文件,把 fplat=check_plat() 直接改成:fplat=’rk3288’,然后再次运行安装即可。
对于测试,运行 sudo python demo/gpio_test.py,就可以看到Firefly上的蓝灯和黄灯来回交替显示的效果了。
对于内核没有正确赋值的问题,估计我的板子是早期生产的,其信息并没有及时更新。至于现在是否已经更新不得而知。
当然,对于官网wiki上的另外一个设备写入的方法:
echo 1 >/sys/class/leds/firefly:blue:power/brightness //蓝灯亮
在最近的固件里并不能实现,早期的固件确实是有。这里衣服自己洗真心是要狠狠地吐槽一番,完全没有考虑到像我们这样的小白,以为所有的人都会自己编译固件。
上面提及的2种方法,虽然都是调用GPIO,但是是相互独立的,如果一起使用的话,可能会出现意想不到的后果。不过就目前来看,应该没有这个风险。