How it works
The homemade controller's Spark Core turns button presses into signals that get communicated over Wifi to the car's Spark Core. This in turn runs an Arduino script which controls signals sent to the hacked RC car's circuit board. A wireless camera on the front sends a live feed of the car's perspective to be displayed on a TV screen.
Challenges I ran into
The process of transmitting signal data from the controller's Spark Core to the internet, and then receiving this data with the car's Spark Core was very time-consuming, considering the car needs quick responses from the controller's button presses. Also, the RC car's motors were uneven and temperamental, and made turning difficult. The Spark Core's Vdd voltage of 3.3V also proved too small for the motors, so we used an Arduino to interface between the Spark Core and the motors, simply for an easy voltage boost.
Accomplishments that I'm proud of
It had two Spark Cores talking to each other. It took live video. It moved. We are proud of how resourceful we were with the hardware that was available to us: we hacked into the RC car and found the pins we needed to control the motors, designed a controller ourselves, and figure out how to publish/subscribe with two Spark Cores over wifi.
What I learned
That wifi is not meant for communication between controllers and RC cars, since it is too slow for the immediate responses necessary to control the car well.
What's next for Spark RC spy car with live video
Instead of communicating between the two Spark Cores, we would control the Spark Core on the car directly via serial connection to the computer. We'd also like to attach the camera to a servo motor and use the two extra buttons on the controller to remotely swivel the view left and right.