So I wanted to modernize my Kenwood D710 a bit and make it more integrated with a tablet computer and my laptop and I figured out how to do it with off the shelf parts for a reasonable amount of money so I thought I would share. So far I can program the radio from my laptop via bluetooth using CHIRP, set frequencies from an app on my tablet(not publicly available yet) and view stations on a map using APRSdroid so I would say it is a success. I am hoping to get even more app integration with it soon.This is the basics of my setup:
The heart of this is a bluetooth to rs232 db9 serial adapter. Finding one that fit my needs for a reasonable price was my first obstacle. The D710 has three serial ports and I wanted to setup atleast two of them with bluetooth so the $100 dollar adapters were out of the question. Ebay is full of cheap bluetooth serial boards but they only operate at 3.3 or 5v and the D710 has full on serial ports operating at much higher voltages. I didn't want to have to build a board myself. Luckily I found a bluetooth board from Bolutek that already has a DB9 connector on it and the circuitry to convert to real serial voltages for under $12: Bolutek RS232 DB9 Bluetooth module
Sadly this board has a couple of problems but they are easily fixed. These boards actually get lots of bad reviews as people seem to only be able to get them to communicate in one direction or not at all and I initially had this problem. After a bit of research and experimentation I realized that while this board has a male DB9 connector which you would expect on a DTE device(a computer, etc...) the RX and TX pins are reversed (which is normal for a DCE or device with a female DB9). Also it only has the TX, RX and GND pins connected so if you are connecting to a serial port that uses hardware flow control such as those on the D710 it will not work. Luckily there are easy fixes to both of these problems. First you will need a DB9 Null Modem Male/Female adapter. All this does is flip the RX and TX pins while keeping it a male DB9 connector. For the missing hardware flow control all we have to do is bridge pins 7(RTS) and 8(CTS) on the DB9 connector. This emulates hardware flow control as every time the serial connection on the radio sets the RTS pin high to request permission to send the CTS pin will go high telling it it is clear to send. In our situation this works perfectly. In order to achieve this I simply bridged the two pins on the bluetooth adapter with a blob of solder. You could achieve this without solder by putting a small piece of wire on the pins in the DB9 connector but that is more prone to error. The picture below shows the pins soldered together. It is the middle two pins on the bottom row of 4 pins of the DB9 connector closest to the orange null modem adapter.
For actually connecting to the D710 you can use the serial cable that Kenwood sells, the Kenwood PG-5G or you can save a lot of money and buy a HOSA DBK-103 or DBK-110. They are sold for connecting audio equipment but it is simply a DB9 to DIN serial cable with the exact pinout that we need. This is a grey cable with a straight connector so if you want one for the COM connection on the back of the control head(for accessing the TNC) you may want to get an aftermarket right angle black version or go with the kenwood. The cheeper HOSA one works fine but it is a matter of asthetics and what fits with your install. If you had a D700 I believe it already has a DB9 connector on it so you won't need this cable.
If you wish to connect one of these to the GPS port of the radio in order to use aprsdroid for displaying stations and/or as a GPS over bluetooth you will need to wire a DB9 connector on to the cable that came with the radio for this purpose. This will only display positions on the map and not give any other APRS functionality. If your radio is a version without built in GPS the app can also function as a GPS for your radio. More information can be found here: https://aprsdroid.org/kenwood/ You can also use the TNC mode of the radio from the COM port on the back of the control head of the D710 in order to get full APRS functionality in aprsdroid but then you do not get APRS functionality on the D710's control head. I am hoping to add support for the radios APRS mode to aprsdroid and have submitted a feature request but I have not had a chance to dig into the code to see if I can help. The feature request can be seen here: https://github.com/ge0rg/aprsdroid/issues/154 feel free to comment.
The bluetooth adapters also need to be powered. They use mini usb for power. That is the connector often used for harddrives, etc... not the one common on android phones. You can power it from a cigarette lighter adapter meant for charging phones or wire up something special. I had some mini usb cables lieing around but if not you can find them easily.
Out of the box the bluetooth adapters function at 9600baud and have a default name set. If you are using multiple of these you may want to set names (I have mine set
to D710 and D710TNC). You can only change settings over the DB9 serial port and not over the bluetooth connection. In order to do this you will probably need a USB
serial adapter unless you have on old computer with a real serial port. You will also need a DB9 Female/Female Gender Changer
order to connect the bluetooth
adapter since it has a male plug and you will need female. Make sure it is just a gender changer and not a null modem adapter as it is already the correct wiring for a
device. You then use a serial terminal program, in linux you can use screen or minicom, there are plenty of options for windows and
mac as well. The commands to set things are available here: BLK-MD-BC04-B_AT-COMMANDS.pdf
There is a switch on the side of the Bluetooth adapter. You will want it set to slave mode.
As well as changing the names I changed the baud rate to 57600 in order speed up programming, etc... You will also need to do this in the radio settings for whichever ports you are setting up. Once you change the baud rate and reboot the adapter you will need to change the baud rate in the software you are using to communicate with it if you want to change anything else. You can also change the bluetooth pairing pin in order to add a little security. If you are connecting one of these to the GPS port you will need to leave the baud rate at 9600 as that is the fastest that port supports.
Once you get it wired up you will want to protect the boards so the contacts don't get shorted. You can use shrink wrap, electrical tape or some sort of box but remember the bluetooth antenna is on the board so I wouldn't put it in a metal one.
I think that covers everything. It took me a while to wrap my head around serial communication to figure all this out. I hope it makes sense and is helpful to someone. If you need help feel free to shoot me an email at my callsign(KM6GVW) at this domain(jesshaas.com).