You are on page 1of 18

www.mfg-sim.

com

MFG Configurator Software v2.17 and electronics


User Manual
Revision. 05 ; 09.05.2022, for Firmware v5.09+, v7.20+

INTRODUCTION
“MFG Configurator” is software developed by MFG team. Main purpose is RAW calibration of axis
movement and readjustment of configurable parameters to customer needs. MFG Configurator
software is compatible only with game devices based on electronics produced by MFG Team ( e.g. MFG
Crosswind, MFG SiMM8Rge universal joystick ...).
Latest version is available for download on “downloads” section of MFG Website within a software
package.
Modifications done by Using MFG Configurator, including axis calibration, WILL NOT modify settings in
operating system (e.g. game device calibration). Instead, it WILL MODIFY VALUES PRESENTED BY
ELECTRONICS TO THE OPERATING SYSTEM. This fact is extremely important to understand.
For the clarification let’s imagine that X axis is turned OFF in MFG Configurator. In such case electronics
will constantly output X axis value = 0 to Operating System (windows, Mac OS etc). Therefore it would
be impossible for Operating System to see any movement on the axis. As far as Operating system is
concerned – such movement does not exist. There is no 3rd party software that could see axis movement
until it is enabled in MFG Configurator. Same rule apply for all other features of MFG Configurator.

Compatibility
The MFG electronics behave as a HID compliant game controller. This means that they are a plug & play
device that does not require driver installation under most common operating systems including:

 Windows XP, 7, 8, 8.1, 10 and 11 (both 32 and 64 bit versions)


 Mac OS
 Some Linux distributions

Configuration software only work under the Windows operating system (Win Xp, 7, 8, 8.1, 10 and 11).
Any changes to the configuration are saved in the electronics memory. As such, configuration ( including
calibration) will not be lost when a device is re-plugged to other operating systems and/or computers.
Linux or Mac OS users can use the software to calibrate and re-configure device on a Windows based PC
and plug already pre- configured device into the other Linux or Mac based computer.
In firmware v5.09 and Configurator v2.17 we introduced automatic calibration as a default, eliminating
the need for user intervention
Please note the following requirements for The Configuration software:

- does NOT require installation. Just run MFG Configurator exe file
- Microsoft Net Framework 4 is required to be installed. Windows 7 and newer already come with Net
Framework preinstalled. (web installation is included in the MFG Software package).
- MFG Configurator version V2.15 + is not compatible with some older firmware from MFG due to
changes. If there is compatibility issue software will warn you to upgrade firmware first.
Please read the firmware change log for Configurator & Firmware compatibility

Simulator / Game Compatibility

Any game/simulator that can use joystick input should be compatible with MFG electronics. At this time
following simulators / games have been tested:

1. Microsoft FS 2004, FSX, Microsoft Flight Simulator


2. Lockheed Prepar3D (tested up to v2)
3. X-plane 9, 10, 11 (32 & 64 bit, windows and Mac OS)
4. AeroflyFS(2)
5. Condor Soaring Simulator
6. IL-2 Sturmovik series (IL-2 1946, IL-2 COD, and IL2-BOS…)
7. DCS simulator series (including DCS world and all current modules)
8. Falcon 4 BMS
9. Rise of Flight
10. Wings over Flanders fields (CFS 3 add-on)
Our customers have tested and reported that our electronics work OK with following :
1. Elite Dangerous
2. Star Citizen ( tested 04.16.2015 - by using a custom XML file)
3. MechWarrior
4. Many other Simulators and games not listed here that support joystick input

USING THE MFG CONFIGURATOR SOFTWARE

Upon startup, MFG Configurator software will check for existence of MFG device on a system. If the
device is found the software will show the connection status as “connected!” and the active firmware
version currently loaded. Device selection box will show a connected device Name ( e.g. MFG Crosswind
V1, or V2/3 … or MFG SiMM8Rge etc.)
In case of multiple MFG devices connected to the system software will report it, and device selection
box will be unlocked for user to select. Once device is selected software will establish connection.

Upon successful connection software will present (Load and fill all fields) with currently active settings
that are stored in electronics. The software will also display raw axis value readings in real time.

When the mouse cursor is hovered over a text input box, button or a title, a tooltip will appear
describing the function. Therefore, MFG Configurator software is made to be intuitive for majority of
users without reading the manual in detail. Such intention is further improved by software safety
features. If user tries to apply a value that is not allowed pop-up message will appear with detailed
information. Operation will be canceled and user will further be informed in Status Field. Every
operation will be reported in a status field for user awareness.
MFG Configurator is intended to be “set it and forget it“ type of tool. Once user adjust configuration
parameters, software can be closed.

Software interface explained on example of connected MFG Crosswind V2/3 rudder pedals :
Device Connectio
Active firmware
selection n status
(selected device) Status field Config. buttons
menu

Axis configuration adjustments Axis Manual Calibration buttons


- Upon startup, active values are shown for a connected device Each axis has its own button
- Values can be modified manually, by loading a custom See axis calibration section for usage.
configuration file or reverted back to device factory settings Changes take effect immediately when
by clicking on “Show default” config. button calibration is stopped… no need to click
- Click Apply button for changes to take effect Apply.
- In the example above settings and axis that are not
supported or not adjustable on selected device are disabled

TABBED INTERFACE :
Adjustments are separated in multiple tabs. In
picture above AXIS tab is presented. Beside AXIS
there are “DIGITAL SENSORS” and “BUTTONS &
ENCODERS” adjustments. These also relate to
device selected on device selection menu and are explained further down in this manual.
For MFG SiMM8Rge universal joystick all settings in these tabs are enabled and present to the user. For
other devices some features might be disabled (e.g. MFG pedals V1 don’t have digital sensor, or physical
buttons).

CONFIG BUTTONS

Show active: loads the current settings from the selected device to the MFG Configurator Software
(populate fields in Axis, MLX1, buttons & encoders tab).
Show default: loads the factory preset values for currently selected device.
Parameters are device specific. Different parameters will be
loaded for MFG Crosswind V1 or V2/3. For MFG SiMM8Rge
universal joystick sample values will be loaded.

Load custom: Allows user to load configuration from a


previously saved configuration file (*.mfg). Therefore user
can quickly change various configurations.

Upon clicking on Show default or Load custom, a new window will appear for user to select what type of
data to load and, if checked, direct apply to device, making this a “single click” procedure.

Save as: Saves the current displayed settings in a user configuration file. Axis, all connected sensors,
buttons & encoders will be saved. (extension .mfg will be used)

Apply: Saves the current displayed settings to the device memory. New settings are active immediately
after clicking Apply. NOTE: will save only currently active tab, or in case of digital sensor – currently selected
sensor. For saving a complete configuration at once use load custom instead with apply to device ticked.

Bootloader: will restart the device as if it is being re-plugged into a computer and run mikroBootloader
application. Feature is documented in the Firmware Upgrade manual.

AXIS CALIBRATION

Doing axis calibration within MFG Configurator is completely different from doing axis calibration in
windows. We feel EVERY user of MFG electronics need to understand the difference.

Windows calibration was designed in days of Windows 98, when Game devices were “dumb”, often
without electronics to provide correct values to windows. Windows calibration assumed that game
device will only provide partial range of full possible axis movement, also called RAW axis input. It was
up to windows calibration to detect at which point axis start, end, and where is center point (out of full
possible range). Those points were recorded and interpreted by Windows to provide CALIBRATED axis
input to the game.

MFG electronics is high performing device and will output FULL range of possible axis movement to
windows. Values that windows receive will already be calibrated ( RAW = CALIBRATED axis input in
windows !!!). Therefore, any calibration in Windows, or by 3rd party software, is OBSOLETE !
Benefits of MFG Calibration method, together with other MFG features:
Higher precision (full range is utilized, always), Constant performance ( settings are preserved even if
device is re-plugged to another PC…after a year of collecting dust… calibration will still be accurate).
User can choose between 2x different calibration modes -> Automatic or Manual calibration. Pedals are
delivered with default setting -> Automatic calibration.
Automatic Calibration
As name suggests, in this mode calibration is taken care of automatically by electronics and it is now
default mode of operation. For MFG Crosswind, Center point on rudder axis is factory calibrated and
pedals are truly plug and play. This mode was created for ease of use, and for Linux and MacOS users
since they don’t need MFG Configurator software which only work under windows.
Automatic calibration “train” itself every time electronics are powered up and therefore require user to
move axis once trough full range of motion at every PC startup in order to know full range. Electronics
will not remember where axis is left at shut down which is undesirable for e.g. flaps, throttle, trim…
In case of axis malfunction or sensor replacement manual re-calibration of center point will still be
needed ( Start/Stop button).

Manual Calibration (Previously called Calibration ON setting)


This mode is activated when Auto Calibration is switched OFF (un-ticked). User is responsible to
calibrate each axis by clicking Start/Stop button. Recorded calibration settings will be saved in
electronics and preserved even if device is re-plugged to another PC or after a year of collecting dust…
(calibration will still be accurate). E.g. after PC power-up flaps, throttle, trim… will remember range of
motion and exact absolute position !
Only one axis can be calibrated at a time – re-calibrate only axis that need to be re-calibrated.

In order to calibrate any axis:


1. leave the axis at center position prior starting the calibration. (If calibrating axis that has center
e.g. rudder, steering wheel, joystick. Sensor value at the start of the calibration is saved as the
center position)

2. Click the button for axis you want to calibrate.


3. Move axis across full range of movement few times
4. Click the button.

Once calibrated, for Manual calibration to work, make sure the Auto Calibration checkbox is un-checked.
If axis has center point make sure have center checkbox is also checked for axis that you calibrate.

Situations which require axis re-calibration in Manual mode :


 Magnetic sensor or potentiometer replacement or readjustment.
 When mechanical adjustment is made on axis (e.g. adjusting the footplate angle on the MFG Crosswind
pedals require re-calibration of brake axis due to mechanical change of magnet angle while sensor stay fixed.

Service mode
Useful mode during service, installation or testing sensors, cables or mechanics, troubleshooting
problems in general.
In Service mode electronics will output raw SENSOR values without calibration or dead zone
adjustments, 0% and 100% on all axis will be on sensor/potentiometer maximum limits ( 0 to 5 volts for
analog and full circle for Melexis). Dead zone adjustments will be ignored and the output should never
reach absolute 0 or 100%). Service mode is just a temporary mode, will switch itself off after power off !
AXIS CONFIGURATION ADJUSTMENTS
Axis dependent functions are shown in a grid. The rows correspond to an axis and columns to a certain
feature. For example if it is desired to change the “Dead Zone Start %” value on the Y axis, user should
change the value in the box shown on picture below:

Drop down lists show commonly used values for each setting.
Values that don't exist on a drop down list can be entered manually.
The range of accepted values is limited for each setting. When entered value is out of
range, upon clicking Apply the software will cancel the input and display a warning
message.

On Off
When On Off checkbox is un-ticked, axis will be turned off completely. It is advised to turn off all axis
that are not in use to get most performance (reaction speed) out of actively used setup.
This setting is enabled on MFG SiMM8Rge universal joystick firmware only

Hardware Input
Assign a physical input source for axis. Multiple axis can have same physical input if desired.
- There are 8 analog inputs on SiMM8Rge circuit board. No need to re-plug the potentiometer on
different input – just re-assign it to different axis. Read MFG SiMM8Rge pin-out reference.
- Maximum 4 digital sensors can be connected to SiMM8Rge, two axis per each sensor. When using a
sensor in 2d mode (rotary, linear) select “alpha” value of sensor in use (MLX1a, MLX2a…) and when
using sensor in 3d joystick mode select representing angle ( MLX1a = 1st sensor Alpha , MLX1b is 1st
sensor beta angle). Read digital sensors Tab explanation below and MLX90363 datasheet for more
info on digital sensor input.
This setting is enabled on MFG SiMM8Rge universal joystick firmware only
Combine with
Allow two physical axis to be output as one. If, for example, user want to combine X and Y axis into
single axis the following is required: On X axis settings in “combine with” field select “Y” and click APPLY.
X axis will report combined (X and Y) while Y axis will output centered signal (50%) without movement.
When X and Y physical axis are at zero result is centered ( 50%) output on X axis
Moving physical X axis will result in movement to left (toward zero)
Moving physical Y axis will result in movement to the right (toward 100%)
When moving both axis at the same time one will cancel the other…resulting in centered value output.
Note:
- The Virtual button is unchanged when used together with combine with. Each axis trigger separate button.
- Axis dependent settings on the grid are not changed – meaning each physical axis is calibrated and set up
separately. Therefore if user want to use axis Inversion feature together with Combine with one must tick the
invert checkbox for both X and Y axis. For the same reason dead zone start % for each axis acts like a double dead
zone center so it's best to be reduced.
Usage example:
- Using two axis for a feature in simulator that support only one axis, such as controlling thrusters in a
space sim.
- Some Games with moving character on screen have poorly coded joystick integration. Such game
will automatically use ANY joystick’s X and Y axis for player movement. If X and Y axis are not set to
be centered (as is the case on MFG Crosswind’s brake axis) that will result in unplayable game.
Therefore it is good to have a saved configuration that will use this feature just to prevent
unwanted interference with such game.

Virtual Button and Virtual Button ON %


If Virtual Button option is ticked (ON) movement on the axis will trigger a press of a virtual button.
Virtual Button ON percentage (%) setting, located at the bottom left corner of application, determine
how much axis need to be moved ( in %) before a virtual button is registered as pressed. Percentage
setting is valid for all virtual buttons on all axis.
NOTE for MFG SiMM8Rge universal Joystick: It can vary which 8 buttons represent virtual buttons. These
are always last 8 buttons and therefore depend on Buttons & Encoder settings
Usage Example : to overcome limitation of a game which don’t support axis input for certain feature
(Original IL2 and AeroflyFS flight simulator did not support differential brake axis)

Invert
When Invert checkbox is ticked, axis movement will be inverted (Reversed direction).

Have Center
Must be turned ON for axis that has mechanical centering to achieve better linearity and accurate
centering (e.g. rudder, steering wheel, yoke, joystick), and turn OFF for axis that ARE NOT mechanically
centered (e.g. throttle, brake, mixture or prop pitch control etc).
When Turned ON Deadzone center Num. will also be active
Avrg. Filter ( Accepted value: From 1 to 40 )
The output of the magnetic sensors or potentiometers naturally has some noise that gets filtered out by
this feature to give a smooth accurate signal to the computer. This value represents the strength of the
noise filter on each axis. Increasing the value will increase precision and noise suppression but will
reduce the reaction speed on axis. For most sensors and potentiometers setting value between 4 and 10
should be fine. When Avrg. Filter is set to 1 it will turn OFF noise filtering on axis.
When digital sensor is used as input, Avrg. Filter is best set to 1 (OFF), and filtering adjusted by reprogramming
sensor’s FIR filter ( read “digital sensors” tab explanation)
Consist of two types of filters. 1st is Digital low pass (is always ON when) and 2nd is averaging filter
1. Digital low pass has a very low impact on performance. It is also adaptive (strength of filtering depends on the
speed of axis movement, giving best results for both reaction speed efficiency).
2. Averaging, oversampling, and decimation filter that has its strength (sampling) set in this field. It will suppress
noise and improve the axis resolution. Users are able to trade off noise for speed by adjusting the value.

Round. Filter (Accepted value: From 1 to 99)


Adjust strength of the rounding (hysteresis) filter on each axis. When set to 1 it will turn OFF the filter.
Filter work as noise suppression without impact on reaction time but with a reduction in resolution.
When digital sensor is used as input, Round. Filter is best set to 1 (OFF), and filtering adjusted by reprogramming
digital sensor’s FHYST filter (read “digital sensors” tab explanation)
When Round. Filter =12 is set it will not degrade output resolution. When higher value is set resolution will
degrade (=10 is approx 1 point on 8192 points scale. For example, Round. filter =40, output on axis will be every 4th
number… still leaving overall resolution of 11bits - 2048 points)

Dead Zone Start % and Dead Zone End % (Accepted value: From 0,1 to 25,5 (%) )
Non-responsive range at start / end of axis mechanical travel, while retaining full resolution. Values
represent percentage (%) of axis travel that will act as a dead zone.
Best practice is to make dead zones adjustment AFTER all mechanical adjustments are finished.

Dead Zone Center num. (Accepted value: From 0 to 40)


Non-responsive range at center of axis mechanical travel, while retaining full resolution. The value
represents the width of the deadzone. Setting = 40 is equal to approx 1% of axis travel. Setting = 8 will
typically output axis exactly at 50% when centered, with dead zone that is hard to notice.
This feature is only active if have center is checked (ON).
DIGITAL SENSORS TAB INTERFACE AND SENSOR PROGRAMMING

By selecting a sensor software will read and present it's parameters

Preconfigured defaults Sensor Adjustment fields


MLX 90363 can be reprogrammed for - Manually reprogramming sensor require
rotary, joystick (2 axis per 1xsensor) knowledge from Melexis MLX90363 datasheet –
and linear magnet movement. Default relevant pages in description of each feature
values will populate fields with most - Majority of users can easily understand and
common settings for a given reprogram first two options : FIR and FHYST Filter

MLX1 is onboard sensor on MFG SiMM8Rge electronics (and MFG Crosswind V2 pedals). MLX2, MLX3
and MLX4 represent external sensors which can be connected to the MFG SiMM8Rge electronics.

NOTE: Button extenders share the same connector pins with MLX4. Only one or the other can be
connected at the same time, but not both. When software report as MLX not present it mean that
sensor is not connected, or there is a problem (failure on sensor, cable or soldering).
Read MFG SiMM8Rge pin-out reference to determine MLX number/ connector scheme.

Once selected sensor settings are modified, click “APPLY” for changes to take effect.
Apply will re-flash sensor’s integrated memory. Configuration will remain active even if sensor is re-
plugged to other electronics device (another MFG based or Arduino for example). Flash memory is NOT
INTENDED FOR FREQUENT REPROGRAMMING. If reprogrammed too many times (70+) it might
happen that sensor stop responding due to extensive re-programming.

MFG Crosswind V1 pedals electronics only have analog sensors…therefore MLX1 it will show as “not present”. V2
pedals feature onboard MLX90363 digital sensor which can be reprogrammed (Pedals V2 use same electronics
hardware as MFG SiMM8Rge universal joystick controller with only difference in firmware).

MLX90363 DIGITAL SENSOR NOISE FILTERING


Noise filtering is done directly by integrated features on the sensor called FIR and FHYST. Therefore it is
recommended that Avrg. Filter and Round. Filter is turned OFF for axis that use digital sensor as input,
and filtering adjusted with FIR and FHYST parameter.
FIR is similar to Avrg. Filter in axis tab, and FHYST is similar to Round. Filter.
MFG Team determined that if correct magnet and air gap between magnet and sensor is set, setting
FIR=2 and FHYST=1 should be more than sufficient to achieve noiseless output in most occasions. If
values as high as FIR=3 and FHYST=3 don’t help to calm the noise user should consider repositioning the
magnet closer to the sensor or choose different magnet for given application.

Other important things about digital sensor’s resolution and filtering :


MLX output has precision of 16384 points (14bit) per full revolution (360 degrees) in 2d application -
approx 45,11 points per 1 degree of rotation. Precision of user configured axis can be determined by
formula: Full mechanical deflection range multiplied by 45,11 = resolution
In case of MFG Crosswind rudder axis calculation is: 72degree x 45,11 = 3277 points of precision from
sensor, without further digital filter improvement

MFG Electronics output 8192 points (13bit) resolution to windows per axis. Despite electronics doing
8192 points, sensor might not provide enough resolution to follow (when axis motion is 90 degree or
less). Therefore range will be stretched to fit, and some points will be skipped as a result. On example of
MFG Crosswind and other examples where sensor provide sufficient resolution (2000+ points) we feel it
is just fine. In other cases where axis has very low rotation angle (less than 45 degree), there is a way to
get more resolution from the sensor : Sensor’s FIR and HYST should be set slightly below noise limit…and
in axis tab Avrg. Filter should be set = 2 or = 4. Thanks to small noise Avrg. Filter can fill in the missing
points and accurately output full 8192 resolution despite the fact that sensor use low measurement
angle. Any noise left on axis should be canceled with Round. Filter.

When 3D mode (joystick) is enabled sensor has output range of 8192 points (13bit) per axis. Resolution
for joystick angle is also calculated different.

ASSIGNING DIGITAL SENSOR ON AXIS


In order to use digital sensor as input it is necessary to properly assign “hardware input” feature. Read
hardware input feature explanation for more info.
When selecting hardware input each sensor has two variants. One has “a” added to the name and
another one has “b”. This is because MLX90363 sensor has output for two axis angle position. One is
called alpha and other beta. MLX1a = 1st sensor Alpha, MLX1b is 1st sensor beta angle.
When using a sensor in 2d mode (rotary, linear) always select alpha value (e.g. MLX1a). Beta value can
also be selected and will produce output, but magnetic angle formula will not be correct!
When using sensor in 3d joystick mode select angle alpha for 1st axis, and beta for 2nd joystick axis.
Read MLX 90363 Datasheet - page 39 for more info on magnetic angle formula

PROGRAMMING OTHER DIGITAL SENSOR’S


FEATURES
For programming other sensor features read MLX90363
datasheet for understanding (MAPxyz parameter and
magnetic angle formula parameters).
Reprogramming MAPxyz parameter give user not only option
to reprogram different motion possibilities, but also to
position magnet in an unconventional way if user’s design has
such requirement. Hint : magnet rotation does not need to be facing top of sensor. Magnet can rotate
around ANY face of a sensor…lateral, or even used sideways to the sensor PCB.
Magnetic angle formula parameters are used to adjust linearity of output for these unconventional
magnet positioning (or to apply non-linearity by intent).

BUTTONS & ENCODERS ADJUSTMENTS


Buttons & Encoders interface allow user to reprogram and rearrange button and HAT connections on
MFG SiMM8Rge electronics.

MFG SiMM8Rge currently supports one HAT, maximum 36 directly connected physical buttons, up to
112 physical buttons when using button extender circuit board. Using axis as a virtual button is also
supported. Therefore total of 120 buttons is supported.
At the time of writing this manual Encoders are not yet supported. Encoders support and new features might be
added trough new versions of firmware and software in the future. Specific or custom firmware for MFG
SiMM8Rge might have some features locked and/or pre-configured for specific hardware (e.g. MFG Crosswind
rudder pedals have only virtual buttons).

Games/Simulators that use older method of interfacing joysticks will be able to detect only 32 buttons +
HAT, despite the fact that windows itself support 128 buttons per joystick. Windows/game controller
applet (joy.cpl) is able to see only 32 buttons. Because of that fact there is a button testing grid built in
MFG Configurator software. Users can re-assign physical buttons in such way that most of unused
button inputs are skipped from output to windows. Assignments are made in blocks of 8 buttons.
Flight simulators tested to support 128 buttons: DCS world, X-plane 10.45, Prepar3D V1+, Rise of flight, IL2 BOS…
Flight simulators which have 32 button limit: FSX, AeroflyFS, IL2 Cliffs of dover …
There are workarounds for this limitation by using 3rd party software like Autohotkey.
Interface explained on Example1:

Mode selection for Number of buttons to be


buttons connected used from Extender1
on SiMM8Rge PCB (8,16 or 24)
Painted
Checked to enable Real time buttons and reference
button extender1 HAT output testing grid column

In case Hat source is Pressed Virtual button 1 Pressed buttons will show in red color
AXIS selection will be Source : Axis 1 ( X axis) Source: extender1 (inputs 21 and 22)
Also interpreted as Hat - 45 degree due to
enabled to select which
hat source input selection
axis from dropdown list

Buttons testing grid is composed of 8 columns + Painted reference column because of previously
mentioned button assignment in blocks of 8 buttons. Hardware selection titles on the left are colored.
Each row in Painted reference column is colored according to active button assignment with a purpose
of understanding where to expect the button to be output.
In example 1 ( above) buttons will be output by following order :
Buttons 1 - 36 will be output from mainboard ( SiMM8Rge 6x6 pin matrix = 36 buttons)
Buttons 37 - 40 are skipped (no output, due to 8 blocks assignment schematic)
Buttons 41 - 64 are output from Button Extender 1 (assigned to use 24 button inputs from extender 1)
Buttons 65 - 80 are output from Button Extender 2 (assigned to use 16 button inputs from extender 2)
Buttons 81 - 89 are output from axis 1 to 8 (If virtual button feature is set in axis tab)
HAT is set to be sourced from hardware input 21,22,23,24 on Extender 1 circuit board

IMPORTANT :
According to user configuration and total number of buttons in use, buttons will be re-assigned, but always follow
the same output method: Main board buttons First, extender1 , 2 and 3, Virtual buttons last.
We used color coding to explain what’s going on. Let’s see if we can show it better on 2nd example…

Example 2:
Changed Main board buttons to Simple 12 (no matrix) and use only 8 buttons , set to use 16 buttons in extender 1,
8 buttons in extender 2 ,but turned ON extender 3 with full 24 buttons.
buttons will be output by following order :
Buttons 1- 8 will be output from mainboard (Simple 12 mode)
Button 9- 24 are output from Button Extender 1 (16 buttons)
Buttons 25 - 32 are output from Button Extender 2 (8 buttons)
Buttons 33 - 56 are output from Button Extender 3 (24 buttons)
Buttons 57 - 64 are output from axis 1 to 8 (If virtual button feature is set in axis tab)

