Skip to main content

Command line toolkit for working with Arduino hardware

Project description

Ino is a command line toolkit for working with Arduino hardware

It allows you to:

  • Quickly create new projects

  • Build a firmware from multiple source files and libraries

  • Upload the firmware to a device

  • Perform serial communication with a device (aka serial monitor)

Ino may replace Arduino IDE UI if you prefer to work with command line and an editor of your choice or if you want to integrate Arduino build process to 3-rd party IDE.

Ino is based on make to perform builds. However Makefiles are generated automatically and you’ll never see them if you don’t want to.

Features

  • Simple. No build scripts are necessary.

  • Out-of-source builds. Directories with source files are not cluttered with intermediate object files.

  • Support for *.ino and *.pde sketches as well as raw *.c and *.cpp.

  • Support for Arduino Software versions 1.x as well as 0.x.

  • Automatic dependency tracking. Referred libraries are automatically included in the build process. Changes in *.h files lead to recompilation of sources which include them.

  • Pretty colorful output.

  • Support for all boards that are supported by Arduino IDE.

  • Fast. Discovered tool paths and other stuff is cached across runs. If nothing has changed, nothing is build.

  • Flexible. Support for simple ini-style config files to setup machine-specific info like used Arduino model, Arduino distribution path, etc just once.

Installation

From source:

  • Download latest source tarball

  • Or clone it from GitHub: git clone git://github.com/amperka/ino.git

  • Do make install to perform installation under /usr/local

  • Or see INSTALL for instructions on changing destination directory

With Python setup tools:

  • Either pip install ino

  • Or easy_install ino

Requirements

  • Python 2.6+

  • Arduino IDE distribution

  • picocom for serial communication

Limitations

  • As for current version, ino works only in Linux and MacOS. However it was created with other OS users in mind, so it will eventually get full cross-platform support. Help from Windows-developers is much appreciated.

Getting Help

License

If not stated otherwise ino is distributed in terms of MIT software license. See MIT-LICENSE.txt in the distribution for details.

Changelog

0.3.2
  • Fix #13: Local header #includes from sketch files are no longer lead to ‘No such file or directory’ error. Now GCC is given an additional include path pointing to the sketch origin while compiling processed source.

  • Fix #18: Proper scanning of dependency files when multiple library dependencies are found on the same line. Now all of them are taken into account, not just first one.

  • Add: Processed sketch files now have #line directive so that they appear as original source in GCC in case of syntax errors.

  • Add: Automatic dependency tracking for included header files. Now a sketch or cpp source get rebuild once an included (directly or indirectly) header changes.

0.3.1
  • Support for ino build --verbose

0.3.0
  • MacOS support

  • Serial port guess

0.2.0
  • Support for Arduino Software version 1.0

0.1.x
  • Initial release

  • Various bug fixes

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

ino-0.3.2.tar.gz (15.7 kB view details)

Uploaded Source

File details

Details for the file ino-0.3.2.tar.gz.

File metadata

  • Download URL: ino-0.3.2.tar.gz
  • Upload date:
  • Size: 15.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ino-0.3.2.tar.gz
Algorithm Hash digest
SHA256 1273ac6b3f8a9b94346c986579984c66a22160cd7df26f896fc01ceb8b4d5efb
MD5 af3c2b134385c43490a3119f68f15b35
BLAKE2b-256 ea4e609dc18b49572acc326f2668ba65dbbb5736bba51d4e739dc57d141a4c62

See more details on using hashes here.

Supported by

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