Cerb40 1.1: Trouble updating firmware

Hi,

I am trying to update the firmware of my Cerb40 (v 1.1) board. Unfortunately, the updating process stops by deploying “firmware.hex”. Until then, everything works OK but erasing the sector 0x08010000 takes too long and finally, the FEZ Config stops with an error (Interrupt while deploying. Updating failed!). MFDeploy hangs also at the same point.

It is the ‘older’ Cerb40 version 1.1 board.
Pinging works OK.
I have successfully upgraded the TinyBooter to version 4.2.6.1
Connecting an external 3.3v power source didn’t help.

Any thoughts?

Cheers, Sinan

What program are you using to deploy the firmware, MFdeploy, Fez Config? What OS are you using? Have you tried other USB Ports? What USB drivers are you using to debug with?

Thanks for quick response,

I am working on a 64bit Windows7 machine. FEZ Config and MFDeploy stop at the same point. I have also switched the USB ports.

I think that I am using the WinUSB driver. Where can I check this?

If you have the WinUSB version installed it will say GHI NETMF Debug Interface.

OK, then I am using WinUSB.

Have you tried to re install the TinyBooter on the device?

Yes, I have just upgraded it to 4.2.6.1. Should it help to do it again?

When you upgraded the firmware, did you verify that all steps were followed including the create from map and erase step?

Also, We just released a new SDK today. The firmware for the Cerb was changed but not the TinyBooter, however, it may be in your best interest to update to the latest SDK.

No luck today. I have just downloaded the SDK and repeated all steps from the fresh installation of the TinyBooter (4.2.6.1) to the TinyCLR (4.2.6.2). Both deployment programs stop by erasing the sector 0x08010000.

How is power being applied to the board?

I have two configurations:

  1. 5v from USB only
  2. 5v from USB + 3.3v from external source

Same results in both configurations.

Do you have the ability to try to update the board from another computer?

Can you confirm you can use MFDeploy to VIEW the firmware version? Have you got a 3v3 regulator onboard? Have you used this Cerb40 before?

@ Aron, I can try from another computer but therefore I have to install the whole tool chain (VS, .NetMF, SDK) again. Would it be worth to try?

@ Brett, how can I view the firmware version with MFDeploy. If I “ping”, it responds with “Pinging… TinyBooter”. FEZConfig at the ‘Firmware Updater’ screen shows “The device is in Loader (TinyBooter) mode. Version: 4.2.6.1”.
And, yes the 3.3v regulator is on board and the board was already in use. After 6 months, I had to upgrade the tool chain in order to update my software.

The board seems to perform well, except by uploading the firmware. I can erase it, can put the bootloader on it, can upload the ‘config.hex’ file. It just get stuck by uploading the ‘firmware.hex’ file.

@ sinan - I am not sure it would be worth it on your end if it does not work. On the other hand, if by chance something on your current computer is corrupted then this could prove it. It is your call but we have experienced when a user switches computers, they can sometimes operate the device from there but not on original.

You did mention however that you updated the tool chain, perhaps something corrupted the system there?

Also, try and only update the firmware and forget the config for the moment. Perhaps the system is timing out for some reason.

Didn’t work either… :cry:

I will try another computer and also another board. I must have a Panda2 somewhere.

Panda2 may not be a good alternate device to test. But at least you’re seeing PING report that the device is in tinybooter mode, so now we just need to get your firmware on there. I’d actually suggest uninstalling and re-installing the GHI SDK and getting the firmware files afresh. Given there was a brand-new SDK today, firmware 4.2.6.2 for Cerb family, it might be worth installing that if you didn’t get it.

The deployment problem is ‘kind of’ solved. I have recovered my previous development machine with older SDK on it. Uploaded the newest firmware using MFDeploy on that machine. Now, the Cerb40 is up & running but I still don’t know what went wrong.

Thanks for the quick replies.

Cheers, Sinan