When sending data over a serial connection, it's good to have some sort of 
protocol to distinguish messages. A very common protocol is SLIP 
https://en.wikipedia.org/wiki/Serial_Line_Internet_Protocol
It's often used for streaming OSC messages (e.g. TCP or serial). You can encode 
in Pd with [mrpeach/slipenc] and decode on the Arduino with 
https://github.com/CNMAT/OSC/blob/master/SLIPEncodedSerial.h

On the other hand, MIDI is already a protocol (messages are delimited by status 
bytes) and you could send your display data on an unused MIDI channel or even 
as Sysex messages.

Christof

> Gesendet: Sonntag, 14. Juli 2019 um 14:59 Uhr
> Von: "Ingo" <[email protected]>
> An: 'pd-list' <[email protected]>
> Betreff: [PD] Question about transmission order to serial port [comport] with 
> two independent streams
>
> Hi there,
>
> I need to send both display data and MIDI out data to the same serial port
> via USB using [comport] going to an Arduino Micro.
> The MIDI goes on to the serial transmit pin and the display goes to the I2C
> pins.
> Unfortunately neither the display nor the MIDI data is very predictable
> concerning timing.
>
> The display uses drip to send one character after the other and MIDI is
> sending out manipulated data from the MIDI input whenever MIDI comes in.
> Both senders are on different sections of the software and are not
> synchronized in any way.
>
> Since I need to find a way to split up each stream inside of the Arduino
> without meshing them up and causing errors my question is:
>
> Does Pd send one message (or packed numbers) with two or more values without
> interruption?
> If yes I could simply prepend an unused number (like e.g. 253 or 254)  as a
> header in front of each MIDI Byte.
> If needed another one for the display data.
> (The latter is probably not necessary since I can reset after each MIDI Byte
> inside of the Arduino to keep sending again to the display.)
>
> Meshing up MIDI and display data would be absolutely chaotic!
> If I can't guarantee that each Byte goes to the correct destination I will
> have to use two separate arduinos.
>
> Thanks!
> Ingo
>
>
>
>
>
> _______________________________________________
> [email protected] mailing list
> UNSUBSCRIBE and account-management -> 
> https://lists.puredata.info/listinfo/pd-list
>



_______________________________________________
[email protected] mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list

Reply via email to