Attaching a Bluetooth Module

Wiring up bluetooth to the Quadrino is easy and best of all, with the new V3, you don't even have to unplug the bluetooth to use the direct USB connection again!

The most common type of Bluetooth module I see out there is the BC417 or close variant shown on the left.

Pack a lunch, You're going to be a while...

I said the wiring is easy, but like any bluetooth device the complicated part is in the software configuration. Unless you've done this before, then it's a walk in the park. You may want to read the bottom of this page first to see if you are up for the challenge.

If you really want easy, then buy a pair of 3DR Radios. The wiring is the same as detailed here, and the software configuration is easy as pie. The 3DR radios have better range and a more stable connection; the only downside is they don't work with tablets or smartphones. They do work great with eePCs, OSX, Windows and Linux laptops and desktops though, so if you are only planning on using these then this is a better way to go - hands down!

Wiring

There are only 4 of the pins required to wire your BlueTooth module, they are VCC(5v), GND, RX and TX. RX and TX are short for Receive and Transmit, respectively. You can ignore any other pins. The pin names should be on the bottom of that board, if not, consult the datasheet for your module. The VCC and GND power connections are easy, just wire directly to the SERIAL header as labeled on the Quadrino. By the way, on the new Quadrino V3 I have renamed that header to BLUETOOTH for clarity. The RX and TX pins require a little more thought. We need to cross the RX/TX from the module to the Quadrino. This is because we want the module to transmit to the Quadrino's RX, and the Quadrino to transmit to the module's RX. See the wiring diagram below.

I have labeled the pins on the Quadrino the best that I can. I have included arrows showing the direction of signal travel going into the Quadrino pin. So an arrow towards the pin means "travelling into" the Quadrino, and vice versa. The module displayed in the wiring diagram also shows these arrows but I find most don't and simply label RX/TX and leave the guessing up to us!


Suggestions

  • Use pin headers - do not solder wires directly to the board.
  • Do not unsolder pin headers once soldered - see below
  • Do not place your Bluetooth module near an ESC
Desoldering Pin Headers

Do not desolder pin headers once soldered to the board. Without adequate desoldering skills you are likely to permanently damage your Quadrino Board. Accessive heat will cause the metal traces on the PCB board to un-glue and lift off the board. If you simply must remove a pin header, first pry off the black plastic piece that holds the gold pins together which allows you to remove each pin one at a time and limit the amount and duration of heat applied to the board. Sacrifice the pin header, not the flight controller!

Switching back to USB Connection

On the new Quadrino V3 boards there is added circuitry that switches between the Bluetooth module to the USB connection any time a the USB is plugged into a computer without conflict. In other words, the USB connection always takes active priority over bluetooth. This is great because it allows us to reprogram the controllers firmware or bench configure the flight controller without requiring Bluetooth connectivity. Once the USB is removed, you are back to bluetooth again - without even requiring a restart.

If you are using a Quadrino V1E, V1D, or V1C board you must disconnect the Bluetooth module before using the USB connection again.

Configuring the Module

Most modules default to 57'600 baud, this is the speed of the communications (baud equals bits/second). However the MultiWiiConfig GUI defaults to 115'200 baud. Both sides must be configured with the same communications speed or communication will not happen. This is the tough part! The goal is to communicate directly to the module to enter some AT commands to change the communications speed to 115'200. Each module may be slightly different so I can't give exact instructions here but here are a few suggestions that may be available to you:

  1. There is a change your device is already in 115'200 mode. Especially if you purchased it from a MultiWii dealer who is aware of the baud rate issue.
  2. Wire the Bluetooth module up to an FT232 Breakout board just like you did the Quadrino. Use a comm program such as Putty or Windows HyperTerm to connect to that COM port at 57'600 buad (probably 8n1 mode and type the AT commands
  3. Buy a USB Bluetooth dongle for your desktop computer and connect to the Bluetooth module remotely from your desktop. Enter +++ or $$$ (try both) to access the Bluetooth remote command mode. Now complete the AT commands to change baud rate.
  4. Use the Arduino environment to download a program onto the Quadrino that changes the baud rate on the Bluetooth module. Once successful, reburn the flight controller firmware using the Quadrino Firmware Tool.
Useful AT Commands

Once you have access to the Bluetooth's command mode, you can refer to these commands to change baud rate and other features.

  • AT<CR>
    AT test command should respond OK
  • AT+ROLE=1<CR>
    Set master mode
  • AT+ROLE=0<CR>
    Set slave mode
  • AT+VERSION?<CR>
    Get the firmware version
  • AT+UART=115200,1,2<CR>
    Set the baud rate to 115200 (8E2)
  • AT+PIO=10,1<CR>
    Set PIO10 to high level
Useful Links