Jump to content

DirectX adapter for Brunner FFB Joystick ready


Recommended Posts

On 10/1/2021 at 6:10 PM, heloguy said:

I can help with that.

Thanks a lot! I think I'm on the right path here, can you upload this sketch to the Arduino?
https://github.com/jmriego/fino/tree/default_spring

That branch has some changes I was checking. You should be able to go to that link, click on the green "Code" button->Download ZIP. Unzip that file and then upload the contents of that folder to the Arduino using Arduino IDE. I think you are familiar with all this but I can give more detailed instructions.

Just make sure to have BrunnerDX on a very low force setting when testing just in case I missed something!

Link to comment
Share on other sites

2 hours ago, Chuls said:

Thanks a lot! I think I'm on the right path here, can you upload this sketch to the Arduino?
https://github.com/jmriego/fino/tree/default_spring

That branch has some changes I was checking. You should be able to go to that link, click on the green "Code" button->Download ZIP. Unzip that file and then upload the contents of that folder to the Arduino using Arduino IDE. I think you are familiar with all this but I can give more detailed instructions.

Just make sure to have BrunnerDX on a very low force setting when testing just in case I missed something!

Sounds good, I'll take a look when I get a chance.  It's been awhile since I've uploaded sketches, but I'm sure I can figure it out.

 

i9 12900k @ 4.9ghz, 32gb RAM

Nvidia RTX 3090

Windows 11 x64

Valve Index

Brunner CLS-E w/RS F16GRH, Virpil TCS Rotor Plus Collective, BRD F1 Pedals, WH Throttle, FSSB R3 w/WH Grip, PointCTRL v1

Link to comment
Share on other sites

I'm probably doing something wrong.  I tried uploading that sketch, but I can't get Brunner DX to connect.  I'm sure I have the right port selected.  I was able to flash back to the previous version.

 

i9 12900k @ 4.9ghz, 32gb RAM

Nvidia RTX 3090

Windows 11 x64

Valve Index

Brunner CLS-E w/RS F16GRH, Virpil TCS Rotor Plus Collective, BRD F1 Pedals, WH Throttle, FSSB R3 w/WH Grip, PointCTRL v1

Link to comment
Share on other sites

On 10/9/2021 at 8:48 PM, heloguy said:

I'm probably doing something wrong.  I tried uploading that sketch, but I can't get Brunner DX to connect.  I'm sure I have the right port selected.  I was able to flash back to the previous version.

I am trying something different but I'm not sure if you'll have access. I have made it so that GitHub automatically compiles every version of Fino.

Can you go to this link? You'd need a GitHub account for this to work
https://github.com/jmriego/Fino/pull/18/checks
image.png

If you click on the "Artifacts" button you should be able to download a zip file. Copy the contents of that file to wherever you have BrunnerDX installed and overwrite fino.ino.hex
Better to make a backup first! Then on the app click on the button to upload firmware.

Link to comment
Share on other sites

5 hours ago, Chuls said:

I am trying something different but I'm not sure if you'll have access. I have made it so that GitHub automatically compiles every version of Fino.

Can you go to this link? You'd need a GitHub account for this to work
https://github.com/jmriego/Fino/pull/18/checks
image.png

If you click on the "Artifacts" button you should be able to download a zip file. Copy the contents of that file to wherever you have BrunnerDX installed and overwrite fino.ino.hex
Better to make a backup first! Then on the app click on the button to upload firmware.

Chuls,

 

I tried it out exactly as you described.  The new fino.ino.hex seemed to upload alright, and everything connected.  I tried a free flight in the Ka-50.  I didn't notice any return to center spring forces prior to the Ka-50 loading.  After the Ka-50 loaded up, everything seemed to function correctly.

 

Here's the log from uploading, and then connecting to CLS2Sim:

 

