Skip to main content

Python package for KuttyPy and KuttyPyPlus AVR trainer

Project description

KuttyPy Interactive Playground [ Microcontroller Training Utility ]

Documentation Status


The kuttyPy (/kʊtipʌɪ/) Microcontroller training utility allows live manipulation of the registers in microcontrollers via a connected computer containing its python library. setReg and getReg function calls act as debugging and monitoring tools, and combined with Python's visualization and analytical utilities, this approach has immense pedagogical potential for beginners to the microcontroller world.

The kuttyPy hardware is an ATMEGA32 microcontroller development board developed by the ExpEYES project, and is currently supported by this software. It contains the kuttyPy firmware, but can also be used to run other programs via its bootloader.


What can I use it for?

  • It's an atmega32 development board with a bootloader supporting the 'arduino' protocol
  • The bootloader also allows real-time manipulation of registers through commmands sent via the serial port.
  • This is done by the associated Python library and companion GUI
    • You can monitor every input
    • Toggle every output
    • Deal with Peripherals such as PWMs and Counters
    • View ADC readings via an analog gauge
    • Scan for sensors connected to the I2C Bus
    • Monitor readings from sensors [TSL2561 luminosity, and MPU6050 IMU supported]
  • Compile code to hex with the avr-gcc compiler
  • Upload hex via the built-in uploader
  • Rapidly prototype and debug educational projects. For example, you can verify ADC input values before handing over control to the uploaded hex file which will likely have very limited debugging capabilities.
  • Learn how registers are the key to microcontroller operation, as opposed to the Arduino ecosystem which prefers obfuscation of these details underneath abstraction layers.

Monitor I2C Sensors

  • Scan for Sensors
  • Click to monitor via analog gauge
  • List of I2C sensors supported thus far (Minimal data logging. Configuration options via the graphical utility might be incomplete)
    • MPU6050 3 Axis Accelerometer, 3 axis Angular velocity (Gyro)
    • TSL2561 Luminosity measurements
    • BMP280 Pressure and Temperature sensor
    • MCP4725 Single channel DAC
    • PCA9685 PWM controller
    • MLX90614 Passive IR

Programming library and examples : READ THE DOCS

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

kuttyPy-1.0.26.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kuttyPy-1.0.26-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file kuttyPy-1.0.26.tar.gz.

File metadata

  • Download URL: kuttyPy-1.0.26.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/6.8.0 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.31.0 rfc3986/1.5.0 tqdm/4.66.1 urllib3/1.26.5 CPython/3.10.12

File hashes

Hashes for kuttyPy-1.0.26.tar.gz
Algorithm Hash digest
SHA256 13d43fa17c4b0fc11d9b56109a69a5fbdcb3b2ded94b4351665fb9b7a574a978
MD5 744fe6fea3eeb00f3af3ffc86c39d85a
BLAKE2b-256 392033ab4193560487511cf0fca2d8c2465d2bcc48d2be1f514469cd4646ba41

See more details on using hashes here.

File details

Details for the file kuttyPy-1.0.26-py3-none-any.whl.

File metadata

  • Download URL: kuttyPy-1.0.26-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/6.8.0 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.31.0 rfc3986/1.5.0 tqdm/4.66.1 urllib3/1.26.5 CPython/3.10.12

File hashes

Hashes for kuttyPy-1.0.26-py3-none-any.whl
Algorithm Hash digest
SHA256 ec4c8d8d5389df37a3d3a86bf6fc45a7ae191b378bda3ba77f7e5ce941eef3dd
MD5 4784d9e898baac0f852c8c12a7fc1a16
BLAKE2b-256 a318dc218e21a473a45f74a819f5b4f94baa87e59bc66cb5c78728ec7d8a2305

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page