
Research & Development
Quantum Computing, Blockchain, IoT and Industry 4.0, Robotics, Energy and Sustainability. Prototypes and proof-of-concepts to validate emerging technologies.
Discover →
Digital Health
Medical software, EHR interoperability, HL7 FHIR/DICOM standards, diagnostic AI, MDR and EU AI Act compliance.
Discover →The architectural pattern
Many IoT scenarios require a combination of affordable embedded devices (collecting data or actuating) and a backend server (aggregating, analysing, presenting). noze’s consolidated pattern in R&D projects is:
[Arduino/ESP32] → MQTT → [MQTT Broker] → [Python backend] → [Storage + UI]
sensors Wi-Fi/LAN Mosquitto FastAPI/Flask PostgreSQL/Grafana
Edge layer
On the device side:
- ESP32 as preferred microcontroller (integrated Wi-Fi + BT, cost < €10)
- Arduino Uno/Mega where more pins or legacy shield compatibility are needed
- Libraries:
PubSubClient(MQTT),WiFi.h,Wire.h(I2C),SPI.h,OneWire.h - Typical sensors: DHT22 (temperature/humidity), BME280 (pressure), DS18B20 (precise temp), MAX30102 (pulse oximetry), MPU6050 (IMU), industrial 4-20 mA sensors via ADC
- OTA firmware — remote network update for fleet management
- Low power modes — deep sleep for battery-operated devices (ESP32 < 10 µA)
Transport
MQTT (RFC compliant) is the standard for IoT due to efficiency:
- QoS 0/1/2 for delivery guarantees
- Retained messages for persistent state
- Topic hierarchy for flexible addressing
- TLS for end-to-end encryption
- Broker: Mosquitto (open source, lightweight), EMQX (scalable), HiveMQ
Alternatives: HTTP REST (simpler but less efficient), CoAP (constrained IoT), WebSocket for real-time dashboards.
Python backend
On the server:
- FastAPI or Flask for REST API
- paho-mqtt for MQTT consumer
- PostgreSQL + TimescaleDB for time-series
- Redis for cache and in-memory pub-sub
- Celery for async tasks
- Grafana for dashboarding
- Prometheus for infrastructure metrics
Healthcare applications
In digital health noze uses this pattern for:
- RSA (nursing home) environmental monitoring — temperature, humidity, air quality in patient rooms
- Home telemonitoring — patient blood pressure, saturation, weight via ESP32 device + display, transmission to clinical platform
- Medical device tracking — BLE tags on wheelchairs, medication trolleys, real-time positioning
- Fall detection alarms — ESP32 IMU + on-device logic for fall detection
- Integration with AIHealth for vital data + AI correlation
Industrial applications
For Industry 4.0 and predictive maintenance:
- Vibration monitoring — MPU6050 accelerometers on electric motors, on-device FFT
- Production line temperatures — DS18B20 array via OneWire
- Energy metering — CT sensors + ESP32 for machine-by-machine electrical consumption
- Production tracking — RFID/NFC + ESP32 + MQTT
- Integration with company MES/ERP systems
Why Arduino/Python remains relevant
Despite more advanced options (Jetson, Raspberry Pi 5 with AI), the Arduino/ESP32 + Python combination remains the optimal choice for:
- Per-device cost under €20
- Very low power consumption (multi-year batteries with ESP32 deep sleep)
- Robustness — minimal firmware, few failure points
- Teaching and customer engagement — many customers understand Arduino/Python, less so other stacks
- Prototyping speed — concept to PoC in hours, not weeks
The pattern completes noze’s strategy: Arduino/ESP32 edge for sensing → Raspberry Pi/Jetson gateway for aggregation/local AI → Python backend (on-premise or cloud) for persistence and business logic.
References: ESP32 + MQTT + Python as standard IoT pattern. Mosquitto, EMQX MQTT brokers. PubSubClient (Arduino MQTT library). FastAPI, Flask, paho-mqtt, PostgreSQL+TimescaleDB, Grafana. Sensors: DHT22, BME280, DS18B20, MAX30102, MPU6050. Integration with AIHealth (digital health) and industrial R&D stack.