Jump to content



Photo
- - - - -

Setting Up Analogue Nudge in DOFLinx

DOFLinx nudge

  • Please log in to reply
94 replies to this topic

#81 DDH69

DDH69

    Pinball Wizard

  • Platinum Supporter
  • 3,617 posts
  • Location:DOFLinx HQ, Adelaide

  • Flag: Australia

  • Favorite Pinball: Monster Bash

Posted 17 May 2022 - 08:25 AM

DOFLinx uses the joystick inputs under Windows presented by the Pinscape device.  A common problem is Windows picking up the correct drivers for Windows, DOF, and hence VPX does not rely on these.  Strange and erratic readings are often caused by this.  You will have to search this site for some others that have experienced this issue for guidance.  Ensure that you can see the device operating as a joystick in the Windows device test window and the axis move when you shake the Pinscape as per the Pinscape guide.  Once you have that go back to setting up in DOFLinx.


DOFLinx
Contributions for equipment to help with ongoing DOFLinx development can be made here

#82 GCS2000

GCS2000

    Enthusiast

  • Silver Supporter
  • 80 posts

  • Flag: ---------

  • Favorite Pinball: Star Trek: The Next Generation

Posted 21 May 2022 - 02:44 AM

DOFLinx uses the joystick inputs under Windows presented by the Pinscape device.  A common problem is Windows picking up the correct drivers for Windows, DOF, and hence VPX does not rely on these.  Strange and erratic readings are often caused by this.  You will have to search this site for some others that have experienced this issue for guidance.  Ensure that you can see the device operating as a joystick in the Windows device test window and the axis move when you shake the Pinscape as per the Pinscape guide.  Once you have that go back to setting up in DOFLinx.

 

In my case pinscape shows up as a game controller in windows and going to the calibration screen the + moves all around as it should but no analog nudge in FX3.  Not a deal breaker not having it but would be nice to get it working at some point



#83 DDH69

DDH69

    Pinball Wizard

  • Platinum Supporter
  • 3,617 posts
  • Location:DOFLinx HQ, Adelaide

  • Flag: Australia

  • Favorite Pinball: Monster Bash

Posted 22 May 2022 - 07:09 AM

A couple of things to read and consider;

http://mjrnet.org/pi...troubleshooting

https://www.vpforums...showtopic=42458


DOFLinx
Contributions for equipment to help with ongoing DOFLinx development can be made here

#84 GCS2000

GCS2000

    Enthusiast

  • Silver Supporter
  • 80 posts

  • Flag: ---------

  • Favorite Pinball: Star Trek: The Next Generation

Posted 24 May 2022 - 02:46 AM

So I would say I am clearly doing something wrong (and I am sure its just something minor in my ini file)

 

I was working to get my shaker going it is on a Sainsmart board in port 8.  This shows as device #3 so shaker should be 308 which I have set up.  This board also has my solenoids on it as well.

Solenoids work fine and trigger as they should.

 

Shaker - this triggers when I shake the table for trying to do analog nudge it does not trigger at any other time other than shaking the table.

 

Analog nudge does not work - my buttons do however my buttons for nudge are set to L arrow, R arrow and space bar.

 

Below is my ini which I know is wrong.  The shaker behavior is very weird

 

Thanks for any help you can provide.

 

 

FYI I have no other toys other than a shaker motor and solenoids (both of which work as they should in VPX)

 

 
######    DOFLINX - MAIN CONFIG INI FILE     ######
######         UPDATED BY TERRYRED           ######
 
# IMPORTANT! Please go through and edit EVERY section for your particular setup! If you don't you may get errors!
 
# This is a config file for DOFLinx with most of the available settings as a sample.
# DOFLinx works with LEDWiz, PacLed64, Pinscape, Ultimate I/O Sainsmart (FTDI devices), PinControl, and Teensy (or similar).
# Lines that start with a hash (#) or are blank are not processed.
 
# Device outputs are entered in the format of device (D) and output number (#) in the format D##, so controller device 1 and output 3 is "103" without the quotes, controller board 2 output 23 is "223" without quotes.
 
# The keyboard hex code for the "Key to Output / Colour",etc type functions can be found here:
#
 
###### DEBUG MODE ######
 
# 0 = OFF (normal operation), 1 = ON. When ON a window will appear and a log file will be created in the EXE directory.
 
