Eliot is an open-source Internet of Things project that aims in providing necessary software and hardware to be used in:
- Smart Home Applications
- Disaster Life-Support
- Smart City Applications
- Smart Agriculture
Eliot offers software and hardware platform that fits most of your IoT scenarios.
Project has two parts tightly connected to each:
- Server application for connecting, controlling and gathering data from IoT devices
- Mobile application for smart control and monitoring
- Embedded Software for IoT devices
- Hardware platform for IoT devices
- Sensors for IoT devices
- Actuators for IoT devices
- Controllers for IoT devices
Eliot uses a modular approach to IoT applications. Modules consist of Master, Communication, Input and Output controllers. Eliot can be easily extended by simply adding modules using 15 Pin generic interconnection outputs. Up to 128 modules can be connected to Master. These modules can be input sensors like gas, temperature, humidity or output controllers like relays, R-G-B led drivers, infrared remote controllers or even displays. Figura 1A is a description of how to extend Eliot by adding modules to master to meet the requirements.
Under the Hood
Eliot uses ESP-12E based 80 Mhz MCU with builtin Wifi and 4MB EEPRom. All other modules are based on ATMEL microcontrollers thus, it is quite easy to develop new firmwares with the SDK provided.
Sample PCB and Assembly
Eliot uses variety of programming languages. These are:
- Java (Server Application)
- Bash Script (Server Management)
- C, C++ (Atmega AVRs used on peripherals and NodeMCU Core)
- Lua (Mother Module)
If you are willing to participate in development, you should have thorough understanding of the languages listed above. However, if you are only interested in using Eliot in your projects, no skill required at all (in case you are going to use cloud servers offered by Eliot, if you want to use servers on premise, you need to have a good knowledge of managing linux servers.)