eLuaBrain is an experiment in educational computers with a number of
unique features. It is a low cost, completely autonomous computer
designed to work with low cost peripherals (PS/2 keyboard on input and
a standard VGA monitor on output). Its main goal is to offer another
perspective on education in general and training IT professionals in
particular. Modern computers are difficult to understand at the
hardware level even for experienced IT professionals; at the same
time, there is a growing trend in most modern computer languages to
completely ignore the hardware on which they run and focus entirely on
programming concepts instead. By contrast, eLuaBrain offers the whole
experience in a single package. Its hardware is easy to understand
(and hack) and the on-board software offers easy ways to interact with
the hardware, thanks to the features provided by the eLua open source
project. eLua is built around the programming language Lua, which is a
relatively compact language, but comes packed with lots of features,
which makes it very suitable for teaching programming concepts. With
eLuaBrain it is natural to teach programming and hardware design in
parallel, which gives students a complete image on the
hardware-software interactions.
At the hardware level, it is built around a 32-bit CPU (a Cortex-M3
core) with 1M of external RAM. It also features TCP/IP network
connectivity, SD card storage and a low power radio link. eLua brings
a MCU-friendly Lua interpreter and hardware support modules into the
equation, while the built-in code editor and on-line help system make
eLuaBrain a truly autonomous platform. A very low footprint, UDP based
remote file system can be used to easily share files with any desktop
machine.
The hardware and software behind eLuaBrain are open source, free to
use for both commercial and non-commercial projects. eLuaBrain comes
with a number of sample applications meant to demonstrate the platform
features and to serve as a starting point for future applications.
These include a RSS reader, an IRC client, a Web server and (of
course) games.
This presentation will start with an overview of eLua, after which
we'll take a deeper look at the implementation of eLuaBrain at both
hardware and software level and its future directions of development.
If time allows and the right hardware is in place, a live demo of the
platform will also be provided.