AiboPet's AiboHack Site
http://aibopet.com, http://aibohack.com


ERS-110, 111


ERS-210[A], 220[A]

Programming AIBO with:

YART, RCodePlus
OpenR SDK



ERS-311[B], 312[B], 31L


ERS7
Home
Movies (all)
PDAs: CLIE ( Panel Zipit )
Lesser Robots: Pleo ( RoboSapien ICybie )
Game Hacks: Nintendo Wii Nintendo DS ( PSP )
Email: aibopet@aibohack.com
[AiboHack] AiboPet R-CODE Extensions


AiboPet R-CODE Extensions


This page describes the extensions to the RCODE interpreter provided by "RCode Plus" version 2.51
Version 2.51 of RCodePlus is a Legit-i-Mutt©TMrelease.

There are two kinds of extensions :
  • RCODE statements - eg: "AP_SNAPSHOT" (all upper case)
  • RCODE variables - eg: "AP_Snap_Ready" (mixed case)

    There is a third kind of extension for communicating with AIBO via the LAN. These use a separate "telemetry socket" and are documented here.

    General Info, Version Checking


    This section discusses the extensions to the RCODE interpreter. These extensions only work with RCode Plus version 1.90 and later.
    Everything is case sensitive (so "AP_FOOBAR" is not the same as "AP_FooBar"). Commands are in upper case (eg: AP_SNAPSHOT) and variables are in mixed case (eg: AP_Snap_Ready). All of the AiboPet extensions start with "AP_".

    TRANSITION: Future releases of the official Sony released RCODE software may incorporate these or other features. RCode Plus will be updated (and some "AP_" extensions removed) as the core RCODE stick improves.

    Most of the input values are like other input values. You first set the variable to 0 (eg: "SET:AP_Voice_Cmd:0") then wait for the variable to be non-zero.

    See the "Obey Cat" example for how to use the extensions with Master Studio.

    AP_Version

    Read-only system variable. Is the current version of the RCode Plus extensions. For example: if AP_Version is 251, that means major version 2, minor version 51 (AKA Version 2.51).
    If RCode Plus is not present, the variable "AP_Version" will be zero. Do not change this value.

    RCode Plus Features


    RCODE Runtime Library

    The RCODE Runtime Library (RCR) provides several RCODE routines that implement some of the grunt work common in many personalities. This provides a bridge between RCodePlus routines and higher level RCODE (written directly or with Master Studio).
    Examples include (REVIEW: document more fully)
    To be documented more fully.

    #AP_INCLUDE

    Allows inclusion of other RCODE text files at load/parse/compile time. Nesting is not supported. See examples.


    Undocumented/Enhanced Features


    I can't take credit for these features. They are provided in RCODE 1.2, but are not fully exposed or documented. Thanks to Mr Rcode for some of his hacks to enable them. Only briefly described here. Please email me if you need more info.

    GON/GOFF

    You can turn the gain off (GOFF) or on (GON) for a given servo.

    SET Led/Ear

    You can turn on or off a specific LED. See the JOINT.CFG file for the model of AIBO you want to use. This also works with the Ear servos in the ERS-210.

    MOVEJOINT

    MOVEJOINT is supported, but it is dangerous. Use if at your own risk.

    NoFallDown

    When set (ie. non-zero) the automatic falldown recovery will be disabled. This allows you to perform RollOver and other motions that would normally stop when the dog becomes upside-down.

    Custom Walking Styles

    TO BE DOCUMENTED

    Future Extensions

    If you have any suggestions, please send me your comments.