Hello,
I have created a PureData object to exchange a value with your Arduino code. It implements a send and receive object similar to the one that already exists in PureData. It takes away all the protocol hacking and still allowes for custom made Arduino firmware.
http://www.lourensrozema.nl/index.php/arduino_puredata.inc
Lourens Rozema