Gadget Renesas

Linking Ideas and Electronics

GR Atelier

Title:GR-CITRUS Robot floor wiper

Displayed Name:@takjn

GR-CITRUS Robot floor wiper

Concept / Overview
I made a robot floor wiper using GR-CITRUS and WA-MIKAN.

Enjoy cleaning your room by steering this robot cleaner with your smartphone.
The floor wiper attached to the front of the 2-wheeler wipes up dust and dirt as it moves along.

This gadget is a refactoring of the program created during the "GR-CITRUS Mini Hackathon – Brining Ideas to Reality with Ruby and IoT ".



GR-CITRUS is a WiFi access point and Web server. By accessing from the browser of your smartphone, you can operate forward, backward, right turn, or left turn. Simple auto-run is also possible by programming the robot.


Component List

Component # Reference
GR-CITRUS 1 Use GR-CITRUS FULL version including pin headers. Refer to the product introduction page for suppliers and basic usage.
WA-MIKAN 1 Use GR-CITRUS FULL version including pin headers.

SANBOU–KAN or motor driver board with TB6612


SANBOU-KAN is a motor control board for GR-CITRUS. This can be purchased at Lu-Arida Works. Instead of SANBOU-KAN, you can also use TB 6612 Dual DC motor drive kit sold at Akizuki-Denshi shop. Please refer to the non SAMBOU-KAN solution for details.

1.27 mm pin header, 1.27 mm jumper pin

1 These are required to automatically execute the program written in GR - CITRUS.

Tamiya Twin Motor Gear Box

1 Please assemble according to the attached instructions

Tamiya sports tire set (56 mm diameter)

1 Please assemble according to the attached instructions.

Tamiya Universal Plate (2 pieces set)

1 Used as a chassis.
microSD Card 1 Used for  GR-CITRUS internal processing. Please insert into WA-MIKAN.

3 x 15 mm round screw, 3.2 x 5 mm spacer

4 Used when fixing SANBOU-KAN to the plate. It can also be substituted by the round screw that comes with the universal plate.
Mobile battery 1 Secure to the plate with double sided tape.
Flooring wiper sheet - Cut the commercially available one in half.

Assembling procedure

(0) Advance preparation

Insert microSD card into WA-MIKAN.

Solder a pin header to JP2 of GR–CITRUS and attach the connectors to SANBOU-KAN motor connection terminals and motor cables.



(1) Assembling the chassis

Use the push rivet to secure the angle material and the bearing to the universal plate.



(2) Fixing SANBOU-KAN

Fix the SANBOU-KAN securely on the universal plate with screws, spacers and nuts.


(3) Fixing the gearbox

Secure the twin motor gearbox to the back of the universal plate securely with screws and nuts.


(4) Fixing of flooring wiper

Connect the plates with screws.


(5) Installation of tires

Connect the SANBOU-KAN and the motor and install the tires.SANBOU-KAN.


(6) Mounting of flooring sheet

Cut the flooring wiper sheet in half the size. After wrapping the plate with the sheet, then fix the ends of the sheet with a stapler.


(7) Writing the program

Write the following program.


When writing the program, confirm that JP2 of GR-CITRUS is open. If the jumper is inserted in JP2, the writing operation will fail.


(8) Installing the battery

After writing the program, remove the USB cable from GR-CITRUS and insert the jumper to JP2 of GR–CITRUS.
Please secure the mobile battery to the chassis with double-sided tape.



(1) Turn on the power to GR-CITRUS.

Confirm that jumper pin is inserted in JP2 of GR-CITRUS, and a microSD card is inserted in WA - MIKAN.
Connect the mobile battery and GR - CITRUS with a USB cable.


(2) Connect your smartphone and GR-CITRUS via WiFi.

GR-CITRUS becomes the WiFi access point. Open the smartphone WiFi setting and connect to Sweeper The password is 37003700.


(3) Access GR-CITRUS from the browser.

Open the smartphone browser and go to

Press the Forward button to move forward, press the Backward button to reverse, and rotate left and right with Left and Right.

When you press the Auto button, auto-run is performed according to the preprogrammed contents.
Press the Exit button to end the program. If you want to run it again after exiting, turn on the power again.



Supplement of the program

Changing the moving speed

If you want to change the default moving speed, change the value of MOTOR_SPEED in TB6612 Driver class. Specifying a large value will make it move faster, but please limit it to about 100.


Changing HTML

If you want to customize the operation screen, change the contents of INDEX_BODY of CitrusSweepwer class. Although you can write any HTML codes between EOS and EOS, it is better to avoid writing large HTML codes because of memory limitations.


Changing the auto-run program

Please change the auto-run program in the CitrusSweepwer class run method. With ingenuity, you may be able to create a program to automatically clean your room.


WiFi SSID and password

If you want to change the default SSID and password, change the value of the argument when setting CitrusSweepwer class to new in the last line of the program.



When not using SAMBOU-KAN


Although SANBOU-KAN is a convenient board, I think purchasing the board is a bit difficult. You can use a motor driver that uses TB6612FNG instead of SANBOU-KAN. Wire GR-CITRUS and TB6612FNG as shown here. Also, connect TL6612's A01 and A02 to the left wheel motor, B01 and B02 to the right wheel motor, and VM and PGND to the motor drive power supply plus and minus.


Pin number
18 AIN1
3 AIN2
15 BIN1
14 BIN2
3.3V VCC



If you change the pins on GR-CITRUS, you must also modify the program as well. When creating an instance of TB6612Driver class (when calling the new method), specify the pin number as an argument.



I am a Web-system engineer.
I am an amateur when it comes to hardware engineering, but I enjoy electronics as a hobby.
The source code of this work is released on GitHub. I welcome your pull Request.