2021/10/17 10:28:53.580 Init
2021/10/17 10:28:53.899 You have the latest version
2021/10/17 10:29:18.282 Starting ArduinoSketchUploader...
2021/10/17 10:29:18.282 Starting upload process for file 'E:\Program Files (x86)\jmriego\BrunnerDX.Setup\Fino.ino.hex'.
2021/10/17 10:29:18.428 Establishing memory block contents...
2021/10/17 10:29:18.444 Opening serial port COM10 - baudrate 57600
2021/10/17 10:29:18.444 Executing Post Open behavior (ArduinoUploader.BootloaderProgrammers.ResetBehavior.ResetThrough1200BpsBehavior)...
2021/10/17 10:29:18.444 Issuing forced 1200bps reset...
2021/10/17 10:29:18.462 T+0 - Port not found
2021/10/17 10:29:18.573 T+100 - Port not found
2021/10/17 10:29:18.683 T+200 - Port not found
2021/10/17 10:29:18.792 T+300 - Port not found
2021/10/17 10:29:18.900 T+400 - Port not found
2021/10/17 10:29:19.006 T+500 - Port found: COM11
2021/10/17 10:29:19.006 Establishing sync...
2021/10/17 10:29:19.006 Sync established.
2021/10/17 10:29:19.006 Checking device signature...
2021/10/17 10:29:19.039 Device signature checked.
2021/10/17 10:29:19.039 Initializing device...
2021/10/17 10:29:19.067 Software identifier: 'CATERIN'
2021/10/17 10:29:19.098 Software Version: 1.0
2021/10/17 10:29:19.127 Programmer type: S.
2021/10/17 10:29:19.158 Block support - buffer size 128 bytes.
2021/10/17 10:29:19.189 Supported devices: 68.
2021/10/17 10:29:19.189 Selecting device type '68'...
2021/10/17 10:29:19.218 Device initialized.
2021/10/17 10:29:19.218 Enabling programming mode on the device...
2021/10/17 10:29:19.248 Programming mode enabled.
2021/10/17 10:29:19.248 Programming device...
2021/10/17 10:29:19.251 Preparing to write 20216 bytes...
2021/10/17 10:29:19.251 Flash page size: 128.
2021/10/17 10:29:28.754 20216 bytes written to flash memory!
2021/10/17 10:29:28.754 Device programmed.
2021/10/17 10:29:28.754 Verifying program...
2021/10/17 10:29:28.754 Preparing to verify 20216 bytes...
2021/10/17 10:29:28.754 Flash page size: 128.
2021/10/17 10:29:38.260 20216 bytes verified!
2021/10/17 10:29:38.260 Verified program!
2021/10/17 10:29:38.260 Leaving programming mode...
2021/10/17 10:29:38.321 Left programming mode!
2021/10/17 10:29:38.321 Closing COM11...
2021/10/17 10:29:38.321 Waiting for virtual port COM11 to disappear...
2021/10/17 10:29:38.321 T+0 - Port still present...
2021/10/17 10:29:38.430 T+100 - Port still present...
2021/10/17 10:29:38.540 T+200 - Port still present...
2021/10/17 10:29:38.651 T+300 - Port still present...
2021/10/17 10:29:38.761 T+400 - Port still present...
2021/10/17 10:29:38.872 T+500 - Port disappeared: COM11!
2021/10/17 10:29:38.872 All done, shutting down!
2021/10/17 10:29:38.872 Uploaded to Arduino. Please click on 'Detect Ports' just in case the Arduino device has changed ports
2021/10/17 10:29:44.208 Trying to connect to CLS2Sim in 127.0.0.1:15090
2021/10/17 10:29:44.221 Waiting for device...
2021/10/17 10:29:44.221 Connected to device
2021/10/17 10:29:44.221 Checking Arduino Firmware version
2021/10/17 10:29:44.324 Arduino sketch version is v2.4.0
 

 

i9 12900k @ 4.9ghz, 32gb RAM

Nvidia RTX 3090

Windows 11 x64

Valve Index

