Bluetooth Bee PIO control

I am trying to get access to the Bluetooth Bee individual ports, because I am trying to connect those pins to the external interrupts of my arduino.

I want to send a command (from my laptop for example) through bluetooth to the arduino. And depending on the info I send, I want the Bluetooth Bee pins to activate the external interrupt on the arduino.

I was trying commands such as “\r\n+PIO3=1\r\n” to set that pin high (and connected to one external interrupt on my arduino) but that does not work. And I cannot find proper documentation online for this specific module that would tell me how to do this task.

Any suggestion on how to make this work?


hi there,
If you mean that controlled arduino PIO with bluetooth bee when your computer sent command to bluetooth bee?


yeah…how do you do that?
I know with the Xbee you can use xbee-python library to do remoteAT.
But how do you do that with the bluetooth bee?

I have not do that before.Just the idea to you.

  1. paired your Bluetooth Bee to computer Bluetooth , used Bluetooth Serial software send data to your Bluetooth Bee.
    2.connected your Bluetooth Bee to Arduino , read the data from Bluetooth Bee .
    3.Arduino programing , analyzed data then do PIO control.


From what I can see, the data sent to your bluetooth bee will arrive in the serial buffer (or software serial buffer) of the Arduino. There are 4 documented PIO’s that you can access from your Arduino, but they aren’t going to be useful to you in a general sense.

PIO0 is used to send the Bee the command to disconnect
PIO1 can be monitored to find if the bee is connected or not
PIO11 & PIO10 are status LEDs by default

Is there a reason this needs to be interrupt driven? If your Arduino isn’t doing anything else, this could be solved with something like this:

void loop() { while(!Serial.available()); // do nothing until there's something received from Bluetooth bee on pins 0&1 of Arduino switch ( { case 0: // 0 received by bluetooth // do something break; case 1: // 1 received by bluetooth // do something different break; case 2: // 2 received by bluetooth // do something else break; default: // something unexpected and unknown received // deal with exceptions break; } }(if your bee is on a different pair of pins, you’ll need to use SoftwareSerial…but same concept applies).

If your Arduino will be busy doing other things, perhaps have it routinely check to see if Serial.available() > 0 every half second (say) to act on these bluetooth commands will do the job?

Cheers ! Geoff