ITB-100HD v2.2/2.1FW 12Mbps adjustable bitrate mod + fix & MPH versions

chai

New Member
Joined
Jan 1, 2014
Messages
16
Reaction score
11
Country
Australia
I have ported the 12Mbps mod and my file deletion script fix to the latest ITB100HD 2.2 firmware. This is NOT for the SP model (SP version by dashingthrusnow here).

This version allows the bitrate to be customized by creating a bitrate.txt file within the Setup folder, and typing the desired bitrate into the file eg: 8000000 for 8Mbps, 10000000 for 10Mbps etc. You don't need to create this file if you just want to use the default 12Mbps.

The highest bitrate possible before the camera stops booting is 16000000. This requires changing the freespace check to 180mb (post 15). Note: the camera gets very hot running at this setting, I would not recommend it. I normally run it at 14Mbps.

My script builds an index.txt file within the Setup folder as the video files are written, and uses that file to find and delete the oldest file(s), when the free disk space falls below 150mb, fixing the beeping issue that arises when the SD card becomes full. Also, my script will delete the oldest video files regardless of the event, parking and normal video recording ratios set by the PC Player software.

Installation instructions:

If your camera is already running your desired firmware version (2.2 or 2.1) skip to step 5.

1) Download either v2.2 firmware from here:
http://ipassmall.co.kr/ipassblack/down_proc.asp?filename=itb100hdfw(ver.2.2).zip

Or v2.1 firmware from here:
http://dashcamtalk.com/cams/itb-100hd/Itronics ITB-100HD Firmware v2.1.zip

2) Format the SD card, and extract the itb100hdfw.bin file onto the SD card and insert it into the device.

3) Ensure you have a STABLE power source (e.g. make sure the car is running) before plugging the cable into the CAMERA.

4) Wait until the normal camera startup chime sounds ( ~30sec after the extended beeping during the flashing process) and power down the device.

5) Download all 3 parts of the appropriate attached files for your firmware version (2.1, 2.2, 2.1MPH or 2.2MPH (post 15) - Using yakhack's mod), and extract the contents into one folder.

6) Windows: Run the combiner-win.bat file to combine the files.
Mac/Linux: Run the combiner.sh file to combine the files.

7) Repeat steps 2, 3 and 4.

8) Check that the camera is recording properly and that an index.txt file now exists under the Setup folder. Your device is now running the 12Mbps mod.

9) To use the latest script version, extract the itb100hdfw.bin from the update_script.zip file (or the 180mb_spacecheck.zip file in post 15 if you want to use that) to the SD card and repeat steps 3 and 4. There will now always be a safe.txt file under the Setup folder.

