Proteus¶
This board is larger and designed to make it possible to add your own circuitry to make a complete IoT solution on one board. It includes a dual-core 240 MHz ESP32 with WiFi and Bluetooth. You can use the WiFi both in station (device) mode and access point mode. It includes traditional Bluetooth as well as BLE 4.0. On-board is a 3.3V regulator and a battery charging device that enables you to switch between using USB or battery power.
The battery is automatically charged in the USB is plugged in. A status light shows if it is charging or fully charged. All ESP32 pins bar the flash pins are exposed and available for your use.
The board includes a large prototyping area that includes room for traditional DIP and through-hole components as well as SMD parts such as SOIC and SOT-23. A user LED and switch is included but not connected to any pins so you can use them how you wish. Two level shifters are included so you can interface with 5V devices.
The Proteus includes both 3.3V and 5V rails. Both these rails are available whether powered by the USB or the battery as the 5V is derived from the lower voltage.
Pins Used¶
Pin | Description |
---|---|
None | No pins are utilized by the Proteus board |
Libraries¶
This is not an exhaustive list of libraries available for IoT-Bus but it is a useful list of some of the libraries we have used and especially those we have used for examples. The license for each of the libraries can be found on each library’s GitHub page.
Name | Board | Framework | Description |
---|---|---|---|
webthing-arduino | Io/Proteus | Arduino | Simple server for WiFi101, ESP8266, or ESP32 boards compliant with Mozilla’s proposed WoT API |
ESPAsyncWebServer | Io/Proteus | Arduino | Asynchronous HTTP and WebSocket Server for ESP32 |
ArduinoJson | Io/Proteus | Arduino | C++ JSON library for IoT. Simple and efficient. |
arduino-Lora | LoRa | Arduino | Sandeep Mistry’s arduino-LoRa library |
Arduino-CAN | CAN Bus | Arduino | Sandeep Mistry’s Arduino-CAN library |
Arduino-OBD2 | CAN Bus | Arduino | Sandeep Mistry’s Arduino-OBD2 library requires Arduino-CAN |
Adafruit_ILI9341 | Display | Arduino | Adafruit’s ILI9341 library - use with Adafruit-GFX-Library. |
Adafruit-GFX-Library | Display | Arduino | Adafruit’s general purpose graphics library. |
TFTeSPI | Display | Arduino | Bodmer’s TFT library has been forked to setup defaults. |
XPT2046_Touchscreen | Display | Arduino | Fork of Paul Stoffgren’s XPT2046_Touchscreen library. |
ESP32_TFT_library | Display | esp-idf | loboris TFT library for ESP32 |
Adafruit_Motor_Shield_V2_Library | Motor | Arduino | Adafruit V2 Motor Shield library |
esp-mqtt | Io/Proteus | esp-idf | Espressif MQTT library |
esp-idf-lib | IO/Proteus | esp-idf | UncleRus components for esp-idf framework. Mostly ports from esp-open-rtos |
esp-idf-lib Components¶
Component | Description | License | Thread safety |
---|---|---|---|
i2cdev | I2C utilities | MIT | Yes |
ds1307 | Driver for DS1307 RTC module | BSD | Yes |
ds3231 | Driver for DS3231 high precision RTC module | MIT | Yes |
hmc5883l | Driver for HMC5883L 3-axis digital compass | BSD | Yes |
onewire | Bit-banging one wire driver | MIT* | No |
ds18x20 | Driver for DS18B20/DS18S20 families of one-wire temperature sensor ICs | BSD | No |
dht | Driver for DHT11/DHT22 temperature and humidity sensors | BSD | No |
bmp180 | Driver for BMP180 digital pressure sensor | MIT | Yes |
bmp280 | Driver for BMP280/BME280 digital pressure sensor | MIT | Yes |
bh1750 | Driver for BH1750 light sensor | BSD | Yes |
ultrasonic | Driver for ultrasonic range meters, e.g. HC-SR04, HY-SRF05 | BSD | No |
pcf8574 | Driver for PCF8574 remote 8-bit I/O expander for I2C-bus | MIT | Yes |
hd44780 | Universal driver for HD44780 LCD display | BSD | No |
pca9685 | Driver for 16-channel, 12-bit PWM PCA9685 | BSD | Yes |
ms5611 | Driver for barometic pressure sensor MS5611-01BA03 | BSD | Yes |
ads111x | Driver for ADS1113/ADS1114/ADS1115 I2C ADC | BSD | Yes |
pcf8591 | Driver for 8-bit ADC and an 8-bit DAC PCF8591 | BSD | Yes |
tsl2561 | Driver for light-to-digital converter TSL2561 | BSD | Yes |
max7219 | Driver for 8-Digit LED display drivers, MAX7219/MAX7221 | BSD | Yes |
mcp23017 | Driver for 16-bit I2C GPIO expander | BSD | Yes |
tda74xx | Driver for TDA7439/TDA7439DS/TDA7440D audio-processors | MIT | Yes |
Schematic¶
Platforms¶
Name | Description |
---|---|
Espressif32 | Espressif Systems is a privately held fabless semiconductor company. They provide wireless communications and Wi-Fi chips which are widely used in mobile devices and the Internet of Things applications. |
Frameworks¶
Name | Description |
---|---|
Arduino | Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences. |
ESP-IDF | Espressif IoT Development Framework. Official development framework for ESP32. |