DEBUG=0
 
 
########## DIRECTORY PATHS ##########
 
# IMPORTANT!!! Keep this as the first pararameter (other than DEBUG if you need it) to process in your INI file.  The order past ths point is not relevant!
 
# Point to your directoutputconfig.ini file.  Your file may have a number, ie directoutputconfig20.ini
# You can point to any of your directoutputconfig.ini files, but only one.
 
DIRECTOUTPUTCONFIG=c:\DirectOutput\directoutputconfig40.ini
 
# This is the folder where B2SServer.exe can be found on your system
 
PATH_B2S_SERVER=c:\Vpinball\Visual Pinball\Tables\
 
# This is the path to where your B2SServer GlobalConfig is located. Needed for addressable led effects.
 
DIRECTOUTPUTGLOBAL=C:\DirectOutput\config\GlobalConfig_b2SServer.xml
 
# The location of the .FX3 game specific files included with the DOFLinx release package
# Ensure your path has a \ on the end of it
 
PATH_FX3=C:\DirectOutput\FX3\
 
# The path to where you keep all of the .directb2s files that you've downloaded for use with FX3
# Ensure your path has a \ on the end of it
 
#PATH_FX3_B2S=C:\DirectOutput\FX3_B2S\
 
 
######### RGB UNDERCAB LIGHTING #########
 
# RGB Undercabinet Colour Change. RAINBOW = cycle through the colours. RANDOM = use random colour order
 
#RGB_STYLE=RANDOM
 
# What changes the RGB undercabinet colour. TIME = set time period. FLIPPER = flipper press after the RGB_TRIGGER minimum time (to stop rapid colour changes)
 
#RGB_TRIGGER=TIME
 
# The minimum time for change between flipper flips, 1000mS or 1 second
 
#RGB_MIN_TIME=8000
 
# The Device and "RED" port for RGB undercabinet lighting
 
#RGB_OUTPUT=129
 
 
######## FUTURE PINBALL LINK ########
 
# Turn on the attempt to make a full connection to Future Pinball when it is detected as running
 
FP_ATTEMPT_LINK=1
 
# When Future Pinball is detected and a Link is being established, this is the maximum amount of time the FP LINK will be attempted. After this time has passed, DOFLinx will activate it's Default mode.
 
FP_LINK_WAIT_TIME=95000
 
 
######## DEVICES and PORTS for FUTURE PINBALL and FX3 ########
 
# LINK_XX=D##,Default Time,Max Time,Intensity Level
 
# Intensity Level should normally be left at 255 (max). Only PWM outputs used with something like a Shaker Motor can be less than 255.
 
# Device and Ports for the 10 solenoid setup for Flippers, Slingshots, Middle 3 solenoids, Back 3 Solenoids.
 
LINK_LF=305,50,10000,255
LINK_RF=301,50,10000,255
LINK_LS=306,50,1000,255
LINK_RS=302,50,1000,255
LINK_ML=307,50,1000,255
LINK_MC=307,50,1000,255
LINK_MR=303,50,1000,255
LINK_BL=307,50,1000,255
LINK_BC=307,50,1000,255
LINK_BR=303,50,1000,255
 
# Device and Ports for the shaker, gear motor, knocker, beacon and strobe
 
LINK_SH=308,1000,5000,255
#LINK_GR=113,750,10000,255
#LINK_KN=114,120,500,255
#LINK_BK=115,FLASH,200,255
#LINK_SR=116,ON,0,255
 
# Device and Ports for the lights inside the various buttons including Start, Extra Ball, Coin, Exit, Launch Ball and Fire
 
#LINK_ST=117
#LINK_EB=118
#LINK_CN=119
#LINK_EX=120
#LINK_LB=121
#LINK_FR=122
 
# Device and "RED" ports for the 5 RGB flashers.
 
#LINK_FLOL=201
#LINK_FLIL=204
#LINK_FLCN=207
#LINK_FLIR=210
#LINK_FLOR=213
 
 
######## DOFLINX DEFAULT and FALLBACK FUNCTIONS ########
 
# These are the default and "fallback" type of functions that are used when DOFLinx is made active, but no link to Future Pinball or FX3 is established. 
 
# Turn on Button lights when DOFLinx is activated (such as EXIT button)
 
BUTTONS_ON=120
 
# Set the key code for the keys being used as Left and Right flippers
# Used for the default fall back if a full link cannot be established with FX3 or Future Pinball
# Left Shift = A0, Right Shift = A1
 
L_FLIPPER_KEY=A0
R_FLIPPER_KEY=A1
 
# The device and port for the left and right flippers.
 
L_FLIPPER_OUTPUT=305
R_FLIPPER_OUTPUT=301
 
# Just in case things go wrong (ie no keyup signal is detected, flipper held down for a long time), what is the maximum time a flipper solenoid / contactor can be in in milliseconds
 
MAX_FLIPPER_ON=5000
 
 
######## KEY TO OUTPUT / COLOUR, etc examples ########
 
# Make the "4" key (key code 34) to pulse controller/output 119
 
#KEY_TO_OUTPUT=34,119
 
# Set the left and right control keys to turn on a specific colour (red) for RGB.
# Example, when nudge keys are used it all goes red.
 
#KEY_TO_COLOUR=A2,109,Red,A3,109,Red
 
# Set the joystick settings for nudge with Pinscape and FX3
JOY_PORT=1
JOY_X_OFFSET=32767
JOY_Y_OFFSET=32767
FX_LEFT_NUDGE_POINT=-3201
FX_RIGHT_NUDGE_POINT=3201
FX_FORWARD_NUDGE_POINT=4345
FX_LEFT_NUDGE_KEY=25
FX_RIGHT_NUDGE_KEY=27
FX_FORWARD_NUDGE_KEY=20
FX_LEFT_NUDGE_INPUT=A2
FX_RIGHT_NUDGE_INPUT=A3
 
# Configure the analogue plunger, such a Pinscape Z axis, to work with FX3
PLUNGER_AXIS=Z
PLUNGER_JOYSTICK_NUMBER=1
PLUNGER_KEY=0D
PLUNGER_PULL_POINT=40000
PLUNGER_RELEASE_POINT=20000
 
 
######## MISC SETTINGS ########
 
# The list of processes that can activate DOFLinx, such as Pinball FX3, Future Pinball, etc. 
 
PROCESSES=Pinball FX3,Pinball FX2,Future Pinball,mamelayplus
 
# An over-ride to the default setting if this is just being used with Pinball FX3, not FX2, FP or other systems that may require the default delay
 
#PROCESS_TO_ACTIVE_TIME=1
 
# AUTO_MX (enabled=1) Allows for FX3 and Future Pinball tables that have DOFLinx support (for 5 RGB Flashers, Beacon, and Strobe) to automatically create basic Addressable Led effects.
 
AUTO_MX=1
 
# Set to 1 to output the game name to the log regardless of the DEBUG flag setting.  Set to 0 to simply follow the DEBUG flag.
# Quite useful when you trying to get the FX3 window game name for setting game specific colours, matching B2S names, etc
 
OUTPUT_GAME_NAME=0
 
 
######## DOFLINX SETTINGS SCREEN ########
 
# Configure the DOFLinx generated settings screen to activate when 4 keys are pressed, left shift, right shift, left ctl and right ctl (both flippers and magna saves)
# Set the Left flipper for UP, right flipper for DOWN, Start button for CHANGE and Extra Ball for EXIT
 
SETTING_ACTIVATE=A0,A1,A2,A3
SETTING_UP=A0
SETTING_DOWN=A1
SETTING_CHANGE=31
SETTING_EXIT=32
SETTING_MESSAGE=L Flipper = Up, R Flipper = Down, Start = Change, EB = Exit
SETTING=UnderCab,115,Under cabinet lighting disabled,Off,Y,114,150
SETTING=Addressable,119,Addressable LEDs Enabled,On,Y,118,50
SETTING=NIGHT,,Night Mode,Off,Y
 
 
######## FX2 GAME COLOURS ########
 
GAME_COLOUR=MsSplosionMan,Dodger_Blue,Pink,Medium_Blue,Purple,Royal_Blue
GAME_COLOUR=PlantsVSZombies,Lime_Green,Yellow_Green,Dodger_Blue
GAME_COLOUR=SouthParkButtersVeryOwnPinballGame,Dark_Red,Blue,Gold,Dark_Violet,Orange,Dodger_Blue,Lime_Green
GAME_COLOUR=SouthParkSuperSweetPinball,Dark_Red,Lime,Blue,Gold,Dark_Violet,Orange,Dodger_Blue,Lime_Green,Yellow_Green
GAME_COLOUR=SuperLeagueASRoma,Lime_Green,Orange,Lime,Yellow,Red
GAME_COLOUR=SuperLeagueZenStudiosFC,Lime_Green,Orange,Lime,Yellow,Red
GAME_COLOUR=SuperLeagueArsenalFC,Lime_Green,Orange,Lime,Yellow,Red
GAME_COLOUR=SuperLeagueLiverpoolFC,Lime_Green,Orange,Lime,Yellow,Red
GAME_COLOUR=SuperLeagueJuventus,Lime_Green,Orange,Lime,Yellow,Red
GAME_COLOUR=SuperLeagueACMilan,Lime_Green,Orange,Lime,Yellow,Red
GAME_COLOUR=SuperLeagueRealMadridCF,Lime_Green,Medium_Blue,Lime,Yellow,Red
GAME_COLOUR=SuperLeagueFCBarcelona,Slate_Blue,Lime_Green,Yellow,Blue_Violet,Lime,Red

Edited by GCS2000, 24 May 2022 - 03:50 AM.


#85 GCS2000

GCS2000

    Enthusiast

  • Silver Supporter
  • 80 posts

  • Flag: ---------

  • Favorite Pinball: Star Trek: The Next Generation

Posted 25 May 2022 - 12:20 AM

Been testing things out this evening and here is some additional info

 

With shaker motor enabled, analog nudge enabled, analog plunger enabled here is the behavior - please note both analog nudge and keyed nudge are active in the ini file

- analog plunge works basically - meaning I pull back and let go it launches the ball but you do not see plunger movement on the screen.  Also once plunged it cause the table to vibrate as if nudged

 

- shake table to nudge and shaker goes off causing a tilt - cannot tell if the nudge worked because it instantly engages the shaker and thus tilt

 

 

 

With shaker motor NOT enabled, analog nudge enabled, analog plunger enabled here is the behavior - please note both analog nudge and keyed nudge are active in the ini file

- analog plunge does not work

 

- shake table to nudge and it works but is fairly sensitive so it tilts with a light shake but I do have to shake fairly hard to get ball movement

 

- shaker of course does not go off

 

 

Will try a few other scenarios and report back as well



#86 GCS2000

GCS2000

    Enthusiast

  • Silver Supporter
  • 80 posts

  • Flag: ---------

  • Favorite Pinball: Star Trek: The Next Generation

Posted 25 May 2022 - 01:13 AM

Ok so more testing/trials and I MAY have figured out the issue.

 

So Debug mode kept showing something that didn't hit me until now.  I have Pinscape lite in the cabinet (for buttons and KLZ of course) and then a Sainsmart for solenoids and shaker.  Debug kept commenting about Ledwiz (which I don't have) and that it could cause conflicts if I don't really have one.

 

I went into Pinscape Config tool and LEDWiz was set to device ID 8 which meant I had a real one.  It says if I don't have a real one to set it to ID 1 which I did and below are my new test results.

 

With shaker motor enabled, analog nudge enabled, analog plunger enabled here is the behavior

 

Shaker motor appears to work it gets triggered at several points throughout the game - seems correct

 

Nudge seems to work as well it does trigger the shaker - guessing maybe it is supposed to do that (not sure) but does not cause tilt unless I give a really good shove

 

Plunger - tries to work but does not launch the ball just kind of hits it (never moves the plunger itself) but I am guessing this is just the parameters I have set for the plunger and needs to be dialed in

 

 

**Important note when the shaker does engage the screen shifts as if I just nudged the table.  I am guessing this means there is a sensitivity issue that needs adjusting - is this something I need to adjust in pinscape or the analog section of doflinx?

 

**Additionally I get no shaker, nudge, or plunger activity in Future Pinball but solenoids do work

 

 

I feel like I am really close.


Edited by GCS2000, 25 May 2022 - 01:17 AM.


#87 wiesshund

wiesshund

    VPF Legend

  • Members
  • PipPipPipPipPipPipPip
  • 11,871 posts

  • Flag: United States of America

  • Favorite Pinball: How many can i have?

Posted 25 May 2022 - 04:35 AM

Sounds like nudge needs more deadzone as it is picking up the shaker motor

 

in VPX you can set the nudge deadzone in keys nudge DOF prefs

or you could perhaps set it in windows in game controller properties, or maybe that is in the pinscape software, that i am not sure as i dont have a pinscape
but it sounds like you either need deadzone, or need to adjust the sensitivity down some using the nudge test table

 

with no deadzone nearly everything will induce nudging
if it has deadzone, then it is perhaps too sensitive

 

VPX prefs wise, try setting like a 5% dead zone and see if any difference is made

if not then the shaker may just be moving the KL25Z around that much.

 

Deadzone is basically much much input it will ignore, before it considers it input
and Sensitivity is how strongly it reacts to what it does consider input.


If you feel the need to empty your wallet in my direction, i don't have any way to receive it anyways

Spend it on Hookers and Blow


#88 GCS2000

GCS2000

    Enthusiast

  • Silver Supporter
  • 80 posts

  • Flag: ---------

  • Favorite Pinball: Star Trek: The Next Generation

Posted 25 May 2022 - 04:42 AM

Nudge test table - where might I find that?

 

Sounds like nudge needs more deadzone as it is picking up the shaker motor

 

in VPX you can set the nudge deadzone in keys nudge DOF prefs

or you could perhaps set it in windows in game controller properties, or maybe that is in the pinscape software, that i am not sure as i dont have a pinscape
but it sounds like you either need deadzone, or need to adjust the sensitivity down some using the nudge test table

 

with no deadzone nearly everything will induce nudging
if it has deadzone, then it is perhaps too sensitive

 

VPX prefs wise, try setting like a 5% dead zone and see if any difference is made

if not then the shaker may just be moving the KL25Z around that much.

 

Deadzone is basically much much input it will ignore, before it considers it input
and Sensitivity is how strongly it reacts to what it does consider input.



#89 wiesshund

wiesshund

    VPF Legend

  • Members
  • PipPipPipPipPipPipPip
  • 11,871 posts

  • Flag: United States of America

  • Favorite Pinball: How many can i have?

Posted 25 May 2022 - 04:44 AM

 

Nudge test table - where might I find that?

 

 

 

It should be in your tables folder, it comes with VPX itself


If you feel the need to empty your wallet in my direction, i don't have any way to receive it anyways

Spend it on Hookers and Blow


#90 GCS2000

GCS2000

    Enthusiast

  • Silver Supporter
  • 80 posts

  • Flag: ---------

  • Favorite Pinball: Star Trek: The Next Generation

Posted 25 May 2022 - 04:57 AM

 

 

Nudge test table - where might I find that?

 

 

 

It should be in your tables folder, it comes with VPX itself

 

 

Thanks

 

I have fiddled with VPX and feel its decently dialed in, not perfect.  FX3 is still an issue (not sure if the shaker is actually triggering or not tbh) and of course my thread about FP not connecting is an issue as well.

 

Sad to say DOFLinx and these issues are my last remaining hurdles on this cab and I really need to get them resolved.  Just frustrating the # of hours I have spent on it with no resolution such is the hobby.



#91 DDH69

DDH69

    Pinball Wizard

  • Platinum Supporter
  • 3,617 posts
  • Location:DOFLinx HQ, Adelaide

  • Flag: Australia

  • Favorite Pinball: Monster Bash

Posted 26 May 2022 - 09:17 AM

In DOFLinx you set the point at which nudge to the left, right and forward triggers.  If your nudge is too sensitive then increase the respective nudge point.  You can try these nudge values in the nudge test with DOFLinx in DEBUG mode and selecting that menu from the right-click menu.


DOFLinx
Contributions for equipment to help with ongoing DOFLinx development can be made here

#92 Ruddy

Ruddy

    Neophyte

  • Members
  • Pip
  • 3 posts
  • Location:France - Montpellier

  • Flag: France

  • Favorite Pinball: All

  • PS3 Gamer Tag: Ruddy34

Posted 16 August 2026 - 01:58 PM

Hi DDH69,

 

Thank you very much for your reply and for explaining how analogue nudge works with DOFLinx.

I understand that Zen Studios does not support third-party systems and hardware, so I won't pursue that side any further.

The problem I'm experiencing is actually a little more complicated than just the nudge.

 

I am using a VirtuaTilt based on a Pinscape Pico, and with Future Pinball, everything works perfectly through DOFLinx: flippers, solenoids, gear motor, plunger, etc. So all of my hardware works correctly with the same DOFLinx / DirectOutput setup.

The problem mainly occurs with Pinball FX.

With FX, the behaviour is very inconsistent. Sometimes I have the flippers and plunger, sometimes the solenoids work and sometimes they don't. The gear motor is not working correctly either, and the analogue nudge is currently not working.

I have also tried the different Steam Input / Steam XInput configurations, without success.

I have carried out the tests you recommended.

 

The first test with joy.cpl in Windows works perfectly: when I nudge the cabinet with the VirtuaTilt, the X/Y movements are correctly detected by Windows. The nudge is clearly detected in the joystick test, and the values respond correctly to the cabinet movements.

I also tested the hardware directly with the controller: the nudge is correctly detected by the VirtuaTilt. So the hardware is responding correctly and the analogue movement is reaching Windows properly.

This seems to rule out, in my opinion, a problem with joystick detection or the basic Pinscape Pico configuration.

What is particularly confusing is that the system can work partially and then stop working again after a restart or after changing a configuration. So I don't think this is simply a hardware problem.

The manufacturer of VirtuaTilt is 3DPTronics.

 

I have already contacted them on Discord. Their position is very clear in their documentation:

“3DPTronics supports the VirtuaTilt controller hardware only.”

They explain that their guides are provided to help users connect VirtuaTilt to various third-party software such as VPX, Future Pinball, DOF/DOFLinx, PinEvent, PinUP Popper, etc., but they clearly state that they do not provide official support for third-party software and direct users to the relevant forums and community channels.

I have therefore already contacted 3DPTronics and asked them for help regarding the integration with DOFLinx / Pinball FX. They simply referred me to the forums.

I completely understand that a manufacturer cannot provide support for every third-party software project. However, in my case, this is exactly what makes the situation difficult: Zen Studios does not support third-party hardware, 3DPTronics does not support third-party software integration, and I am therefore stuck in the middle trying different configurations without knowing which one is actually correct.

 

That is why I am turning to you.

You are the developer of DOFLinx, you know exactly how it works, and you have already worked with Pinscape Pico systems and analogue nudge. I therefore believe you are probably the person best placed to determine what is actually happening between VirtuaTilt, DOFLinx and Pinball FX.

The important point is that the nudge works perfectly at the hardware and Windows level. What is not working is the final step: DOFLinx needs to detect the analogue movement and convert it into a nudge keystroke sent to Pinball FX.

If you would like to contact 3DPTronics directly to obtain the precise information regarding the VirtuaTilt hardware configuration, I have absolutely no problem with that. On the contrary, I think that would probably be the best way to move forward.

I can of course provide you with all the configuration files, DOFLinx logs, screenshots and test results you need. If necessary, I can also help put you in contact with 3DPTronics.

 

I would simply like to avoid continuing to change settings randomly. The hardware works perfectly with Future Pinball, so we know that the Pico, the outputs, the solenoids, the gear motor and the rest of the setup are working correctly.

The problem really seems to be somewhere in the Pinball FX / DOFLinx integration, and that is precisely where I would need your expertise.

Thank you again for your help and for taking the time to look into this problem.

 

Ruddy


a/8ZR5jPW


#93 DDH69

DDH69

    Pinball Wizard

  • Platinum Supporter
  • 3,617 posts
  • Location:DOFLinx HQ, Adelaide

  • Flag: Australia

  • Favorite Pinball: Monster Bash

Posted 17 August 2026 - 06:08 AM

Hi DDH69,

 

Thank you very much for your reply and for explaining how analogue nudge works with DOFLinx.

I understand that Zen Studios does not support third-party systems and hardware, so I won't pursue that side any further.

The problem I'm experiencing is actually a little more complicated than just the nudge.

 

I am using a VirtuaTilt based on a Pinscape Pico, and with Future Pinball, everything works perfectly through DOFLinx: flippers, solenoids, gear motor, plunger, etc. So all of my hardware works correctly with the same DOFLinx / DirectOutput setup.

The problem mainly occurs with Pinball FX.

With FX, the behaviour is very inconsistent. Sometimes I have the flippers and plunger, sometimes the solenoids work and sometimes they don't. The gear motor is not working correctly either, and the analogue nudge is currently not working.

I have also tried the different Steam Input / Steam XInput configurations, without success.

I have carried out the tests you recommended.

 

The first test with joy.cpl in Windows works perfectly: when I nudge the cabinet with the VirtuaTilt, the X/Y movements are correctly detected by Windows. The nudge is clearly detected in the joystick test, and the values respond correctly to the cabinet movements.

I also tested the hardware directly with the controller: the nudge is correctly detected by the VirtuaTilt. So the hardware is responding correctly and the analogue movement is reaching Windows properly.

This seems to rule out, in my opinion, a problem with joystick detection or the basic Pinscape Pico configuration.

What is particularly confusing is that the system can work partially and then stop working again after a restart or after changing a configuration. So I don't think this is simply a hardware problem.

The manufacturer of VirtuaTilt is 3DPTronics.

 

I have already contacted them on Discord. Their position is very clear in their documentation:

“3DPTronics supports the VirtuaTilt controller hardware only.”

They explain that their guides are provided to help users connect VirtuaTilt to various third-party software such as VPX, Future Pinball, DOF/DOFLinx, PinEvent, PinUP Popper, etc., but they clearly state that they do not provide official support for third-party software and direct users to the relevant forums and community channels.

I have therefore already contacted 3DPTronics and asked them for help regarding the integration with DOFLinx / Pinball FX. They simply referred me to the forums.

I completely understand that a manufacturer cannot provide support for every third-party software project. However, in my case, this is exactly what makes the situation difficult: Zen Studios does not support third-party hardware, 3DPTronics does not support third-party software integration, and I am therefore stuck in the middle trying different configurations without knowing which one is actually correct.

 

That is why I am turning to you.

You are the developer of DOFLinx, you know exactly how it works, and you have already worked with Pinscape Pico systems and analogue nudge. I therefore believe you are probably the person best placed to determine what is actually happening between VirtuaTilt, DOFLinx and Pinball FX.

The important point is that the nudge works perfectly at the hardware and Windows level. What is not working is the final step: DOFLinx needs to detect the analogue movement and convert it into a nudge keystroke sent to Pinball FX.

If you would like to contact 3DPTronics directly to obtain the precise information regarding the VirtuaTilt hardware configuration, I have absolutely no problem with that. On the contrary, I think that would probably be the best way to move forward.

I can of course provide you with all the configuration files, DOFLinx logs, screenshots and test results you need. If necessary, I can also help put you in contact with 3DPTronics.

 

I would simply like to avoid continuing to change settings randomly. The hardware works perfectly with Future Pinball, so we know that the Pico, the outputs, the solenoids, the gear motor and the rest of the setup are working correctly.

The problem really seems to be somewhere in the Pinball FX / DOFLinx integration, and that is precisely where I would need your expertise.

Thank you again for your help and for taking the time to look into this problem.

 

Ruddy

 

Thanks for the additional information.  Yes, as a hobby, you are the system integrator unless you buy a pre-made system, so still some testing and trials for you yet!

 

So in summary you have two issues:

1. Nudge in Pinball FX

2. Some devices not working with Pinball FX

 

You say working perfectly with Future Pinball, are you using DOFLinx based tables or Pinevent tables?

 

For your inconsistent devices the ones you say sometime work and other times do not are the first to concentrate on.  You should setup DOFLinx to log with DEBUG=2, clear the DOLinx.log and do a short run when it works, and another when it does not.  Post both logs clearly explaining the play you went through and what did and did not work.  (you may want to sort out the mappings I talk of below first)

 

For the gear motor, have you run DOFLinx with DEBUG=1 and tested that device on the port you believe it is connected to?  I have looked in both the DOFLinx.INI files you posted and they are both not going to work.  In the VirtuTilt supplied one no devices are assigned to ports, so no outputs.  In your file multiple devices are assigned to one port, so chaos.  If you run DOFLinxConfig you can use the GUI config tool and test each device as you configure it,  It looks like you simply do not have the devices configured to the ports on the Pinscape Pico,

 

Regarding the nudge, if you are seeing nudge in the Windows joy.cpl then follow the details at start of this thread and use the DOFLinx test function to see movement in DOFLinx when you nudge and get the threshold parameters you need.  Once you have those get them into your DOFLinx.ini and then setup the keyboard keys to run Pinball FX.


DOFLinx
Contributions for equipment to help with ongoing DOFLinx development can be made here

#94 Ruddy

Ruddy

    Neophyte

  • Members
  • Pip
  • 3 posts
  • Location:France - Montpellier

  • Flag: France

  • Favorite Pinball: All

  • PS3 Gamer Tag: Ruddy34

Posted 27 August 2026 - 01:23 PM

Hi DDH69,

 

Thank you for your reply and for the explanations.

I have followed your first step and tested everything through joy.cpl to determine whether Windows detects the X/Y movement from the nudge.

Unfortunately, Windows does not detect any X/Y movement.

Here is exactly what I have found:

  • In the Pinscape Pico Config Tool, the nudge works perfectly. I can see the accelerometer values changing when I move/nudge the cabinet.
  • In the Nudge section of the Config Tool, I can see X Raw, Y Raw, Z Raw, X/Y/Z Filtered, Velocity, etc.
  • At rest, my approximate center values are X = 127, Y = 165, Z = 146.
  • My XInput works correctly: flippers, buttons, gear, etc. all work.
  • The problem is specifically with exposing the nudge as a Windows joystick, so that DOFLinx can read the X/Y axes.

In joy.cpl, I originally had two Pinscape Pico devices. Neither of them showed X/Y axes; I could only see the buttons.

I then tried enabling the Gamepad in the Pico configuration in order to expose the HID joystick required by DOFLinx:

 
"gamepad": {
"enable": true,
"x": "nudge.x",
"y": "nudge.y"
},
 

while keeping my XInput configuration unchanged:

 
"xInput": {
"enable": true,
"xLeft": "nudge.x",
"yLeft": "nudge.y",
"yRight": "negate(plunger.z)",
"leftTrigger": "pico_adc[0]",
"rightTrigger": "pico_adc[1]"
},
 

After this change, Windows now shows three Pinscape Pico devices, but unfortunately none of them show X/Y axes in joy.cpl.

I also tested directly in DOFLinx:

  • JOY_PORT=2 → DOFLinx rejects the port.
  • JOY_PORT=1 → the joystick is detected, but no X/Y values change when I move/nudge the cabinet.

I also unplugged and reconnected the Pico and restarted Windows, but there was no change.

So, as you explained in your reply, I am currently stuck before DOFLinx: the nudge works correctly in the Pinscape Pico Config Tool, but I cannot get the X/Y nudge axes to appear in joy.cpl.

I am currently using the Virtua Tilt configuration VTConfig-FX-FX3-DOFLinx_v1.2.json, based on Pinscape Pico.

I can provide you with the complete Pinscape Pico configuration file and my complete DOFLinx.ini if needed.

Could you please tell me what is missing or incorrect in my Pinscape Pico configuration to expose the nudge X/Y as Windows joystick axes, while keeping the XInput configuration that is already working correctly for Pinball FX/FX3?

 

Thank you for your help.


a/8ZR5jPW


#95 DDH69

DDH69

    Pinball Wizard

  • Platinum Supporter
  • 3,617 posts
  • Location:DOFLinx HQ, Adelaide

  • Flag: Australia

  • Favorite Pinball: Monster Bash

Posted 28 August 2026 - 01:24 AM

Ruddy, what you have is a Windows issue and I do not know the fix.  If you find the fix I will be interested.  @mjr may be a good place to start.

 

Your config for the gamepad is correct.  I have tested it on some new hardware I am building this morning.  My config is 

 
     gamepad: {
         enable: true,
         x: "nudge.x",
         y: "nudge.y",
         z: "plunger.z",
     },
 
The z plunger will not make a difference, that is my plunger.
 
Using this config on a new PS Pico build I can move between two Windows 11 machines and have your issue on one, but not the other.  I'm using the same PS Pico hardware, same configuration.  The machine I have the issue on is an older laptop with Windows 11 and the machine that's OK is my new build for my new virtual pinball machine.  I have tried the common fixes on the laptop, ie "Restore Defaults"" withion joy.cpl and removing the driver and reinstalling, neither work for me.
 
Until you see the nudge as axis in Windows using joy.cpl there is no point testing DOFLinx.  DOFLinx simply reads what joy.cpl shows.

DOFLinx
Contributions for equipment to help with ongoing DOFLinx development can be made here





Also tagged with one or more of these keywords: DOFLinx, nudge