Changelog:
5/2/14: Moved index.txt to Setup folder.
Performed minor optimizations to deletion script.
28/2/14: Rewrote shutdown recovery portions of the script - now there is less chance for a file to not be added to the index if the power is removed just as a video file is being created. There will always be a safe.txt file in the setup folder now (to hold the video name if the script doesn't process it in time before shutdown).
 

Attachments

  • 2.1_12Mbps_pt1.zip
    800.4 KB · Views: 8
  • 2.1_12Mbps_pt2.zip
    800.3 KB · Views: 7
  • 2.1_12Mbps_pt3.zip
    501.3 KB · Views: 8
  • 2.2_12Mbps_pt1.zip
    800.4 KB · Views: 61
  • 2.2_12Mbps_pt2.zip
    800.3 KB · Views: 60
  • 2.2_12Mbps_pt3.zip
    502.2 KB · Views: 57
  • 2.1MPH_12Mbps_pt1.zip
    800.4 KB · Views: 6
  • 2.1MPH_12Mbps_pt2.zip
    800.4 KB · Views: 6
  • 2.1MPH_12Mbps_pt3.zip
    500 KB · Views: 6
  • update_script.zip
    1.4 KB · Views: 45
Last edited by a moderator:
I just upgraded to 2.2 12mbps. Any plans to make a mph version as well? Thanks for your firmware modifications!
 
Thank you.

BTW I've got the brick by moding fimware to use the cron. Something went wrong with compressing of firmware :rolleyes: finally I can by my me SP without any doubts :mad:
 
I just upgraded to 2.2 12mbps. Any plans to make a mph version as well? Thanks for your firmware modifications!
You can try kindly asking yakhack to port his MPH mod to FW 2.2, if he does I can combine it with this mod.

Thank you.

BTW I've got the brick by moding fimware to use the cron. Something went wrong with compressing of firmware :rolleyes: finally I can by my me SP without any doubts :mad:
Ouch, does it not even accept the stock firmware now? Modding the kernel or root filesystem can be risky. At least this mod leaves the firmware flashing parts intact if something goes wrong. dashingthrusnow posted his dmesg log in this post: http://dashcamtalk.com/forum/threads/itb-100hd-12-mbps-bitrate-mod.1538/page-2#post-15953
 
Last edited by a moderator:
You can try kindly asking yakhack to port his MPH mod to FW 2.2, if he does I can combine it with this mod.


Ouch, does it not even accept the stock firmware now? Modding the kernel or root filesystem can be risky. At least this mod leaves the firmware flashing parts intact if something goes wrong. dashingthrusnow posted his dmesg log in this post: http://dashcamtalk.com/forum/threads/itb-100hd-12-mbps-bitrate-mod.1538/page-2#post-15953

No, it is dead. No sound at all and no chance to load any firmware. I've tried to get boot output from console using GPS serial/usb connector over "do it yourself cable" but i see only garbage in terminal. no way with my knowledge. I have no problem to make Linux/FreeBSD/Solaris image to boot, for example, over PXE from DCHP/TFTP server, but I'm noob in electronics assembly, and now in backing of custom firmware for terminalless devices too :)

Thank you for the link!

BTW, the cam has twp funny holes with the label "BOOT OPTION" and 3.3V voltage, you can see it left over corner

http://dashcamtalk.com/wp-content/uploads/2012/09/Itronics-ITB100-HD-Mic-Drilling-3.jpg
 
Last edited by a moderator:
Theoretically it can be possible to emulate that piece of <censored> with qemu.
 
No, it is dead. No sound at all and no chance to load any firmware. I've tried to get boot output from console using GPS serial/usb connector over "do it yourself cable" but i see only garbage in terminal. no way with my knowledge. I have no problem to make Linux/FreeBSD/Solaris image to boot, for example, over PXE from DCHP/TFTP server, but I'm noob in electronics assembly, and now in backing of custom firmware for terminalless devices too :)

Thank you for the link!

BTW, the cam has twp funny holes with the label "BOOT OPTION" and 3.3V voltage, you can see it left over corner

http://dashcamtalk.com/wp-content/uploads/2012/09/Itronics-ITB100-HD-Mic-Drilling-3.jpg

Well, the bootloader should still be intact, so there should be some kind of comprehensible output, maybe you can try testing different parity/flow control/stop bit settings. On that note, the itr_update.sh file found under /usr/local/etc/ in the cramfs shows that the /dev/mtd2 partition holds the kernel, while the /dev/mtd3 partition holds the cramfs. If you could access those partitions on the NAND, you could probably flash the relevant 2.2 firmware files onto them.

Also, I used the nanddump command to copy all the internal nand partitions off my camera before I did the 2.2 update, I have attached a copy of the bootloader taken from /dev/mtd0, maybe you can analyze it and see if there is another way to boot the camera/load firmware. Note: the nanddump command also produces and outputs some kind of checksum after every 2048 bytes, you may need to use a simple c program that I wrote to remove these (also included in archive).
 

Attachments

  • bootloader.zip
    102.9 KB · Views: 2
Well, the bootloader should still be intact, so there should be some kind of comprehensible output, maybe you can try testing different parity/flow control/stop bit settings. On that note, the itr_update.sh file found under /usr/local/etc/ in the cramfs shows that the /dev/mtd2 partition holds the kernel, while the /dev/mtd3 partition holds the cramfs. If you could access those partitions on the NAND, you could probably flash the relevant 2.2 firmware files onto them.

Also, I used the nanddump command to copy all the internal nand partitions off my camera before I did the 2.2 update, I have attached a copy of the bootloader taken from /dev/mtd0, maybe you can analyze it and see if there is another way to boot the camera/load firmware. Note: the nanddump command also produces and outputs some kind of checksum after every 2048 bytes, you may need to use a simple c program that I wrote to remove these (also included in archive).

