- » Home
- » Get Started
- » Get Better
- » Get Involved
What is eLua?
eLua stands for Embedded Lua and the project offers the full implementation of the Lua Programming Language to the embedded world, extending it with specific features for efficient and portable software embedded development.
eLua offers the full features of the regular Lua desktop version and uses Lua's native mechanisms to extend it with embedded development optimized and specific features.
Some aspects of eLua are:
- Full control of the platform: eLua runs on the "bare-metal". There is no Operating System between your programs and the microcontroller.
- Source code portability: Like in Lua, you program in C, Lua or a mixture of both and your program runs in a wide varied of (sometimes radically different) platforms and architectures supported.
- Transform hardware in commodity: Design and code your products for eLua and make them hardware-independent. Upgrade or completely change your hardware in the future and save time and money invested on the previous code development.
- Development on targets: Fully functional Lua and a dedicated command shell on the microcontroller itself. No need to install development environments on the PC side, other than a serial or ehternet console/terminal emulator. Use any text editor, save your programs in sd/mmc and other media and use them directly in your platforms.
- Flexible products: Add modern high level script-language capabilities to your projects, resulting in highly adaptable, field-programable and reconfigurable designs. Efficient (and cheap!) future evolution to your systems.
- Shorter TTM: Optimizes Time to Market, shorter time to revenue, improved ability to hit critical market windows, agility to survive in turbulent market conditions
- Embedded RAD: Prototype and experiment on a Rapid Aplication Develop model. Test your ideas directly on the target platforms and cheap development kits. No need for simulators or future code adaptations.
- Ready to use kits: A big (and growing) number of Open Source hardware and commercially available platforms are supported (see here ). Prototype cheap and fast and design your final hardware later using the produced code.
- Longevity: Add user configuration and scripting capabilities to your projects, making them adaptable to the always changing contexts of industrial processes, evolving engineering, automation standards, field optimizations etc...
- Learn embedded: Simple interactive and interpreted experimenting cycle. Use your desktop programming skills to become an embedded systems developer in no time and with a lot of fun.
- Worry-free Licence: eLua is free and open-source software and we promote it as much as we can. But our MIT licence (the same as Lua's) allows you to use eLua in your commercial and private-code products as well. Nothing to ask, no royalties to pay, just tell the world you're using eLua.
- eLua is not an Operating System, although it offers some features and characteristics of one, like different File Systems, a command Shell, a remote console for Terminal access, ...
- eLua is not a stripped down set of Lua to fit in the embedded environment. Much on the contrary, it strives to offer the same features as the desktop version of Lua, complementing them with specific features for embedded use and discarting the need of an operating system running on the microcontrollers. Besides offering different flavors of the full Lua implementation (like the possibility of choosing between an integer-only and a floating point numbers implementation), a lot of work was and will be done in the direction of making Lua more "embedded-friendly" by augmenting the core language with features that allow lower memory requirements and faster embedded performance.
- eLua is not a platform-specific development framework, much on the contrary. In eLua, you develop for a generic platform and run your Lua source code unchanged on a wide variety of platforms, offering the ancient dream of high level code portability among embedded platforms.
- eLua is not an application for an OS or RTOS or a specific microcontroller.
eLua is self-contained, runs on "bare-metal" and has support for a large number of microcontroler architectures and models. For a list of the current supported platforms, please check our Status page.
- eLua is not commercial software and there are no royalties or other charges for products based on it.