farther.png

farther

An RPC-like protocol and resident program for remote access to AVRs and Arduinos.

Project Description

An AVR/Arduino runs the farther firmware that listens on an interface like the USART, virtual COM port, etc and executes code programmed on a remote host.

This project consists of three primary components:
  1. AVR firmware that is loaded onto an AVR or Arduino
  2. Language bindings that you use on the remote host to control the AVR
  3. The protocol used between the language host and the AVR

The idea is that you have an AVR/Arduino running the farther firmware that listens for protocol packets on some interface, such as the USART, virtual COM port, or TCP/IP connection. On the remote host, you write a program in one of the supported languages for which there is a binding (see below for currently supported language bindings), and then execute your code and view the results on your AVR/Arduino remote system. The remote AVR-based system might be a wireless sensor, PC-connected arduino with LEDs, intelligent home automation 'ware' (a la Open Housewares http://www.openhousewares.com), a remote servo-supported robotic project, or anything you can imagine that you want to control remotely and programmatically.

Requirements

AVR: ATmega, ATtiny
Host: Linux, Windows, OS X
Connection: USART, virtual COM port, TCP/IP
Compiling: msgpack, avr-gcc

Note: If you would like support for the XMEGA or another language binding please let us know your interest at the contact email below or by leaving a post on the forums, also listed below.

Language Bindings

Currently, there is support for bindings in AVR asm, C/C++, C#, D, and JavaScript.

Support

Home Page: under construction
Wiki Pages: http://wiki.opendesignstrategies.org:8060/display/FARTHER
JIRA Issues and Feature Requests: http://jira.opendesignstrategies.org:8080/browse/FARTHER
Community Forums: http://www.avr-firmware.net or use these http://farther.codeplex.com/discussions

Contact

Farther Development Team: farther-dev (at) avr-firmware (dot) net

Last edited Feb 8, 2013 at 11:14 PM by DroidEngineer, version 6