您尚未登录。

楼主 #1 2017-10-27 22:49:58

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

购买链接: https://s.click.taobao.com/s0JIBZw
相关链接1: 买个全志arm9 F1C100s 方案的唱戏机回来拆一拆
相关链接2: F1C100s 编译 XBOOT 详细过程

  1. 首先把 【先科唱戏机】的w25q32 flash吹下来,以备退休之后把机器组装起来跳跳广场舞。 好消息,原版固件已经读出来了: 原版固件下载

  2. 引出串口线,参考 http://linux-sunxi.org/MicroSD_Breakout

  3. 准备一片新的spi flash, 4M字节以上, 我用MX25L256(32M), 用烧录器把 【modify-SAST-M697-C100S-4MB-hack.img】文件烧录到 spi flash,  然后再焊接到唱戏机板子上。

  4. 上电,USB公对公线一头插入电脑, 一头插入唱戏机母座. VMWARE Ubuntu 挂载 usb烧录设备,
        执行下面的命令行:
        sudo sunxi-fel -p write 0x80000000 xboot-f1c100s.bin;sudo sunxi-fel exec 0x80000000

tf卡引脚定义, 根据http://linux-sunxi.org/MicroSD_Breakout 第2,5引脚是串口引脚:
tfcard-view.jpg


史上最牛X的spi flash烧录器(可以读写spi flash):
QQ20171027232043.jpg


新唐N32926烧录软件:
QQ20171027231834.png


执行sudo sunxi-fel -p write 0x80000000 xboot-f1c100s.bin;sudo sunxi-fel exec 0x80000000
把xboot下载到F1C100s 的 ddr:
QQ20171027231529.png


运行XBOOT:
QQ20171027231602.png


换刚烧好flash, 连接串口线的唱戏机
QQ20171027232116.jpg





离线

楼主 #2 2017-10-28 10:32:09

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

XBOOT新思路:

其实不拆flash烧录,在现有的技术方案下,有一个思路也是试一试的,估计可以用。

思路:
1,截取modify-xxxx-hack.bin的前16k,到一个新文件hack.bin
2,短路flash进入fel模式
3,执行sunxi-fel -p write 0 hack.bin; sunxi-fel exec 0





离线

楼主 #3 2017-10-28 10:40:26

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

modify-xxxx-hack.bin的前16k(0x4000)与原版固件差异比较:

QQ20171028103702.png

QQ20171028103743.png





离线

楼主 #4 2017-10-28 14:18:17

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

晕哥 说:

XBOOT新思路:

其实不拆flash烧录,在现有的技术方案下,有一个思路也是试一试的,估计可以用。

思路:
1,截取modify-xxxx-hack.bin的前16k,到一个新文件hack.bin
2,短路flash进入fel模式
3,执行sunxi-fel -p write 0 hack.bin; sunxi-fel exec 0

QQ20171028141858.png
实践证明, xboot大神的猜想是正确的,
只要中间断开重连一次usb就可以了.
这样无需拆焊 flash了





离线

楼主 #5 2017-10-28 16:39:44

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

只要中间断开重连一次usb就可以了.

荔枝派Q群有网友提醒我, sunxi-fel 有Windows版本,这样就不用重连了。
真是三人行必有我师傅,
放狗一搜居然真有 Windows版本...
朕孤陋寡闻了

Windows安装使用sunxi-fel步骤. 高手免入


目前版本可以运行这些指令

sudo sunxi-fel version;
sudo sunxi-fel sid;

sudo sunxi-fel hexdump 0 400
sudo sunxi-fel -p write 0 output/f1c100s.bin
sudo sunxi-fel hexdump 0 400
sudo sunxi-fel exec 0





离线

楼主 #6 2017-10-28 17:29:40

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

XBOOT最新想法 说:

如果没有spi-flash或者短路flash,应该这套方法就不行了,因为fex配置文件在flash里.
但只要有个可以能跑的原厂固件在里面,这个方法就是完全可行的,
进一步做个确认





离线

楼主 #7 2017-10-29 08:26:53

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

XBOOT 昨天晚上23点最新进展:

定时器驱动,中断驱动,调试完了





离线

楼主 #8 2017-10-29 08:34:12

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

如果使用原厂固件,短路flash 1,2 或 1,4 进入 fel状态,
输入 ./sunxi-fel  -p write 0 hack_16k.bin; ./sunxi-fel exec 0
只能进入唱戏机软件,
怪不得xboot要hack固件

进入唱戏机之后,如果usb公对公线还连着电脑,
电脑会出现一个u盘设备
只有一个文件

QQ20171029083619.png





离线

楼主 #9 2017-10-29 08:50:46

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

