TinyCLR - Compatibility between 1.0 and 2.0

I have some of the older GHI boards and modules that I’d like to give to some use, in particular a UCM5550 with wifi, so I plan on sticking a TinyCLR version 1 application on it. Is it possible to work with both versions of TinyCLR at the same time in Visual Studio, or do you have to install/reinstall to switch back and forth, or run with separate machines? I have a surface pro that I could set up for Version 1 ap development, but thought I’d check first before proceeding.

John

Unfortunately you can’t install both side by side. You will need a VM to do both.

Or you can have VS 2017 for TinyCLR 1.0 and VS 2019 for TinyCLR 2.0 side by side

2 Likes

Have you tested that? Good to know! I didn’t know

Nice, that’s great I’ll give that a whirl!

yes, it works

1 Like

I just tried out. I could run and debug an old App for the FEZ Board with TinyCLR 1.0 on VS 2017. In the moment I was not successful to create a new APP, but I didn’t want to spend to much time in this right now. Seems that TinyCLR Config for V 2.0 has to be deinstalled for installation of TinyCLR config for V1.0.

Yes it works very well

1 Like

Gus, is it possible to allow both versions of TinyCLR config to run in one system (Or maybe amend 2.0 to work with older hardware?), to assist with the legacy hardware that can’t be upgraded to 2.0?

1 Like

I have a similar question, but could we take a step back.

From this thread it seems that:

  • code complied against TinyCLR 1.0 will not run on new hardware.
  • code complied against TinyCLR 2.0 will not run on old hardware.

But in true .Net fashion will code written for TinyCLR v1.0 say using
GHIElectronics.TinyCLR.Devices.Spi
then be compatible with, hopefully down to the namespace, its TinyCLR v2.0 replacement?

Or is the update entirely a breaking change?

When we updated we made decisions mainly based in what is best for the future and not based on compatibility. This is why this is 2.0 and not 1.1 for example.

Generally speaking, we recommend using netmf on old products and TinyCLR 2.0 on new SITCore family.