Receive serial data from 2 arduinos for robot - not working with BlueSMiRF

Fellow Arduino enthusiasts - anyone worked with a BlueSMiRF?

For a robot project I need up to 16 PWM outputs - since I’ll eventually build a custom circuit board I wanted to use Unos - the only way I figured I could get my 16 PWM was using more than 1 Arduino Uno.

I’ve come up with a little protocol where I can send instructions to a given Arduino to PWM any of its available pins, it works quite well with 2 Arduinos listening in to the same RX pin and doing what they’re told. Now I want them to both send data back (to request corrupt message resends or send info from the accelerometer) and that’s where it’s getting interesting.

Based on some message queuing in the software and the first solution mentioned by planix here, with some diodes, I can get the 2 Arduinos sending data back into a wired USB to serial adapter without conflicts - so far so good.

I’ve had a lot of fun with my BlueSMiRF and can happily send and receive data with a single Arduino but for some reason when I replace the wired USB to serial adapter with a BlueSMiRF it refuses to send the messages (receiving them is still fine).

In fact I only get any messages received when I go back down to using one Arduino and remove the diode. (Now I thought removing the diode was weird - surely the BlueSMiRF should act just like a wired serial adapter here?)

Can anyone help me get this working? Or any suggestions for a completely different approach?

(I’ve attached some images of the working wired approach and the currently one-way only BlueSMiRF - some may recognise my wired USB to serial adapter as my Uno board without a seated chip - works well as a power source too!)