I think I have fixed the XBees, again, maybe…
I wanted to get our tablet laptop up and running again as a Hexakopter flying machine for the field – especially since I got the new Pentax WG-1 GPS camera in the mail today (I’ll post on that soon). This laptop had already been running Mikrokopter-Tool v1.74a, allowing us to do 3D waypoint runs, but the XBees were not functioning at all. I also had it in my head to install a SSD hard drive in this old laptop to give it a new lease on life – what better opportunity to try a fresh setup!
A quick note to anyone that has found their way here with their own XBee woes, we are using XBee Pro DigiMesh 900 modules. This post discusses the (hopefully) successful configuration of a pair of XBee Pro 900’s each mounted on an Xbee Explorer USB. In a previous post, Xbee Solutions?, I suggested that it is necessary to have an Xbee Explorer Regulated on the MK end, but it seems that may not be necessary based on the results described below.
I got all the standard drivers and software installed and running (XCTU and UART drivers) and plugged in the suspect Xbees. Windows 7 said it correctly installed the new hardware, but when I opened up MikroKopter Tool I could not get any XBee communication. AAAAAAAH!
Back to the internet, I found this long thread about Xbee problems that offered promise: http://forum.mikrokopter.de/topic-21969.html
Taking from the thread, I set up two XBees on the same machine in two instances of XCTU to be able to effectively range test and compare parameters. Why had I never thought of that!? I read the modem configurations from each unit – mostly noting anything that was other than the default and confirming the baud rates were set correctly. I quickly noted that the Modem VID numbers were different and read from the help dialog: “Only radio modems with matching VIDs can communicate with each other.” One XBee was set to the default and another was set to a specific number. I didn’t remember making this change but decided to set them both to the same number. The range test was now working perfectly (see post picture). Back in Mikrokopter Tool I was back in business with wireless telemetry, but I still couldn’t transfer waypoints. I kept getting that ‘Communication Timeout’ error.
I tried another suggestion from this post in the same thread and manually adjusted the Destination Addressing fields on each unit. I noted the high and low serial numbers for each unit (SL and SH) and manually configured the high and low destination addresses to point at each other: XBee1 DL = XBee2SL, XBee1DH = XBee2SH, and vice-versa.
I flashed these settings, booted up MikroKopter Tool and was wirelessly transferring waypoints and receiving telemetry with no problems.
Of course, now we just have to see if it’s actually going to work in the field!
Next up: playing with the GPS camera!