A pure-Python Anki Cozmo communication library.
Project description
PyCozmo
PyCozmo
is a pure-Python Anki Cozmo communication library. It allows controlling
a Cozmo robot directly, without having to go through a mobile device, running the Cozmo app.
The library is loosely based on the Anki Cozmo Python SDK and the cozmoclad library.
This project is a tool for exploring the hardware and software of Anki Cozmo. It is unstable and heavily under development.
Usage
import time
import pycozmo
cli = pycozmo.Client()
cli.start()
cli.connect()
pkt = pycozmo.protocol_encoder.DriveWheels(lwheel_speed_mmps=50.0, rwheel_speed_mmps=50.0)
cli.send(pkt)
time.sleep(2.0)
pkt = pycozmo.protocol_encoder.StopAllMotors()
cli.send(pkt)
cli.send_disconnect()
Documentation
- Cozmo protocol description
- Capturing Cozmo communication
Tools
pycozmo_dump.py
- a command-line application that can read and annotate Cozmo communication from pcap files
Examples
rc.py
- turns Cozmo into an RC tank that can be driven with an XBox 360 Wireless Controllerextremes.py
- demonstrates Cozmo lift and head controlbackpack_lights.py
- demonstrates Cozmo backpack LED controldisplay.py
- demonstrates low-level visualization of images on Cozmo's displayaudio.py
- demonstrates 22 kHz, 8-bit, mono WAVE file playback through Cozmo's speaker
Robot Support
Sensors:
- Camera - work in progress
- Cliff sensor - not supported
- Accelerometers - not supported
- Gyro - not supported
- Battery voltage - not supported
- Cube battery voltage - not supported
- Cube accelerometers - not supported
Actuators:
- Wheel motors - supported
- Head motor - supported
- Lift motor - supported
- Backpack LEDs - supported
- IR LED - supported
- OLED display - work in progress
- Speaker - supported
- Cube LEDs - not supported
Communication:
- Wi-Fi AP - supported
- Bluetooth LE - not supported
Limitations
- there is no Wi-Fi control. The library assumes a Wi-Fi connection to Cozmo, established in advance.
- frame retransmission is not implemented
- transmission of multiple packets in a single frame is not implemented
Requirements
- Python 3.5
Installation
Using pip:
pip install pycozmo
From source:
git clone https://github.com/zayfod/pycozmo.git
cd pycozmo
python setup.py install
Bugs
Bug reports and patches should be sent via GitHub:
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pycozmo-0.2.0.tar.gz
(24.6 kB
view hashes)
Built Distribution
pycozmo-0.2.0-py3-none-any.whl
(28.3 kB
view hashes)