The first thing done was a complete teardown of the 3DR Solo to gain access to the breakout board and central computer. To begin, the LED covered and individual rotor pods were removed and unplugged from each arm (Figure 1). Each motor pod is connected to the central board by a power, ground, and signal cable (Figure 2). Each motor pod was labeled according to the corresponding arm and placed with its screws in an individual bag. The rotors alternate between clockwise and counterclockwise, so it is important that they be re-inserted in the correct order. Next, the legs were unscrewed, three of which contained important electronic components. Two had Wifi antennas, allowing the Solo to connect to computers, cell phones, and SSID. The third had a magnetometer board, an external compass for Solo. The compass the Solo comes with is the Honeywell HMC 5983. However, I was unaware of the electronic components kept in the legs, and the compass was broken during teardown. A replacement ASIN B073WCYKKD compass was purchased from Amazon, which proved compatible. To continue with the Solo teardown, the battery was removed, which was easily detachable for charging, and the plastic GPS antenna cap was pried from the frame with a screwdriver. The GPS antenna cap fits in using tabs instead of screws, so care had to be taken not to break them. The cap was bent slightly while prying it off, but it still fit back in during reassembly.
Next, the battery tray was unscrewed and removed along with the GPS, which is connected to the main board through a cable that must be unplugged (Figure 3). In order to remove the main board, all the power distribution cables running from the main board to the motor pods had to be pulled through the arms into the battery bay opening, and the magnetometer cable had to be unplugged (Figure 4). The magnetometer and its cable were removed through the leg and placed aside for I2C interface addition. Next, the main board was unscrewed from the frame, and removed. With the front of the drone facing forward, there is a ribbon cable on the right side. This cable leads to the Solo’s accessory port, which was extended. To remove the main board, it must be slid back and forth. Tilting it towards the ribbon cable was the easiest way to remove it, but it had to be done delicately, as there is a micro usb port on the companion computer on the left side that is very close to the wall of the drone. Additionally, the ribbon cable itself is quite fragile. The 3DR Solo uses a Pixhawk drone autopilot, whose software is commercially available. It is found in the black square plugged into the main board. It was removed for examination, but it is not necessary to take out for this build (Figure 5).
Once the main board was removed, the accessory bay could be extended. The accessory bay is already connected to the main board by a ribbon cable as previously mentioned, however there are several unused pads on both the main board, and extension board. Wires were soldered from pads 14, 18, and 19 on the main board to the corresponding pads on the accessory board, which is labeled very clearly (Figure 6). From pads 20 and 21 on the accessory board, two new cables were soldered to create an I2C bus. I2C is more efficient than SPI or Serial ports, which require clocks and more extensive hardware. There is already an existing sensor on the Solo which uses I2C, and that is the magnetometer compass. The middle of both the white and green signal wires were stripped in the magnetometer compass cable, and pad 20’s wire was attached to the white signal wire. Pad 21 was attached to the green, careful to avoid shorts (Figure 7). Although the Pixhawk contains an onboard compass, the 3DR Solo autopilot will not allow flight without a functioning external compass. This can be disabled through Mission Planner. However if the magnetometer is spliced correctly, it is not an issue. Once the I2C interface was created, the Solo was reassembled.
Reassembly proved far more difficult than the teardown. I recommend taking careful pictures of all the pieces and their initial placement in the Solo, so time is wasted remembering or researching. First, the accessory bay was inserted back into its position at the bottom of the aircraft. A breakout board extension was plugged into the accessory bay, which provided external pins to plug into, making it easier to attach sensors and servos to the outside of the drone, further enhancing its customizability (Figure 8). The breakout board extension sits on the outside of the aircraft, and can be screwed in, which was done.
Next, the main board was inserted carefully. This was the most difficult part of reassembly. The companion computer on one side, and ribbon cable on the other make it very difficult to fit back in. With the front of the drone facing forward, the main board was slid backwards into the frame, tilted heavily to the right side. Once the ribbon cable was completely inside the frame, it was tilted back towards the left, and the companion computer was slid into place. Then the frame was slid forward and screwed into place.
Next, the power, ground, and signal cables were inserted into each arm. I was not careful to make sure the wires were all the way to where the motor pods belong, and had a great deal of difficulty later. I recommend using pliers or tweezers to ensure that all the wires go through the entire arm. The two Wifi cables and magnetometer compass were then threaded into their corresponding arms, and out the leg holes.
In order to reattach the GPS module, the three pronged battery plug on the main board had to be detached, the GPS and battery case had to be slid over the main board, and the the plug and GPS cable had to be reattached to the main board. Then all the screws had to be reinserted and the plastic GPS antenna cap was snapped back into place.
Finally, all the motor pods and legs were reattached using their original screws and the battery was reinserted. Before screwing in the pods and legs in, the drone was powered on to ensure there were no major issues. When the drone was fully assembled, it was taken for a test flight.