NXT-Spy – First thoughts about the project

Here is the diagram representing what the project should look like. It will help me to have a guideline to follow.

Let’s study how the different parts of the projects are going to be split and organized :

A. So here are the developing steps I will try to follow for the video part :

  1. Make a python program that streams video data in a Linux environment between two computer.
  2. Study how to access the integrated camera of the phone from a python program.
  3. Make a port of the program coded in step 1 for Linux based mobile phone replacing the video input by the integrated camera video output.

B. Now, the steps I will try to follow for the robots controls bridging system :

  1. Code a program in JCSPre for the robot NXT based on Severin Fichtl’s project.
  2. Code a program in Python (using NXT_python) or Java (using Severin Fichtl’s work) that allows to control the robot over Bluetooth from a Linux based computer.
  3. Make a program that is listening to the commands on the Wi-Fi input of a machine and redirect them over its Bluetooth output.
  4. Finally, modify the code of the program coded in step 2 to send the datas over Wi-Fi instead of Bluetooth

C. And finally, the possible enhancements :

  1. Allow the access to the phone’s GPS and display it on the control screen.
  2. Allow the access to the phone’s flash-light and add a button on the interface to control it.
  3. Allow the access to the phone’s speaker and add the possibility to send audio data (from a microphone?) to the robot.
  4. Code all the project in parallel (using pythonCSP and JCSP everywhere).
  5. Add the possibility to control the server program using a racing set, a motion controller or augmented reality glasses.
  6. Do the web interface in advanced HTML5 (mostly for the video stream).