Main Site Documentation

I2C stop working


Hello, my problems started since I updated firmware with version 1.7.1. I have Cobra EMX device, and I2C simply stopped working after firmware was updated.

I have Relay16 board and IO40 which are tested, but I2CDevice.Execute return only 0.

I didn’t made any other changes except firmware.


I believe we did not change anything on I2C, see firmware release notes please.

Step in your code, make sure it is running and there is no exceptions.


I simply trying to execute these lines, but I have no luck:

[italic]FEZ_Components.Relay16 relay = new FEZ_Components.Relay16();

It has worked for few weeks without any problem.

How can I test my hardware?


Have you stepped on the lines (F11 key) and made sure 100% that your code is acoustically running.

Sometime a firmware update causes old projects to stop working.

Perhaps start new project and add you old code to it.


I have checked all that. My hw is affected with commands I expected, but don’t respond.

xaction[0].Buffer[0] = 0x02;
xaction[0].Buffer[1] = (byte)channels;
if (I2C.Execute(this.config, xaction, 100) == 0)
new Exception(“Failed to send I2C data”);

I2C.Execute method return 0, but there is no any exception about this. This is making me crazy. Is there any way to check is that channel still ok, but I don’t expect being burn it. I tried to change addresses of I2C hardware, but this didn’t help.

Before that update, I had IO40 and Relay16 on same pins, with different addresses, of course, and everything worked fine.

I tried to make new application, add driver for relay16, but nothing… No answers, no exceptions.


I noticed that LED attached to IO11 won’t work. IO12 is ok, but seems that IO11 don’t receive any commands.


Ok, seems my Cobra is burned down.


I will try to explain what I notice.

After installing firmware, and putting Cobra into it’s place, I noticed that green LED on Relay16 board was turned on, even switch was turned to off. I didn’t notice that Relay16 was getting power from Cobra for last few weeks, while I was experimenting.

I had few situations that Relay16 board was disabled, but Cobra worked good. Then, somethings happen. All became bad after firmware update, but maybe I made some stupid mistake, I still don’t now.

All i know, now it is dead.


You can go back to old firmware if you like to make sure it is not the firmware.


It is late now. As I said, now it is dead. Burned down. I can’t keep it in my hand when power is attached.

Pls, can you check mu last post, about supplying relay16 board with power from Cobra. This is very suspicious.

I could return fw, but what about sw. Can I uninstal GHI.

Can I replace GHI NETMF v4.1 and .NET Gadgeteer Package with older version?


yes you can replace the currently installed GHI SDK with an older version, all you need to do is get the older version. But to me you have an electrical problem in what you’ve wired up or had wired up, and you’ve done something totally unrelated to the SDK and firmware update - maybe a shorted wire or something.