Page 1 of 2

MatrixOrbital SDK

Posted: Wed Jun 08, 2005 2:42 pm
by Jeroen Vonk
Hi,

I wrote a MatrixOrbital SDK, you can find it at Matrix Orbital SDK

- Written in C# (So yes, it requires the .NET Framework)
- Fully documented
- Can be used in legacy development environments like Delphi and Visual Basic

and much more :)


Have fun, hope you like it.......

New MatrixOrbital SDK released (v2.01)

Posted: Tue Jul 19, 2005 1:04 pm
by Jeroen Vonk
New version of the MatrixOrbital SDK released!

Please visit this link for more information...

+ Added support for LCD brightness and contrast
+ Added rpmGauge
+ Added TemperatureGauge
+ Added support for Adv. GPO Fan readout
+ Added support for Maxim DS18S20 Digital Thermometer (1-Wire device)
+ Added support for 1-Wire (MatrixOrbital.OneWireDevice)
+ Added list of supported TextDisplays (see Demo)
+ Added IsOpen for TextDisplay
+ Added Open(int port, int baudrate) for TextDisplay
+ Added Open(string portname, int baudrate) for TextDisplay
+ Added Read(byte[] buf, int count, int timeout) to IMOComm (needed for Display Return Protocol)
+ Added MatrixOrbital.MatrixOrbitalBitmap and MatrixOrbital.MatrixOrbitalFont
+ Added support for MatrixOrbital Graphic display types (MatrixOrbital.GraphicDisplay)

* Made an error with the Advanced GPO's: instead of the last, they are the first available GPO's
* Changed DisplayType constructor (now reads data from embedded XML resource)
* Changed reading Type, Version and serialnumber from display

- Removed Delphi7 example
- Removed the eMOModuleType enumerator (replaced with embedded XML resource)
- Renamed enumerator types (stripped 'mo' prefix)
- Renamed DisplayType to TextDisplayType
- Renamed assembly to MatrixOrbital.Display.dll because it now supports Graphic Displays
- Renamed moSerComm to SerialComm

Enjoy, hope you like it :)

Regards,
Jeroen Vonk

Image

Posted: Wed Jul 27, 2005 9:32 am
by TCC
Just curious, is this an alternative program to LCDC?

Posted: Wed Jul 27, 2005 10:03 am
by Jeroen Vonk
No it's not, and it is not intended to be :)

An SDK is a Software Development Kit, which provides an easy way to write software yourself. For instance, you don't have to know how to communicate with the display to read the temperature from a 1-Wire device, just tell to give the temperature and it will do so :)

Posted: Thu Nov 03, 2005 12:59 pm
by Jon
Great Work!

I was looking at developing my own little app for myself... Because I really have nothing better to do with my spare time lol. This'll make it go a lot smoother. Thanks for putting in all the hard work!

Posted: Sun Apr 16, 2006 3:00 pm
by Jeroen Vonk
Again (or finally? :)) a new version of the MatrixOrbital SDK.

16 april 2006, Version 2.02 (Experimental)

+ Experimental Linux,Solaris and Mac OS X support using Mono!! (http://www.mono-project.com/)
Unfortunately Mono doesn't fully support serial communication; there is no event notification
for received serial data. This means that events from the keypad are not trapped. (basically
this means that the keypad is useless.) Full serial support should be provided in Mono 1.2.
The default serial communication of the SDK cannot be used, so a limited version is also provided.
A small console demo application shows how to use a character based display running Linux.
Tested with a PK202_24_USB on a the latest unstable Debian release (codename etch)
with Mono 1.1.13.4.
I haven't tested a graphical display yet (still have to make proper cabling) but everything
should work. (like uploading fonts and bitmaps) If not, please let me know.
+ Upgraded to .NET Framework 2.0
+ Added support for shared IO ports found on some modules (e.g. PK162_12, LK162_12, VK162_12)
+ Added the possibility to download an updated display definition file to the demo program.
* Custom Character Demo is now multi-threaded.
* Changed brightness for PLED display. (Text Demo Program)
* If no OneWire devices were connected on a display with a OneWire interface an exception was
raised (incorrect packet length) It now simply returns an empty OneWireDevice array.

Enjoy, hope you like it :)

Screenshot of console application using Linux (Debian etch):
Image

Posted: Mon Apr 17, 2006 8:38 am
by Nick
Well done Jeroen! I'm going to have to try this out! Hey Jon, have you used this yet?! I'm going to come over and grab a display to toy with!

Keep us updated on anything new Jeroen!

Posted: Mon Apr 17, 2006 2:56 pm
by Jeroen Vonk
Nick wrote:Well done Jeroen! I'm going to have to try this out! Hey Jon, have you used this yet?! I'm going to come over and grab a display to toy with!
Please let me know what you think of it. Which OS and which display are going to use?
Nick wrote:Keep us updated on anything new Jeroen!
I sure will :)

Clarification

Posted: Wed Apr 19, 2006 12:11 pm
by dconnell
So if I use one of the character displays with keypads on a linux box (Redhat) my code would not be able to interpret the keypad commands at this point - correct?

Re: Clarification

Posted: Wed Apr 19, 2006 4:34 pm
by Jeroen Vonk
dconnell wrote:So if I use one of the character displays with keypads on a linux box (Redhat) my code would not be able to interpret the keypad commands at this point - correct?
Is it possible to read data from the keypad, but you will not receive an event. Instead you have to poll the display at a certain interval. Which of course is horrible in an OO environment. :-?

Posted: Mon Sep 18, 2006 10:28 am
by Yoyo
Hi Jeroen,

Great job on the Matrix Orbital SDK.

I am new to programming. I've bought a VFD (VK202-24-USB) from Matrix Orbital. I just want to write "Hello World" to the screen via USB connection. Can you show me how?

Thanks,

-yoyo

Posted: Mon Sep 18, 2006 11:51 am
by Yoyo
Hi again,

Sorry I forgot that I am using C# as my programming language.

Posted: Tue Sep 19, 2006 12:08 am
by Jeroen Vonk
Yoyo wrote:I am new to programming. I've bought a VFD (VK202-24-USB) from Matrix Orbital. I just want to write "Hello World" to the screen via USB connection. Can you show me how?
Sure :)

Create a new C# solution, add a reference to the MatrixOrbital.Display.dll, and simply use this code:

Code: Select all

MatrixOrbital.TextDisplay display = new MatrixOrbital.TextDisplay();
display.Open("COM3");
display.ClearScreen();
display.Write("Hello World!");
Reading temperatures is more fun, try this (only works if a onewire temp device is connected):

Code: Select all

MatrixOrbital.TextDisplay display = new MatrixOrbital.TextDisplay();
display.Open("COM3");
display.ClearScreen();
display.Write(string.Format("Temp #1: {0}",display.Temperature(display.OneWireDevices[0])));
Or Fan RPM:

Code: Select all

MatrixOrbital.TextDisplay display = new MatrixOrbital.TextDisplay();
display.Open("COM3");
display.ClearScreen();
display.Write(string.Format("RPM #1: {0}", display.ReturnFanRPM(2,0)));
Have fun :)

Posted: Tue Sep 19, 2006 11:09 am
by Yoyo
Thanks Jeroen for helping me out.

Posted: Wed Sep 20, 2006 4:53 pm
by Yoyo
Hi again Jeroen,

I am looking thru your documents on the Matrix Orbital SDK. If I have a text that is greater than 24 characters. Is there any way that I can make it autoscroll across that line and keep repeating? Thanks again Jeroen.