Thank you for your time! I think the cam can boot from SD Card too, theoretically ;)

I've changed cramfsImage and broken /dev/mtd3 according to /usr/local/etc/itr_update.sh from cramfsImage_itronics_FHDBB:

nandwrite -p /dev/mtd2 /opt/uImage_itronics_FHDBB
nandwrite -p /dev/mtd3 /opt/cramfsImage_itronics_FHDBB

that is why the cam is not booting.

All Itronics cams based on DM3xx chips (dmesg) http://processors.wiki.ti.com/index.php/DaVinci_(ARM9)_PSP_Releases#DM36x

It is possible to boot from SD card (to rewrite /dev/mtd3 in my case) http://processors.wiki.ti.com/index...es_and_Performance_Guide#Boot_Modes_Supported

To make a bootable SD Card http://processors.wiki.ti.com/index.php/DM3xx_SD_card_boot_and_flashing_program

But reference board has switches to change the boot order and the patient only two holes with the label "BOOT OPTION". :confused:

To make sd card bootable we have kernel, cramfs and need u-boot loader (from mtd?). But how to use "BOOT OPTION" is question.


Sorry for my English.
 
Last edited:
Without disassembling my own camera and checking, I'm guessing that the top pin (closest to edge of the board) on the BOOT OPTION location is connected to ground. If you have access to a multimeter you can test this. If it is connected to ground, then you should be able to connect the two BOOT OPTION pins/holes together. I would try this with a 330ohm or higher resistor first, making sure the current flow through it doesn't exceed 10mA (if the only purpose of it is to select a different boot option). It would still be worthwhile to get the serial output working though, that way you should be able to see if BOOT OPTION actually does anything.
 
Last edited:
Hi, by default /design it is not connected to the ground... But if you take a mutlimeter and check that forgetting to switch power off, than you will have the ground as I have it now... Forget all that the cam is real brick now :confused: maybe one of resistors is not resistor anymore. Chai, thank you for your time, but if you like here is a pair of ideas why you can disassemble your and find out how to boot from the card:

1. You can test your custom firmware without to break a device.
2. p.1 helps you to change file name format compatible to eye-fi format (Wi-fi that baby)
2.1 To let Player working we can change filesystem of sd card to ext2 or other POSIX one, make sybolik links and mount over fuse in Windows
2.2 Or write simple program / script to rename file to Player conform format on inserting SD card without p 2.1
3.???
4. PROFIT

of course, you do not realy need to boot from sd card , but it will make your life easier.

My SP is arrived. Jet another future brick :)))))))))))))))
 
I have incorporated yakhack's 2.2 MPH version into this mod, the files are attached to this post. This can be flashed over an existing 2.2 12Mbps mod. I have also attached an updated 180mb spacecheck file, for those that use it.
 

Attachments

  • 2.2MPH_12Mbps_pt1.zip
    800.3 KB · Views: 38
  • 2.2MPH_12Mbps_pt2.zip
    800.3 KB · Views: 33
  • 2.2MPH_12Mbps_pt3.zip
    501.5 KB · Views: 34
  • 180mb_spacecheck.zip
    1.4 KB · Views: 36
Last edited:
I have just posted an updated version of the script, details are near the end of the first post and in the post above.
 
Hi, thanks for the mod. I upgrade my 100HD to 2.2 with the 12Mbps, but after driving awhile, it starts beeping as well complaining the card is full. Did I miss anything?
 
I've been having SD error card beeps as well. The camera seems to record during this time (because it's picked up by the microphone) but the video is frozen when playing back. I tried flashing to 2.2 stock and it still kept doing it. Not sure what could be causing this.
 
Hi, thanks for the mod. I upgrade my 100HD to 2.2 with the 12Mbps, but after driving awhile, it starts beeping as well complaining the card is full. Did I miss anything?

Hmm, what's weirder is when I look at the content in the card, the card is only half full. Capacity 31.48GB, Available 13.28GB.
 
Last edited:
Back
Top