Introduction: Yarcow (Yet Another Rover Controlled Over Wifi) - Makeblock, Arduino, Droidscript

In this Instructable, we will look how to build a Wifi/web controlled rover based on Makeblock Starter Robot Kit and on Dave-Smart's howto.

How it's work :

The rover is controlled into a browser (smartphone or computer), the commands are send through WebSocket to the Droidscript IDE which communicates with Arduino via the USB port.

Step 1: Parts

  • Hardware :
  1. An Arduino Uno based robot platform. I recommend the MakeBlock Starter Robot Kit (you can use either IR or Bluetooth version)
  2. An Android phone that supports OTG with Android KitKat or later installed. Most modern phones support OTG. (I use my old HTC One S (Ville) here)
  3. An OTG cable (easily found on ebay or Amazon)
  4. A standard micro USB cable
  • Software :
  1. Arduino IDE
  2. Droidscript IDE

Step 2: Make the Robot Base

  1. First build the standard tracked robot model according to the MakeBlock instructions
  2. Check that you can drive the robot using the included infra-red controller or the Makeblock Remote App (depends which base you choose)

Step 3: Reconfigure the Hardware

  1. Remove the IR/Bluetooth shield
  2. Install your phone on chassis
  3. I add a small part in front of the rover under the ultrasonic sensor to protect it, because the auto stop function doesn't work properly yet
  4. Install your phone on the rover and strap it, here I use some Velcro

Step 4: Program the MakeBlock Orion (Arduino Uno) Board

  • Install Arduino IDE
  1. Follow the instructions from : http://learn.makeblock.cc/learning-arduino/
  2. Connect the robot controller board to your computer using a standard micro USB cable
  3. Select "Arduino Uno" as the board type from the 'Tools' menu
  4. Upload (File > Upload or Crtl+u) the CarControl.ino file

Step 5: Create the Phone App

  1. Install the free DroidScript IDE App from Google Play
  2. Download the WebSocket.spk file and upload it to your phone
  3. Use a file browser such as Explorer+ or ES File Explorer and open the
    downloaded .spk file. The .project file will then be automatically installed into DroidScript (Select 'Yes' when it asks you if you trust the source)
  4. Download the index.txt, rename it into index.html and virtualjoystick.js and upload the files to your phone to /sdcard/Droidscript/WebSocket/ directory

I add the WebSocket.js file in case you need it.

Step 6: Connect to the Server Phone

  1. Place batteries in the controller board and turn on the sliding power switch
  2. Insert (or re-insert) the OTG cable into your phone
  3. Start the 'Websocket' App by touching it's icon in DroidScript
  4. From another device follow the instructions wrote on the phone screen

Step 7: Time to Play ;)

  1. Click on "Connect" button

Now you can control the rover by move your finger if your are on an other smartphone or mouse if you are connected from a computer into the withe square in the upper left.

To send a text that the Rover going to speech, juste enter your text into the "Commande" box and click "Send Message" button.

You can see the camera view on clicking "Start Cam" and enable flashlight with "Night mode on" button.

Step 8: Thanks To

  1. Makeblock, for the work on the Arduino to make it easy for every one. And make complete kit :
    1. http://www.makeblock.cc/
  2. Dave Smart, for his work on Droidscript IDE and his Instructable that inspired me :
    1. https://www.instructables.com/member/Dave-Smart/

    2. https://www.instructables.com/id/Smart-Robot-with-V...

    3. http://wiki.droidscript.me.uk/doku.php?id=start

  3. Jerome Etienne for his joystick library :
    1. http://jeromeetienne.github.io/virtualjoystick.js/...