Comments (2)
Attempting to print an unprintable character (like 128) can yield weird outputs (because they are unprintable). Normally what you do with those characters is to print their ASCII value, not the character itself.
from ardity.
Well, I created a solution... Turns out it was to do with serialPort.ReadLine() and the way it converts to string. Not sure why it was adding question marks (completely ridiculous actually). But what I threw together reads in a line of bytes directly instead of using Readline()
SerialThreadLines.cs
/*OLD WAY
protected override object ReadFromWire(SerialPort serialPort)
{
return serialPort.ReadLine();
}
*/
/*NEW WAY*/
private List<byte> buffer = new List<byte>();
protected override object ReadFromWire(SerialPort serialPort)
{
buffer.Add( (byte)serialPort.ReadByte() );
// Search for the separator in the buffer
int index = System.Array.FindIndex<byte>(buffer.ToArray(), 0, buffer.Count, IsSeparator);
if (index == -1)
return null;
buffer.RemoveAt (buffer.Count - 1); //remove CR
buffer.RemoveAt (buffer.Count - 1); //remove LF
var output = buffer.ToArray ();
buffer.Clear ();
return output;
}
private bool IsSeparator(byte aByte)
{
return aByte == '\n';
}
Above could really use some optimization but it's simply conceptual.
from ardity.
Related Issues (20)
- queue is full dropping messege HOT 8
- Works In Editor but now on windows build HOT 3
- From Unity to Arduino HOT 2
- Working with BLE and Mobile HOT 3
- Can ardity read serial information from arduino attached to an android device via usb c (unity android build)? or is it only for windows?
- The Data is visible in Arduino serial monitor but not reciving in Unity3D HOT 1
- Can't compare strings (sorry am noob) HOT 1
- Game crashes when exiting HOT 2
- cant find the COM HOT 2
- PortMapper trial HOT 2
- Does Ardity work on Linux ? HOT 1
- Dropping too much messages when frame rate is below 100 fps HOT 3
- Flooding queue when device is removed unexpectedly on linux HOT 5
- how to use aridity to send byte HOT 6
- Use with Mobile HOT 1
- Unity Package contains un-update source
- Windows 11 - Exception: Access is Denied HOT 2
- Sending data from unity to arduino
- Thread is blocking for readTimeout even when no data is available
- A specific question HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ardity.