Brunner CLS-E w/RS F16GRH, Virpil TCS Rotor Plus Collective, BRD F1 Pedals, WH Throttle, FSSB R3 w/WH Grip, PointCTRL v1

Link to comment
Share on other sites

  • 2 weeks later...

hi @heloguy!
I just got my Brunner back and was able to do some testing. I have uploaded a new Arduino sketch that it would be great if you could also test and let me know if it works for you.
If all goes well I'll update BrunnerDX to add this as a option that you can mark on or off.

Hope this helps!

Link to comment
Share on other sites

Hi @Chuls,

 

I tried your link from Discord, but it I get a 'not found' error.

 

i9 12900k @ 4.9ghz, 32gb RAM

Nvidia RTX 3090

Windows 11 x64

Valve Index

Brunner CLS-E w/RS F16GRH, Virpil TCS Rotor Plus Collective, BRD F1 Pedals, WH Throttle, FSSB R3 w/WH Grip, PointCTRL v1

Link to comment
Share on other sites

  • 1 month later...

Hi,

Is anyone using BrunnerDX for IL-2? It mostly works. I get a lot of unexplained lack of force feedback in the pitch axis at the start of flights. Another similar issue is an immediate disconnect and reboot of the CLS-E during a hard pull-up during turn fighting. As if it can't provide enough current. The CLS-E then tries to perform a calibration in-game, whilst trying to fly, hence the homing error.

I don't think this is an overheating issue, as before the disconnect little force was being applied. The force is set to 80 in the BrunnerDX application. Here's the log output.

23.12.2021 at 21:40:13 Connecting to HW via USB HID
23.12.2021 at 21:55:36 Error @ Elevator(2)
23.12.2021 at 21:55:36 Error Force Sensor @ Elevator(2)
23.12.2021 at 21:55:36 Error Force Sensor @ Elevator(2)
23.12.2021 at 21:55:54 Homing Error Current Limit2 @ Elevator(2)

Anyone with similar experiences?

Link to comment
Share on other sites

Hi! Actually IL-2 was the reason I made this program and I use it constantly. You are right about the lack of pitch force at the beginning of a flight but you only notice if you start a mission in the air. As far as I know that's a game bug, that also happens for me if using Microsoft Force Feedback 2 joystick.

The other issue is strange. Do you hear a USB disconnect sound? Are you using a extension?

Link to comment
Share on other sites

16 hours ago, Chuls said:

Hi! Actually IL-2 was the reason I made this program and I use it constantly. You are right about the lack of pitch force at the beginning of a flight but you only notice if you start a mission in the air. As far as I know that's a game bug, that also happens for me if using Microsoft Force Feedback 2 joystick.

The other issue is strange. Do you hear a USB disconnect sound? Are you using a extension?

The explanation for the first issue explains a lot! My brother and I were running out of game time, so we started missions in-flight. I did get around it by forcing a disconnect and reconnect precariously during those flights.

I can't actually recall whether I heard a USB disconnect sound. I will try to repeat the issue tomorrow today, Christmas day!🥳

Thanks for your hard work on your wonderful program. It adds a lot of immersion, even on a 6 DOF motion platform.

No extension being used.


Edited by NikkiC4
Link to comment
Share on other sites

21 hours ago, NikkiC4 said:

Is anyone using BrunnerDX for IL-2? It mostly works. I get a lot of unexplained lack of force feedback in the pitch axis at the start of flights. Another similar issue is an immediate disconnect and reboot of the CLS-E during a hard pull-up during turn fighting. As if it can't provide enough current. The CLS-E then tries to perform a calibration in-game, whilst trying to fly, hence the homing error.

The issue at the start of the flight in Il-2 is that the auto-leveller is enabled, either give a controller input such as rudder, or toggle the auto leveller. 

The issue of the disconnect is the overheating, vary rarely experience this - generally when giving high levels of the axis input for pro-longed periods of time such as an extended turn fight. Make sure you are using the latest firmware from the Brunner site - version 574 along with the latest software. 

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 12/25/2021 at 12:47 PM, Lynchsl62 said:

