Author Topic: Guide - Flashing custom firmwares to your Dingoo  (Read 125432 times)

omgmog (OP)

  • * Administrator
  • Doesn't sleep.
  • Posts: 790
    • omgmog.net
Guide - Flashing custom firmwares to your Dingoo
« on: November 08, 2009, 12:36:07 am »
Warning - Messing with flashing firmware on your Dingoo can possibly brick your Dingoo. Only attempt this if you're comfortable with this.

If you currently have the Dingux bootloader on your Dingoo, and you write your custom firmware using the Dingoo Firmware Flasher, you will have to reload the Dingux bootloader on to your Dingoo to be able to boot Dingux.



Introduction
Since the release of the Dingoo, there has been a desire for custom firmwares. Some people just aren't happy with the poorly translated menus, some people just want to enable custom themes and other fancy tricks. With the release of the newest 1.2 firmware for the Dingoo there was some debate about what works and what doesn't with respect to modifying the firmware, and methods for installing modified custom firmwares.

This guide is based on the knowledge I've acquired of various firmware-related applications for the Dingoo, and lots of experimenting.

This guide assumes that you're using Windows XP, or know your way around getting Chinachip drivers to work on Vista/7.

Prerequisites
There are a couple of things you need to get started with customising and flashing custom firmware on your Dingoo. I've uploaded the files you will need, and I will provide an explanation of how to use them.

  • Dingoo firmware
  • Image editing software (for creating custom images for your firmware)
  • Hxftool (for editing the firmware file)
  • Chinachip drivers
  • Dingoo Firmware Flasher (modified Chinachip firmware burning tool)

You can find most of the files in this handy package I've put together. This includes Hxftool, fw flasher, drivers, example bmp, boot configs - Download
You can find the 1.2 version of the Dingoo firmware here - Download
You can use any image editor capable of saving 16bit bitmap (for boot/shutdown screens), and png24 (for custom resources). I recommend The GIMP.


Customising the Dingoo firmware file
The Dingoo firmware comes as a file such as 'a320.hxf', the exact name of the file isn't important, but that is where we will begin. You will need to download the latest version of the Dingoo firmware (at the time of writing this, this is 1.2).


Once you've got the firmware file, you can go ahead an open Hxftool, then from the 'File' menu select 'Open HXF-file'. This will load the firmware into Hxftool, where you can begin the fun task of editing parts of the firmware.


The first tab of the interface provides a hex-viewer, to see the hex content of the various files that make up the Dingoo firmware. This is also a good place to generally see the file-system structure of the Dingoo firmware.


The second tab provides some buttons to apply some patches. The only one that will be of any use to us is the last button 'Patch to use external themes'. When you press this, it will generate a 'system' directory that you will need to put on the root of your Dingoo's internal flash later on, so that you can edit/replace the resources of the default themes (icons/backgrounds/ui elements/etc).


The third tab is where you will change the 'boot' and 'shutdown' screens. This is one of the simplest mods you can do to your Dingoo firmware, and all it requires is two correctly formatted images.

To use an image for the boot/shutdown screens, you need to make a 16bit bitmap image, that is 320px wide, and 240px tall.

Through trial and error I've found that using anything but 16bit bmp will cause the Dingoo to not get past the boot screen.


The fourth tab is where the various strings of the firmware are found. It is here that you can edit the poorly translated menu items into whatever you'd like them to be.

For example you could change 'Interesting Games' into 'Roms', or whatever you would rather call the location that you play the game roms on your Dingoo from. As far as I can tell, you have an 'allowance' of characters while editing these strings, as is indicated by the 'Bytes left' counter. This is fine though, because as you make some strings shorter, you will have enough characters to make short strings longer, and visa versa. When deciding on a replacement string, you should consider how the current string is displayed on the Dingoo menu, so that your text doesn't get cut off.


The fifth tab is where you can set some firmware config defaults. You can set the default language, theme, screen brightness, and auto-shutdown option here. This is very useful for avoiding having to reset the language to English when you re-flash the firmware.


The final tab is just a log of what you've changed/edited in the currently loaded firmware file.

When you've finished editing your firmware, you need to close it. You can do this by going to 'File' and then clicking 'Close HXF-File'.

Great, now your Dingoo firmware is customised! But that's just the start of the fun, now you need to actually flash this on to your Dingoo.

If you're currently using a firmware version lower than the version you've modified, you can do this quite simply by putting your modified firmware on to the root of your Dingoo's internal memory, named as 'a320.hxf', and booting the Dingoo while holding down on the d-pad. This should start the updater, and flash your firmware.

If you can't do it this way, or you have problems doing it this way, you can use the Dingoo Firmware Flasher that I've provided.

The Dingoo Firmware Flasher
The Dingoo Firmware Flasher (or 'Chinachip firmware burning tool') is an application created to be used for many Chinachip-based MP4 devices, to write firmware to them. It's a great tool for 'unbricking' a 'bricked' Dingoo, and an even better tool for flashing a custom firmware file.

As the Dingoo is a console from China, understandably the majority of software designed for working with the Dingoo is in Chinese. This causes a problem for many of us English speaking Dingoo users, because the applications make no sense.

There have been attempts to translate some of the Chinese applications, but with poor documentation these applications are still pretty confusing. I've stripped the 'useless' objects from the interface of the Dingoo Firmware Flasher, to make using it as simple as possible.


To anybody familiar with the original version of the application, you might notice that some bits have been shifted around, and some bits have been removed. The application unfortunately has a bunch of untranslated stuff, because from what I could tell this was stored in un-editable parts of the program. It's still usable like this, and my explanation should suffice.

Accessing flashing mode with your Dingoo
To begin, you should reboot your Dingoo into flashing mode, by holding down the B button while it boots. It will seem as if the Dingoo hasn't turned on at all if you've done this right.

Once you've got the Dingoo into flashing mode, you can simply connect your USB cable, and your computer should recognise a new 'Jz4740' USB device.

I've included the 'Chinachip' drivers for Windows XP/2k in my package in the 'usb_drv' directory. Windows might try to find its own driver for the device, or it may already have a driver to use (if you've previously messed with the firmware flasher, or have installed Dingux).

Below are the steps to make it use the 'Chinachip' drivers.
  • Right-click on your 'My Computer' icon and go to 'Manage'.
  • On the left hand section of the window, click 'Device Manager'.
  • In the 'Device Manager' you should have either 'Jz4740 USB Boot device' or something mentioning 'Chinachip'.
  • Right click on this device, and go to 'Properties'.
  • On the window that opens, click the 'Driver' tab, and click 'Update Driver', Windows should open the 'Hardware Update Wizard'.
  • Click on 'No not this time' if it asks if you want to connect to the internet to find drivers, then click 'Next'.
  • Click 'Install from a list or specific location (Advanced)', and then click 'Next' again.
  • Click 'Search for the best driver in these locations.' and then untick 'Search removable media' and tick 'Include this location in the search', then browse to the 'usb_drv' folder from my package, and click 'Next'.
  • It should find the 'Chinachip USB Loader' driver, and go about installing it. If you have any problems, you can go back and instead pick 'Dont search. I will choose the driver to install', and when you get to the 'Have Disk' option, browse to the 'usb_drv' folder, and then pick 'Chinachip USB Loader'.

After you've got the driver installed, you can open 'Dingoo Firmware Flasher.exe'. There is an 'install driver' option in the application, but I've not personally used this method or the drivers that it uses (they are embedded in the application), so the previous method I detailed is probably best.

Flashing your custom Dingoo firmware
This is where most people find confusion with the original version of this application, lets hope this is relatively painless for you.

It should be noted that any data on your Dingoo's internal flash memory will be erased when writing the firmware using this method.

With your USB cable still connected to your Dingoo, reboot the Dingoo again while holding down B. This will make sure that the flasher picks up your Dingoo. For now you can ignore the giberish in the large text box. From what I can tell it's supposed to be some steps for connecting the MP4 device, but as I'm explaining it here, it's not much use to us!

First thing you need to select is the 'Boot Config' file. This is a file that tells the Dingoo how to load the firmware with the hardware available. I've provided versions that I've found for both the ILI9325 and ILI9331 LCD module versions of the Dingoo. I've only personally tested the ILI9331 file, but the ILI9325 one should work fine for that LCD module.