晕哥 说:
XBOOT最新想法 说:

如果没有spi-flash或者短路flash,应该这套方法就不行了,因为fex配置文件在flash里.
但只要有个可以能跑的原厂固件在里面,这个方法就是完全可行的,
进一步做个确认

验证结果:
如果一直短路flash, 或把flash取下
运行 ./sunxi-fel  -p write 0 hack_16k.bin; ./sunxi-fel exec 0
串口毛反应都没有





离线

楼主 #11 2017-10-29 20:18:15

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

dd if=modify-SAST-M697-C100S-4MB-hack.img of=hack_16k.bin bs=1 count=16k





离线

楼主 #13 2017-10-29 22:30:50

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

荔枝派Q群有网友提醒我, sunxi-fel 有Windows版本,这样就不用重连了。

实践证明,即使是Windows版本, 也要手动拔掉USB线,再重新插上.
QQ20171029223016.png





离线

楼主 #16 2017-11-28 11:57:37

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

水清沙白 说:

我按照短路flash的方法进行操作,但最后烧写完成后,没有顺利跳转到xboot,请问是哪里出问题了,串口如下图:
图贴不上来,我贴出串口的打印

DBG: init jtag OK
init dram , base        is 0x80000000
init dram , clk         is 156
init dram , access_mode is 1
init dram , cs_num      is 1
init dram , ddr8_remap  is 0
init dram , sdr_ddr     is 1
init dram , bwidth      is 16
init dram , col_width   is 10
init dram , row_width   is 13
init dram , bank_size   is 4
init dram , cas         is 3
init dram , size        is 0
dram init successed,size is 32
DBG: init heap OK, base address is 0x80000000, size is 0x00100000
DBG: load boot1 from spinor
DBG: init spinor OK
DBG: the size of BOOT1 is 71168
DBG: src_sum = 0x0x4dd22bba
DBG: sum = 0x0x4dd22bba
succeed in loading BOOT1
jump to BOOT1
DBG: boot1 starting!
DBG: init heap OK, base address is 0x80800000, size is 0x00100000
begin to init file system
DBG: init block device OK
DBG: init mini file system OK
DBG: mount c partition OK

貌似还是进入了 原厂固件。





离线

楼主 #18 2018-01-24 11:48:32

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

cheng880126 说:

晕哥,这个最后一个警告怎么理解啊。

sudo ./sunxi-fel -p write 0x80000000 xboot-f1c100s.bin;sudo ./sunxi-fel exec 0x80000000
Warning: no 'soc_sram_info' data for your SoC (id=1663)
100% [================================================]  4170 kB,  235.6 kB/s
Warning: no 'soc_sram_info' data for your SoC (id=1663)


烧录后的唱戏机,重新上电后,xboot就没有了呢~又回归到flash的fel模式中了。。。是这样的吗?

这个是当时sunxi-tools工具没有适配f1c100s的时候出的警告信息,
所以这是写到DRAM里面,重新开机当然就没有了。
不过最新的sunxi-tools已经可以烧录f1c100s的spi flash了,所以不存在这些问题了。





离线

楼主 #19 2018-02-01 20:37:32

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

xboot屏幕已经驱动OK





离线

楼主 #20 2018-02-02 13:55:46

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

经过xboot等一些大神确认唱戏机自带的LCD不是SYNC的RGB屏, 而是I80的MPU/MCU屏.
分析方法:反编译原厂固件、接逻辑分析仪。





离线

楼主 #21 2018-02-02 14:04:18

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

QQ20180202135717.jpg

QQ20180202135725.jpg

QQ20180202135818.png
确认是I8080接口


【冒泡】首都糟粕(83365642) 10:20:29
怎么确定这个偏移量就是01c0c0?
【传说】XBOOT(8192542) 10:21:12
肯定的,看过melis代码


QQ20180202135811.jpg
I80显示屏,分辨率是480X800是个竖屏

QQ20180202135858.png
QQ20180202135901.png


QQ20180202140341.png
就是要监控下,这个寄存器,曾经写过什么值





离线

楼主 #22 2018-02-02 14:59:08

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

QQ20180202145400.png
QQ20180202145349.jpg
QQ20180202145413.jpg
QQ20180202145416.jpg
QQ20180202145421.jpg
QQ20180202145424.jpg


网友忽忽通过转接板把 800*480 的SYNC LCD驱动起来了。





离线

楼主 #24 2018-02-02 20:36:39

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤

QQ20180202203207.jpeg

QQ20180202203540.jpeg

QQ20180202203326.jpg

收到热心网友 忽忽 给我寄来的板子,满满的细工活,太感动了!
可是发现我的板子上面没有39pin的座子,赶紧淘宝下单去。





离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn