Dosemanager is a professional, WiFi-enabled laboratory platform designed for high-precision multi-channel liquid pumping and advanced multi-channel PWM LED illumination control.
Engineered specifically for laboratory setups, research environments, photoelectrochemical degradation tasks, and advanced bio-chemical experiments requiring precise time-sequenced automation.
The device controls up to 4 independent dosing pumps powered by L9110S motor drivers. It supports precise volume calculations, speed adjustments, cycle tracking, and calibrated flow speeds (mL/min) stored permanently inside internal EEPROM storage.
Simultaneously, Dosemanager integrates a 4-channel MOSFET PWM LED subsystem running at 5 kHz, allowing highly customizable light intensity configurations and independent automated pulse intervals.
Featuring a fully autonomous embedded multi-step execution engine, Dosemanager can run complex, non-volatile automation sequences independently without requiring constant cloud or host connection.
Advanced automation and precise real-time hardware execution for specialized operations.
Accurate volume configuration (mL per dose), customizable flow speeds, live cycle counters, and hardware-level pulse timing for periodic liquid transfer.
High-frequency 5 kHz PWM driving with 8-bit resolution. Supports discrete intensity levels and autonomous automated asymmetric ON/OFF pulse timers.
Program up to 32 independent sequential steps (Delays, LED configurations, or Pump commands). Supports single-run or infinite loop mode execution.
Calibration metrics, custom channel labels, network settings, and automation steps are saved natively into non-volatile 4KB memory.
Operates in simultaneous Access Point (AP) and Station (STA) mode. Native mDNS integration allows seamless local access via 'http://pecmanager.local'.
Every single hardware functionality is mapped to standard, easily scannable network endpoints, enabling straightforward external data logging and remote control.
Robust ESP32 microcontroller architecture ensuring microsecond timing accuracy across multi-threaded operations.
Dosemanager manages motor driving tasks through digital dual-pin configurations (PWM Speed + Low Direction pin) per channel to prevent reverse induction and voltage spikes.
The reactive responsive interface runs directly from the internal flash, distributing live hardware states through a JSON API endpoint polled dynamically every 5 seconds.
Safety-first design features immediate global emergency shutoff routines (`stopAllOutputs`) that interrupt all active hardware loops instantly when requested by the automation supervisor.
Responsive, light, and intuitive web application served directly from the ESP32's internal web server.
The Dosemanager web interface features a clean, CSS-optimized control panel designed to adapt to smartphones, tablets, and desktop displays.
Users can dynamically monitor active pump states, adjust flow speeds on the fly using intuitive range sliders, track cycle counts, and trigger individual dosage calibrations directly from their browser.
The interface also hosts a robust, dedicated Automation Sequence page. Researchers can visually add, remove, reorder, and loop up to 32 macro instructions (Delays, LED PWM levels, Pump triggers) and commit them permanently to the controller’s non-volatile EEPROM.
Flexible sequencing built around delays, targeted dosage bursts, and synchronized optical stimulation.
Step macros are pushed directly into the hardware array where a high-performance evaluation machine (`processAutomation`) cycles smoothly through defined instructions.
Users can choose between traditional continuous timer operations (independent pump loops) and linear state machines (stepped sequence automation) to cover all modern experiment demands.
Dosemanager provides a rich set of REST-like HTTP endpoints for automated control systems.
GET /api/state
Response:
{
"pumps": [
{"label": "Pump 1", "running": false, "timer": true, "volume": 5, "off": 5, "cycles": 12, "flow": 60, "speed": 80},
{"label": "Pump 2", "running": true, "timer": false, "volume": 5, "off": 5, "cycles": 0, "flow": 60, "speed": 50},
...
],
"leds": [
{"label": "LED 1", "intensity": 70, "auto": true, "state": true, "on": 2, "off": 2},
...
]
}
Available Endpoints:
// Core Controls
/toggle?relay=[0..3]
/toggleTimer?relay=[0..3]&on=[vol]&off=[sec]&action=[applyTimer|disableTimer]
/setMotorSpeed?relay=[0..3]&value=[0..100]
/setLedIntensity?led=[0..3]&value=[0..100]
/setLedToggle?led=[0..3]&on=[sec]&off=[sec]
/saveLabel?relay=[0..3]&label=[text]&flowSpeed=[mL_min]
// Automation Engine
/autoAdd?type=delay&time=[seconds]
/autoAdd?type=led&led=[0..3]&on=[0|1]&intensity=[0..100]&pulse=[0|1]&pon=[sec]&poff=[sec]
/autoAdd?type=pump&pump=[0..3]&on=[0|1]&intensity=[0..100]
/autoDelete?id=[index]
/autoMove?id=[index]&dir=[-1|1]
/autoList
/autoStart
/autoStop
/autoLoop?val=[0|1]
/autoSave
/autoLoad
/autoClear
// Network Settings
/connectWiFi?ssid=[name]&password=[pass]
/getWiFiStatus
Key electrical and operational parameters of the Dosemanager laboratory controller.
| Parameter | Specification |
|---|---|
| Microcontroller Core | Dual-Core ESP32 (32-bit architecture) |
| Pump Driver Channels | 4x Independent H-Bridge Channels (L9110S Dedicated Driver Logic) |
| LED Control Channels | 4x Independent Low-Side N-Channel MOSFET PWM Channels |
| PWM Specifications | 5000 Hz Frequency, 8-bit Resolution (0 - 255 Hardware Levels) |
| Non-Volatile Storage | 4096 Bytes Internal EEPROM System Protection |
| Maximum Automation Steps | 32 Programmable Linear / Closed-Loop Execution Blocks |
| Wireless Interfaces | 2.4 GHz WiFi (Access Point + Station Client Modes) |
| Local Resolution Service | mDNS Responder Context (`pecmanager.local`) |
| Default Networking Matrix | AP IP: 192.168.1.1 | Gateway: 192.168.1.1 | Subnet: 255.255.255.0 |