At the forefront of Artificial Intelligence
  Home Articles Reviews Interviews JDK Glossary Features Discussion Search
Home » Articles » Robotics » Sony AIBO Entertainment Robot

Simple Hacking with your AIBO

My AIBO admires its new companion, the PS2! With the advent of the new ERS-210, owners of the ERS-110/111 will feel a little left out. A robotic dog more advanced than your own at $1,000 less! Nevertheless, the ERS-110/111 series are still a lot of fun, and there are some hacking tools out there that can make your life a lot more interesting with your AIBO.

This article will look at three different things, two programs and a way to look at how to easily set the AIBO emotion settings. Note that all of these hacks and tips have been taken from "AIBO Hacking" (link below).

AIBO Browser and AIBO Trainer are two programs that have been developed to allow you to view your AIBO's behaviour patterns and to change how your AIBO develops. Obviously, this requires that you have a Memory Stick Reader for your computer - this only comes as a PCMCIA adapter, so I had to use a laptop for this exercise. Anyway, download AIBO Browser and AIBO Trainer here:

http://members.v3space.com/aibopet/

AIBO Browser

For me this is the more interesting program of the two. AIBO Browser let's you look through your AIBO's behavioural patterns, how much time you have spent with it, what stage it is in, and various other traits. Below is a link to an unreduced screenshot of AIBO Trainer:

AIBO Trainer screenshot (19K)

Not only can you look at how your AIBO actually acts (as the above screenshot demonstrates), you can actually view all of the movements and sounds that your AIBO will perform. All animations are "performed" by the Virtual AIBO seen on the right. MIDI and wave files can also be played right inside the program itself. The program is well written, allowing you to transverse amoung the various actions, animations and sounds very easily - although the sheer amount of information is rather overwhelming.

Not only can you look at the actions, but you can view your AIBO's emotions of the past live session. The screenshot on the left shows a line chart for the AIBO's emotions (the legend reads: Exercise, Affection, Appetite, Curiosity). It is interesting to recall what happened when you were interacting with your AIBO and match it up to the chart. For example, last time I turned my AIBO on was to demonstrate him to a friend. I showed the friend what he could do for about 30 minutes then left him to roam about himself. It seems like he enjoyed himself more by himself (blue line denotes curiosity) than when I was showing him off! Also note appetite rising as his battery runs down. AIBO Trainer also can show his emotions, and the list box bottom-centre shows various variables that control his feelings.

AIBO Trainer

AIBO Trainer allows you to edit your AIBO - teach him new tricks, edit the "quality time" you've spent with him, change his favourite colours (image to the right). It allows you set his stage to any one of newborn, child, teenage or adult stages. It also a "Complete Lobotomy" option to reset the dog completely.

Since I cannot find my spare memory card for the moment, I have not experimented much with changing his behaviour. I would like to see how a fully mature robot reactes with the ball. The great thing about the PCMCIA card is that it enables the memory card to be treated like a hard disk. Sony pretends that you cannot access it through Explorer, but you can save anything on it, and read anything off it just like a disk. So technically, you can backup your AIBO at various stages of his life and "resurrect" them at a later date. So, if you don't mind spoiling the fun of bringing up your AIBO, then make a backup of the files on your computer (they'll be about 3Mbs zipped up) and alter his state using AIBO Trainer.

Debug Behaviour

It is surprisingly easy to take a look at some of the debug behaviour of the AIBO. In each case, create the file listed in the "open-r/app/conf" directory:
  • bntdebug.cfg: You can turn on and off the various traits of the AIBO: growing, learning, emotion and instinct. A one turns the feature on, while zero turns it off:
    GROWING 1
    LEARNING 1
    EMOTION 1
    INSTINCT 1
    
    Also, if you turn off the AIBO's emotions or instincts you can set the relevant values yourself:
    anger xxx
    affection xxx 
    appetite xxx 
    curiosity xxx 
    disgust xxx 
    exercise xxx 
    fear xxx
    joy xxx 
    sadness xxx 
    surprise xxx 
    
    Where xxx is any number between 0 and 100. This easily allows you to see how your AIBO would react under various fixed conditions.

  • touch.cfg: This file allows you to modify the touch times for the head sensor. Below are the values and their default settings:
    TOUCH_TIME 10
    THRESHOULD_TIME 37
    THRESHOULD_TIME_LONG 500
    
    The times are in hundreths of a second and are the times for an attention tap, a scold and a friendly pat.

  • lion: This strangely-named file allows you to set the time that each stage requires. Below are the values and their ERS-111 defaults (remember that the ERS-110 matures a little quicker than the 111). Note the "[DEBUG_GROWING]:
    [DEBUG_GROWING]
    BABY 100000
    CHILD 300000
    YOUNG 1000000
    ADULT 4000000
    

Conclusion

The AIBO is an excellent toy and an amazing feat of technology and has a lot of potential to have some serious hacking done to it. Experiment with the tools above and the debug file hacks, and if you find anything interesting report it!

Submitted: 23/12/2000

Article content copyright © James Matthews, 2000.
 Article Toolbar
Print
BibTeX entry

Search

Latest News
- The Latest (03/04/2012)
- Generation5 10-year Anniversary (03/09/2008)
- New Generation5 Design! (09/04/2007)
- Happy New Year 2007 (02/01/2007)
- Where has Generation5 Gone?! (04/11/2005)

What's New?
- Back-propagation using the Generation5 JDK (07/04/2008)
- Hough Transforms (02/01/2008)
- Kohonen-based Image Analysis using the Generation5 JDK (11/12/2007)
- Modelling Bacterium using the JDK (19/03/2007)
- Modelling Bacterium using the JDK (19/03/2007)


All content copyright © 1998-2007, Generation5 unless otherwise noted.
- Privacy Policy - Legal - Terms of Use -