The issue at the start of the flight in Il-2 is that the auto-leveller is enabled, either give a controller input such as rudder, or toggle the auto leveller. 

The issue of the disconnect is the overheating, vary rarely experience this - generally when giving high levels of the axis input for pro-longed periods of time such as an extended turn fight. Make sure you are using the latest firmware from the Brunner site - version 574 along with the latest software. 

I can't believe I never noticed that! I always used to give it some rudder input to fix it but I didn't know about the auto-leveller. I tried to configure everything for realism but totally missed that option. I tend to fly the Yak-1 and that shouldn't have any

 

On 12/25/2021 at 2:14 AM, NikkiC4 said:

The explanation for the first issue explains a lot! My brother and I were running out of game time, so we started missions in-flight. I did get around it by forcing a disconnect and reconnect precariously during those flights.

I can't actually recall whether I heard a USB disconnect sound. I will try to repeat the issue tomorrow today, Christmas day!🥳

Thanks for your hard work on your wonderful program. It adds a lot of immersion, even on a 6 DOF motion platform.

No extension being used.

 

That 6 DOF platform makes me jealous hehe. Let me know if you hear the USB disconnect sound or if you can try upgrading the firmware for the Brunner and we'll try fixing this

Link to comment
Share on other sites

On 12/27/2021 at 11:08 AM, Chuls said:

I can't believe I never noticed that! I always used to give it some rudder input to fix it but I didn't know about the auto-leveller. I tried to configure everything for realism but totally missed that option. I tend to fly the Yak-1 and that shouldn't have any

 

That 6 DOF platform makes me jealous hehe. Let me know if you hear the USB disconnect sound or if you can try upgrading the firmware for the Brunner and we'll try fixing this

I've been performing some tests. I don't hear a USB disconnect sound. I had set the force in the BrunnerDX application to 80 and this allows a maximum of 3 seconds of full elevator deflection (in a turn fight) before cutting out with:

29.12.2021 at 16:33:38 Error Force Sensor @ Elevator(2)
29.12.2021 at 16:33:38 Error Over Current @ Elevator(2)

I see the temperature shoot up during that time. Setting force to 60 seems to allow an indefinite peroid of time for full elevator deflection. I may be able to get away with more force, so will test further. I'm not sure what unit of force is being used in the slider going from 0 to 150.

This was after I upgraded the firmware from v560 to v574.

The other issue looks like the auto-leveller being enabled, as suggested by Lynchsl62.

Link to comment
Share on other sites

  • 2 months later...

@Chuls First I want to say thanks for the great work on getting this to work! I've been holding off for years to get the Brunner base but now that there's BrunnerDX, I've gone ahead and ordered the CLS-E joystick.

I think someone mentioned it earlier, but could BrunnerDX implement basic handling of the yaw FFB? I think I read that DCS does not support FFB on the yaw axis, but maybe BrunnerDX could send a static "spring" effect or whatever with an adjustable slider to the Brunner yaw axis. I have the CLS-E rudder pedals and unfortunately when using CLS2SIM in remote mode, the yaw axis FFB is 0 unless the controlling application (BrunnerDX) sends something to it.


Edited by jalexb88
Link to comment
Share on other sites

I really think Brunner should give me a percentage of their sales now 😜

Glad to hear that! I'm sure you'll love the Brunner. So much better than other options I used before.

That thing about the yaw axis spring should be doable. I'm not planning on working on anything that requires me to connect to DCS or anything like that as that's loads of work and outside my knowledge. But spring effects, dampers or whatever, sure, I can do that.

I don't have the Brunner pedals but I might be able to send you stuff to test

Link to comment
Share on other sites

I just got the joystick yesterday, feels amazing 🙂  Yeah, that's what I had in mind about the yaw axis, just something simple should suffice, maybe with very basic configurability (adjustable spring strength slider, force curve) but I understand that it would be static and not reading anything from the sim. I would be glad to test! Thanks again  

Link to comment
Share on other sites

On 3/4/2022 at 6:46 PM, tobaschi said:

I have no idea about Arduino, could someone tell me what exactly I would need/buy to be able to use BrunnerDX?

Hi, I use the Arduino Micro with Brunner DX. Connected to the USB Port via a USB micro cable - the Brunner DX software locates it and loads the firmware to the devise - really easy

https://store.arduino.cc/products/arduino-micro

  • 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

yes, that's the same one I use. It's also possible to buy an Arduino Micro from Amazon or get a clone from Aliexpress but they are getting more expensive so not sure if they are worth it any more

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Hi all,

This weekend I had my first lesson flying gliders, and it totally broke my brain for simming with a normal stick. Feeling the air resistance translate through the control surfaces into the stick in my hand as I loaded up the aircraft, or doing stalls and recoveries... sim flying now with a spring-centered stick feels very lifeless. 

That's all a long-winded way of saying i'm considering taking the Brunner leap. I just want to first check if some of my assumptions  are correct:

1) To use this in DCS, i will need to implement Chuls' excellent Arduino/Brunner DX solution. While Brunner is notionally supposed to implement DirectX support or even some kind of DCS plugin, both ideas have been talked about for years but haven't actually happened yet?

2) Even doing the above, the FFB implementation will vary by module... but should allow true force trim in most helicopter modules (i.e., holding the trimmed stick position), and will at a minimum provide resistance forces commensurate with aerodynamic pressure in non-FBW fixed-wing aircraft? For context, I'm usually flying UH-1, P-51, P-47, occasionally F/A/-18, and soon the AH-64.

3) The Brunner stick base + Arduino/Brunner DX combo works in IL-2, arguably better than with many DCS modules.

4) By using my Virpil grip on the Brunner base, I will still be able to map most buttons in DCS and other sims, but I won't be able to use the Virpil software. I should still be able to do things like using modifiers in the DCS control mapping interface (e.g., use a button on the throttle as a "shift" to get a second or third function from each button on the Virpil grip).

5) I read about some users having issues with the stick overheating and ceasing to provide resistance after less than a minute of use, but since then I've seen people saying they haven't had those issues. Problem solved, and/or isolated incidents? 

Many thanks as always for the great community support!

Link to comment
Share on other sites

23 hours ago, X-31_VECTOR said:

...

4) By using my Virpil grip on the Brunner base, I will still be able to map most buttons in DCS and other sims, but I won't be able to use the Virpil software. I should still be able to do things like using modifiers in the DCS control mapping interface (e.g., use a button on the throttle as a "shift" to get a second or third function from each button on the Virpil grip).

5) I read about some users having issues with the stick overheating and ceasing to provide resistance after less than a minute of use, but since then I've seen people saying they haven't had those issues. Problem solved, and/or isolated incidents? 

Many thanks as always for the great community support!

thanks for your comments @X-31_VECTOR!

4) I don't know if you are interested in spending too much time with it but there are two alternatives that I can think of.
http://andersmalmgren.github.io/FreePIE/ FreePie would be if you want to have a lot of control over the remapping but require some programming
https://whitemagic.github.io/JoystickGremlin/quickstart/ Joystick Gremlin is easier to use and has a nice graphical interface to control things

5) I don't usually have issues with overheating if I'm playing either IL-2 or something more relaxed like Microsoft Flight Simulator. I have played Star Wars Squadrons and that sends the Brunner to overheating in no time at all because it requires constant full deflection. I can manage by lowering the force, not using an extension and using a plastic grip instead of some of the heavier metal grips out there

Link to comment
Share on other sites

On 3/22/2022 at 8:42 PM, X-31_VECTOR said:

Hi all,

This weekend I had my first lesson flying gliders, and it totally broke my brain for simming with a normal stick. Feeling the air resistance translate through the control surfaces into the stick in my hand as I loaded up the aircraft, or doing stalls and recoveries... sim flying now with a spring-centered stick feels very lifeless. 

