Let's Make Robots!

Mr. Tidy

Mr_Tidy_MkII_Sample_Code_V3.zip19.94 KB
IRremote5.zip23.24 KB
Vendor's Description: 

It's been a long time coming but Mr. Tidy is finally here! He is Arduino compatible using the ATmega1280 MCU and can be programmed via the pre-loaded Arduino bootloader or via the on board ISP socket using AVR software. This small robot is packed with features making it a great learning tool as well as being loads of fun! He has:

Quality aluminium chassis.
Strong nickel plated steel framework for the arm.
Heavy duty double gear trains for the arm and gripper.
2DOF arm with large steel gripper and silicone rubber grip pads.
Skid steering assisted by double omni-wheels at the front.
128K of flash memory, 8K of SRAM and 4K of EEPROM.
DC charging socket for battery trickle charge.
Battery voltage monitoring.
4x FET "H" bridges with current sensing.
4x pulse encoders.
4x digital IR sensors for collision avoidance.
4x analog IR sensors for object detection and gripper alignment.
1x RGB colour sensor to determine object colour.
1x IR receiver for beacon navigation or receiving commands via TV remote.
1x socket for optional line following PCB or IR compound eye.
1x I²C socket.
1x expansion socket for access to unused analog, PWM, comms and digital I/O pins.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Can I use the version 1.6.5 Arduino IDE with Mr.Tidy Robot ?

or do I still have to use the version listed in the manual, 0018 ?

Thank you

I would not use the 1.6 and later version on any board using the older ATmega processors. I tried and had a lot of problems.

That is an old design and I have not tested it with later versions but it should work ok with 1.06. If the code does not compile properly then try version 0023.

Make sure you select the older Arduino Mega board (with the 1280 MCU).

There were a few changes made to how the Arduino environment handles sketches when they released version 1.0. If you insist on sticking with your newest version of the IDE (me too) there are a few changes you have to make to port the code.


While older versions of the IDE can coexist with newer, I find it easier to just make the new IDE happy. YMMV

If you are not familiar with coding, it may be easier to get the version suggested already.

I'm sorry DavidMatt but I don't do tech support by email because then other people cannot read about your problem and learn from it. LMR is about teaching and learning.

Your email:
well the pwmred, pwmgreen, and pwnblue isnt declared in the scope is thefirst compiling errors. I am using Arduino 1.0.5 because Arduino 0018doesn't have the ATMega 1280 option. I have made sure all connections aremade correctly. When I turn the robot on it makes its tune then lowers andraises the arm but doesn't move.

My reply:
If Arduino 0018 cannot program a 1280 how do you think I programmed Mr. Tidy when 0018 was the latest version??In those days there was no Arduino Mega 2560. All Arduino Megas were 1280's.

As long as you insist on using Arduino 1.05 then no one can help you because Arduino is not backward compatible and just won't work no matter how many times you check the connections. The only reason the instruction manual states Arduino 0018 or later is because I did not know then that Arduino would no be backward compatible.

I'm sure the next problem you will have is the IRremote5 library. Make sure you have installed Arduino 0018 and then install the IRremote5 library. If you do not have the library then you can download it from here: https://sites.google.com/site/daguproducts/home/arduino-libraries

Im having trouble with the sample code....it is giving me lots of errors suggestions please

As I told you before, if you are not using the correct version of the Arduino IDE then you will get a lot of errors. Please make sure you have read the manual, especially the trouble shooting section. If you want more help then you need to give me a a lot more information than "I get errors". Mr. Tidy is a complex kit.

I need:

  • photos of the robot that clearly show your wiring and the battery
  • a screen shot of the error messages
  • tell me what Arduino IDE you are using, what board type did you select

Once you have answered these questions then either we can fix it or I will have more questions.

I have the correct code for our robot and we have the IRremote5.h but when we try to upload the code to Mr. Tidy, we receive errors. The errors say there is no IRremote5.h in the void loop. We have tried version 2 and version 3 of the code on the Dagu website.

154: error: IRremote5.h: No such file or directory In function 'void setup()':

 In function 'void loop()':

Bad error line: -21


If you go to File --> Examples --> IRremote5 --> and open IRtest

Make sure you are using Arduino 0022 and you have selected Arduino Mega (1280) as the board type.

Does this compile correctly? If not then I suspect you have not installed the library in the libraries folder.

If it does compile correctly then there must be a typo in the code. Have you made any modifications?


I am trying to program the Mr. Tidy MkII for our Industrial Electricity class and am running into a lot of problems. We have tried uploading the original Sample Code included with the bot to no avail. The robot will not truly run...it turns in a small circle but never looks for an object. All start up procedures seem correct, just not sure why it will not hunt or gather red objects.

I have downloaded your program V3 and the IR handler but when I try to upload the file to the bot using Anduino it is giving quite a few exception errors and will not allow upload.

Any help you can give or perhaps a possible fix to these issues would be most appreciated.


-----Exception Log-------

Mr_Tidy_MkII_Sample_Code_V3.pde:-1: error: 'IRrecv' does not name a type

Mr_Tidy_MkII_Sample_Code_V3.pde:-1: error: 'decode_results' does not name a type

Mr_Tidy_MkII_Sample_Code_V3.cpp: In function 'void setup()':

Mr_Tidy_MkII_Sample_Code_V3.pde:-1: error: 'irrecv' was not declared in this scope

Mr_Tidy_MkII_Sample_Code_V3.cpp: In function 'void loop()':

Mr_Tidy_MkII_Sample_Code_V3.pde:-1: error: 'irrecv' was not declared in this scope

Mr_Tidy_MkII_Sample_Code_V3.pde:-1: error: 'results' was not declared in this scope

Mr_Tidy_MkII_Sample_Code_V3.cpp: In function 'void RemoteControl()':

Mr_Tidy_MkII_Sample_Code_V3.pde:-1: error: 'results' was not declared in this scope

Mr_Tidy_MkII_Sample_Code_V3.pde:-1: error: 'irrecv' was not declared in this scope

What version of the Arduino IDE are you using? The Mr. Tidy code was written using version 0018. It may not work with newer versions. There should be 16 tabs. Make sure they are all there otherwise you may not have unzipped / opened the sketch correctly.

There should be 16 files in the folder. If not then try downloading the code from here:

Please note that this robot is not a toy. The sensors must be calibrated correctly and constants in the code will need to be tweaked as each robot is slightly different.

The sample code does not try to stack red and blue cups. That code was written by another LMR member for a modified version of the robot and only worked with certain cups under the correct light conditions.

The sample code provided will cause the robot to wander randomly looking for objects. Once it has found an object it will try and stack it with other objects of the same colour.