ManniAT's personal site

I'm from Austria - which means: Please excuse my English

Velleman Kits Velleman Homepage Velleman Kits

K8055N35 .NET component for Velleman K8055

Velleman offers a nice USB Experiment Interface Board - the K8055

Board features:

  • general conversion time: 20ms per command
  • power supply through USB: approx. 70mA
  • diagnostic software with DLL included
  • 5 digital inputs (0= ground, 1= open) (on board test buttons provided)
  • 2 analogue inputs with attenuation and amplification option (internal test +5V provided)
  • 8 digital open collector output switches (max. 50V/100mA) (on board LED indication)
  • 2 analogue outputs: 0 - 5V, output resistance 1K5 / PWM 0 - 100% open collector outputs max 100mA / 40V (on board LED indication)

The problem:

The (above marked) DLL is some kind of a Pascal thing (Delphi?) and offers no native support for .NET Languages. These kind of DLLs have broad support in "hardware related environments" and can be easily accessed from native languages (C, C++, ASM).
BUT - although I started my work with assembler, C and C++ (and still use those things) -
I'm totally addicted to .NET languages (since my first touch at PDC 2000) and RAD systems.
This means the K8055 has to be .NET accessible.
There are two options:
  1. Write a wrapper around that DLL
    I thought about it because I achieved a lot of experiences in this kind of apps while engineering
    TTNCF our TomTom Wrapper 
    Unfortunately the Velleman DLL has some limitations (multitasking, multi instances...)
  2. Implementing the whole thing without using the Velleman DLL
    Much more work - but it removes any feature restrictions.
We decided to go the hard way - and implemented the whole board access without using the provided DLL.

The result is our K8055N35 Component:

  • Fully managed code (C# but that doesn't matter)
  • Mutlithreaded, 64bit support, Service... 
There is much more - take a look at the details