ESPUSB – An USB Software Stack For ESP8266

4757
0

ESP8266EX and even the new ESP32 SoC lack a USB hardware transceiver, so [CNLohr] decided to develop a USB software stack for ESP8266. After a quick search, I think it is the first try to do a USB software stack for esp8266. USB software stack is a firmware-only implementation of a USB. ESPUSB works in a similar way of V-USB for AVR MCUs.

This USB Stack uses D- on GPIO 4 and D+ on GPIO 5 and only operates with low-speed USB. To run ESPUSB on ESP8266 it will need about 317 byte of SRAM and 1422 byte from flash/IRAM.

USB Enumeration Using ESPUSB - Images courtesy of cnlohr
USB Enumeration Using ESPUSB – Images courtesy of cnlohr

[CNLohr] said that he could flash ESP8266 using the ESPUSB.

Flashing ESP8266 Using ESPUSB - Images courtesy of cnlohr
Flashing ESP8266 Using ESPUSB – Images courtesy of cnlohr

[CNLohr] described in a video the code of ESPUSB and how he developed it.

A forum for discussion for ESPUSB was created in ESP8266 website.
You can reach the source code of ESPUSB project on the GitHub repository.

Via: cnx-software

UPDATE(2/8/2016): [CNLohr] published a tweet, containing a photo of a PCB module for ESPUSB, it’s a small stick that can be plugged into USB directly. It uses ESP8285 SoC, same as ESP8266EX one but with built-in flash memory.

ESPUSBPCB

He also uploaded a video on Youtube showing the new PCB plugged into his laptop which is detected as HID mouse device using the ESPUSB USB software stack. He controls the mouse pointer over WiFi using an application from his phone.

 

 

Leave a Reply