Hello,
after several attempts over the years to connect PD and Blender via Osc i just tried a different route being inspired by my work with Processing and PD. I tried to simple down the process and work directly with udp sockets, basically getting rid of formating problems between different Osc implementations. After the switch i could easily send arrays with thousands of values from PD to Processing and back.
I had the basic socket commands for python from the tutorials floating around and decided to give it another try.
I'm nowhere near fluid in python, but i got it working on the most basic level. The code is simple and short. The best thing is that it should be usable for a few coming Blender versions, since the socket module shouldnt change much.
What happens is that Blender sends the position vector of the game object to PD, which unpacks/packs it again and sends it back. If everything works you should see the incoming PD data in Blenders console.
The problem of dropping framerate seems to occur when PD doesnt send the messages fast enough. To avoid that i attached a [metro 20], this is fast enough on my machine. The always sensor for the receive script is in pulse mode and the frequency is 5. This is also related to the framerate drop. When i use unlimited frequency i get the drop. You have to find the best values of message frequency from PD and logic ticks to compute incoming messages in Blender.
I used Blender 2.65 (no libraries needed) and PureData extended 0.43.4.
I hope this might be a help to others struggling like i did.
Sending data from Blender to Processing also works, but i need to figure out how to get the data in Processing in the right format.
http://www.pdpatchrepo.info/hurleur/_blenderUdp.zip