pilotjohn Posted Saturday at 07:54 PM Report Posted Saturday at 07:54 PM I'm using FSUIPC exclusively for control setup with "Send direct to FSUIPC Calibration". This has been working great for all planes (and I have custom profiles for the few that are "special"), except I can't seem to get it to work on the COWS DA42. Rudder control partially works. It appears to move in the cockpit view, but if there's no constant input change they "recenter". Elevator and aileron controls don't work at all, and the stick in the cockpit doesn't move. Throttles work fine. Ultimately I can't rotate to take off.
John Dowson Posted Sunday at 11:42 AM Report Posted Sunday at 11:42 AM I don't have the COWS DA42, so it is difficult for me to advise. You need to use logging to determine what is being used. First, load the aircraft onto the runway and open the FSUIPC logging window (Log->Open Console) and set logging for Events. If you see many events logged without touching anything, these events are just noise and can be ignored. When you need do is exit FSUIPC7, then add the DontLogThese ini parameter to your DA42 profile section to stop thse events being logged. Once that is done, restart FSUIPC7 and also set logging for Axes Controls. Then move the axes (rudder, elevator, aileron) in the VC and see if any events are logged. If so, you can try assigning to that. If no standard controls/events are logged or work, look for Input Events instead. Try logging for Input Events and again move the axes (rudder, elevator, aileron) in the VC and see if any input events are logged. If so, I can show you how to assign to use those. If no Input Events are available. try looking for lvars. List the lvars (Add-ons->WASM->List Lvars) to see if any look applicable. If some look like they might control the main axes, you can log those lvars (see Advanced User guide on how to do this) and again move the axes on the VC to see the value range of the lvars. If it looks like you can use lvars to control the axes, I can help you assign to those. The last step would be to inspect the code of the aircraft to see how the axes work. See the following article on how to do this: https://www.badcasserole.com/uncovering-input-events-using-the-msfs2020-model-behavior-dialog/ Note there are a few presets currently available (45) for the COWS DA42, but none for the main flight axes. 15 hours ago, pilotjohn said: I'm using FSUIPC exclusively for control setup with "Send direct to FSUIPC Calibration". This has been working great for all planes (and have custom profiles the few that are "special"), except I can't seem to get it work on the COWS DA42. Actually, before trying the above, try assigning with "Send to FS as normal axis" and try the various different axes control there, including the *_EX1 ones. You can (possibly) still calibrate when assigning this way, if allowed by the aircraft. John
pilotjohn Posted Sunday at 07:18 PM Author Report Posted Sunday at 07:18 PM So some interesting observations: 1. Before making any changes, I tried to use an Xbox controller on default settings/mappings in MSFS. This works in the aircraft (stick moves). 2. If I turn on logging (Events, Input Events, Axes Control) it shows AXIS_AILERON_SET when moving the controller. 3. If I change FSUIPC set up to "Send to FS as normal axis" as AXIS_AILERON_SET for my Yoko+, it doesn't work and the Xbox controller also stops working. 4. As soon as I go back to "Send direct to FSUIPC", the Xbox controller starts working again. 5. The rudders seem to work with FSUIPC, but start "resetting 0 position" above a certain speed, and Xbox controller rudders do not work.
John Dowson Posted Monday at 12:13 PM Report Posted Monday at 12:13 PM (edited) 17 hours ago, pilotjohn said: 1. Before making any changes, I tried to use an Xbox controller on default settings/mappings in MSFS. This works in the aircraft (stick moves). 2. If I turn on logging (Events, Input Events, Axes Control) it shows AXIS_AILERON_SET when moving the controller. Are any other controls/events logged for this, or just the Aileron Set? 17 hours ago, pilotjohn said: 3. If I change FSUIPC set up to "Send to FS as normal axis" as AXIS_AILERON_SET for my Yoko+, it doesn't work and the Xbox controller also stops working. 4. As soon as I go back to "Send direct to FSUIPC", the Xbox controller starts working again. That is very strange...assigning in FSUIPC should not affect assignments any where else, although calibration can affect controls assigned outside of FSUIPC. Ate you sure that this was not for other reasons, such as the window focus not being with MSFS (with the xbox controller being an XINPUT device, MSFS needs the focus to receive the xbox controls)? 17 hours ago, pilotjohn said: 5. The rudders seem to work with FSUIPC, but start "resetting 0 position" above a certain speed, and Xbox controller rudders do not work. Also strange. Take a look at the COWS discord server - there are reports there of similar issues. For aileron, rudder and elevator, you need to assign to use the following lvars: L:INPUT_AILERON, percent; -100 - +100 L:INPUT_RUDDER, percent; -100 - +100 L:INPUT_ELEVATOR, percent; -100 - +100 You can assign an axis to control an lvar by defining your own preset and assigning to that. Take a look at the following FAQ entry on how to do this: John Later: found this: DA40 LVAR bindings.txt Thats for the DA40, but the COWS DA40 will share the same LVARs as the COWS DA42, so also applies. Edited Monday at 12:21 PM by John Dowson Bindings file attached
John Dowson Posted Monday at 12:44 PM Report Posted Monday at 12:44 PM Here's the DA42 bindings file: DA42 LVAR bindings.txt
pilotjohn Posted Monday at 10:23 PM Author Report Posted Monday at 10:23 PM 9 hours ago, John Dowson said: Here's the DA42 bindings file: DA42 LVAR bindings.txt Thanks, I'll try this. This will not use the calibration, correct?
John Dowson Posted 23 hours ago Report Posted 23 hours ago 10 hours ago, pilotjohn said: This will not use the calibration, correct? No, axes assigned to presets are not calibrated - only the standard FS controls go through calibration. You can also reset any calibration entries to stop calibration by FSUIPC if required..
pilotjohn Posted 17 hours ago Author Report Posted 17 hours ago 5 hours ago, John Dowson said: No, axes assigned to presets are not calibrated - only the standard FS controls go through calibration. You can also reset any calibration entries to stop calibration by FSUIPC if required.. Is there any way to apply the calibration (which is helpful for idle detent and the slopes I'm used to)?
John Dowson Posted 17 hours ago Report Posted 17 hours ago 10 minutes ago, pilotjohn said: Is there any way to apply the calibration (which is helpful for idle detent and the slopes I'm used to)? No. If you want to calibrate, you would have to do this yourself before sending the value to the sim. You can do this in the RPN/preset code if you know advanced RPN, Otherwise, you would need to write the axis value to an FSUIPC offset and have a lua script that monitored the offset, calibrates the value to the lvar range (plus any further calibration you want to apply) and then send the new lvar value to the sim. Calibration for null zones is straightforward, but adding a slope more complicated (you need to determine the function to use). John
pilotjohn Posted 12 hours ago Author Report Posted 12 hours ago 4 hours ago, John Dowson said: No. If you want to calibrate, you would have to do this yourself before sending the value to the sim. You can do this in the RPN/preset code if you know advanced RPN, Otherwise, you would need to write the axis value to an FSUIPC offset and have a lua script that monitored the offset, calibrates the value to the lvar range (plus any further calibration you want to apply) and then send the new lvar value to the sim. Calibration for null zones is straightforward, but adding a slope more complicated (you need to determine the function to use). John Can I use the values at offset 0x3328 etc.? Are these the calibrated values that FSUIPC would be sending for elevator etc. control?
pilotjohn Posted 11 hours ago Author Report Posted 11 hours ago On 2/3/2025 at 7:44 AM, John Dowson said: Here's the DA42 bindings file: DA42 LVAR bindings.txt EDITED: It works! So I have the following in myevents.txt: COWS_DA42_Aileron#$Param -163.84 / -100 max 100 min (>L:INPUT_AILERON, Percent) COWS_DA42_Elevator#$Param -163.84 / -100 max 100 min (>L:INPUT_ELEVATOR, Percent) COWS_DA42_Rudder#$Param -163.84 / -100 max 100 min (>L:INPUT_RUDDER, Percent) I then assigned controls as follows: This now works.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now