接https://whycan.cn/t_1859.html,这段时间在忙其他事情,很久没更新,趁周末继续填坑。
本篇主要偏重软件。
1、备份系统
首先安全起见,先备份整个系统。
这里利用nfs接受固件。
#mount -t nfs -o nolock 192.168.1.198:/root/nfs /opt
#cd /opt
#cat /dev/mtd0 /dev/mtd1 /dev/mtd2 /dev/mtd3 /dev/mtd4 /dev/mtd5 > /tmp/T3_firmware_flash_8M.img
#cp /tmp/T3_firmware_flash_8M.img .
2、改造系统
为了方便开发,充分用尚维的固件,这里采用修改原系统的方式,不更改u-boot,不用担心变砖。
# cat /proc/mtd
dev: size erasesize name
mtd0: 00040000 00008000 "boot"
mtd1: 00480000 00008000 "appfs"
mtd2: 001b0000 00008000 "kernel"
mtd3: 00100000 00008000 "root"
mtd4: 00010000 00008000 "hwconfig"
mtd5: 00080000 00008000 "config"
单独备份应用程序部分。
cat /dev/mtd1 > /tmp/mtd_appfs.img
该分区采用squashfs文件系统。解压改造后重新压制,主要做了以下更改:
1. 取消了官方程序系统自启动;
2. 因手头sdk与官方固件不兼容,官方固件用的驱动为旧版本,更新为0925版sensor驱动及参数配置;
3. 开机自动开启telnet,刷入该固件后通过telnet访问即可,不需要再接串口,非常方便。
我修改好的系统见https://github.com/chengsrc/T30_SW_IPC/blob/master/system-images/appfs-cheng.xz.img。
重启,进入u-boot刷入appfs部分固件(重置刷入备份appfs固件步骤一致,刷入8M的完整固件需更改参数)。
mw.b 82000000 ff 480000
tftp 82000000 appfs-cheng.xz.img
sf probe 0
sf erase 40000 480000
sf write 82000000 40000 480000
reset
设备ip为192.168.1.195,重启后通过串口或telnet进入系统,以root登录,无密码。
3、年轻人的第一个T30程序
官方给的sample有点问题,暂调试了sample-Snap-Raw,花了不少时间找到问题所在,代码见我的github项目T30_SW_IPC,其中含有编译好的程序。会持续更新,欢迎star。
本程序用于官方固件也可以出图,不过无法读取sensor配置参数,但所出图效果没有太大区别。
图一为matlab写的白平衡参数调整工具;图二为调了白平衡之后的图;图三为还原色彩后出的图。目前只是粗调,有待进一步调整。
图像源raw文件在这里。
离线
简直太棒了!有了楼主这些改造尚维的T30 模组一点难度都没有了.
离线
等待SDK...
离线
感谢分享,楼主辛苦了,凌晨还在hack T30, 虽年轻也要早休息, 健康是1, 其他都是0
整打算找一个二维码方案, 正愁找不到合适的方案, 看来这个应该挺合适的,
我去看下尚维的有没有引出 UART/SPI/I2C/USB 等接口。
一不小心就快两点了,其实工作在白天就做完了;一顿整理和上传github花了不少时间。君正这板子功耗是真低,虽然没跑大程序,运行了这么久直接摸芯片只是温热。
离线
系统配置目录为/etc/conf.d/,该目录可读写。修改/etc/conf.d/jovision/network/interface.cfg中相应语句即可更改ip,重启生效。
ip=192.168.1.195
离线
楼主大神。。。我就知道官方的代码有点问题。。有了你的代码 我也可以继续玩了
离线
T30 真是一个好芯片,低功耗, SIP 64M/128M ddr, GMAC/Audio/Camera 资源真是感人.
离线
离线
大神们一起搞起来
离线