# IoT Core OS V3
This is an OS for the ESPMega PRO R3 Programable Logic Controller

## **Compatibility**
1. **CPU**
    - ESPMega PRO R3.0a/b
    - ESPMega PRO R3.1a
    - ESPMega PRO R3.2a/b/c
2. **CPU Add-ons**
    - ESPMega PRO Internal Display Module
    - ESPMega PRO External Touch Display Module
3. **Add-on Cards**
    - ESPMega I/O Analog Expansion Card
    - ESPMega I/O IR Expansion Kit
    - ESPMega I/O Card Hub
    - ESPMega I/O UART Multiplexer [WIP]
    - ESPMega I/O Digital Expansion Card [WIP]

## Features
- Internal Touch Display support for diagnostics and configuration
- WebUI for Configuration and OTA Update
- Allowing for reading and writing to registers from MQTT
- Provides abstraction layer to the MQTT protocol and internal components

## User Code and 3rd Party Extension
This OS allows the user to write custom program for the device to run in the OS<br/>
### *usercode.hpp* and *user_code.cpp*
### I/O Abstraction Layer
### MQTT Abstraction Layer
### RTC and Clock Abstraction Layer
### Persistent Storage Abstraction Layer
### Climate Abstraction Layer
### Energy Monitoring Abstraction Layer
### Timer Abstraction Layer
### LCD Abstraction Layer
