Jump to content

DirectX adapter for Brunner FFB Joystick ready


Recommended Posts

Thanks very much @Lynchsl62 for the detailed reply. Your point is a good one about other buttons available off the stick (I just ordered the CM3 throttle myself). And then there is always VoiceAttack. 

Does anyone have experience hovering helicopters with the Brunner? On thing I worry about is whether the mechanics of the Brunner base will lead to imprecision with the very minute, rapid inputs you're making continuously while hovering. 

 

Link to comment
Share on other sites

On 3/24/2022 at 2:47 PM, X-31_VECTOR said:

Many thanks Chuls! Would you say my other assumptions/understandings are basically correct? And I'm curious... do you ever choose to go back and fly with a normal stick base? Any regrets about making the move to the Brunner?  

yes, I'd say I agree with the rest of the points you and @Lynchsl62make. I haven't used much of DCS before but have heard that same feedback from some people before.

I wouldn't go back no a non-FFB base. It's just so much more immersive with the Brunner. My only real complain is that I'd like it to have more resolution in the center part of the stick but that's what you lose by using this type of base.

Link to comment
Share on other sites

8 minutes ago, Chuls said:

My only real complain is that I'd like it to have more resolution in the center part of the stick but that's what you lose by using this type of base.

Ah, that seems to answer my question about hovering. Is the issue that it doesn't read inputs well in the center (sensor resolution) or that the mechanical nature of the stick introduces slop? Thanks again for your thoughts. 

Link to comment
Share on other sites

it's more about the mechanical nature of using motors. It's almost impossible to have a really precise centering without introducing shaking of the stick. The stick actually detects the position with good accuracy, but the motor doesn't give you perfect feedback on where the center is. I only really notice this when playing something like Elite Dangerous anyway to be honest

Link to comment
Share on other sites

1 hour ago, Chuls said:

it's more about the mechanical nature of using motors. It's almost impossible to have a really precise centering without introducing shaking of the stick. The stick actually detects the position with good accuracy, but the motor doesn't give you perfect feedback on where the center is. I only really notice this when playing something like Elite Dangerous anyway to be honest

In a way that might be fine, as exact center or "neutral" stick position isn't really that relevant anyway in hovering. In my limited experience flying fixed wing aircraft with mechanical linkages IRL, the same was also true... even trimmed for straight and level flight, there were constant minor stick inputs to really hold heading and stay in coordinated flight, and the stick's tendency to return to "center" was within a relatively wide range. Granted, that was going 90-150 knots, not 350 knots, so I guess it's probably different in a P-51.

Thanks again for the info. I may start a thread specific to hovering with the Brunner in one of the helo forums to see if any of the rotor-heads have much experience with it. 

Link to comment
Share on other sites

In my experience the Brunner is precise and finds the centre without much "hysterisis" that I think you are referring to. I dont really fly helicopters, and definitely not in the hover but a quick flight in the Hind at low forward speed found no issues about hysterisis feedback loops

PC: 9980XE @ 64GB RAM /2080Ti, Samsung C49RG90

Joystick bases: VKB GFIII, FSSB R3L, Brunner CLS-E, Virpil Mongoos CM2

Joystick grips: Realsimulator (F-18CGRH, F-16SGRH-CE), VKB (MCG Pro, F-14, KG-12), Virpil Warbrd

Throttles: Virpil CM2, Kantorrin,

Other: TrackIR, TM MFDx2 (Cubesim Screenx2), Virpil Control Panel 1

Link to comment
Share on other sites

On 3/26/2022 at 1:53 PM, Lynchsl62 said:

In my experience the Brunner is precise and finds the centre without much "hysterisis" that I think you are referring to. I dont really fly helicopters, and definitely not in the hover but a quick flight in the Hind at low forward speed found no issues about hysterisis feedback loops

Thanks for taking the time to check. I'm reassured about the Brunner performance and now just need to convince myself to spend the money. 

Link to comment
Share on other sites

3 hours ago, Oldcooltronix said:

Hello, everyone...

does BrunnerDX Gui v2.6.0 only work with an Arduino Micro?

I tried it with an Arduino Uno but got an error message.

11d891081-brunnerdx-small.png

Thanks for the help...

 

Hi @Oldcooltronix! This program requires an Arduino Micro but maybe it can be made to work. I have never tried with an Uno, but it's a different chipset so it's still possible that the USB code needs some changes to make it work there. Worth trying anyway I suppose.