Take notice how Painted reference column changed colors to provide visual cue of a new configuration.
Both Example 1 and Example 2 identical physical buttons are pressed, but because of different configuration
these are output on different button numbers!
Button inputs 21 and 22 on Extender1 are still pressed and correctly output as HAT = 45 degrees, but due to
Extender1 now use only 16 buttons, inputs 21 and 22 are no longer output as buttons.

SIMPLE 12 BUTTONS ON MFG SiMM8Rge

RED - signal wire for buttons Buttons : 1 2 3 4 5 6


GREEN - signal wires for HAT input
BLACK - GROUND wires*

HAT

HAT UP (000°)
HAT RIGHT (090°)
HAT DOWN (180°)
HAT LEFT (270°)
GROUND

* Ground wire can be shared (daisy chained) for all buttons


and HAT (simple 12 mode), and can be connected to any
GND input on MFG SiMM8Rge electronics. Buttons : 7 8 9 10 11 12
MATRIX 36 BUTTONS ON MFG SiMM8Rge

Matrix mode is obsolete due to existence of cheap Button extenders (daisy chained “shift register”
PCB’s) that don’t require diodes for simultaneous button press and have easy wire harness. Matrix
mode is created for legacy applications (connection to existing device already wired in matrix) or when
partial matrix is needed (e.g. 4x6 matrix and select 24 buttons in our MFG Configurator).

Looking at the diagram below, connecting two wires from a simple push button to Row 6 and Column 6
would activate BT.1 (Button 1), Row 6 and Column 5 activates BT.2, Row 5 Column 6 activates BT.7 etc.
In matrix mode ground pins are not used. Diodes are required if there will be 3 or more contacts
activated simultaneously. Most diodes can be used - 1N4148 or 1N4004 are good ones.
If user wish to connect HAT to matrix it need to be properly enabled in software and connected:
Input BT.33 = HAT UP , Input BT.34 = HAT RIGHT , Input BT.35 = HAT DOWN, Input BT.36 = HAT LEFT
BUTTON EXTENDERS ON MFG SiMM8Rge

MFG button extender interface is based around 4021 type input extender chip for compatibility reasons.
Many game devices use exactly same chip to interface multiple buttons on this 5 wire interface. Such
devices are therefore compatible to be interfaced when correctly wired (e.g. TM Warthog or Cougar
handle is good example). Each 4021 chip handle 8 inputs. Therefore user can select in MFG Configurator
to use one, or multiple extenders (currently up to 3), 24 buttons max per each extender. Multiple
extenders must be daisy chained – as shown on example below.
Button Extender interface is shared between input for external digital sensor MLX4 (SPI chip select 4)
Wire diagram is presented on 3x MFG Button Extender PCB’s which will be available for purchase soon. Each of
MFG button extender consists of 3x 4021 chips…therefore 24 buttons per PCB can be connected.
“MOSI” pin is not used, but we left it in wire schematic for simplicity.

SPI input CS 4
MISO
Clock
Not used
+5V
-Ground
Chip select

Button
extender 3
Button inputs 1...24

Button 4 3 2 1
Ground pins

extender 1

Button
extender 2

Chip select
-Ground
+5V
Not used
Clock
MISO
ANALOG AND DIGITAL AXIS ON MFG SiMM8Rge

Potentiometers 1kOhm...100kOhm
Up to 8 potentiometers or analog 5v sensors
each to it's own set of +5V, Input and GND pins
+5V and GND pins can be shared between inputs if desired

Analog inputs
8 7 6 5 4 3 Example connection
analog 5v hall sensor
Allegro A1302

Analog inputs 1 and 2

Chip select 3
Chip select 4

-Ground
+5V
MLX1 MOSI
Chip select 2

SCK (Clock)
Onboard digital MISO
Sensor MLX90363

MLX4
MLX2 MLX3

Each sensor have dedicated connector


