EMX 4.2.10 RAMC Error

We received the board and we will look into it in the next few days.

@ leforban -

Hi,

we received 4 EMX modules and 1 Ocean Data System.
with 4 EMX modules, there are 2 modules getting very hot when we try to test, rest 2 modules don’t answer me at all. It looks we can not do anything with these 4 modules.

For the Ocean Data System, there is an EMX mdules, I tried to deploy an application and continue writing file to your SD. they are in a loop and it will keep to write until full SD, with each file is 20MB, it looks work fine so far.

Is there any way to reproduce it easily?

Edit:

see the bug now

@ leforban -

Can you show us how to update tinybooter on your circuit please, or we have to take a look on EMX module pins and re-solder them?

We tested here with our Spider / EMX development system board, it is running more than 4 hours without any problem, but, yes, on your circuit it is only about 1-2 mins although they are same application, same firmware 4.2.10.0

Hi Dat,

To update TB, just put a jumper on the 4’th position of the connector located at the top and right side of the board. Then using USB you will succeed to run terraterm…

@ leforban -

On your circuit, there is JP8 located at the top and right side of the board (as you said), which has 5 jumpers are named 1,2,3,4,5. The one you shipped to us, there is a jumper on the 4th already but the firmware is still running. When I remove that jumper or locate to other places, I can not talk to EMX module. As I know, it requires IO4, IO0 and IO30 are shorted to GND. I can take a look on EMX module, but make sure nothing wrong in your circuit design, and we don’t want to make any change on your circuit,

Because right now I only reproduce that bug on your circuit easily, but not happened on our Spider/EMX development system board.

You’re right!!! You know the board better than me now :slight_smile:

I will give you the info tomorrow, I need to check the PCB

Hello Dat

To update tinybooter you need to put a jumper on 1-2-3-4 of JP8 connector. Then you’ll be able to use Terraterm.

I can’t use 4.2.11 sdk because I am using vista and VS C# express. It seems to me that I can’t upgrade right?

What VS version are you using? Assuming it’s VS2010, you need the 4.2 netmf SDK and the latest GHI SDK. There are no dependencies that I’m aware of that prohibit using an older OS.

I am using SDK 4.2.10. I can’t use recent version of VS due to vista. May I install SDK 4.2.11?

How many boards are happened?

if you’re talking about the GHI SDK, yes. There is no requirement to use VS2012. VS2010+NEtmf SDK 4.2 works fine. it’s only been in the last SDK cycle timeframe when GHI decided to move the VS2012+netmf4.3 as the recommended option rather than VS2010+netmf4.2QFE2.

About RAMC error, we are continue working on this to see what we can do.

Just one thing I want to share now that is your microSD, when I use your SD, it causes exception or missing data randomly although everything looked normally.

Finally I found out even Window still have problem with that.

The version you are using is 4.2.10.0 which is old firmware, try to use latest which fixed some bug related to this.

Try to catch this issue on latest version and send back to us if you can reproduce.

[quote]
Some of them are unreachable through usb to deploy:[/quote]

I think this is different story, sometime your application causes this issue by using 100% CPU and no room for USB interrupt, not sure. It is easy to see if in your application have something like:


while(a==b);

Better if


while(a==b)
{
sleep(1);
}

Hi Dat as already mention on the forum, there’s lot of issue using SD and GHI devices due to the fact that writing may corrupt SD card if power is switch off suddenly. However it is the same thing for all embedded devices and I see such troubles only using netmf products. flushing volume seems to enhance reliability but it does not solve it completely.

Concerning the upgrade, the problem is that it take a lot of time (and money) to update code. I spent a hard time during the last summer to upgrade from 4.1 to 4.2. And there’s new bugs on serial port (buffer overflow) for this version. I wouldn’t like to upgrade and discover something bad…

My appplication is not supposed to… sleep :slight_smile:

It would be interesting for me to know in which context it happened!!! I have only one explicit thread (a big loop where i poll serial port, analog inputs, digitals, can bus and so on).

According to you what would be the proper time slot for USB interupt and at which rate?

[quote=“Dat”]

The version you are using is 4.2.10.0 which is old firmware, try to use latest which fixed some bug related to this.

Try to catch this issue on latest version and send back to us if you can reproduce.

[quote]

in fact the application is reliable on the 30 others EMX modules. It can ran for a week without any pb. The only pb was on these ten EMX (shortcuts between vcc and gnd, usb or sd problem and this last with RAMC error).

Is there no fix for this yet???

I am using the latest premium library from GHI (with EMX v4.2.11.2, TinyBooter v4.2.11.1).

I am doing the


Debug.GC(true); 
Thread.Sleep(10);

but the problem persists!!

Any help will be greatly appreciated.

@ NemesisXB -

if I remember correctly, write a file to SD then the bug is happened?

if you have another EMX, try it?

Hi Dat,

Thanks for the response. I seem to have beaten it.

It happens when using sockets. I use the socket in a loop (if the connection fails, I try again). I modified my code to declare the socket inside the loop in stead of before the loop. I believe this destroyed the reference giving the GC a chance to collect the unused socket instance.

thanks