If you want, you can flash the Arduino manually (I imagine if you have an Uno you are used to doing this). Download this exact code into a folder and flash it with the Arduino IDE: https://github.com/jmriego/Fino/tree/e2b1367dfc1987b37070204a8446a1bfed16bfd8

Just in case you want to know the details, clicking on "Upload Firmware" tries to upload this same repo but after compiling it for a Micro. Let me know if you got this working

Link to comment
Share on other sites

Hello Fliegers!

I am very interested in BrunnerDX, unfortunately I am very confused, what have I to do to make my CSL-E be like DirectX FFB Joy. Will you help me please, my brothers in AirArms? 🙂
Ok, so I need Arduino Micro. How should be Arduino connected? It has one one USB micro and as I've read, the Arduino should be connected with PC. How can Arduino communicate with Brunner base when it is connected to the pc, and not to the Brunner base? Is there anything am I missing? Should I buy W5100 ethernet as It is mentioned on first page of the thread?

Link to comment
Share on other sites

hi @Joe Hallenbeck!

It's actually quite easy to use (or at least I hope I made it that way!).
You just have to have an Arduino Micro connected to your PC and then run BrunnerDX.

This program will install firmware into the Arduino that will make it appear like a joystick, then it will communicate between the game and CLS2Sim.
Have you heard about VJoy? That's some kind of virtual joystick. This Arduino acts very similar to that, except that VJoy has issues with several types of force feedback and this one works with no issues.

Anyway, all you have to do should be:
1. Connect an Arduino Micro with USB
2. Click on "Upload Firmware" on BrunnerDX (only needed the first time)
3. Open CLS2Sim
4. Click "Connect" on BrunnerDX

Link to comment
Share on other sites

On 4/9/2022 at 12:31 PM, Joe Hallenbeck said:

Great work. Very simple to make It work. You should be awarded  by medal 😉

I am facing a weak force feedback. I tried to put max FFB in CLS2Sim, put Force on 100 in BrunnerDX and no difference. Am I missing anything?

Starting with the simple questions. Have you configured CL2Sim to communicate with BrunnerDX, see attached screenshot of the CL2Sim setting screen, with the configuration for remote control

image.png

 

With CL2Sim configured and running (and connected to the CLS-E) start BrunnerDX and do you get the two green buttons confirming that BrunnerDX is connected to the Arduino and also communicating to CL2Sim

image.png

Finally ForceFeedback does not work with all modules. It is limited to those that are direct actuated, e.g. Warbirds and Mig-15 and due to the module configuration the F-14. All other modules it acts as a simple resistive spring, though you can feel the grip move as you apply trim in the hydraulic actuated modules. For FBW as I recall there is no effect

 

  • Like 1

PC: 9980XE @ 64GB RAM /2080Ti, Samsung C49RG90

Joystick bases: VKB GFIII, FSSB R3L, Brunner CLS-E, Virpil Mongoos CM2

Joystick grips: Realsimulator (F-18CGRH, F-16SGRH-CE), VKB (MCG Pro, F-14, KG-12), Virpil Warbrd

Throttles: Virpil CM2, Kantorrin,

Other: TrackIR, TM MFDx2 (Cubesim Screenx2), Virpil Control Panel 1

Link to comment
Share on other sites

  • Chuls changed the title to DirectX adapter for Brunner FFB Joystick ready
  • 5 weeks later...