as shown on picture on the right
where MLX2, MLX3 and warthog is
connected (as button extender instead
of MLX4)
As shown in above diagram, DIGITAL SENSORS
CAN SHARE ALL CONTACTS ( MISO,SCK, MOSI,
+5V, GND) ...except CS ( Chip select) pin.
MFG SiMM8Rge measurements and other features
* Measure represent distance from the edge to the center of Digital sensor hall 10mm strip can be clipped off if desired,
measuring element on both sides.
All screw holes are 3,2mm diameter, 3,5x3,5mm center distance from PCB edges MFG SiMM8Rge has a V cut line
All connectors are 2.54 mm pitch
10 mm 58,4 mm 10 mm
3,5 mm 16,1 mm*

19,5 mm

39 mm
USB type B
Female

3,5 mm
GND, D+, D-, +5V pins for connection LED light Holes for ICSP connection for custom firmware development.
of external USB plug, or custom ( blink during This can also be done trough USB bootloader and firmware
battery powered projects load,save) upgrade application which are included with MFG SiMM8Rge

TROUBLESHOOTING:

MFG Configurator Software Not Responding (hangs, freezes, don't start up at all)
 Application can freeze if opened in multiple instances. Resolve issue by going in Windows task
manager and end all MFG Configurator running processes, then try again.
If you don’t know how to do that a PC restart will do.
 Check if Microsoft .Net framework 4, or .Net framework 4 client profile is installed.
 Check if mcHID.dll is in the same folder as MFG Configurator software.
 On some systems the software needs to be “Run as administrator”. This can be done by right
clicking on the software icon and clicking on “Run as administrator”.

If the above does not address this issue please contact MFG team for help at mfg@simundza.com

One Or All Axis Don’t Work Properly In Game

1. Check if the axis is OK in Windows Control panel / game controllers (alternative - DIVIEW, or DXTWEAK)
If YES...problem is with your game setup. Consult game manufacturer forums or manual for help.
If axis is not providing full range of motion try to Reset windows calibration to default in Windows
Control Panel / game controller /properties / settings ( or search for joy.cpl in start menu)
If NOT working in windows game controller then try step 2.
2. Run MFG Configurator, Move axis fully and watch the MFG Configurator “real time raw values” to
see if all axes can move from 0 to 8192.
If axis does not move from 0 to 8192 Replug device or for Manual Calibration -> recalibrate axis
following the procedure in this manual.
If calibration did not help, continue to step 3.
3. Turn ON service mode setting in the MFG Configurator. Check if mechanical axis movement results
in movement of values in MFG Configurator
(In service mode the output will NOT go from 0 to 8192, this is normal)

If YES (mechanical axis movement result in movement of values MFG Configurator Real time Raw
values) then Your axis is working fine, but you did not follow steps 1 and 2 correctly. So go from a
start.
If NOT then try step 4.
4. Problem must be in wires. Check if cables which connect sensors/potentiometers are plugged in
correctly and the USB port is functioning properly. Re-plug cables, Re-plug USB to PC and retry step
3. If problem is not resolved your wire connections (or fried sensor) need to be replaced or fixed.

PC freeze during boot with MFG device plugged in (before you see a windows logo)

Problem is in UEFI bios in a feature called USB hand-off . This feature should provide to Windows all
info regarding connected USB devices during boot, but on certain motherboards it freeze in the process.

It is a bios bug affecting ALL high performance devices which have fast pooling speed (every 10ms or
less ). Affected motherboards (that we are aware of) are those using X79 and X99 chipset, many ASUS
boards afected. Try following solutions :

1. Update your motherboard's BIOS is available as some reported to fix this issue.
2. Check if you can disable USB to OS hand-off in BIOS usb settings. Some motherboards have this
feature.
3. Best way is to have all your expensive game perhapial connected to quality USB hub with On/off
button. Will save you some expenses in case of thunder strike or faulty power supply on your PC
too.

MFG device is no longer visible in windows

1. Since MFG electronics feature a safety mechanism it is possible that you flashed wrong firmware.
Consult firmware upgrade manual to upgrade firmware without using MFG Configurator (this is possible
for 5 seconds after device is plugged into pc). Use correct firmware during upgrade
2. This can also happen if firmware got corrupt for some reason. Same solution as step 1.
3. If step 1 or 2 don’t help, it is likely that some of sensors or potentiometers have a short circuit in
cables. Try unplugging all axis from PCB and see if problem is solved. If yes…check one by one
axis to see which one is causing trouble.
4. If none of above help contact MFG for support!

You might also like