News:

PROTON pic BASIC Compilers for PIC, PIC24, dsPIC33

Main Menu

Problems with security key on Windows10 and Windows7

Started by W Grundmann, Today at 10:37 AM

Previous topic - Next topic

W Grundmann

Hi to everyone,

I am trying to install the ProtonIDE on a Windows10 computer. My current work machine is an old Windows XP computer, which I have been using for many years. It is getting quite unreliable.

For most of my projects I have been using Proton V3.7.5.5 and Proton V3.5.5.5. From experience I learned the hard way to use always the same compiler version for updating firmware.

On Windows10 Proton V3.7.5.5 detects the dongle and runs fine. Proton V3.5.5.5 cannot find the security key and therefore does not compile.

I have tried both my security keys and several computers. The same happens on a Windows7 computer. Installing a virtual Windows XP machine on the Windows10 laptop has exactly the same problem. Proton V3.7.5.5 works and Proton V3.5.5.5 does not.

I need to set up a replacement PC for my old XP computer before it completely dies. I have 100s of projects, which I need to support. Many of them were done with the Proton V3.5.5.5 compiler.

What can I do? Is there a driver for the security dongle, which works with V3.5.5.5 on Windows10?

Best Regards

Willi Grundmann

PS: I also have a Positron compiler, which I use for new projects.

John Lawton

I may be wrong, but I seem to recall that the security key changed at some point in the distant past which might be the problem. Les can probably advise.

John
-----------------------------------------------------------------------------------------
Amicus 8 and 16A/16B dev boards
Especially created for Positron development
https://www.easy-driver.co.uk/Amicus

top204

Version 3.5.5.5 of the proton compiler is from 2013, so it is 13 years old, and Windows 10 was not around then, only the dreadful windows 8.

So there is no driver for the dongle, and never will be because the compilers no longer use the dongle.

If you need to use such an early compiler for some reason, you will need to run a virtual machine with Windows XP or Windows 7 on it, then run the old proton compiler in there, with the existing USB drivers.

That is one of the reasons I was determined to get rid of the silly USB dongle on the Positron compilers, because they were a nuisance, and limited international sales because of postage costs etc...

Regards
Les


Stephen Moss

Quote from: W Grundmann on Today at 10:37 AMFrom experience I learned the hard way to use always the same compiler version for updating firmware.
Unfortuantely that is not always possible, I have recently had to update software at work originally targetted at 32-bit Win7 to 64-bit Win 11 primarialy because Visual Studio not longer supports 32-bit. It ceratinly was not plain sailing, particularly as all the USB related code now acts as though it does not exist, a much bigger problem (I have yet to resolve as USB is difficult) than you will find when upgrading your Proton code to Positron as while some Proton commnads have been downgraded in Positron and primarily still exist only for backwards compatabilty and not recommened for new code, that they still compile should make the transition easier for you.

Quote from: W Grundmann on Today at 10:37 AMI need to set up a replacement PC for my old XP computer before it completely dies. I have 100s of projects, which I need to support. Many of them were done with the Proton V3.5.5.5 compiler.

What can I do? Is there a driver for the security dongle, which works with V3.5.5.5 on Windows10?
While I understand the reluctance to update code from V3.5.5.5 to the latest version, would it not make more sence to do that as and when you need to make changes to a particular piece of code?
There are two good reasons for upding the code to be compatible with the lastest version of Positron the next you have to make changes...
  • You know it has now compatible with the latest verion of Positron and so and there should be no future compatiabilty issues to worry about.
  • If you need to update your code to perform a new task and ask for help, the code examples/methods suggest may involve commands and methods that are not compatiable with V3.5.5.5 (as most people here are using the lastest or close to the latest version) and so the help offered could be of little or no use to you.
Sure, you could mess around with using an XP or Win 7 emulator instead as a quick and lazy solution but it is not necessarily a good long term strategy as the emulator could stop functioning at some point, thereby leaving you with no choice but to update the code to Positron anyway, so all that effort may just be delaying the inevitable.

Some time ago I wrote a program to help with the migration progress from Proton to Positron, I cannot guarentee it will create 100% compatible code as it only handles some fundemantal changes that existed at the time it was written, but it may reduce the time and effort involved in doing it all yourself. It creates and saves an updated copy of the file being processed, leaving the original file in tact so it should be safe to use as you shouldn't lose the original V3.5.5.5 code.
If you want to try it, you can find more information and a download link here

trastikata

I am just throwing ideas here .... you can try Windows 10 in test mode with driver signature enforcement disabled.

W Grundmann

Hi Trastikata,

Thanks for the the advise. I have tried that. Updating the dongle driver with the driver signature enforcement disabled did not change anything. V3.7.5.5 worked, V3.5.5.5 did not.

Best Regards

Willi

W Grundmann

Hi Steven,

Thank you for the advise.

I am very hesitant to switch to a newer compiler version for my old projects. Some years ago I had to do a minor change to a product developed with the V3.5.5.5 compiler. By mistake I made the change with the V3.7.5.5 compiler. I did quite a bit of testing of the new code. However there was an intermittant problem, which I did not find. This was caused by the fact that the V3.7.5.5 compiler disables the interrupt during an EWRITE command. At the time I was not aware of the difference between the two compiler versions. This was affecting the coms routines running in the 125us timer interrupt. I delivered 50 systems to my customer, who installed them in building management systems. After 4 weeks the first complaints came. I managed to duplicate the problem on the workbench. However I had to recall all 50 systems. This caused a great inconvenience to my company, to my customer and to the customers of my customer.

That example illustrates, why I shy away from compiling old prodjects with the latest compiler version.

Replacing the EWRITE command with discrete code can be done. However it would require quite a bit of extra work.

Best Regards

Willi