Camera: LSC 3215672 - themactep/thingino-firmware GitHub Wiki
Hardware
- SoC: Ingenic T23N
- Image Sensor: SC2331
- Wi-Fi Module: ATBM9012BX
- Flash Chip: NOR 8MB
- Power: 5V USB-C
Backup the original firmware
Partition an sdcard and format the 1st partition as VFAT
Disk /dev/mmcblk0: 29,74 GiB, 31914983424 bytes, 62333952 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x27b0cfe4
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 8192 98045 89854 43,9M c W95 FAT32 (LBA)
Create a file named update.nor.sh on the sdcard with content:
#!/bin/sh
/bin/dd if=/dev/mtd8 of=/mnt/backup-firmware.bin
unmount the sdcard, place it in the camera and let it boot, once booted, power it off, eject the sdcard.
The camera should have created a file named backup-firmware.bin on the sdcard now, this is your backup, save it.
Backup the original firmware with u-boot
Open the case of the camera: There are 4 clips between the black face and the white body located N,E,S and W, you can force it open with an old credit card or a prying tool.
Solder 3 wires to the test pads marked GND, RX and TX and connect them to an USB-serial.
Power on the camera and quickly press a key on your serial emulator to interrupt u-boot:
U-Boot SPL 2013.07-gfc0af3c (Oct 28 2024 - 18:27:53)
Board info: T23N
apll_freq = 1188000000
mpll_freq = 1200000000
sdram init start
DDR clk rate 600000000
DDR_PAR of eFuse: 00000000 00000000
sdram init finished
image entry point: 0x80100000
U-Boot 2013.07-gfc0af3c (Oct 28 2024 - 18:27:53)
Board: ISVP (Ingenic XBurst T23 SoC)
DRAM: 64 MiB
Top of RAM usable for U-Boot at: 84000000
Reserving 441k for U-Boot at: 83f90000
Reserving 32784k for malloc() at: 81f8c000
Reserving 32 Bytes for Board Info at: 81f8bfe0
Reserving 124 Bytes for Global Data at: 81f8bf64
Reserving 128k for boot params() at: 81f6bf64
Stack Pointer at: 81f6bf48
Now running in RAM - U-Boot at: 83f90000
MMC: msc: 0
the manufacturer 20
SF: Detected XM25QH64C
In: serial
Out: serial
Err: serial
Net: ====>PHY not found!Jz4775-9161
Hit any key to stop autoboot: 0
isvp_t23#
put an sdcard in the camera and type the following commands 1 at a time:
watchdog 0;
setenv baseaddr 0x82000000;
mmc dev 0;
mmc erase 0x10 0x8000;
setenv flashsize 0x800000;
mw.b ${baseaddr} ff ${flashsize};
sf probe 0;
sf read ${baseaddr} 0x0 ${flashsize};
mmc write ${baseaddr} 0x10 0x8000
eject the sdcard and dump it's firmware content on your pc:
dd bs=512 skip=16 count=16384 if=/dev/mmcblk0 of=fulldump-action-2ndcam.bin
Flash Thingino with sdcard
Download thingino-lsc_3215672_t23n_sc2331_atbm6012bx.bin and rename it as autoupdate-full.bin on the sdcard.
Create a file named update.nor.sh on the sdcard with the following content:
#!/bin/sh
/sbin/flashcp /mnt/autoupdate-full.bin /dev/mtd8
/sbin/reboot
Put the sdcard in the camera and let it boot 2 times to completely flash the camera
Flash Thingino with u-boot
Download thingino-lsc_3215672_t23n_sc2331_atbm6012bx.bin and place it on the sdcard
Connect an USB-serial to the camera and interupt u-boot see: backup with u-boot
At the u-boot prompt, run the following commands one at a time:
watchdog 0
mw.b 0x82000000 0xff 0x800000
fatload mmc 0 0x82000000 thingino-lsc_3215672_t23n_sc2331_atbm6012bx.bin
sf probe 0
sf erase 0x0 0x800000
sf write 0x82000000 0x0 0x800000
reboot