About

pyavrutils is a Python library that can build AVR and arduino code at runtime.

Links:
Features:
  • python wrapper for avr-gcc, avr-size, arscons
  • build files or strings (strings are saved as temp files)
  • MCU list
  • get code size using avr-size
  • avr-gcc default is optimized for size
  • supported python versions: 2.6, 2.7
Known problems:
  • temp files are not removed
  • arscons does not perfectly matches the Arduino build process
Possible usage:
  • experimenting with flags
  • building from paver
  • unit tests
  • building arduino code without GUI

Basic usage

>>> from pyavrutils import AvrGcc
>>> cc = AvrGcc()
>>> cc.build('int main(){}')
>>> cc.size().program_bytes
66
>>> from pyavrutils import Arduino
>>> cc = Arduino()
>>> cc.mcu = 'atmega8'
>>> cc.build('void setup(){};void loop(){}')
>>> cc.size().program_bytes
1612

Installation

General

if you have setuptools installed:

# as root
pip install pyavrutils

Ubuntu

sudo apt-get install python-pip
sudo apt-get install binutils-avr
sudo apt-get install gcc-avr
sudo apt-get install scons
sudo apt-get install arduino
sudo pip install pyavrutils
# optional for examples:
sudo pip install entrypoint2

Uninstall

using pip:

# as root
pip uninstall pyavrutils

Table Of Contents

Previous topic

Indices and tables

Next topic

Usage

This Page