First deploy help

Today I got my fez spider starter kit.
after some driver trouble i finally managed to upgrade the firmware.
Next i followed the starter guide to make a first test project but I am unable to deploy it to the device.

The output complains that the Assembly of Microsoft.SPOT.Hardware (4.2.0.0)
doesn’t match the firmware.
message:

  • ERROR!!! Firmware version does not match managed code version!!! *

  • Invalid native checksum: Microsoft.SPOT.Hardware 0x7765AC69!=0xBF718024 *

the display attached to the spider shows the EMX version as 4.2.9.0

@ andre: thanks for the reply. 4.2 is indeed selected as the target framework.

I was wondering if the hardware.dll is the latest available version. I do have some c# experience, which I forgot to mention in the previous post.

no I have installed 4.1 and 4.2.
for the 4.2 I have the following installed:

  • GHI .NET Gadgeteer SDK
  • GHI OSHW NETMF v4.2 SDK
  • GHI Premium NETMF v4.2 SDK

I would re flash the firmware on the spider. Vs is reporting it as an earlier version than the board is showing.

Indeed " ERROR!!! Firmware version does not match managed code version!!" means you have a version difference between VS project and spider.

You get a option to update the hardware at the end of the setup, did you update this?

I re-updated the firmware, but it makes no difference.
I have another question. If I deploy a project that uses extra modules, do the modules have to be connected when I debug?

I tried with and without the modules attached, doesn’t seem to make a difference though.

@ david: yes i’ve updated the spider firmware 2 times now (using the fezspider firmware updater tool). both times it was successfull

For most modules you will need them attached.

If the firmware is 4.2.x.x then you problably have a reference to a 4.1.x.x in your project.
You should be able to see what dll in the output window when you try to deploy.

This bit of the error worries me * Invalid native checksum: Microsoft.SPOT.Hardware 0x7765AC69!=0xBF718024
Open mfdeploy and go to device/info ( I think that’s where it is) that should show you the firmware versions etc.

When you updated the spider you set the dip switches right? Did you switch them back and then reset the board?

The firmware or project is not up to date, update firmware and start a new project please.

@ Gus - good to know, I was thinking that the checksum meant there may have been a hardware fault.

@ gus: I just updated the firmware succesfully (or so the tool said).
I also created a new project (gadgeteer netmf v4.2), redesigned and copied the code.
Same result.

here’s the complete output after debugging:
Create TS.

Loading start at a0e00000, end a0e1383c

Assembly: mscorlib (4.2.0.0) Assembly: Microsoft.SPOT.Native (4.2.0.0) Assembly: Microsoft.SPOT.Security.PKCS11 (4.2
.0.0) Assembly: System.Security (4.2.0.0) Loading Deployment Assemblies.
Attaching deployed file.
Assembly: Microsoft.SPOT.IO (4.2.0.0) Attaching deployed file.
Assembly: GHI.Premium.IO (4.2.9.0) Attaching deployed file.
Assembly: Microsoft.SPOT.Graphics (4.2.0.0) Attaching deployed file.
Assembly: GTM.GHIElectronics.Camera (1.1.1.0) Attaching deployed file.
Assembly: GHI.Premium.USBHost (4.2.9.0) Attaching deployed file.
Assembly: Microsoft.SPOT.Hardware (4.2.0.0) ***********************************************************************

  •                                                                 *
    
  • ERROR!!! Firmware version does not match managed code version!!! *
  •                                                                 *
    
  •                                                                 *
    
  • Invalid native checksum: Microsoft.SPOT.Hardware 0x7765AC69!=0xBF718024 *
  •                                                                 *
    