(((FIXED))

Arduino not showing COM Ports

Running the initial setup and clicking upload firmware I get the following message



Init

You have the latest Version

Specified COM port name '' is not valid.



When I select Detect Ports nothing happens, and when I try to select 'connect' I get:



The PortName cannot be empty.
Parameter name: PortName

 

I'm surprised how many of these micro USB cables I have laying around.  Most are only set up for charging and not for transferring data.  After the 5th cable I found one that worked lol

Just leaving the post up for anyone who experiences the same issue.


Edited by NakedSquirrel

Modules: A10C, AV8, M2000C, AJS-37, MiG-21, MiG-19, MiG-15, F86F, F5E, F14A/B, F16C, F18C, P51, P47, Spitfire IX, Bf109K, Fw190-D, UH-1, Ka-50, SA342 Gazelle, Mi8, Christian Eagle II, CA, FC3

Link to comment
Share on other sites

(((FIXED))

I haven't noticed any FFB with Il2.  Inputs work, Spring centering works, and centering strength works fine, and I have FFB selected in the options.  I do not notice any feedback when firing weapons, flying in turbulence, or when flying near or into stalls.  Should I be seeing input messages in the log when running the BrunnerDX program?

 

Set the Arduino joystick to 0 in the settings in \IL-2 Sturmovik Great Battles\data\input\Devices.txt

Used the delay in the program to make sure 0 was bound for axis and not the Brunner

FFB works like a charm.  Thanks for the program!

 

Just leaving these posts up for anyone who runs into the same issues with setup.


Edited by NakedSquirrel

Modules: A10C, AV8, M2000C, AJS-37, MiG-21, MiG-19, MiG-15, F86F, F5E, F14A/B, F16C, F18C, P51, P47, Spitfire IX, Bf109K, Fw190-D, UH-1, Ka-50, SA342 Gazelle, Mi8, Christian Eagle II, CA, FC3

Link to comment
Share on other sites

thanks @NakedSquirrel! yes, that's a good point. Many USB cables are just for charging. Any Micro USB cable that can be used for a Mouse, Keyboard, USB hard drive or anything that does anything else besides charging should be good. I'll be modifying that error message and adding more info to the wiki so this is clearer. Enjoy! 🙂

Link to comment
Share on other sites

  • 4 months later...

@Chuls After some time off DCS, I finally got back again. What I notice is that I currently have two issues. Having installed Brunner DX from scratch (latest build), while it connects and works flawlessly, it seems to state that there is an update available, providing links to "DOWNLOAD" as well as "CHANGELOG". I have went to the provided link, downloaded and run the "msi."-installer. Running it, only lets me either "repair" or "remove" the Brunner DX, therefore I chose "repair". After running a successfull repair, as well as Brunner DX connecting successfully to CLS2SIM, it still claims that there is an update available, and links me to the same update. Any ideas on fixing this?

 

Also, while every single module works great, I notice that the stick is "limp" (bad pun intended) when flying the Mirage F1. Obviously, it works with every other module, so the question is as follows: Is this possibly a lack of FFB-implementation on the developer's side, or does Brunner DX require updates for every new module released for it to work?

 

*EDIT:

Scratch the last paragraph, it’s apparently an issue on the developer’s side, as expected. The missing spring-effect is described as a bug here:

 


Edited by zerO_crash

[sIGPIC][/sIGPIC]

Link to comment
Share on other sites

  • 2 weeks later...

FIXED¡¡¡¡¡

--------------------------------------------------------------------------------------------------------------------------------------------------

Dear @Chuls, first, thank you for your program.

I´m having a problem with the brunnerDx, it freezes and give me the following message:

 

"2022/10/27 11:09:30.346    en System.Runtime.InteropServices.Marshal.CopyToNative(Object source, Int32 startIndex, IntPtr destination, Int32 length)
   en BrunnerDX.Cls2SimSocket.ByteArrayToMessage[T](Byte[] bytearray, T& obj)
   en BrunnerDX.Cls2SimSocket.ReadPosition()
   en BrunnerDX.BrunnerDX.Communicate(RobustSerial arduinoPort, Cls2SimSocket brunnerSocket)
2022/10/27 11:09:30.346 El intervalo solicitado se extiende más allá del final de la matriz."

After that, it disconnects, any ideas on how to fix it?

Many thanks

-----------------------------------------------------------------------------------------------------------------------------------------------------

Update 31.10.22

After becoming completely crazy for days trying to solve this changing usb ports, uninstalling applications, switching connectors... (I have many things plugged to the PC, sim shakers, Saitek Radio/autopilot/flight switches across it´s application DCS Flight Panels (DCS BIOS), DCS UFC android connected program, Simple Radio...) I decided to download stand alone to see if the problem will persist with a "clean" installation... well it did not, then I Installed everything again on the Stand Alone... It still works¡¡¡ 

So at this moment there are two possibilities...

1.  Brunner DX is not compatible with steam version

2. I installed something on my DCS Steam that interfere with Brunner DX,

Either way right know it´s working for me on the stand alone!!!!!!!!

@Abburo I was never able to extract any FFB from vJoy furthermore at least on the Steam version the Brunner DCS software connector was incompatible with DCS BIOS, SIM SHAKERS and DCS UFC... so I cannot comment

That´s why I was so desperate to make Brunner DX work as it seemed my only way to have force feedback on DCS without  giving up other complemets for the game, thank god that on MS FSM2020 it worked like a charm ¡¡¡ as this is not a cheap piece of hardware I was beguining to have an small depression...

@Chuls Thanks again for tgis great piece of software¡¡¡

 

Happy Hallowing everyone¡¡ 

 

 

 


Edited by Lord Reaver
Link to comment
Share on other sites

Is any good reason to use this Arduino interface over the CLSim embedded vJoy functionality for Force Feedback ?

Asking this because i'm using this vJoy workaround and seems fine... and not sure if Arduino can do more!


Edited by Abburo

Romanian Community for DCS World

HW Specs: AMD 7900X, 64GB RAM, RTX 4090, HOTAS Virpil, MFG, CLS-E, custom

Link to comment
Share on other sites

USING F18 AUTOPILOT WITH CLS-E

 

I have the following problem...

I use the CLS-E with an extension, so I have set the forces relatively low near the dead zone, otherwise the known problem of oscillation occurs. However, this does not give me a fixed dead center, but a zone around the dead center in which the joystick can be moved very easily. This is not a problem for flying.

However, when I want to use the autopilot with the F18, the following problem arises:

If I use CSEL to follow the path, the autopilot works without problems, even if the joystick is not exactly in the center position.

However, if I use HSEL to follow a given heading, the autopilot only works if the joystick is exactly in the center position. However, because the joystick is almost never exactly in the center position due to the aforementioned settings, I cannot use HSEL properly. If I move the joystick to the center, the autopilot reacts and brings the aircraft on course. If I leave the center position by 1mm, the F18 perceives this as an override of the autopilot and the aircraft drifts off course.

Do you also have this problem or does anyone have a solution?

PC: Asus ROG Strix B650E-F Gaming | AMD Ryzen 7800X3D | Palit GeForce RTX 4090 Game Rock OC | 64 GB Patriot VIPER VENOM DDR5-6000

Input: Brunner CLS-E FFB Base | Thrustmaster Warthog Joystick & Throttle | Thrustmaster TPR Pendular Rudder | WinWing Phoenix MIP (VR) - F16 ICP - PTO2 | VPC SharKA-50 Collective 

VR: HP Reverb G2

Motion-Platform: Motionsystems PS-6TM-150 | Monstertech MTX

Youtube: https://www.youtube.com/@madmontys6dofmotionplatfor386/featured

Link to comment
Share on other sites

  • 4 weeks later...

Edit: Superceded by the following: 

New user and I have the following queries: 

1) If using your adapter, there is no need to install the Brunner DCS plug in, correct? 

2) All axis need to be bound within the Ardunio controls options column and that only, correct? 

3) FFB effects needs to be checked in DCS world options, correct? 

4) When using your adapter, the options to use profiles and other parts of the Brunner CLS2 software are not displayed ( see enclosed picture) . Is this because everything is now done through the GUI of your adapter? There were quite extensive tuning possibilities within the Brunner profile manager which are now lost and you also lose the ability to have different profiles for different aircraft. So I wondered what the reason for that is. 

5) Trim - Yesterday, I set it up, with Brunners DCS plug in installed ( However currently, I have a fresh install, without the plug in and just using your adapter) . I noticed that if you used the joystick in DCS without running the Brunner software, then when you trimmed the jet, the stick moved as you trimmed and stayed in that position, rather like force trim in a helicopter, specifically the AH64. If you ran the software, this did not happen, I dont understand why, do you know? Now, just using your adapter, this also does not happen. I have mapped the trim to the buttons on the joystick in your app only and they appear to have no effect. Running just your adaper ( No Brunner DCS plug in) I seem to have quite limited and different effects from those that I got previously using the Brunner DCS plug in as well. In both jets I have tried for example ( Hornet & F5) the trim seems to do nothing and the joystick will stay in the position to where you move it, there are some weak forces ( I tried moving the force slider in Profile, it made no difference to the resistance that I could tell...) 

Finally and I dont think this is correct, in both jets, there was more resistance to deflecting the stick to the left than to the right and forward than backwards. Not sure why. 

6) Generally, I am a bit unclear as to exactly what the sliders and options in BrunnerDX GUI do - for example in the Profile options, there is force slider - what does this control? What is the delay slider and where should it be set? What is the "Default spring" option box for? In the Trim options, what does the roll and pitch strengh refer to? 

7) If I dont run the BrunnerDx script and just try to run the CLS2 software, I no longer have the profile options etc available in the GUI...why is that? 

IMG_6374.jpg


Edited by markturner1960

System specs: PC1 :Scan 3XS Ryzen 5900X, 64GB Corsair veng DDR4 3600, EVGA GTX 3090 Win 10, Quest Pro, Samsung Odyssey G9 Neo monitor. Tir5. PC2 ( Helo) Scan 3XS Intel 9900 K, 32 GB Ram, 2080Ti, 50 inch Phillips monitor

 F/A-18C: Rhino FFB base TianHang F16 grip, Winwing MP 1, F-18 throttle, TO & Combat panels, MFG crosswind & DFB Aces  seat :cool:                       

Viper: WinWing MFSSB base with F-16 grip, Winwing F-16 throttle, plus Vipergear ICP. MFG crosswind rudders. 

Helo ( Apache) set up: Virpil collective with AH64D grip, Cyclic : Rhino FFB base & TM F18 grip, MFG crosswind rudders, Total controls AH64 MFD's,  TEDAC Unit. 

 

Link to comment
Share on other sites

hi @markturner1960!

let me try to summarize what I can help you with:

  1. Yes, if using BrunnerDX you don't use the DCS Brunner plugin
  2. Yes, everything needs to be mapped to the Arduino
  3. Yes, FFB effects need to be ON in DCS (that's not necessary as far as I understand if using CLS2Sim)
  4. The reason is that CLS2Sim either has full control of the joystick and simulation or none at all. It cannot merge the effects from DirectX with the profile settings. So it's letting BrunnerDX control everything. And BrunnerDX is just listening for DirectX messages
  5. I don't know much about it, but I play IL-2 with normal trimming options. This might depend on your DCS module, but you can also try the BrunnerDX trim options to see if that does what you want if the module does not support it
  6. That option makes it easier to map controls to the Arduino but it should not be necessary in DCS. There's a wiki explaining that here https://github.com/jmriego/brunnerdx/wiki/Options
  7. Is this the same question as 4? Basically CLS2Sim is accepting what they call External Control and ignoring any internal config. I agree it might be nice if it was possible to merge somehow but this would be more difficult that it seems as they'd have no way of knowing which part of the external control is about air forces, which part is about trimming, etc.
     
Link to comment
Share on other sites

Thanks for the prompt reply Chuls and the helpful answers, although, I must admit I am a little confused. Users in the thread are saying how great the effetcs are and so much better than the Brunner version. So I am am thinking that there must be something not right with mine.

This morning, I tried a vanilla install of the BrunnerDx, as you have confirmed, my instinct was correct, IE, all mapppings to the arduino, no Brunner plug in, yet what I experienced was a relatively weak and uneven resistance force, and thats it, trims did not move the stick and the stick was staying in the position where I put it, not returning to centre. It just did not feel "right"......

Prior to this, I had some fairly impressive FFB effects, the trim was moving the stick, and the joystick felt very different. My problem is, I had first installed, CLS2, then your adapter and they were all no doubt working over each other, so I have no real way of isolating what did what. I also then got a complete cut out, which was what led to me trying a fresh install this morning......

So now I am confused...from what people are describing, what I am experiencing is not the same, yet it appears, I have done everything correctly.......

 

System specs: PC1 :Scan 3XS Ryzen 5900X, 64GB Corsair veng DDR4 3600, EVGA GTX 3090 Win 10, Quest Pro, Samsung Odyssey G9 Neo monitor. Tir5. PC2 ( Helo) Scan 3XS Intel 9900 K, 32 GB Ram, 2080Ti, 50 inch Phillips monitor

 F/A-18C: Rhino FFB base TianHang F16 grip, Winwing MP 1, F-18 throttle, TO & Combat panels, MFG crosswind & DFB Aces  seat :cool:                       

Viper: WinWing MFSSB base with F-16 grip, Winwing F-16 throttle, plus Vipergear ICP. MFG crosswind rudders. 

Helo ( Apache) set up: Virpil collective with AH64D grip, Cyclic : Rhino FFB base & TM F18 grip, MFG crosswind rudders, Total controls AH64 MFD's,  TEDAC Unit. 

 

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...