Use the ESP8266 USB Host Shield and, for example, a gaming joystick to interface with and remotely control, within the capabilities of the Arduino USB host shield 2.0 library, any microcontroller based device with WiFi.
The Arduino USB host shield 2.0 library supports many HID devices, FTDI, ADK, ACM, PL2303, Bluetooth, SPP communication, and mass storage devices. Furthermore, it supports PS3, PS4, PS5, PS Buzz, Wii, Switch Pro, and Xbox controllers.
There is no need to spend hours writing complicated code to decode various USB descriptors. Instead, the library does all the heavy lifting for you with the capabilities of the ESP8266, and maybe you may create a new game or implement DIY intelligent home automation with an old unused controller laying around.
Description
An ESP8266 D1-mini and our super easy ESP8266 USB Host Shield will let you control other WiFi devices wireless without being forced to dedicate an entire computer for such tasks. In addition, with the host shield, there is no risk of wiring it up incorrectly.
Our host shield comes fully assembled, and there is no need to program the shield itself. Still, you must add some Arduino example code to the ESP8266 to test your WiFi-connected USB device.
The host controller MAX4321E chip uses a four-wire serial interface to communicate with ESP8266. A USB type A female connector supplies 5V as any regular USB port would do.
Usage
Add the shield board on top of the ESP8266 D1-mini such that both USB connectors are above each other.
Install the Arduino library in the IDE, and within minutes, the library examples recognize your HID device. It is indeed a plug-and-play solution.
The SPI of 26MHz is fast; forget any sluggish UART communication.
Features
Arduino USB Host Library 2.0
Use the USB Host Library for Arduino hosted by Oleg Mazurov and Kristian Lauszus on GitHub. Install it with the Arduino IDE Library manager. The examples provided can be split into several categories, namely: • Game Controller (PlayStation/PS & Xbox). • MIDI control. • HID control. • Bluetooth 2.0 SPP (Wii game controller examples found here too). • CDC (Communications Device Class) Serial Terminal. • USB Hub; and then • Test & Utility functions.
The Arduino host shield library is for the Arduino shield implementation with MAX3421E. However, we have found that USB devices are generally recognized with the ESP8266 USB Host Shield since it also uses the MAX3421E.
Verify that the USB host shield library can use the device with the Arduino sketch USBHID_desc, found among the many examples.
To remotely control ESP8266 with UDP broadcasts, see the example ESP8266RemoteWiFiClientServer
for a start. There is no need to create web interfaces or any other complex cloud solution if your goal is to control devices in your home and within WiFi reach. Instead, a minimal number of lines of code is required to accomplish that task.
Specification
Operating voltage: 3.3V - (via ESP8266). The shield size is 26.5 x 31.5 mm (1.04” x 1.24”) and fabricated as a four-layer board for superior signal integrity.
• board thickness: 1.6 mm (63 mils)
• form factor and pinout: Wemos/Lolin ESP8266 D1-mini.
• weight: 6 gram (0.21 oz)
• height: 17.5 mm (0.69")
Note: The ESP8266 D1-mini is not part of the offering.
We usually ship within 2-3 days after receiving an order.