hxSerial is a library for serial communication in Haxe (C++/Neko target). It is based on ofSerial in OpenFrameworks.
The most easy and proper way is from haxelib:
haxelib install hxSerial
Or you can download/checkout the source from the github repo.
Create a Serial
object, given its device name and speed (in bits per second, ie.baud):
var serialObj = new hxSerial.Serial("/dev/tty.usbserial-A4001tkb",9600);
The device name above is something you will get in Mac. For Windows, it should be something like "COM7". For Linux (e.g. Ubuntu), it should be similar to "/dev/ttyUSB0".
You can check the device names by trace(hxSerial.Serial.getDeviceList())
.
You can then read/write to the device using the readByte
/writeByte
method.
Note that you must read from the serial after setup. If the serial input is accumulated for too long, it will slow down the whole system.
For writing, writeByte()
returns true
if the operation is successful. writeBytes()
returns the number of bytes it writes.
For reading, you first check the number of bytes arrived by calling available()
. If the amount of bytes you needed is enough, call readByte()
to get a single byte as Int
or call readBytes()
to get multiple bytes as String
.
Fixes for haxe 3.1.3 and hxcpp 3.1.39.
Fixed memory leak and added Neko support.
First release. Supports Windows/Mac/Linux.