That's all a long-winded way of saying i'm considering taking the Brunner leap. I just want to first check if some of my assumptions  are correct:

1) To use this in DCS, i will need to implement Chuls' excellent Arduino/Brunner DX solution. While Brunner is notionally supposed to implement DirectX support or even some kind of DCS plugin, both ideas have been talked about for years but haven't actually happened yet?

2) Even doing the above, the FFB implementation will vary by module... but should allow true force trim in most helicopter modules (i.e., holding the trimmed stick position), and will at a minimum provide resistance forces commensurate with aerodynamic pressure in non-FBW fixed-wing aircraft? For context, I'm usually flying UH-1, P-51, P-47, occasionally F/A/-18, and soon the AH-64.

3) The Brunner stick base + Arduino/Brunner DX combo works in IL-2, arguably better than with many DCS modules.

4) By using my Virpil grip on the Brunner base, I will still be able to map most buttons in DCS and other sims, but I won't be able to use the Virpil software. I should still be able to do things like using modifiers in the DCS control mapping interface (e.g., use a button on the throttle as a "shift" to get a second or third function from each button on the Virpil grip).

5) I read about some users having issues with the stick overheating and ceasing to provide resistance after less than a minute of use, but since then I've seen people saying they haven't had those issues. Problem solved, and/or isolated incidents? 

Many thanks as always for the great community support!

In my experience:

1) The Brunner Plugin for DCS adds no value IMHO, unlike the Brunner Plugin for Prepar3D which is really good - ground rumble, engine vibration, atmospheric effects. The Arduino add on fron Chuls is excellent for adding force feedback to modules that support it, but sadly does not add the ground rumble etc. Neverthesless it really is a game changer

2) FFB only really works with the warbirds and the Mig 15 as these do not use hydraulic or FBW. I have no idea about helicopters as dont really fly them - though just acquired the AH64 but it is a daunting learning experience. For hydraulic actuated planes such as the F-86, Mig-19 as well as the Warbirds you definitely get the grip moving when you adjust the trim. Strangely the F-14 FFB is rather well modelled and you also get airframe feedback. No idea about the F/A-18, F-16. Mirage 2000C as I use the Realsimulator FSSB R3 for FBW aircraft, but TBH I rarely fly them as they are so complex compared to the Warbirds and Mig-15. Fly the Spitfire with Brunner and you are aware how sensitive it is

3) Brunner and Arduino in IL-2 is superb, can not use anyother system now. The stiffening of ailerons with speed is really impressive, and the warnings for departure from controlled flight in combat essential - though I still spin in the FW-190

4) I use the Realsimulator F-16 SGRH CE on the Brunner base with a 10cm extension and have no issues in any game with mapping. Having said that I have the wonderpul Virpil CM3 throttle, CP1, CP2 and CP3 so have plenty of buttons without relying on the shift function. The Realsimulator grips allow for 8 different settings for each button if you can work that out. Personally I just use the game interface. The extension allows for more precision and gentler input changes

5) I have experienced overheating probably about 5 or so times in hundred's of hours of simulated flying. In the warbirds excessive input results in drag and rapid departure from controlled flight, so even in extended turning flights in DCS or IL-2 it is not the Brunner that is the limit but the aility to sustain the turn whilst maintaing energy. I use 65% setting for the FFB effects and as I say have experienced overheating on a handful of occaisons, and that was when I used a higher than 65% setting. In the summer (yes we have one in England) the Brunner base actuators get hotter as they dont reject heat that well to high ambient temperatures - I have seen node temperatures around 38C, but that tells me it is time to take a break before I lose the FFB effect

To be honest, once you have experienced the Brunner I do not think that there is a way back to mechanical bases - though the realsimulator FSSB R3 is also impressive. The price is high, higher as I think you also need either a floor mount or a desktop mount such as the superb MonsterTech mount (I use the 1st geberation mount) so factor that in to your decision

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

  • Recently Browsing   0 members

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