OpenWrt-DreamBox开发中心

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
openwrt-RG100A-DB120 按钮 LED完美 网络收音机 网络摄像头 dreambox版: dreambox-RG100A_DB120.bin openwrt标准版: openwrt-RG100A_DB120-squashfs.bin 2012-2-5 添加按键脚本,控制mplayer换台 DB120在终端下运行mplayer,按wlan 0-1秒为 暂停,2-5秒为下一首或换台,按住6秒以上关闭mplayer DB120 WLAN键控制mplayer示例 /etc/config/system添加如下内容 config 'button' option 'button' 'BTN_1' option 'action' 'released' option 'handler' 'echo pause > /tmp/fifofile' option 'min' '0' option 'max' '1' config 'button' option 'button' 'BTN_1' option 'action' 'released' option 'handler' 'echo pt_step 1 > /tmp/fifofile' option 'min' '2' option 'max' '5' config 'button' option 'button' 'BTN_1' option 'action' 'released' option 'handler' 'echo quit > /tmp/fifofile' option 'min' '6' option 'max' '10' RG100A请修改/etc/config/system,把BTN_1改成BTN_2或BTN_3 BTN_0 RESET(DB120,RG100A均有效) BTN_1 DB120:WLAN BTN_2 WPS(DB120,RG100A均有效) BTN_3 RG100A:WLAN /usr/share/mplayer/playlist为网络电台地址或播放列表 好像比难懂,不清楚的请移步openwrt wiki 下周开始上班,不再折腾了,更新到此为止 http://115.com/file/dp2xpvc4# openwrt-RG100A_DB120-squashfs.bin 基于官方 OpenWrt Backfire 10.03.1 编译而成 刷了很多固件不是无线客户端不能用,就是N2N不能用,要不就是摄像头有问题 总是不能完美,只能自己动手,丰衣足食,所以集成的软件都是我自己要用的, 另外塞了个别人编译好的mplayer在/usr/bin 下面,因为mplayer有近3M,所以固件有点大 power和internet为双色LED,触发用time, 调整红色和绿色分量,可以显示绿色,橙色,红色等, 美中不足的是红灯太亮了,绿灯太弱,有条件的换下LED限流电阻 3个按钮定义 BTN_0 RESET 按住8秒后放开,系统复位 BTN_1 WLAN 无线开关 BTN_2 WPS umount 以后不要手贱,随便捅菊花了,你懂的 基本完美了,发挥你的想象吧 网盘附件 DB120-WG-squashfs.binhttp://115.com/file/be4t921t# 集成软件列表: 软件包名称 版本 alsa-lib 1.0.24.1-1 alsa-utils 1.0.24.2-1 base-files 43.32-r29685 block-mount 0.1.0-2.2 bridge 1.4-1 busybox 1.15.3-3.4 bzip2 1.0.6-1 crda 1.1.1-1 dnsmasq 2.55-6.1 dropbear 0.53.1-5 firewall 2-34.8 gpioctl 1.0-1 hd-idle 1.03-1 hotplug2 1.0-beta-3 iptables 1.4.6-3.1 iptables-mod-conntrack 1.4.6-3.1 iptables-mod-conntrack-extra 1.4.6-3.1 iptables-mod-filter 1.4.6-3.1 iptables-mod-imq 1.4.6-3.1 iptables-mod-ipopt 1.4.6-3.1 iptables-mod-nat 1.4.6-3.1 iw 0.9.22-2 kernel 2.6.32.27-1 kmod-b43 2.6.32.27+2011-12-01-1 kmod-button-hotplug 2.6.32.27-1 kmod-cfg80211 2.6.32.27+2011-12-01-1 kmod-crc-ccitt 2.6.32.27-1 kmod-crypto-aes 2.6.32.27-1 kmod-crypto-arc4 2.6.32.27-1 kmod-crypto-core 2.6.32.27-1 kmod-fs-ext2 2.6.32.27-1 kmod-fs-ext3 2.6.32.27-1 kmod-fuse 2.6.32.27-1 kmod-i2c-core 2.6.32.27-1 kmod-input-core 2.6.32.27-1 kmod-input-gpio-buttons 2.6.32.27-1 kmod-input-polldev 2.6.32.27-1 kmod-ipt-conntrack 2.6.32.27-1 kmod-ipt-conntrack-extra 2.6.32.27-1 kmod-ipt-core 2.6.32.27-1 kmod-ipt-filter 2.6.32.27-1 kmod-ipt-imq 2.6.32.27-1 kmod-ipt-ipopt 2.6.32.27-1 kmod-ipt-nat 2.6.32.27-1 kmod-mac80211 2.6.32.27+2011-12-01-1 kmod-nls-cp437 2.6.32.27-1 kmod-nls-iso8859-1 2.6.32.27-1 kmod-nls-utf8 2.6.32.27-1 kmod-ppp 2.6.32.27-1 kmod-sched 2.6.32.27-1 kmod-scsi-core 2.6.32.27-1 kmod-sound-core 2.6.32.27-1 kmod-switch 2.6.32.27-4 kmod-textsearch 2.6.32.27-1 kmod-tun 2.6.32.27-1 kmod-usb-audio 2.6.32.27-1 kmod-usb-core 2.6.32.27-1 kmod-usb-ohci 2.6.32.27-1 kmod-usb-printer 2.6.32.27-1 kmod-usb-storage 2.6.32.27-1 kmod-usb-uhci 2.6.32.27-1 kmod-usb2 2.6.32.27-1 kmod-video-core 2.6.32.27-1 kmod-video-uvc 2.6.32.27-1 kmod-zd1211rw 2.6.32.27+2011-12-01-1 lame-lib 398-2-3 libao 1.1.0-1 libc 0.9.30.1-43.32 libevent 1.4.14b-1 libfaad2 2.7-1 libffmpeg 0.5.4-2 libfuse 2.8.3-1 libgcc 4.3.3+cs-43.32 libgsm 1.0.13-1 libiconv 5 libiconv-full 1.11.1-1 libid3tag 0.15.1b-3 libip4tc 1.4.6-3.1 libiwinfo 18 libiwinfo-lua 18 libjpeg 6b-1 libltdl 2.4-1 liblua 5.1.4-7 liblzo 2.04-1 libmad 0.15.1b-3 libncurses 5.7-2 libnl-tiny 0.1-1 libogg 1.1.4-2 libopenssl 0.9.8s-1 libpthread 0.9.30.1-43.32 librrd1 1.0.50-1 librt 0.9.30.1-43.32 libsamplerate 0.1.7-1 libsndfile 1.0.21-1 libuci 12012009.7-4 libuci-lua 12012009.7-4 libusb-1.0 1.0.8-1 libv4l 0.6.1-1 libvorbis 1.2.3-1 libvorbisidec 1.0.2+svn14261-1 libxtables 1.4.6-3.1 lua 5.1.4-7 luci 0.10.0-1 luci-app-firewall 0.10.0-1 luci-app-hd-idle 0.10.0-1 luci-app-ntpc 0.10.0-1 luci-app-qos 0.10.0-1 luci-app-samba 0.10.0-1 luci-app-voice-core 0.10.0-1 luci-i18n-chinese 0.10.0-1 luci-i18n-english 0.10.0-1 luci-lib-core 0.10.0-1 luci-lib-ipkg 0.10.0-1 luci-lib-lmo 0.10.0-1 luci-lib-lucid 0.10.0-1 luci-lib-lucid-http 0.10.0-1 luci-lib-nixio 0.10.0-1 luci-lib-px5g 0.10.0-1 luci-lib-sys 0.10.0-1 luci-lib-web 0.10.0-1 luci-mod-admin-core 0.10.0-1 luci-mod-admin-full 0.10.0-1 luci-proto-core 0.10.0-1 luci-proto-ppp 0.10.0-1 luci-sgi-cgi 0.10.0-1 luci-theme-base 0.10.0-1 luci-theme-openwrt 0.10.0-1 mjpg-streamer r136-1 motion 3.2.11.1-1 mtd 13 mutt 1.5.21-1 n2n 3875-1 ntfs-3g 2011.4.12-1-fuseext ntpclient 2007_365-4 openssl-util 0.9.8s-1 opkg 576-2 qos-scripts 1.2.1-3.2 resolveip 1 samba3 3.0.24-8 screen 4.0.3-2 sox 14.0.1-3 ssmtp 2.64-3 tc 2.6.29-1-2 uci 12012009.7-4 udevtrigger 106-1 uhttpd 28 usbutils 003-1 wireless-tools 29-4 wpad-mini 20111103-2 zlib 1.2.3-5
基于官方 OpenWrt Backfire 10.03.1 编译而成 删除了按钮脚本,要自定义功能自己写脚本放在/etc/hotplud.d/button/ 下面 openwrt-RG100A_DB120-squashfs-cfe.bin http://115.com/file/c2bjz3px# 我的DB120-WG,双UBS,看着那么多的LED无法使用,于是泡论坛,看教程, 经过无数次的make, make V=99,终于修正了DB120的所有LED驱动,共9个LED, power和internet为双色LED,触发用time, 调整红色和绿色分量,可以显示绿色,橙色,红色等, 美中不足的是红灯太亮了,绿灯太弱,有条件的换下LED限流电阻 2012-2-1 增加了3个按钮 BTN_0 RESET 按住8秒后放开,系统复位 BTN_1 WLAN 无线开关 BTN_2 WPS umount 以后不要手贱,随便捅菊花了,结果你懂的 基本完美了,发挥你的想象吧 集成的软件都是我自己要用的,如motion做监控,图片保存在移动硬盘上, 当画面有变化时 mutt和ssmtp 发送邮件到139邮箱,有实时短信提醒. 通过N2N,配合视频监控软件可以随时随地查看家里状况 看到有个帖子里面用用Mplayer做网络收音机,又塞了个mplayer进去 集成USB声卡驱动,基本影音全能了 集成软件包名称 版本 alsa-lib 1.0.24.1-1 alsa-utils 1.0.24.2-1 base-files 43.32-r29685 block-mount 0.1.0-2.2 bridge 1.4-1 busybox 1.15.3-3.4 bzip2 1.0.6-1 crda 1.1.1-1 dnsmasq 2.55-6.1 dropbear 0.53.1-5 firewall 2-34.8 gpioctl 1.0-1 hd-idle 1.03-1 hotplug2 1.0-beta-3 iptables 1.4.6-3.1 iptables-mod-conntrack 1.4.6-3.1 iptables-mod-conntrack-extra 1.4.6-3.1 iptables-mod-filter 1.4.6-3.1 iptables-mod-imq 1.4.6-3.1 iptables-mod-ipopt 1.4.6-3.1 iptables-mod-nat 1.4.6-3.1 iw 0.9.22-2 kernel 2.6.32.27-1 kmod-b43 2.6.32.27+2011-12-01-1 kmod-button-hotplug 2.6.32.27-1 kmod-cfg80211 2.6.32.27+2011-12-01-1 kmod-crc-ccitt 2.6.32.27-1 kmod-crypto-aes 2.6.32.27-1 kmod-crypto-arc4 2.6.32.27-1 kmod-crypto-core 2.6.32.27-1 kmod-fs-ext2 2.6.32.27-1 kmod-fs-ext3 2.6.32.27-1 kmod-fuse 2.6.32.27-1 kmod-i2c-core 2.6.32.27-1 kmod-input-core 2.6.32.27-1 kmod-input-gpio-buttons 2.6.32.27-1 kmod-input-polldev 2.6.32.27-1 kmod-ipt-conntrack 2.6.32.27-1 kmod-ipt-conntrack-extra 2.6.32.27-1 kmod-ipt-core 2.6.32.27-1 kmod-ipt-filter 2.6.32.27-1 kmod-ipt-imq 2.6.32.27-1 kmod-ipt-ipopt 2.6.32.27-1 kmod-ipt-nat 2.6.32.27-1 kmod-mac80211 2.6.32.27+2011-12-01-1 kmod-nls-cp437 2.6.32.27-1 kmod-nls-iso8859-1 2.6.32.27-1 kmod-nls-utf8 2.6.32.27-1 kmod-ppp 2.6.32.27-1 kmod-sched 2.6.32.27-1 kmod-scsi-core 2.6.32.27-1 kmod-sound-core 2.6.32.27-1 kmod-switch 2.6.32.27-4 kmod-textsearch 2.6.32.27-1 kmod-tun 2.6.32.27-1 kmod-usb-audio 2.6.32.27-1 kmod-usb-core 2.6.32.27-1 kmod-usb-ohci 2.6.32.27-1 kmod-usb-printer 2.6.32.27-1 kmod-usb-storage 2.6.32.27-1 kmod-usb-uhci 2.6.32.27-1 kmod-usb2 2.6.32.27-1 kmod-video-core 2.6.32.27-1 kmod-video-uvc 2.6.32.27-1 kmod-zd1211rw 2.6.32.27+2011-12-01-1 lame-lib 398-2-3 libao 1.1.0-1 libc 0.9.30.1-43.32 libevent 1.4.14b-1 libfaad2 2.7-1 libffmpeg 0.5.4-2 libfuse 2.8.3-1 libgcc 4.3.3+cs-43.32 libgsm 1.0.13-1 libiconv 5 libiconv-full 1.11.1-1 libid3tag 0.15.1b-3 libip4tc 1.4.6-3.1 libiwinfo 18 libiwinfo-lua 18 libjpeg 6b-1 libltdl 2.4-1 liblua 5.1.4-7 liblzo 2.04-1 libmad 0.15.1b-3 libncurses 5.7-2 libnl-tiny 0.1-1 libogg 1.1.4-2 libopenssl 0.9.8s-1 libpthread 0.9.30.1-43.32 librrd1 1.0.50-1 librt 0.9.30.1-43.32 libsamplerate 0.1.7-1 libsndfile 1.0.21-1 libuci 12012009.7-4 libuci-lua 12012009.7-4 libusb-1.0 1.0.8-1 libv4l 0.6.1-1 libvorbis 1.2.3-1 libvorbisidec 1.0.2+svn14261-1 libxtables 1.4.6-3.1 lua 5.1.4-7 luci 0.10.0-1 luci-app-firewall 0.10.0-1 luci-app-hd-idle 0.10.0-1 luci-app-ntpc 0.10.0-1 luci-app-qos 0.10.0-1 luci-app-samba 0.10.0-1 luci-app-voice-core 0.10.0-1 luci-i18n-chinese 0.10.0-1 luci-i18n-english 0.10.0-1 luci-lib-core 0.10.0-1 luci-lib-ipkg 0.10.0-1 luci-lib-lmo 0.10.0-1 luci-lib-lucid 0.10.0-1 luci-lib-lucid-http 0.10.0-1 luci-lib-nixio 0.10.0-1 luci-lib-px5g 0.10.0-1 luci-lib-sys 0.10.0-1 luci-lib-web 0.10.0-1 luci-mod-admin-core 0.10.0-1 luci-mod-admin-full 0.10.0-1 luci-proto-core 0.10.0-1 luci-proto-ppp 0.10.0-1 luci-sgi-cgi 0.10.0-1 luci-theme-base 0.10.0-1 luci-theme-openwrt 0.10.0-1 mjpg-streamer r136-1 motion 3.2.11.1-1 mtd 13 mutt 1.5.21-1 n2n 3875-1 ntfs-3g 2011.4.12-1-fuseext ntpclient 2007_365-4 openssl-util 0.9.8s-1 opkg 576-2 qos-scripts 1.2.1-3.2 resolveip 1 samba3 3.0.24-8 screen 4.0.3-2 sox 14.0.1-3 ssmtp 2.64-3 tc 2.6.29-1-2 uci 12012009.7-4 udevtrigger 106-1 uhttpd 28 usbutils 003-1 wireless-tools 29-4 wpad-mini 20111103-2 zlib 1.2.3-5
最新的 BB1407 openwrt-RG100A_DB120-squashfs-cfe.bin 固件 固件集成了,usb u盘 USB 摄像头uvc se2net:wifi串口 这是固件文件。主要编这个固件是做摄像头监控,集成motion 进行监控拍照保存到挂载的硬盘,挂载位置为/mnt/sda1/post motion。conf 复制到/etc/ 另外可以及在自己安装已个百度云盘同步。 我的是自动监控拍照然后上传置百度云盘上。我装的是Perl精简 测试很成功。值得拥有。我把文件都集成到已个包里自己安装。百度云盘自己安装 Python版已完成,可以支持4G以上的文件,需要的去网盘下载,同时Perl精简版也已完成,部分系统同样不能支持大文件,那个要看语言环境是否支持大文件。 ---------------------------------------------------------------------------------------------------------------------------- 上个月发布了个bash版的同步脚本,虽能与百度网盘之间实现上传、下载和同步,但性能不是很好,稳定性也不是那么完美,此后就想着如何能解决这两个问题,首先想到的是用C语言来写下,但是C语言写的要针对特定的设备进行编译,比较麻烦,后面就想到用Perl或Python来写,百度了一番都说Perl语言运行速度快,我在Open-WRT上看了下Perl的包也挺多,然后就写了个测试脚本,就是压缩同步数据的那段,然后在CentOS上运行测试了下,发现速度比bash快了几乎上百倍,于是毅然决定用Perl写了。Perl是一门语言,很多工作都是内部命令完成,不需要调用外部命令,性能有很大的提高,同时也降低了对内存的占用,我的路由是wndr3700,在同步文件时内存占用在8M上下,cpu占用在20%上下,比bash版降低很多,特别是cpu占用低很多,13000余个文件,做一次同步检查只需要不到3分钟(还是没有开启缓存),原来bash版跑了40分钟还没见完成,没有耐心等待就强制中止了,具体好不好用自己感受吧。发布前我分别在Open-wrt 12.09和CentOS6.5上测试上传和下载了几个G的文件没有任何问题,可稳定运行。下面就开始说主题吧。 首先说下注意事项,主要是针对之前用过bash版的童鞋 1、Perl版的配置文件与bash版的有区别,新增加了一些配置项,也有减少的,也有些配置项改了更合适的名称,请按照配置文件里面的说明对应的设置,并把原来配置文件最下面的device_code,refresh_token,access_token,expires_in,refresh_date这5个参数项复制到新的配置文件中; 2、为了提高性能,Perl版的同步信息数据采用的是二进制存储,不兼容bash版的数据,但我提供了一个转换的命令,设置好配置文件后运行如下命令: syncy.pl convert 运行以上命令后就转换至新的数据格式,但是即使转换了,可能部分有中文名的文件同步过了,系统还会认为没有同步,因为Perl语言支持的UTF8中文需要开启标志位,这就导致在获取路径名的md5码与bash版的不同,要是数据量不是很大,重新上传或下载不需要很长时间,就让它重新上传或下载次,要是数据量很大,基本还都是下载的,可以先把同步类型设置为0或1,待同步完成之后再改成你想要的同步方式(此种方式能快?俳⒁淹降奈募畔ⅲ? 3、如同步类型为4-sync,且更改了远程同步目录(包括更换绑定用户),请删除本地根目录下的“.syncy.info.db”文件,否则在下次同步时将会删除本地的所有文件(系统会认为远程文件不需要被用户删除,也会删除本地的相应文件)。 下面就说下具体的安排配置方法: 1、检查系统环境。要想这个同步脚本正常运行,系统必须安装libcurl,openssl,perl,以及perl包,在openwrt上所需的perl包名称如下: perl perlbase-essential perlbase-digest perlbase-base perlbase-utf8 perlbase-encode perlbase-xsloader perlbase-bytes perl-www-curl perlbase-file perlbase-dynaloader perlbase-config perlbase-autoloader perl-uri perlbase-text perlbase-unicore 安装以上包需要3M多的空闲空间,如空间空间不足,只有通过u盘来扩展了。如是其它系统,请对应的安装相应的包,在cpan.org网站上可通过perlbase-后面的名称来搜索相应的包并下载源码,各个包还可能依赖别的包,如运行报错,提示缺少包,请根据提示安装相应的包。 2、从我的网盘里下载Perl版程序,下载地址:http://syncyhome.duapp.com/index.php/download/(这个是我部署的一个博客,网盘分享有时无缘无故的被禁了),里面有个使用协议,请仔细阅读下哦。有2个文件是本程序必须的,分别是:syncy.pl和syncy.conf,第一个是同步程序,第二个是配置文件。首先把syncy.pl上传到路由上,建议放到/usr/bin目录里(当然也可放在其他地方),并syncy.pl可执行权限(chmod 755 /usr/bin/syncy.pl);然后用editplus或ultraedit 等工具来编辑syncy.conf文件,按照里面的说明来修改相应字段值,修改完成后,把syncy.conf传到路由上的/etc/config目录下,当然也可以放到别的目录里,如果放在别的目录里请修改syncy.pl第29行的$config_file变量值。 (相比较bash版,减少了个unicodetable.txt文件,Perl语言内部有转码的方法,不再需要此文件了,bash版是因为在openwrt上没有转码的命令才加上这个对照表的。) (已绑定的用户可跳过3、4步) 3、下面开始把SyncY与百度帐号绑定了,先运行命令root@Router:/bin# /usr/bin/syncy.pl,系统会提示打开百度授权网址并输入用户码; 用浏览器打开网址:https://openapi.baidu.com/device,如果没有?锹迹胂鹊锹及俣龋缓螅突岢鱿秩媚闶淙肷璞嘎氲囊趁妫焐痔逑允镜纳璞嘎耄? 输入完成设备码后,点“继续”按钮; 之后进入授权确认的页面,右边的多选框都都选上哦,然后点“授权”按钮完成授权,完成授权后,浏览器显示授权成功的信息; 至此授权完成,我们还需要回来路由器上,按回车键继续完成设备绑定工作。 绑定完设备后就会显示“Get device token success"的信息,并开始同步操作了,如果已经设置了同步文件夹的话。 4、绑定完设备后,先来测试下你的设备上是否能支持中文,执行命令(perl版几乎可以跳过此步): root@Router:/bin# /usr/bin/syncy.pltestchinese /tmp 命令执行完后,系统会在/tmp目录下创建个“中文转码测试”的文件,在终端中显示的会是乱码,不用担心,这不是表示系统不支持中文,你可以通过ftp或网上邻居来看看是不是能正常显示。 5、设置了配置文件中的syncperiod和syncinterval后,同步程序启动后就会一直运行,但每次路由启动后需要手动启动,或通过定时任务启动,下面介绍下在openwrt上如何设置自动启动,其它系统不太了解,请看完此段后百度下具体的设置方法。如果实在没别的办法来实现自动运行,可以设置个后台运行的定时任务,程序会检查是否已经有实例正在运行,有的话后启动的进程会自动退出。 Openwrt实现方法是在/etc/init.d目录下创建个syncy文件并授予可执行权限,文件内容如下: #!/bin/sh /etc/rc.common # Copyright (C) 2006-2011 OpenWrt.org START=99 STOP=10 start() { syncy.pl & #如果不在/usr/bin目录下,也不在其他PATH搜索路径中请写全路径 } stop() { killallsyncy.pl } 保存后运行命令 /etc/init.d/syncy enable restart 这样就可以自动启动了,但现在还没有运行,可运行命令/etc/init.d/syncy start 来启动程序,也可以通过命令/etc/init.d/syncy stop来停止程序,有管理界面的也可以在启动项里来启动或停止同步程序。 最后,希望大家在使用中要是发现了程序哪有什么bug,能通过邮件或空间留言反馈给我,以便及时更正,编写此程序也是出于爱好,Perl语言也是我写此程序时才学习的,难免有错误发生。我是个Perl语言的初学者,有些算法可能不是最优的,如觉得有更好的方法能让程序运行的更快速稳定,也希望各位读者不吝赐教,继续优化程序,造福广大有需要的同学。 转载请注明来源,并保留程序及使用协议的完整性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值