Compact IoT Sensor Interface Card
Description
This compact 5cm x 5cm IoT card is designed for seamless integration with a wide variety of sensors, making it an ideal solution for real-time monitoring and data collection in smart systems. With dual communication capabilities and versatile power options, this card offers flexibility and powerful performance for numerous applications.
The project is written in C/C++ language. Both hardware and software designed by me.
Key Features:
Communication:
WiFi & Bluetooth: Enables seamless wireless data transmission and device connectivity.
Secure HTTPS Communication: Ensures encrypted data transfer for secure IoT environments.
Supported Sensors:
Ultrasonic distance sensors, DHT11, DHT22, DS18B20 temperature and humidity sensors.
Full range of MQ series air quality and gas sensors, Piezzo disk, Analog inputs, and Light Dependent Resistor (LDR) sensors.
Power Options:
Can be powered via USB Mini B port or CR122 3V LiIon battery for flexible deployment.
Firmware Upgrade:
Supports over-the-air (OTA) firmware updates, allowing easy maintenance and feature enhancements.
Scheduled Monitoring with Sleep/Wake Functionality:
Efficient energy usage with scheduled sleep and wakeup modes, ideal for low-power applications.
Control with 2 I/O Buttons:
Provides manual control options via two input/output buttons for user-defined actions.
Multi-Language Support:
User interface and web services support multiple languages for global accessibility.
Built-in Web Server:
The internal web server allows users to access real-time sensor data and device status remotely through a web interface.
Web Services Support: Provides sensor data and system status through built-in web services.
This IoT card combines powerful features, flexible control, and real-time monitoring capabilities to meet the needs of modern sensor-based applications, with secure and efficient performance.
Project Files
Firmware
Line count, File name
4152 total
527 ./lang.cpp
527 ./display1306.cpp
386 ./service.cpp
364 ./connect.cpp
342 ./rtc.cpp
336 ./ajax.cpp
273 ./main.cpp
266 ./fget.cpp
251 ./web_server.cpp
238 ./boot.cpp
146 ./utf8decoder.cpp
130 ./operation.cpp
109 ./fset.cpp
94 ./rtc.h
45 ./convert.cpp
26 ./display1306.h
24 ./fget.h
14 ./fset.h
11 ./ajax.h
9 ./service.h
9 ./connect.h
8 ./boot.h
6 ./web_server.h
5 ./operation.h
3 ./convert.h
2 ./lang.h
1 ./utf8decoder.h
Web management
Line count, File name
1233 total
434 ./index.html
391 ./display.css
264 ./wifi.html
103 ./login.html
35 ./qsmart.css
6 ./animate.min.css
Description
This small sized hardware control board, control and manage thermal printer, I/O buttons and sensors, displays, terminals and workflows. Device can be configured with integrated web server.
The board successfully works on IEEE 802.11 Wifi networks and RS485 networks.
RS485 protocol which is using by board successfully performs bidirectional communication on a half-duplex line with only 2 cables designed by me.
The project is written in C/C++ language. Both hardware and software designed by me.
The device performs;
- Communicates with REST web services via WiFi connection,
- Automatic firmware upgrade update management,
- Multi language supports,
- Support communication in IEEE 802.11 networks,
- Manages static IP and DHCP configurations,
- Creates access point itself for recovery problems,
- Tracks WiFi signal strength for preventing packet loss,
- Communicates with other hardwares and servers with RS485 bus
- Up to 1200m communication via RS485
- Print graphics and customizable fonts from ECS POS thermal printers,
- Hardware monitoring, power supply, printer and WiFi signal strength,
- Integrated web server for settings,
- Controls the 2×16 parallel LCD displays,
- Controls 7 I/O buttons,
- Controls serial ECS POS thermal line printers,
Project Files
Line count, File name
621 ./display.cpp
10 ./display.h
161 ./ajax.cpp
15 ./ext_eeprom.h
87 ./webserver.cpp
7 ./mode_socket.h
4 ./boot.h
6 ./ajax.h
264 ./main.cpp
51 ./sound.cpp
448 ./mode_rs485.cpp
6 ./sound.h
1 ./lang.h
1 ./firmware.h
162 ./ext_eeprom.cpp
6 ./convert.h
350 ./mode_socket.cpp
10 ./mode_rs485.h
123 ./lang.cpp
118 ./firmware.cpp
73 ./convert.cpp
254 ./boot.cpp
4 ./webserver.h
2782 total