The Instant WebStick Is a Tiny MicroSD-Based ESP8266 NAS for Low-Power Media Streaming and More

Drawing just 2W under load, this gumstick-style NAS gadget is powered by Espressif's ESP12F module on an open source PCB.

ghalfacree
about 1 year ago HW101

Full-stack developer and university student Toby Chui has built a device he calls the "Instant WebStick" — a compact gumstick-style USB gadget powered by an Espressif ESP8266 microcontroller and able to offer a compact, low-power web server or "poor man's" network attached storage (NAS) system.

"The WebStick is a USB stick form factor web server," Chui explains of his creation, "that provide limited features similar to [an] Apache/Nginx web server, including serving static HTML [HyperText Markup Language] pages with JS [JavaScript], CSS [Cascading Style Sheets] and more, directory listing, file upload/download, cookie-based login system, and file streaming (web stream-able files only, e.g. MP3/WebM)."

The Instant WebStick is a tiny, USB-powered microSD network-attached storage device with a surprisingly capable server on board. (📹: Toby Chui)

That feature set sounds a lot like a traditional web server or NAS box, but the Instant WebStick is built on impressively modest hardware: an Espressif ESP12F module with an ESP8266 microcontroller. Despite running from a device intended for use in embedded systems, the gadget offers usable throughput for basic tasks: 2-4 megabits per second (Mbps) for sequential reads and 400-600kbps for concurrent read/write to the on-board microSD storage, all in a 2W power envelope.

"As a full stack developer with friends in the STEM [Science, Technology, Engineering, and Mathematics] education field, many people ask me how to setup their own website for free but [are] picky about vendor lock-in or limited features," Chui explains. "That is why I developed the WebStick: so they can trying out the happiness of self-hosting (without the need to know how to use Linux and spending too much money on an Arm SBC [Single-Board Computer] like the Raspberry Pi) and let their students figure out how web server and networking works."

The design includes a CH340C USB-UART bridge, allowing it to be programmed with no extra hardware. (📷: Toby Chui)

The hardware runs an open source web server of Chui's own creation, which includes static site serving and a fully-functional login portal, a file manager with upload and download support, music and video streaming capabilities, a photo viewer, integrated Markdown text editor, and another text editor designed for coding — allowing HTML files to be edited directly on-device.

The source code and PCB Gerbers for the project are published to Chui's Git repository under the reciprocal GNU Affero General Public License 3, while fully-assembled units are available for $19.99 from Chui's Tindie store.

ghalfacree

Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.

Latest Articles