I'm experiencing stability issues with the n+2. I'm using VS2013pro and NETMF 4.3 and firmware 126.96.36.199.
My program does the following:
- all the usual initial stuff (prepare file for log on sd-card, update local time from time server etc.)
- starts a method that is executed on interrupt from external events to measure the time between events (by using an InterruptPort and NativeEventHandler). Runs approx. every 10 ms and contains only some simple math.
- sleep(900) // the interrupt method is running x times
- disable the interruptPort above
- POST data using HttpWebRequest (only on local network)
- enable the interruptPort above
I also have some methods for handling remove/insert sd-card as well as posting error logs online as well as to sd-card.
I have lock() on all things, so that nothing is interrupted by other things and the only shared variable is also written/read in a lock(). I also have a lock() on the InterruptPort so that I don't disable it while it is running (even though it should not matter).
Especially, NOT having the interruptPort enabled while doing HttpWebRequest has eliminated the netduino hanging up with the (read in MFDeploy) message: Failed allocation for 5 blocks, 60 bytes
I have added a pin toggle to measure on a oscilloscope, just to see if there is some activity.
After running for somewhere between 30 minutes and a full day the Netduino "dies".
Sometimes there are no activity at all and some times my pin toggle still runs (in the later case its not dead).
However, my online POST just stops... no logs of any kind, no exceptions made (at least not in my code).
Does anyone have any ideas? I'm considering going back to VS2010 with NETMF 4.2 and frimware.