This guide will explain how to get VPX, perhaps in VR mode, to deliver Xbox rumble through something like the Teensy as a PInSim emulating an Xbox controller for less than $50 (Aussie money). https://www.tested.c...inball-machine/
The design of this solution is to use as much as we can in the standard way that VPX, DOF, etc works but achieve the desired outcome of getting standard VPX tables to make the rumble motors on the Teensy PinSim run. The only addition items required will be a PInscape controller and some minor electronics.
In normal operation VPX runs a table that via PinMAME, B2SServer and DOF drives toys on an output controller (LEDWiz, Pinscape, PinControl, PacLED64, etc) such as solenoids for slingshots, bumpers, etc. In a VR cabinet there is usually no output controller as there are no toys.
What we will do here is add an output controller and setup the toys that you want to drive the rumble motors but not actually install the physical toys. Instead we’ll feed the output signal for those toys back to the Pinscape controller as joystick inputs, and use those inputs to trigger DOFLinx, which will in turn run the rumble motors in any connected Xbox controller. Given that the PinSim Teensy device emulates and Xbox controller, then we can run the rumble motors when any standard output toy on a standard VPX table is triggered.
Different toys can be fed back into different inputs and hence run different either the left or right rumble motor for different times and intensities, all chosen by you. With a Pinscape we can easily “loop back” the standard 10 solenoid setupinpact given a standard KL25X board with no additions (Pinscape hardware), we can easily “loop back” over 30 toys.
There is no reason that you must use a Pinscape. If you already have an output controller and an input, either all in one such as a Pincontrol2 or separately such as a LEDWiz and iPac, then with some slightly different electronics this will all work with DOFLinx. I’m happy to assist with circuit design required to achieve this. Also, you can have actual toys, again it may just make a minor difference to the electronics, but it can be done – I’ve done it.
The logic of the solution is shown diagrammatically below.
This guide will setup five different rumble triggers and effects. These will cover 3 x bumpers plus the left and right slingshot. You will need to adjust for your ports and configuration to reflect your setup. The setup is;
Prerequisites
- VPX installed and running with at least one table
- DOF R3++
- DOFLinx
- A Pinscape
Setting things up
- Configure DOF so that the toys you want to trigger rumble have an output on the Pinscape (see example below)
- Install the electronics so that the configured output loops back to the desired input button
- Run DOFLinx with DEBUG=1
- Use the “Test Output -> Input Loopback” option to ensure that your toy output device / port “presses” the required joystick button
- Edit your DOFLinx.INI file to add the necessary KEY_TO_XBOX_RUMBLE= parameters (see below)
KEY_TO_XBOX_RUMBLE=J0101,1,L,60000,1000,J0102,1,R,60000,1000,J0103,1,L,25000,800,J0104,1,L,25000,800,J0105,1,L,25000,800
My setup in the config tool
My setup of the relevant Pinscape outputs
My setup of the relevant Pinscape inputs
The electronics
The Pinscape outputs are low (0v) when off and high (3V3) then on. Pinscape buttons are high (3V3) when unpressed and low (0V) when pressed. Given that we want to “press” a key when the output is high we need a low output when we have a high input, and also a high output when we have a low input. Fortunately, this is very common and there are super cheap options to achieve this.
To get those inverted input / outputs we will use an integrated circuit called an inverter. Given an inverter has one input and one output they are usually packaged as multiple inverters in one integrated circuit. In this case we’ll use a common one being a 4049, this has six inverters and comes in low power varieties so we can power it directly from the Pinscape. The 4049 is known therefore as a hex inverter. So. with one 4049 integrated circuit we could setup 6 toy outputs to button inputs. I you wanted to tun all 10 standard solenoid toys as different Xbox controllers / motors / speeds. Then just get 2 x 4049 integrated circuits – easy!
Thanks mjr for the Pinscape, a super cheap and easy way the achieve this outcome without developing a new software stack, architecture. Etc. Just using the defacto community standards we have and keeping VPX tables standard and pure.










Top












are all trademarks of VPFORUMS.