Attaching deployed file.
Assembly: GHI.Premium.Hardware (4.2.9.0) Attaching deployed file.
Assembly: System.Net.Security (4.2.0.0) Attaching deployed file.
Assembly: Microsoft.SPOT.Hardware.SerialPort (4.2.0.0) Attaching deployed file.
Assembly: GHIElectronics.Gadgeteer.FEZSpider (1.1.1.0) Resolving.
Link failure: some assembly references cannot be resolved!!
Assembly: Microsoft.SPOT.Security.PKCS11 (4.2.0.0) needs assembly ‘Microsoft.SPOT.Hardware’ (4.2.0.0)
Assembly: System.Security (4.2.0.0) needs assembly ‘Microsoft.SPOT.Security.PKCS11’ (4.2.0.0)
Assembly: Microsoft.SPOT.IO (4.2.0.0) needs assembly ‘Microsoft.SPOT.Hardware’ (4.2.0.0)
Assembly: GHI.Premium.IO (4.2.9.0) needs assembly ‘GHI.Premium.System’ (4.2.9.0)
Assembly: Microsoft.SPOT.Graphics (4.2.0.0) needs assembly ‘Microsoft.SPOT.Hardware’ (4.2.0.0)
Assembly: GTM.GHIElectronics.Camera (1.1.1.0) needs assembly ‘Gadgeteer’ (2.42.0.0)
Assembly: GTM.GHIElectronics.Camera (1.1.1.0) needs assembly ‘GHI.Premium.USBHost’ (4.2.9.0)
Assembly: GTM.GHIElectronics.Camera (1.1.1.0) needs assembly ‘GHI.Premium.System’ (4.2.9.0)
Assembly: GTM.GHIElectronics.Camera (1.1.1.0) needs assembly ‘Microsoft.SPOT.Graphics’ (4.2.0.0)
Assembly: GTM.GHIElectronics.Camera (1.1.1.0) needs assembly ‘Microsoft.SPOT.Hardware’ (4.2.0.0)
Assembly: GHI.Premium.USBHost (4.2.9.0) needs assembly ‘GHI.Premium.System’ (4.2.9.0)
Assembly: GHI.Premium.USBHost (4.2.9.0) needs assembly ‘Microsoft.SPOT.Hardware’ (4.2.0.0)
Assembly: GHI.Premium.USBHost (4.2.9.0) needs assembly ‘Microsoft.SPOT.Graphics’ (4.2.0.0)
Assembly: GHI.Premium.Hardware (4.2.9.0) needs assembly ‘Microsoft.SPOT.Hardware’ (4.2.0.0)
Assembly: GHI.Premium.Hardware (4.2.9.0) needs assembly ‘GHI.Premium.System’ (4.2.9.0)
Assembly: System.Net.Security (4.2.0.0) needs assembly ‘System’ (4.2.0.0)
Assembly: System.Net.Security (4.2.0.0) needs assembly ‘Microsoft.SPOT.Net.Security’ (4.2.0.0)
Assembly: Microsoft.SPOT.Hardware.SerialPort (4.2.0.0) needs assembly ‘Microsoft.SPOT.Hardware’ (4.2.0.0)
Assembly: GHIElectronics.Gadgeteer.FEZSpider (1.1.1.0) needs assembly ‘Gadgeteer’ (2.42.0.0)
Assembly: GHIElectronics.Gadgeteer.FEZSpider (1.1.1.0) needs assembly ‘Microsoft.SPOT.Hardware’ (4.2.0.0)
Assembly: GHIElectronics.Gadgeteer.FEZSpider (1.1.1.0) needs assembly ‘GHI.Premium.IO’ (4.2.9.0)
Assembly: GHIElectronics.Gadgeteer.FEZSpider (1.1.1.0) needs assembly ‘GHI.Premium.Hardware’ (4.2.9.0)
Assembly: GHIElectronics.Gadgeteer.FEZSpider (1.1.1.0) needs assembly ‘GHI.Premium.System’ (4.2.9.0)
Error: a3000000
Waiting for debug commands…
The program ‘[10] Micro Framework application: Managed’ has exited with code 0 (0x0).

Did you also install the .netmf 4.2 Sdk as well as the ghi and gadgeteer sdks?
Here is the link from the support page https://netmf.codeplex.com/releases/view/91594
I would be tempted to in install all sdks and re install starting with the .netmf Sdk then run the ghi installer package. Then re flash the spider etc

Clue!

I know it’s a clue, but if I run the firmware update tool and it updates succesfully that should do the trick right.

@ Ruben - Something does not match. What directory are you getting the firmware files from?

Please start a new project like I suggested Does it work?

And what version do you have for Microsoft.SPOT.Hardware if you look at the reference properties in your project?

As mike says, if you have 4.1 installed then the firmware updater can see that as the path for the firmware, make sure the source path is the 4.2 location.

thanks for all the help guys.

@ gus: I allready started a new project yesterday.

I uninstalled the NETMF version 1 yesterday via the control panel (programs and features).
Then I reinstalled version 4.2 and all the sdk’s.

I checked the installation and the mainboard folder (C:\Program Files (x86)\GHI Electronics\GHI .NET Gadgeteer SDK\Mainboards\FEZSpider) as well as several of the module folders has both the NETMF 4.1 as the NETMF 4.2 folder.

When I use the .Net Gadgeteer Application (NETMF 4.2) project template, It automatically references the gadgeteer 4.1 assembly instead of the 4.2. In the previous projects I deleted those references and pointed them to the 4.2 version.

But which one should I use?
For instance 4.2 mainboard dll (GHIElectronics.Gadgeteer.FEZSpider) can be found in three different locations:

  • C:\Program Files (x86)\GHI Electronics\GHI .NET Gadgeteer SDK\Mainboards\FEZSpider\NETMF 4.2
  • in subfolder le
  • and in subfolder be

I’ll try to change all the references for the new blank project. If that doesn’t work I think it would be best to uninstall and delete all GHI/gadgeteer/micro framework stuff and reïnstall everything.

again thanks for all the suggestions everyone!!

EDIT: it seems that every time I connect all module in the designer it automatically changes the reference back to the 4.1 assembly. even when I delete the reference and add a new one pointing to the 4.2 version, when it’s added, it still points to the 4.1 assembly.
basically computer says no :slight_smile:

Next up reinstall everything I guess.

success: I removed and reinstalled everything. All sdk’s and even the .net micro framework.
And just like that it finaly works.

THANKS YOU guys for all the help.
Now I can create my first project and then… take over the world muahahah 3+))