Bluetooth Module with RS232¶
This module is available for around 15 USD. The advantage of this module is that you can connect it directly to the pins on your FrSky module. It doesn't need any extra hardware for protocol translation since the level converter is included in this adapter. If you want to avoid soldering and just want something you can connect with some colored wires this is the one to go.
Bt Module Hardware¶
According to the FrSky Document, "Protocol_two way telemetry series", The DFT talks RS232 Level:
2.1. Host end
Serial COM RS232 level, setting: 9600bps, 8bit, No parity, 1 stopping bit.
I therefore decided to find a Bt module with an attached RS232 level converter. I ended up with this:
Bluetooth module with adapter board http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=200578455455
Bt module Setup¶
I hooked this module up to my computer, using a USB to RS232 adapter cable so that I could program it.I sadly cannot remember for sure now the necessary programming steps. But I assume that I changed the following:
- UART to 9600,8N1
- Possibly mode
edit: to update these settings use the AT commands suitable for your bluetooth chip. An example of these commands can be found in the setup instructions of the TTL Bluetooth module below.
After this, I bound my phone to it (from the phone, while the module was still attached to the computer)
Using Bt terminal software BlueTerm (https://market.android.com/details?id=es.pymasde.blueterm) I was able to communicate from the phone to the computer across the BT bridge.
I then wired the Bt module to the DFT
Bluetooth Module with TTL¶
Another bluetooth adapter was tested & reported working. This module is using the same bluetooth chip but soldered on a TTL board instead. It's available from goodluckbuy.com (http://www.goodluckbuy.com/serial-bluetooth-rf-transceiver-module-rs232-w-backplane-enable-and-state-pin-1.html) and many other sources on ebay (http://www.ebay.com). You'll notice that this one is a bit cheaper, available from as low as 10 USD. But you'll need to buy a separate level converter to match the RS232 connection from FrSky modules with this TTL bluetooth adapter.
Configure BT module¶
First step is to update the BT module settings to match the Frsky parameters. As listed above Frsky expects Serial COM RS232 level, setting: 9600bps, 8bit, No parity, 1 stopping bit. If you fail to match these the adapter will only pass unparseable data.
To update these settings you need to connect your BT module directly (=WIRED) to your computer. For this you can use an USB to TTL adapter like this one based on the cheap CP2102 chipset from goodluckbuy.com (http://www.goodluckbuy.com/cp2102-usb-2-0-to-uart-ttl-module-serial-converter-cp2102.html). Other valid option is an FTDI chipset based adapter. This will require driver installation on your system.
Connect the vcc, gnd, tx and rx pins from the BT module with the same labeled pins on the USB adapter. Only switch the tx and rx signals. So rx goes to tx and vice versa. You don't need the state or on/off pin on the bluetooth adapter at this point. These are used to toggle the bluetooth model on/off (low/high) which is by default ON and the other one is the same as the onboard status led.
Now you use AT commands to update the settings of the module. Use a serial terminal emulator to connect to the module and copy paste your commands in the terminal (typing commands might be too slow). These commands may vary according to your bluetooth chipset. On mac OS X you can use the screen command with the device name in order to open communication. If you don't know what tty device to use you can check the difference in "ls /dev/tty.*" when plugged in or not. Opening the communication us done with the "screen /dev/tty.X baud" command. Replace X with the correct name and baud with the default baud rate. For windows you can use putty or any other terminal emulator.
Make sure to use the right baud rate at this point or your module won't understand the commands and fail to respond (test with "AT" command). For this you need to know the default baud rate. For my module the defaults were fine (9600) but you might want to check them anyway. These are the useful commands for this Linvor BT module
Returns "OK" if connection is fine. If no answer check your wires.
Returns the software version of the module, for me that was "OKlinvorV1.5"
Sets the baud rate of the module. We need baud rate 9600 so use AT+BAUD4. It will respond with "OK9600". Other baud rates:
1 >> 1200
2 >> 2400
3 >> 4800
4 >> 9600 (Default)
5 >> 19200
6 >> 38400
7 >> 57600
8 >> 115200
9 >> 230400
Sets the name of the module to "YourName". Any name can be specified up to 20 characters. Whatever name you set response is "OKsetname".
Sets the pairing password of the device. Any 4 digit number can be used, the default pincode is 1234. Response is "OKsetPIN".
Sets the parity of the module. AT+PN >> No parity check. Response is "OK None".
Connect BT module with Frsky DJT/DFT¶
Using inverted signal¶
Issue here is that the BT module listed above doesn't understand the inverted rs232 signal the Frsky DJT/DFT modules uses. You could get an arduino with software serial and configure that as inverted. Or add the frsky ftd-lite upgrade pcb in between. The big pins go to the DJT/DFT module while the smaller pins have to be connected to you BT adapter. Check documentation on frsky or the picture below for the correct pinout of the ftd-lite module.
If you connect the 5V also on the big pins (the one not labeled in frsky documentation) you get 3.3V on the small vcc pin to power your BT adapter. It's not required since it can work on 5V also but it's possible (in fact my BT module no longer works on 3v!?).
Frsky upgrade lite product page: http://www.frsky-rc.com/ShowProducts.asp?id=49
Using internal non inverted signal¶
If you're not afraid to open up your FrSky module you can also solder some very thin wires to the traces where the signal passes before it's inverted. The below pictures show where you can find that signal. The blue wire is RX while the black wire is TX signal. You'll have to expose the path. Be very careful doing so not to break the path or brick your module otherwise. This is fine soldering! Don't overheat it also.
You could put a bluetooth board inside the frsky module housing. I opted for an external connector on the module, taking the ground and +5v signal from the original pins on the back. This way I can choose to fly without the bluetooth module connected.