NetduinoGo deployment issue
#1
Posted 28 May 2012 - 01:38 PM
#2
Posted 28 May 2012 - 07:41 PM
It looks like there's either flash corruption or the app failed to deploy (but looks like it did anyway). Very strange. If you can consistently reproduce this, we'd love to dig in and take a look at what's going on.
In the meantime, let's get you up and running. The first thing to do is to completely erase your board. Reflashing it may only write over existing regions, leaving corrupted data in application regions intact.
Instructions to completely erase a Netduino Go mainboard:
- Install ST's DFUSE app if you haven't already done so
- Unplug your Netduino Go from the PC
- Hold down the pushbutton on your Netduino Go and plug its USB connection into your PC
- Run the "STDFU Tester" app
- Click the "Protocol" tab up top
- Select the "Erase" option in the "Operation" box on left
- Press the "Create from Map" button
- Press Go
Once the board is erased, you can reflash it via the DFUSE Demonstrator app.
Does this get you back up and running?
Chris
#3
Posted 28 May 2012 - 08:54 PM
Hi alhardy,
It looks like there's either flash corruption or the app failed to deploy (but looks like it did anyway). Very strange. If you can consistently reproduce this, we'd love to dig in and take a look at what's going on.
In the meantime, let's get you up and running. The first thing to do is to completely erase your board. Reflashing it may only write over existing regions, leaving corrupted data in application regions intact.
Instructions to completely erase a Netduino Go mainboard:
- Install ST's DFUSE app if you haven't already done so
- Unplug your Netduino Go from the PC
- Hold down the pushbutton on your Netduino Go and plug its USB connection into your PC
- Run the "STDFU Tester" app
- Click the "Protocol" tab up top
- Select the "Erase" option in the "Operation" box on left
- Press the "Create from Map" button
- Press Go
Once the board is erased, you can reflash it via the DFUSE Demonstrator app.
Does this get you back up and running?
Chris
Hi Chris,
Thanks for the prompt reply, yes that got me back up and running! Cheers.
I'll let you know if it happens again and give you more details steps to reproduce.
Thanks again.
Allan
#4
Posted 08 September 2012 - 12:03 PM
Instructions to completely erase a Netduino Go mainboard:
- Install ST's DFUSE app if you haven't already done so
- Unplug your Netduino Go from the PC
- Hold down the pushbutton on your Netduino Go and plug its USB connection into your PC
- Run the "STDFU Tester" app
- Click the "Protocol" tab up top
- Select the "Erase" option in the "Operation" box on left
- Press the "Create from Map" button
- Press Go
Hi, I am completely new to NetDuino Go. After experiencing the issue several others have, where Visual Studio deploy crashes NetDuino Go, by installing code that makes it unresponsive. I was struggling last night, I searched the forums, Found ST DFUSE, did the erase several times, and installed the firmware 4.2.0.0 several times to no success. What I was not doing correctly, was the step "Press the Create from Map button", even though I was using Erase, and to the novice like me, it appeared to work, since it went through the progress bar and said it was successful. It evidently didn't work. Pressing that Create from Map, made it work. Now I can see my NetDuino Go in MFDeploy and ping it. Where as before it would show up but not ping, I would get communication errors to the device.
It's all a learning experience for me, and even if I bricked it, I would keep going. My background is software for 15 years, so this new hardware stuff is very interesting. Lots to learn.
-Chris
#5
Posted 25 October 2012 - 03:21 AM
I can reproduce this deployment issue consistently. I'm on a Windows8 PC with VS2010 and all the VS updates. My Netduino Go has both the latest firmware and .NETMF. There is nothing connected to it. I can deploy a program to the Netduino Go and it will run fine (my program blinks the LED's on the Netduino Go board).
My program does not have an infinite loop in it, but both VS2010 and the Netduino Go act as if it does. I can stop the debug session in the VS2010 IDE, but that does not stop the Netduino Go. If I try to redeploy this program or another program, I get the 'Cannot find entrypoint" problem. If I powercycle the Netduino Go, only then can I deploy my program to the Netduino Go and continue.
I have found that if I stick a 'return;' at the bottom of Main(), sometimes this allows the program to exit so I can redeploy, but this 'fix' does not work 100% of the time. I've also added an interrupt handler for the on board button that will attempt to reboot the Netduino Go, but this 'fix' does not work 100% of the time either.
The program that I am deploying is not very complex. Here it is....
public class Program { private static readonly InterruptPort ResetButton = new InterruptPort(Pins.Button, false, Port.ResistorMode.Disabled, Port.InterruptMode.InterruptEdgeBoth); public static void Main() { ResetButton.OnInterrupt += delegate { Debug.Print("RESET pressed"); PowerState.RebootDevice(true); }; ResetButton.EnableInterrupt(); var socketLeds = new OutputPort[8]; socketLeds[0] = new OutputPort((Cpu.Pin) 0x16, false); socketLeds[1] = new OutputPort((Cpu.Pin) 0x17, false); socketLeds[2] = new OutputPort((Cpu.Pin) 0x18, false); socketLeds[3] = new OutputPort((Cpu.Pin) 0x19, false); socketLeds[4] = new OutputPort((Cpu.Pin) 0x26, false); socketLeds[5] = new OutputPort((Cpu.Pin) 0x27, false); socketLeds[6] = new OutputPort((Cpu.Pin) 0x28, false); socketLeds[7] = new OutputPort((Cpu.Pin) 0x29, false); const int sleepTime = 100; for (int j = 0; j < 5; j++) { for (int i = 1; i <= 8; i++) { OutputPort led = socketLeds[i - 1]; led.Write(true); Thread.Sleep(sleepTime); } for (int i = 1; i <= 8; i++) { OutputPort led = socketLeds[i - 1]; led.Write(false); Thread.Sleep(sleepTime); } } return; } }
#6
Posted 25 October 2012 - 04:09 AM
#7
Posted 25 October 2012 - 11:09 AM
#8
Posted 03 November 2012 - 08:07 PM
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users