G400_D Updating firmware

I have modified the original post…

Thank you all who have offered suggestions.

My Original G400-D is now operational.

I should be happy but I’m not sure if I am because I do not know what I did (If anything) to solve my problem of not being able to update the G400 firmware.

All day long I was receiving FEZ Config error dialog:
“Interrupt while deploying. Updating failed!”

This was during Config.hex… fail!

Then, all of a sudden, it worked!

I’m no expert, but I saw there are instructions of how to do it from the command line here : https://www.ghielectronics.com/docs/112/g400

However, from what I understand that will only be possible when the new TinyBooter will become available.

(Also waiting with anticipation for my beta kit to arrive)

@ KiwiSaner -

I assume you mean

Beta TinyBooter Update Procedure:

The following steps are necessary to update the G400 Beta TinyBooter:

This uses the G400 Beta Programmer with sam-ba.

This works for me all the time:

I am asking about a manual firmware update procedure like that found for:

Firmware_Update_USBizi: USBizi, FEZ Domino, FEZ Panda, FEZ Panda II, FEZ Rhino, FEZ Mini.
Firmware_Update_EMX: EMX, FEZ Cobra, FEZ Spider.
Firmware_Update_FEZ_Cerberus: FEZ Cerberus, FEZ Cerbuino, FEZ Cerb40
Firmware_Update_FEZ_Hydra: FEZ Hydra
Firmware_Update_ChipworkX: ChipworkX


Thanks for your input…

@ willgeorge

I also had problems updating my G400-D using MFConfig or FexConfig. I was able to update it after I realized that I was using the wrong version of the updater.

