Meet LUNA; A Multi-tool for Building, Hacking and Analyzing USB Devices
Despite its popularity, the developments of USB-based devices are characterized by diverse challenges ranging from specialized and expensive tools to complicated software. To solve this, Colorado-based open-source hardware manufacture; Great Scott Gadgets, recently started working on LUNA; a multi-purpose tool for USB devices development.
Designed as a “swiss army knife” solution for all things USB devices, LUNA is a multi-tool for building, monitoring, hacking, and analyzing USB devices. It features a unique, FPGA-based, digital hardware architecture, which, combined with the remarkable nMigen gateware-generation library along with several supported ultra-fast open FPGA tools, puts in the hand of users, a device that can automatically customize itself to suit the task hand.
On the Hardware level, LUNA features the Lattice Semiconductor LFE5U-12F ECP5 FPGA with the Microchip SAMD11 debug controller which provides access for configuration of the FPGA along with a number of interfaces for diagnosis. For connection of USB devices, LUNA features 3 High-Speed USB ports(2 Type-C and 1 Type-A), each connected to a USB3343 PHY with up to 480Mbps speed, and defined for specific communication mode/usage. An onboard 64MB RAM aids buffering of USB traffic while a 32MBit SPI-connected flash is available for PC-less FPGA configurations. These hardware features and functionalities put LUNA on a close enough pedestal as some expensive commercial USB analyzers like the TotalPhase Beagle 480.
On the software Side, LUNA uses the open-source ViewSB analyzer frontend with a FaceDancer Backend. ViewSB makes USB traffic more human-readable at any abstraction level, while FaceDancer makes it quick and easy to create or tamper with real USB devices even if you don’t have experience with digital-hardware design, using just a few lines of Python. The combination of these two, along with their open-source nature, makes LUNA one of the most versatile USB hacking and development tools.
Beyond its use by experienced developers to craft new solutions, LUNA also prides itself as an education platform for those looking to learn about developing USB devices. The team at LUNA has a long history of USB education and the resources from the several open-source training and workshops developed in the past, along with more LUNA-specific, fully open-source materials, are available to walk beginners through the basics of working and hacking with USB.
The customizable architecture of LUNA, allows users to interact with USB traffic at every level. which facilitates hacking but also enables learning, as it gives you the ability to take the data apart, split it up and evaluate it in ways that are not available in other solutions. This makes LUNA a goto tool for both veteran low-level hardware designers and complete newbies.
Great Scott Gadgets recently launched a crowdfunding campaign for LUNA on Crowd Supply with a funding goal of ÚSD80,000 with prices set at $99 for the LUNA board without enclosure, and $149 for the full-featured LUNA. As of the time of this writing, the campaign has been oversubscribed by almost 50%, with over $149,000 raised just 5 days after the campaign was launched. The campaign is expected to run for the next 30 days after which manufacturing, which according to the LUNA team will be done in China, is expected to kick into top gear.
LUNA is entirely open source with its hardware, gateware, firmware, and software files, all available on the team’s GitHub page, along with developer documentation on ReadTheDocs that shows how to get up and running with the LUNA Board.
More information on LUNA can be found on the project’s page on CrowdSupply. You can also interact with the LUNA team, and ask questions about the product via the LUNA Discord Channel, the LUNA IRC Channel, or the company’s Twitter page.