To find out which LCD module your Dingoo has, go to 'System Setup' > 'About' on your Dingoo menu, and press up,right,down,up,right,down. This will load the diagnostics screen, which should say which module you have. All you need to look for is 9325 or 9331.

So click 'Browse' next to 'Boot Config' on the firmware flasher window, and select either the ILI9325 or ILI9331 file, as appropriate.

Next up is your firmware file. This part can be done with any version of the Dingoo firmware, which is especially useful for unbricking your Dingoo.

Click 'Browse' next to 'Firmware' and find the .hxf file that you would like to flash to your Dingoo.

Once you've selected these two files, press the 'Start flashing' button. If you've done everything correctly, the large white text box should be cleared and replaced with a line that starts like:
'Device XXX: blah blah blah' (the XXX and blah blah blah will vary).

While doing this, your Dingoo will reboot and the screen should display 'Firmware Upgrade...'. Congratulations, it's writing the firmware to your Dingoo. This process takes a couple of minutes, so go and make a cup of coffee or something, when you come back your Dingoo should hopefully be ready for you to continue.

Steps after a successful custom firmware flash
If you decided to enable external themes earlier, while you were messing with Hxftool, now is the time to write that 'system' directory to your Dingoo.

After the firmware upgrade the Dingoo reboots back into USB disk mode as usual, so you can just access it from 'My Computer' and put your files to the root of the internal flash memory.

When you're done, shutdown or reboot your Dingoo, and you should be finished :D

Haven't got the right menu language or everything is in Chinese?
This is a common problem with flashing any firmware version, as it's a Chinese device, the default language is Chinese. Changing back to your regular language is quite a simple process!
  • Go to the furthest icon to the right on the main menu and press A
  • Press up 4 times, this should bring you to the second menu item from the bottom with a '>' at the end
  • Press A, find your language, press A again.

Changelog
  • v1.0 - Working as far as my own extensive testing, any feedback would be great
« Last Edit: November 08, 2009, 08:23:41 pm by omgmog »

Brissmas

  • Posts: 69
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #1 on: November 08, 2009, 02:43:10 am »
Great guide omgmog helped me modify my firmware and learn how to flash it!

strider_mt2k

  • Posts: 218
    • Dingoo Scene-Voice of the Dingoo Revolution!
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #2 on: November 08, 2009, 02:56:06 am »
This is the kind of stuff that keeps me coming back here.

Thanks for taking the time and presenting the subject so well.
Samsung Galaxy Note 2
Samsung Galaxy Tab Pro 8.4
Toshiba Excite 10 AT300
Ouya!

Kalisiin

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #3 on: November 08, 2009, 04:30:43 am »
This should be stickied, big time...as it provides for a good way to unbrick your Dingoo.

Needless to say, you ought to be backing up any files you want to keep on your Dingoo as you install them onto your Dingoo itself...so that way, later, if the files get corrupted, you still have the original uncorrupted files to go back to and replace on your Dingoo...not to mention if you have to ever "unbrick" your Dingoo, it usually involves wiping out the memory, and everything you had in it.

Meneer Jansen

  • Posts: 511
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #4 on: November 08, 2009, 12:25:08 pm »
Thank you very much for this large tutorial!! Do I see that you are using Linux? If so: nice to see that Wine runs the flash- and fhx tools just fine.  :)

P.S. I think this should be made sticky too.
« Last Edit: November 08, 2009, 12:45:33 pm by Meneer Jansen »
Finally got me a new Dingoo after I Kentucky ~~::fried::~~ the other one. Yippee! [edit] And lost it!

omgmog (OP)

  • * Administrator
  • Doesn't sleep.
  • Posts: 790
    • omgmog.net
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #5 on: November 08, 2009, 01:08:44 pm »
Thank you very much for this large tutorial!! Do I see that you are using Linux? If so: nice to see that Wine runs the flash- and fhx tools just fine.  :)

P.S. I think this should be made sticky too.

Not linux, but a Windows XP theme that I think was made for GTK/Metacity by the same author first :P

I imagine these apps would Wine well though..

I stickied the topic when I made it, heh.