The one that you want to use is named G400 Beta Programmer.zip and not G400 Beta Updater( G400 Beta Programmer.zip has the file G400_Timybooter.bin with a date stamp of 5/30/2013.

Once I updated the G400D with the correct (latest) version I was then able to update the firmware using FezDeploy and MF Config.

@ scardinale -

Thanks… I’ll look into it.

I thought I was using the correct one but you never know when I’m involved…

@ willgeorge - Please remember to also give feedback if this worked for you. I have not yet received my G400, but its good to know in advance.

@ KiwiSaner -

I received my second G400 yesterday and I have the same issues with it (The problem is not related to downloading firmware). I do not want to change anything on it related to firmware until I solve my main issue.

I am NOT knocking the G400.

My problem must be related to some change in my PC software or there is a old Witch flying over my home every time I connect my G400…

My original G400HDR and G400-D worked well using a T35 and a CP7 display. In fact I posted some small bits of code on codeshare.

I had made a new application using the CP7 and it was running as intended. I shut down for the night and the next morning I plugged in the USB and my Windows 7 64 bit crashed with the BSD. (I was using WinUSB and had changed the USB driver back to the GHI USB drivers.)

I could not recover the PC so I had to use a saved iso image to recover. The iso was only a few days old so things should have been about the same. But its NOT!

I had a bunch of screen captures of my original G400 settings as output from MFDeploy and FEZ Config . I lost all of those due to the iso recovery so now I have no comparisons between my old and new G400.

My main issue now is that I cannot configure the G400 to use my LCD’s. It is factory set to use the T43 module and with a T35 attached it looks like… Can I say terrible… or worse…

With both old and new G400’s I cannot add any hardware module. This is while using taylorza Gadgeteer G400HDR code or a plain old Console application.

When trying to use even a common button or any hardware (other than the USB Client DP) I always receive some type of exception.

I can however display bitmap resources and bitmaps/bitmap text created within the application images. The look terrible because of the incorrect display but they are there.

One thing I find very strange is when I received my first G400, I could use the GHI FEZ Config tools LCD Configuration button and ‘Load’ the LCD configuration. It returned some settings which I changed to T35 settings, clicked the Apply button and my T35 was up and running…

Using FEZ Config now on either my old or new G400 causes the FEZ Config to return a dialog pop-up “Can not access the device. Error code: 0x0001”.

I’m at a loss to understand why I receive exceptions adding ‘any’ hardware module.

I have the same problem using 2010 Express or Express 2012 Windows for Desktop.

After the iso recovery (and finding that there was a problem) I uninstalled ALL software related to gadgeteer and also uninstalled my 2010 and 2012 software. I erased all files I had
and then downloaded fresh software needed for Gadgeteer and my Express 2010 and 2012.
Everything was ‘New’ but the problem remained the same?

I can use all of my other main boards without problems.

My suspicion is similar to Andre’s, but I suspect the driver is more at fault.

@ andre.m -

I have tried with three different powered hubs (Two are Belkin of different ages and one is a rocketfish) and also tried a connection in each USB port on my PC. I have 10 USB connectors.

The PC supports version 2 and 3 USB - 14 ports. The PC’s Root hubs (two) driver claims it supports 500 Ma for each port.

When using my main board I always use a Aux. power supply connected to USB Client DP and when using a powered Hub I do NOT power the Hub. I only power to USB Client DP.

I have had problems in the past if both the Hub and USB Client DP are powered. The power supplies fight each other. I have watched the voltage drift up and down when both are powered.

I am still at a loss as to why I cannot configure my displays anymore. When I got my first G400 everything worked like a charm!

I’m still at a loss as to why I cannot InitializeModules() or LCD Configuration.

Yesterday I did find some command to ‘Reset Hub’ in the PC Root Hub drivers (two root hubs)… I am trying to decide if I really want to do that!

I would get out G400D Dimm, clean contacts, and insert again … mhhh.

Hi Will. I’m experiencing exactly this as well. I tried using external power but had no luck with that. But it sounds promising that at some point it worked for you all of a sudden. I will just have to keep on trying and hope mine also upgrade at some point.

@ KiwiSaner -

Show us your Device Manager, please,
If you can connect to G400, let me know what is your FW version number now?

The device manager shows that it detect my board as a GPS camera on COM5.

FEZ Config does not show a FW version. But I think before I loaded TinyBooter it did. This is what I get:

Oh yeah… in case it is important… I’m using Windows 8 and 64 bit laptop.

I plan to have another go at this tonight, this time using a Windows XP desktop computer. And I’m thinking of trying to supply the 3V3 power by some other means to see if that makes a difference.

Unfortunately, it did not help to use an external power source. Still the same interrupt issue that persists.

The USB driver is WinUSB and windows show a message under my G400 in devices and printers as :
Model: G400
Category : Unknown
Status : Setup incomplete because of a metered connection.

FEZ Config automatically selects the firmware files as in the following folder:
C:\Program Files (x86)\GHI Electronics\GHI Premium NETMF v4.2 SDK\G400\Firmware
Is this correct, or am I supposed to browse for it somewhere else?

When Fez Config fails to upload the firmware, the progress bar is showing “Erasing sector 0x20400000”

You are meant to select it from somewhere else. You downloaded the firmware version with the filename G400_Firmware_Version_4.2.10.0.zip. You need to extract the files from that, put them in a location of your choosing, and select that.

I’ve just run this on mine (I only did tinybooter earlier).

Thank your very much Brett! That was it. I just upgraded successfully! :slight_smile: The thing was I did search for firmware in in “G400 Beta Programmer” directory, but completely forgot about the zip file.

Hopefully this will at least help someone else and also for GHI to upgrade their documentation a bit. If its the first time you use FEZ Config and the instructions does not specify it clearly, its not all that obvious. Anyway, I suppose that is why there is a beta testing program to iron out these things.

When it’s no longer beta, the firmware files will be delivered with the SDK and will be installed in the default location that the Fez Config app looks. So this is totally only relevant to the beta… If you’re reading this and you didn’t buy a G400 beta unit, or the SDK has been released, this thread is not relevant anymore (public service announcement complete :wink: )

Thanks Brett :wink: