Ok. Here we are.
I'm trying to make a new project with my arduino, the firm for arduino it's not working for me because I use some hardware over I2C and few things nor usual but this is the situation.

I have and arduino duemilanove with 9 buttons connected and a mpu6050 over I2C, the MPU send to the arduino gyro and accel data, this are values of 16 bits, one of thoes bits it's de sign (+ or -) and the res the numerical values, so the range it's something between -32767 and +32767.

In paralel, the buttons just send the values 1 or 0, just that.

the thing is that I need a really low lattency, i'm using this to control music effects so it showld be as close to realtime as possible.

I setted the baudrate to the maximum, 115200, on the serial port, this, on the serial console sends me the data at a speed more than fast, it's great, the problem it's puredata.

Somewere here in the forum I finded a patch to conver the data from the arduino to redeable ASCII data that it is useful, that part of the patch work like a charm, it's perfect, fast, everithig ok, the problem is when I try to strip the list comming from this part of the patch to usable individual floats.

I've tryed two diferent things, as you can see in the attached patch. The firs one is an [unpack]. The problem with the unpack is that one in a while it says "unpack type missmatch" and this freezes everything, the patch becames slower and slower and I loose the "realtime" capability. If I lower the baudrate the problem persists.
Here the data from the arduino looks something like

A 300 12545 -32112 3511 -34456 321123 0 0 0 0 1 0 0 0 1
meaning
s f f f f f f f f f f f f f f f
I use the firs symbol just to know if the data it's comming in the correct way and to see if the baudrate it's correct, just a reference.

The option two was to send the data in a different way and put a float before each data decimal and use this to route every value to the correct [send]

the data from the arduino looks like

1 300
2 12545
3 -32112
4 3511
5 -34456
6 321123
7 0
8 0
9 0
10 0
11 1
13 0
14 0
15 1

So I can route it, perfectly BUT, and the big but is, it's extremely SLOW, i have like a second od delay between pressing a button and getting it in the trigger on the patch.

so, any ideas?? what can I try? THANKS!

http://www.pdpatchrepo.info/hurleur/ComportArduino.pd