Meneer Jansen

  • Posts: 511
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #6 on: November 08, 2009, 01:26:26 pm »
Thought I'd recognize the theme. ;) But unfortunately the hxf tool crashes when I try to open a hxf. No problem, I've WinXP in dual boot (well, triple actually, but that's waaaaay to off topic).
Finally got me a new Dingoo after I Kentucky ~~::fried::~~ the other one. Yippee! [edit] And lost it!

Haas

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #7 on: November 08, 2009, 06:30:47 pm »
I've seen the firmware number in the language content. Why can't you just change the firmware version to 10.0 and go upwards? This way you never need to do any flashing?

gunther_sucks

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #8 on: November 11, 2009, 09:30:32 pm »
Just a note to vista users: Through the flash tool the firmware cannot update. I am sitting here with a bricked dingoo with no real remedy. :(

omgmog (OP)

  • * Administrator
  • Doesn't sleep.
  • Posts: 790
    • omgmog.net
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #9 on: November 11, 2009, 11:30:09 pm »
Just a note to vista users: Through the flash tool the firmware cannot update. I am sitting here with a bricked dingoo with no real remedy. :(

Make sure you have installed the chinachip drivers correctly, and try running the flashing tool in Windows XP compatability mode. As far as I'm aware there is no way to completely brick a Dingoo.

You can still boot it into USB flashing mode by holding down the B button, and if you have an a320.hxf on the internal memory, you should be able to boot into the updater by holding DOWN on the dpad while booting.

shanti77

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #10 on: November 12, 2009, 08:00:40 am »
I yesterday modify firmware 1.2 and i'm use hxftool, and of course dingoo was bricked. I had problem with unbrick tool, i can't install driver from unbrick tool, my computer wants always drivers from dualbios. I use another computer where i don't install dualbios drivers and there it's work. I instal drivers from unbrick tool ,and run program in administrator mode, I unbrick dingoo. In first computer I have WindowsXP, and in second Windows Vista.To unbrick dingoo computer must see chinachip not driver from dualbios. Maybe this help anyone.

gunther_sucks

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #11 on: November 12, 2009, 08:15:00 am »
The problem is that the flashing program hangs when I go to flash it. I left it alone for 1 1/2 hours and it was still not done. I will try again with some different drivers but it looks like I'm out of luck for now. My other computer which is xp kept asking for the dualboot drivers and thus I could not run the flashing tool through it.

Edit: running it as an administrator helped, the files began to transfer, but it seems like the program hangs, after 20 mins it still isn't done. I'll update if there's any progress.
« Last Edit: November 12, 2009, 09:00:02 am by gunther_sucks »

shanti77

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #12 on: November 12, 2009, 09:40:23 am »
I had install dualbios and to first time when I try flash only boot is falshing, after restart in second try firmware was flasing. (Windows see new disk i want it format but I ignore this) , I use Windows Vista and run program in administrator mode.

paulieweb

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #13 on: November 13, 2009, 08:23:16 am »
I got mine working.
I downloaded the Flasher tool from this forum:
http://boards.dingoonity.org/dingoo-hacks/guide-flashing-custom-firmwares-to-your-dingoo/msg3866/

Here's the link for the Flasher download:
http://localhostr.com/files/a0f8f7/Dingoo%20firmware%20flashing%20files.zip

And here is the official 1.20 Dingoo Firmware:
http://www.megaupload.com/?d=F6TJRG2F

Do the following:
01 Download both files above.
02 Extract the first file into a folder.
03 Put the 1.20 Dingoo Firmware into the folder from step 02.
04 Reset your Dingoo while holding down B to put it in service mode.
05 Plug your Dingoo into your computer.
06 Go to Device Manager (Start/Run and type devmgmt.msc).
07 If you see any driver for your Dingoo, uninstall it and remove from the system. Then unplug your Dingoo and plug it in again.
08 Do step 07 until it doesn't have a driver anymore (it will show up in Device Manager under "Other devices" as "JZ4740 USB Boot Device" with a yellow exclamation mark on the icon).
09 Right-click and say Update Driver. Then say Browse My Computer, then Let Me Pick, choose All Devices and hit Next. Then click Have Disk. The driver you want to install is in the folder from step 02.
10 Now open the folder from step 02 and run Dingoo Firmware Flasher.
11 Click Browse next to Boot Config and in that same folder, choose the .dl file that corresponds to your Dingoo (ILI9325 or ILI9331).
12 Now click Browse next to Firmware and choose the a320.HXF file you downloaded.
13 Now reset your Dingoo again, holding down B so it's in service mode. Leave it plugged in while you do this!
14 Ready to flash the firmware. Click Start flashing. Ignore Windows if it asks you to format your Dingoo.
15 Leave it alone for about 10 minutes. You'll see 3-4 lines on the Firmware Flasher screen, but it won't tell you when it's done.
16 After those 10 minutes are up, close the Firmware Flasher, then unplug your Dingoo. It should restart automatically and boot into the firmware.
17 It'll be in Chinese so go all the way to the right on the menu, hit A, then hit UP four times and hit A, then choose your language.

Hopefully this is clear enough and I hope it works for you.
 

Haas

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #14 on: November 13, 2009, 01:06:54 pm »
I've seen the firmware number in the language content. Why can't you just change the firmware version to 10.0 and go upwards? This way you never need to do any flashing?
This^^
The HXF tool failed on me so hope some one else couldtest this out??

NinJato

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #15 on: November 13, 2009, 09:09:03 pm »
Things that bricked my Dingoo while translating to proper English:

If I changed the boot picture to anything other than [email protected], the Dingoo hangs on the boot screen and will not become a logical drive (which allows you to copy over the system files).

If I changed any settings on the language, or backlight time it was also bricked (in the same way).

If you are going to change the bootup picture, try just changing that and make sure it works first. After the flash is successful, you should be able to modify all the "translation" fields without any problems (I assume that if you go passed "0 bytes left" and receive a large number, this will also brick it... I stayed above 0 by shortening some of the other fields, so I'm not sure if it does or not).

joepie91

  • Posts: 179
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #16 on: November 13, 2009, 10:51:06 pm »
Things that bricked my Dingoo while translating to proper English:

If I changed the boot picture to anything other than [email protected], the Dingoo hangs on the boot screen and will not become a logical drive (which allows you to copy over the system files).

If I changed any settings on the language, or backlight time it was also bricked (in the same way).

If you are going to change the bootup picture, try just changing that and make sure it works first. After the flash is successful, you should be able to modify all the "translation" fields without any problems (I assume that if you go passed "0 bytes left" and receive a large number, this will also brick it... I stayed above 0 by shortening some of the other fields, so I'm not sure if it does or not).

24-bit? Wasn't that supposed to be 16-bit?

joepie91

  • Posts: 179
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #17 on: November 13, 2009, 11:08:55 pm »
Ehm, I'm having slight trouble.
The Firmware Flasher doesn't do anything. When I start flashing, the text box stays empty, and my Dingoo does nothing, even though the "Installing Firmware" icon appears. It's kinda needed to flash my Dingoo because I bricked it with my custom firmware... I guess some of the bitmaps weren't right :P

omgmog (OP)

  • * Administrator
  • Doesn't sleep.
  • Posts: 790
    • omgmog.net
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #18 on: November 13, 2009, 11:13:24 pm »
Please don't double post.


Yes the image is supposed to be [email protected] BMP, no other format.

Boot your Dingoo while holding B, connect USB cable, make sure you've got Chinachip driver installed, select boot file for your LCD module, and an unmodified firmware, press 'start flashing'.

You should see an output like:

Code: [Select]
Device 110: ϵͳ��¼��ʼ...
Device 110: ���ڸ�ʽ������...
�豸 4383528: ��ʼ��¼��Դ,�ȴ���¼���...

�豸 4383528: ϵͳ��¼���!

As far as I can tell, the first two lines are it finding the device, 3rd is it starting the flashing, 4th is for completion.

Hope that helps

NinJato

  • Guest
Re: Guide - Flashing custom firmwares to your Dingoo
« Reply #19 on: November 14, 2009, 02:29:13 am »
I'm confused.

You keep saying 16-bit, but there is no way my computer can produce a 16-bit color image. Even when I download the "bye.BMP" that was posted here, it still says 24-bit.

In Corel Photo-paint 11 under Windows XP, the only 16 bit option is a "16-bit greyscale".
Even when I click properties on the image in Windows Explorer, the file manager summary says that the image is 24-bit color.
When I add my own custom 24-bit BMPs to a firmware, it flashes fine.

 ???
« Last Edit: November 16, 2009, 06:24:35 pm by NinJato »

 

Post a new topic