I finally got it working. The number of stop bits was wrong, that's why the first character was always correct and the rest incorrect.
Final code if SerialPortNG.NextClusterSize >= 0 then begin sRaw:=SerialPortNG.ReadNextClusterAsString; for i:=1 to length(sRaw) do iData[i]:= byte(sRaw[i]); Thanks Wallace _______________________________________________ NZ Borland Developers Group - Delphi mailing list Post: delphi@delphi.org.nz Admin: http://delphi.org.nz/mailman/listinfo/delphi Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject: unsubscribe