TangoDOS
Raspberry Pi Pico 2W · DOS-Style CLI · Built-In Scheduler · WiFi + Web UI · Sunrise/Sunset Automation · OTA Updates
Overview
TangoDOS is a DOS-inspired automation firmware for the Raspberry Pi Pico 2W (RP2350). It provides a familiar command-line interface over USB serial, a built-in HTTP web server for browser-based control, and a powerful scripting system — all running on a microcontroller that costs less than ₹600.
Users write automation scripts in a SCHEDULE.BAT file — a plain text file stored on the Pico's internal flash (LittleFS). Scripts can control GPIO pins, read ADC inputs, trigger I2C and SPI devices, send UDP messages, and execute scheduled tasks based on exact time, day-of-week, sunrise, or sunset — with full holiday awareness. Everything is configurable via a CONFIG.TXT file; no recompilation needed.
TangoDOS runs dual-core on the RP2350: Core 0 handles the command interpreter, HTTP server, and scheduler; Core 1 handles background tasks including non-blocking delays, PWM generation, and blink patterns. Inter-core communication uses the Pico SDK queue primitives for thread-safe message passing.
Key Features
- DOS-like CLI over USB serial (115200 baud) — familiar to engineers
- Built-in HTTP web server — browser control from any device on the network
- SCHEDULE.BAT scripting — plain text, no compiler needed
- Scheduling: exact time, recurring weekly, sunrise/sunset, holiday-aware
- GPIO, ADC, PWM, I2C, SPI, UART — all accessible via simple commands
- 50 user variables (float and string) with arithmetic and expressions
- OTA firmware updates — no USB cable needed for updates
- WiFi station or AP mode — works standalone or on existing network
- NTP time sync — pool.ntp.org, Google, Cloudflare, NIST
- DS3231 RTC support — accurate timekeeping without network
Example Script (SCHEDULE.BAT)
REM -- Morning lights on at sunrise, off at 10 PM
atsunrise +5 pin set GPIO4 high
onweekdays mon,tue,wed,thu,fri 22:00:00 pin set GPIO4 low
REM -- Log temperature every 10 minutes
ontime+ 0h 10m 0s adc read GPIO26
ontime+ 0h 10m 0s print %adc_value% Specifications
| Hardware | Raspberry Pi Pico 2W (RP2350 + CYW43439) |
|---|---|
| Firmware Version | v41 |
| Serial Interface | USB-CDC, 115200 baud |
| Web Interface | HTTP server — browse from phone, PC, tablet |
| WiFi Modes | Station (STA) + Access Point (AP, SSID: tangoDOS) |
| File System | LittleFS on internal flash |
| Script Lines | Up to 100 lines in SCHEDULE.BAT |
| User Variables | 50 (float + string, auto-detected) |
| I2C Devices | Up to 10 |
| SPI Devices | Up to 10 |
| UART Devices | 2 (Serial1 / Serial2) |
| Scheduling Modes | ontime, ontime+, onweekdays, atsunrise, atsunset |
| Scheduling Granularity | 1 second |
| Watchdog | 1–8 seconds, configurable |
| NTP Servers | pool.ntp.org, Google, Cloudflare, NIST |
| RTC Support | DS3231 (I2C, SDA=GPIO4, SCL=GPIO5) |
| OTA Updates | Yes — over WiFi, no USB cable required |
Scheduling Examples
Time-Based Automation
ontime 2026-12-31 23:59:55 blink GPIO4 5 1000
onweekdays mon,fri 09:00:00 pin set GPIO5 high
ontime+ 8h 0m 0s pin set GPIO5 low Sunrise/Sunset Control
atsunrise -30 pin set GPIO6 high
atsunset +15 pin set GPIO6 low
REM holiday awareness is automatic Automate Anything with Plain Text Scripts
TangoDOS turns a ₹600 Pico 2W into a fully programmable automation controller. Contact us for source licensing or OEM integration.