G120 SoM doesn't answer ping after firmware update 4.2->4.3

Hi.

In Novermber 2013 I designed a PCB with the G120 SoM, RevC. Recently I decided to try out the board when I ran into a problem.

I followed the “Download & Install Steps”. https://www.ghielectronics.com/support/netmf

The board is connected to PC via USB (device).

The SoM had pretty old firmware so I decided to update it.
FEZ Config → Advanced → Loader (TinyBoot) Update → G120.

I booted the module with LDR0&LDR1 Low (Bootloader mode). ->GHI Bootloader Version: 1.01

TinyBooter updated sucessfully. Version: 4.3.7.7
Updating Firmware. Please wait…
Deploying C:\Program Files (x86)\GHI Electronics\NETMF v4.3 SDK\Firmwares\G120\Config.hex…
successful!
Deploying C:\Program Files (x86)\GHI Electronics\NETMF v4.3 SDK\Firmwares\G120\Firmware.hex…
successful!
Deploying C:\Program Files (x86)\GHI Electronics\NETMF v4.3 SDK\Firmwares\G120\Firmware2.hex…
successful!
Executing application…
Updating friendly name…

Everything went fine so far.

I could see that the Device was connected but when I tried to ping it I got a message:
"Pinging… Failure - Device is not connected or not responding. "
the device name disappeared from the device pull-down menu.

Then I updated the firmware to version 4.2 and now I can ping the TinyCLR.

Do you have any suggestions why the version 4.2 works fine but 4.3 fails to work? ( I tried to erase everything with TeraTerm, installed firmware at least six times, …)?

I couldn’t get the Visual Studio 2013 Community debug mode running with version 4.2…That’s why I wanted to update the module.

Thank you

@ Cob265 - Did you change any of the install options when installing our SDK? Did you try to restart your computer after updating the firmware to 4.3 and then plugging the G120 back in?

Hi,

I didn’t change any settings when I installed the SDK.

I erased everything with ‘E’ command on TeraTerm. Then I transfered XMODEM (1K) -> Loader.GHI (version 4.3)
When the module was in TinyBooter mode I Deployed Config.hex, Firmware.hex and Firmware2.hex.

At first I used Fez Config for deploying. …-> after deployment ->ping -> no connection.
Then I tried .NET Micro Framework Deployment Tool. The files were uploaded with out any error.
The module showed up as G120_G120. Then I hit ‘connect’ and I tried to ping the device. I received a message: “No Connection”.

I have also a FEZ Cobra II module and it answers the ping with out any issues. I have done the same firmware update to it.

Only difference I can see is that the Fez Cobra II has Bootloader version 1.0.3 and my desing has a Bootloader version 1.0.1.

Is there a pin which should be tied to high or low. I have pull up resistor (10k) on RESET-line, PIN 59 is floating, LDR0 and LDR1 had pull-up resistors (10k) which I removed while testing. MODE-line is pulled high through 10k resistor.
The Reset-line has a push-button which pulls the line to GND.
LDR0 and LDR1 have pin header where jumpers can be set to choose the bootloader mode.

The version 4.2 works. -> ping TinyCLR. OK
I managed to get 4.3 work for a while but when I disconnected USB and reconnected the connection was lost again. I noticed that the USB keeps connecting an reconnecting every once and a while. Then I measured the 3.3V power rail with an oscilloscope but I couldn’t see any voltage fluctuation there.
The USB also disconnects when I try to ping the module when I have uploaded version 4.3.

I’m running out of ideas what to try next… (and I have rebooted Windows 7 and module several times, after every firmware update)

[quote]Only difference I can see is that the Fez Cobra II has Bootloader version 1.0.3 and my desing has a Bootloader version 1.0.1.
[/quote]
yeah, you should keep bootloaders up to date as well.

@ Cob265 - In MFDeploy, if you switch to the serial transport after the ping fails and then go back to USB, does it show up again?

  1. I tried to power up the card with a power supply >>1A @ 3,3V. No connection.
  2. How do I update the BootLoader 1.0.1 to 1.0.3. I did a quick search on the forum but couldn’t find any information how it’s done.
  3. If I put Fez Config in Serial Port mode -> ping => "There is no device connected or no response from device. Try to Reset or Re-connect your device"
    Then I changed to USB -> Device name show up G120_G120, PING -> Pinging… Failure - Device is not connected or not responding. and G120_G120 disappears from the device list…

I’m using USB device port because COM1 is reserved for another purpose.

Does it help if I send some screencaptures what I’m doing ?

@ Cob265 - Try to ping after changing the transport with MFDeploy, not FEZ Config. Make sure you only deploy the firmware and not your application. Even if COM1 is in use for your application, this is just to test.

Please also watch Device Manager for device change behaviour. You may have a flaky cable or something, and the device disappears from Windows.

I tried to change USB cable but that didn’t solve the problem.

The NETMF v4.2 works with my G120 design. I took some ScreenCaptures while updating the module

The problem is that I can’t get the NETMF v4.3 work. I did the same update procedure but after Deployment the module doesn’t answer.

Do you have any ideas what may cause this problem?

Thank you for your ides so far.

@ Cob265 - After you deploy your application the G120 stops responding?

@ Cob265 -
The second image very blurry, I even can not read the text. Is there any other picture has more clear?

What 4.3 version are you trying? 4.3.8.0?

I haven’t written any software application of my own yet.

Are the files which come with the "“GHI Electronics NETMF SDK 2015 R1” package meant only for the Development Boards and not to be used with a custom build PCB with the G120 module?

It starts to feel that I’m doing something wrong here. Should I build my own Config.hex, Firmware.hex etc. with the Visual Studio 2013 and forget the files which come with the 2015 R1 package?

My though was that first I need to deploy these files before I can start debuging and writing my own code… hmm

Here are the images which I try to put in the same picture which wasn’t a good idea :/.

It works fine with custom boards. It is designed for the G120 module so it will work in any custom design based on that module. I am working on one now where I had to update from 4.2 and I used Fezconfig to update the bootloader and the firmware and now I am debugging the board.

I am wondering if you have a hardware design issue here as it should just work?

Can you show the board layout (especially the G120 area and the USB tracking) and schematic at all? Is this possible?

I agree with @ Dave, this all should just work. Can you please use Fez Config to check the bootloader and firmware versions that are deployed to the device? Paste the output of the check into a reply here so we can all see

@ Cob265 -

Show us your Device Manager, since you are still using 4.2, I think it probably loaded old USB driver, not winusb driver.