Table of Contents

Marty v1 Integration and API Docs

Marty has two main different modes of operation - remotely controlled with just a Rick in the head (how Marty is normally when you first get one), and an extended mode where a Raspberry Pi, Arduino or other serial or I2C enabled microcontroller or mini-pc is inside the head with Rick.

Some of our APIs and Integrations work with only one of these modes, some with both so we've split them into groups below. Martys can also be simulated using V-REP without needing a physical robot, also detailed below.

For Tutorials and Guides instead, and sourcecode, check out:

Learning Portal Robotical on GitHub Marty Calibration Tool Calibration Troubleshooting

Standard Setup with Just Rick

Scratch Function Reference

Beginner

Scratch is the simplest way to program a Marty if you're a complete beginner. It has a simple graphical interface and blocks you can combine to build up a program, and is very popular with kids & educators.

Python Function Reference

Intermediate & Advanced

Python is an easy to learn real-world programming language used by hundreds of thousands of people, with a strong online community and thousands of libraries.

Our Python API is probably the best pick for most people.

RaspberryPi in head with Rick

RPi Setup Guide

Intermediate

Connecting a RaspberryPi to a Marty is pretty simple, and adds a whole load of power and new possibilities.

Python

Intermediate & Advanced

Python can also be used to control Marty from within the head. If you've also got ROS installed, then you have full access to rospy, otherwise you can use martypy.

ROS

Advanced

ROS, the Robot Operating System is an incredible framework and collection of tools and libraries for building robotics applications. Marty is fully integrated into ROS, with the ros_marty API.

Simulation

V-REP Documentation

Advanced

V-REP is a popular robot simulator with a whole load of ways to integrate with it. Marty is natively supported and packaged with V-REP.

(Note that V-REP is licensed according to Coppelia Robotics' licensing restrictions and condition)

Hardware & Low-Level APIs

This set of articles cover the sensors and physical aspects of Marty, as well as the more nitty-gritty technical details of Rick, Marty's control board and the associated electronics they come with. Also covered are complete connection details for interfacing with Rick's GPIOs and interface connectors.

Additionally our lowest level APIs are documented here, so if there's a language or system you want to use that's not currently supported, you may still be able to implement your control through these bare-metal APIs.

Sensors

Description of the different things Marty can sense and detect, as well as axis conventions

WiFi Connection Guide

Connecting to a Rick over a local network from a computer or other device.

Socket API

Byte-level specification of the WiFi TCP socket API with Rick via the ESP, as well as low-level info on the ROS Serial integration and Websocket communication with Rick

Specs & Ratings

Rick's maximum power output ratings, battery safety, thermal characteristics, limits and charge capability.

Rick Info

Full schematics for the Rick control board and its common connections to peripherals such as serial ports, GPIOs, Motors and cabling.