Mmjoy2 Download Updated
In the world of flight simulation, space sims (Star Citizen, Elite Dangerous), and custom arcade controls, enthusiasts often find commercial hardware lacking. Whether you need a replica F-16 throttle, a helicopter collective, or specialized button boxes with rotaries and toggles, off-the-shelf products are either too expensive or don’t exist.
Enter MMJoy2 – a free, open-source firmware designed for the STM32F103C8T6 “Blue Pill” microcontroller board. Created by Megalight (Romanian developer MHeironimus), MMJoy2 turns a $3 microcontroller into a powerful, highly customizable USB HID joystick device with up to 128 buttons, 8 axes, 4 encoders, 2 POV hats, and even LED outputs.
But there’s a problem: finding a clean, updated MMJoy2 download link has become a treasure hunt. Many forum posts point to dead website mirrors, while others host outdated versions from 2017 that lack bug fixes and newer STM32 bootloader compatibility.
This article provides the most current, verified source for MMJoy2 downloads, plus a complete walkthrough for installation, configuration, and troubleshooting.
Once the firmware is flashed, open MMJoy2_Setup.exe (no installation required, runs portable).
The most reliable, updated archive for MMJoy2 is currently hosted on FlightSimWire. This site acts as a modern mirror for the files that were previously scattered across file-locker sites.
If you have already downloaded a file called “MMJoy2 download updated.exe” or similar from a non‑GitHub site:
If you meant something else by “paper” (e.g., a user manual, a release note, or a review article), please clarify, and I will adjust the response accordingly.
is a powerful, community-developed firmware and software suite used to turn affordable Arduino-compatible boards into high-performance, Plug-and-Play USB HID game controllers. It is widely used by the flight simulation and sim-racing communities to build custom button boxes, joysticks, and throttle quadrants without the need for traditional programming. Core Capabilities Plug-and-Play (HID):
Once flashed, the controller is recognized by Windows as a standard game controller, requiring no custom drivers. Flexible Inputs: mmjoy2 download updated
Supports up to 8 axes (using sensors like TLE5010/11) and up to 128 buttons. Advanced Logic:
Native support for rotary encoders, toggle switches, and shift registers (for high-density button matrices). Shift Layers:
Allows buttons to change functions based on "shift" states, effectively doubling or tripling available controls. Download & Hardware Requirements
The software is free for non-commercial use and is typically distributed via community hubs. Download Locations: The primary English repository is available on the mmjoy_en GitHub Official update logs and project news can be found on the MMJoy Project Google Site Supported Hardware: Arduino Pro Micro (ATmega32U4): Most popular due to its small size and native USB support. Arduino Leonardo: Uses the same chip and is also compatible. Teensy 2.0 / 2.0++: Robust alternatives for more complex builds. Installation & Configuration Workflow Preparation:
Plug your Arduino board into your PC. Ensure it is recognized as a COM port or "Unknown Device". Firmware Selection: MMJoySetup.exe . Navigate to the "Firmware" tab and select the file corresponding to your chip (e.g., Firmware_lufa_[MMJOY2.ATMEGA32U4].hex
Select your device's COM port and chip type, then initiate the upload. This replaces the default Arduino bootloader behavior with the MMJoy2 HID firmware. Pin Assignment:
In the "Joystick Configuration" tab, assign your physical pins to specific axes or buttons. Save to Device:
Click "Save to Device" to store the configuration directly on the Arduino's memory. Recent Updates (Key Improvements) Increased Button Count:
Support for up to 128 buttons, with the first 32 allowing special functions like timers and encoders. Performance Optimization: In the world of flight simulation, space sims
Removal of mouse/keyboard emulation in some versions to reduce CPU load and improve response times. Sensor Support:
Enhanced protocol communication with TLE5011 magnetic sensors, reducing latency by approximately 30%. Shift Functions:
Added the ability for POV hats to function across different shift layers. or a list of compatible magnetic sensors for a high-precision joystick build? DIY: Part 1 USB Controller using MMJOY2 and Arduino board
MMJoy2 is a free, highly flexible firmware and configuration software for building DIY USB game controllers (joysticks, pedals, and button boxes) using cheap Arduino-compatible boards. While there have been no major core updates since the 20161101 release, this remains the most stable and widely used version for Windows-based setups. Download Links
MMJoy2 Stable Release (20161101/20161125): Available on the MMjoy_en GitHub Repository or via the MMJoy Project English Wiki.
Community Mirror: A widely cited updated link for the 20161125 build can be found on Google Drive as discussed in the r/HotasDIY community. Key Features
Plug-and-Play HID: Once programmed, the board is recognized by Windows as a standard HID-compliant game controller with no additional drivers required.
Customizable Inputs: Supports up to 8 axes, 128 buttons, and HAT switches using matrix layouts or Shift Registers (74HC165).
Advanced Controls: Includes features for auto-calibration of joysticks and virtual axis creation using encoders. Compatible Hardware MMJoy2 is designed for ATmega32U4-based boards: Once the firmware is flashed, open MMJoy2_Setup
The latest official builds for MMJoy2 are available via its primary development and archival hubs. This DIY joystick controller software allows you to turn cheap Arduino boards into high-performance flight sim gear. Latest Downloads & Firmware
The project is largely archived, but you can find the most recent stable releases and translated documentation at these locations: GitHub (mmjoy_en)
: This repository contains the English mirror for firmware and the "JoySetup" configuration software. Official mmjoy project Site
: The original source for Russian updates (e.g., v20151118), though navigation requires translation. DCS World Forums
: A long-standing community thread with active troubleshooting and hardware advice. Key Features
MMJoy2 is favored by the DIY flight sim community for its extensive customization options: High Button Capacity : Supports up to 120 buttons through a 12x10 diode matrix. Rotary Encoders : Native support for up to 6 encoders with adjustable step times and virtual axis creation. HID Plug-and-Play
: Once flashed, your device is recognized by Windows as a standard joystick without needing custom drivers. Keyboard & Mouse Emulation
: Maps joystick inputs to keyboard keys (with Shift/Ctrl/Alt modifiers) or mouse movements. Broad Hardware Support : Compatible with Arduino Pro Micro Teensy 2.0/2.0++ External Data Output
Even with the correct download, you need to flash it properly onto your STM32F103C8T6 “Blue Pill”. Here’s the modern method for 2024.