Serial instrument in Opentap

Hi there.

Sorry if this a compleatly Newbee question, but I have a instrument running serial communication and does not support SCIP commands.
I have been trying to create a instrument / package but i’m failing misserabbly at it.

Can someone help me with a plugin or or detailed instructions for creating this instrument so that I can use it in OpenTap ?
The instrument in question is a Feasa LED analyzer

Thank’s

Hi @b.staal,

It sounds like you are on the right track. I think you should open the connection to the DUT in the Open method and then close it again in Close. There are libraries you can use for serial port connections: SerialPort Class (System.IO.Ports) | Microsoft Learn

Maybe you could elaborate on how you are failing?

PM me (craig.petku@IndieSemi.com) if you would like to discuss challenges with this equipment. We can bring the discussion back here afterwards as appropriate. Part of my concern is if you are selecting the correct instrument. I 've used Feasa equipment with OpenTap for a couple of years…

Also: I don’t know what the default net framework is nowadays, but early versions of the SDK used netstandard 2. I had to change to 462 for system.io.ports to support serial devices.

Thank you all for helping, I managed to find a installation of Visual Studio and not the visual studio code that I was using, turns out that this made life a lot easiere when having to build the project and understand how it all ties together.

I cannot speak specifically to these devices, but System.Io.Ports.SerialPort should work in netstandard2.0. However, it requires the separate NuGet package.

(I believe the same is true of .NET Core and .NET 5+.)

My comment goes back to 2021 when I started wiith OpenTap. Back then NetStandard2 did not support serial ports. It may now with later libraries as you point out. Back then there was even a comment in the project file…

<!-- We are debugging using NET Framework, but builds to Netstandard in release mode to ensure cross platform compatibility -->
<!-- If your plugin is Windows only and you use Windows specific API's, feel free to change "netstandard2.0" below to "net462" and everything will work as when you are debugging. In this case, remember to change "OS" in package.xml to only "windows" -->
<!-- If your plugin should be cross platform but does not build in release mode, please verify that all API's you used are available. You might need references or nuget packages for API's that are available in NET framework, but not in NetStandard -->