Skip to content

rdewaele/Elbow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

0.Copyright notice.
-------------------
Copyright (C) 2010-2012 Robrecht Dewaele

This file is part of Elbow.

Elbow is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

Elbow is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with Elbow.  If not, see <http://www.gnu.org/licenses/>.

1. What is Elbow?
-----------------
Elbow is a serial communication client aimed towards embedded
programming language REPLs.

What this means is that elbow can connect to a serial device, and
send and receive data to/from it. It is aimed towards embedded
virtual machines such as armpit scheme (which can be found at
http://armpit.sourceforge.net/).

2. Usage.
---------
2.1 Starting up.
----------------
elbow --help should tell you everything about the elbow options.
The list shown by the help function will always be up to date, whereas
this read-me file might limp a little bit behind.

Currently elbow supports configuring the following properties through
command-line options (default in brackets):
	- baud rate (9600);
	- device to connect to (/dev/ttyUSB0);
	- end of line character to use (carriage return);
	- file to send before interactive shell starts ();
	- send STX/ETX character to mark start and end of a file transfer
	  (disabled).

The default settings should work for an armpit scheme target.

The other switches are for:
	- help (-?, --help);
	- usage (--usage);
	- version and copyright information (-v, --version).

2.2 Line by line communication.
-------------------------------
Once elbow is properly started up, you are greeted by a welcome
message, followed by a GNU Readline prompt. This gives you a command
line interface similar to that of the bash shell. Features include
but are not limited to history and reverse-i-search.
(See man 3 readline for a lot more information).

Lines are not sent until you hit return, enabling line editing.

2.3 Shutting down.
------------------
Pressing ctrl+d will exit elbow (as will ctrl+c in a more brutal
fashion ;-)).

3. A note on OS X
-----------------
Elbow should compile out of the box on OS X if the necessary compiletime
dependencies are available: a C compiler, popt and GNU readline.
I personally use brew to provide these packages on OS X.

Furthermore, building was only tested using the Makefile (Makefile.gnu) at the
time of writing. It includes a workaround where it links to the correct
readline library. For more information about why this workaround is needed,
see the following page:
http://blogs.perl.org/users/aristotle/2013/07/easy-osx-termreadlinegnu.html

About

Elbow is a serial communication client aimed towards embedded programming language virtual machines, such as armpit scheme.

Resources

License

Stars

Watchers

Forks

Packages

No packages published