John Dowson
Members-
Posts
13,780 -
Joined
-
Last visited
-
Days Won
288
Content Type
Profiles
Forums
Events
Gallery
Downloads
Everything posted by John Dowson
-
What do you mean by 'answer 14'? Why don't you just follow the instructions in that thread? What is 'DT'? What aircraft are you using? What is your actual problem? For throttle calibration, and axes calibration in general, you should review the section entitled THE EASY STEP-by-STEP WAY TO CALIBRATE YOUR CONTROLS in the FSUIPC User Guide.
-
First you can try activating event logging, to see if there is an event registered when you press the button in the UI. If so, you can try using that event. If no event is registered, then you can try mouse macros. There is no facility for timings in mouse macros. You would have to fire the macro on repeat for as long as the button/switch is held. This really depends on how the function is implemented in the aircraft/UI. As I don't have this aircraft, I cannot advise. Best to try it. Separate axis calibration (on the 4 throttles page) features reverse, centre, and forward ranges, so the reverse range should allow you to gradually increase reverse thrust. However, if there is a 'reverse' switch at the bottom of the thrust lever, its usual to program this to a throttle decrement (on repeat) when pressed, and a throttle cut when released. However, if you use this method then you don't really need a reverse range on your axis, so you should choose one method or the other really.
-
Prolonged Pause on Autosave in P3D5
John Dowson replied to MajorMike's topic in FSUIPC Support Pete Dowson Modules
Yes, its a know issue with PMDG aircraft. There are many posts on this issue if you search. All FSUIPC does is call simconnect to save the flight, and you will get a similar pause when saving using the P3D facilities. You can try saving using the default key (';' I think) and you will see the same pause. There is no way around this, although some folks have reported improvements after updating firewall/anti-virus settings. Try searching (probably better in PMDG forums) for details, or try this: What some folks do with PMDG aircraft is to disable auto-save during take-off and landing. There was an additional control provided to allow this (i.e. toggle auto-save on/off when autosave activated). It can then be activated on, for example,. gear up/down, or a lua script could monitor height above ground and enable/disable as required. -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
Ok, good! If you do this, you can add to the User Contributions section. Cheers, John -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
But you requested 1 Byte at offset 66C0, so should be: BOOL = val; FSUIPC_Read(0x66C0, 1, &val, &result); Be aware that I've not used this myself, just going by what the documentation says! -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
Yes, you are 'doing it wrongly', as you are writing an uninitialised variable so the contents are undefined /garbage. You need to set the value (and type of 4 bytes, not a float64 which is 8 bytes!) of your test variable to contain an "unused" user offset vale (e.g. 66C0), together with the type. So, assuming your lvar is an 8-bit unsigned integer, you would need: int test = 0x766C0 and use that. -
Good luck! Lots of reports of crashes with the new update, especially if using the VFR map. Note you can also disable 'Exit with FS' from the FSUIPC7 options menu. Then, if MSFS crashes, FSUIPC will remain open (and you will know that it is an MSFS crash and not related to FSUIPC7).
-
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
1. you need to write the value of the offset to 0D6C (together with the value type, as explained previously). You are writing an uninitialised value. 2. Your write of the lvar name is incorrect. As stated, it should be the the lvar name preceeded by a colon (':') for read 3. You are reading the result from 0D6C. This is incorrect. The result needs to be read from the offset that you wrote to the LOWORD of offset 0D6C in step 1. Please re-read the provided documentation. -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
Shouldn't be too confusing....basically, you need to: - FSUIPC_Write to offset 0D6C , with the value being the offset to receive the value and the value type (as explained in the manual and posted above) - FSUIPC_Write to offset 0D70 with the name of the lvar you want to read, preceded by a ':' - FSUIPC_Read to the offset you specified in the first write to offset 0D6C They can all be grouped into the same FSUIPC_Process call. -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
Then please read again: -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
The SDK only provides functions to read/write to the offset area. You can get/set lvars using offset 0x0D70. Check the FSUIPC Offset Status document for details. -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
No. A standalone program cannot talk to the Panels.dll, which is running inside of P3D. You can only do this if your program is also a dll, running as a plugin to P3D. If your program is standalone, you should use the FSUIPC SDK and request the lvar via the provided offsets. -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
The FSUIPC SDK. There is no access to lvars from the P3D SDK. Otherwise, you can use the Panels.dll directly, as you do in the posted code fragment. This is what FSUIPC uses internally. You would need to run your program as a dll plugin to P3D to get access to the Panels.dll though. -
Reading variables from GSX
John Dowson replied to FlyingCoder's topic in FSUIPC Support Pete Dowson Modules
If your software is written in C/C++ then you should look at the SDK, not lua, or Paul's DLL if using managed code / .net. Lua is just for FSUIPC plugins, as explained in the link that Pete posted. -
It is known that many of the events for AP systems, especially the G1000, are not currently working. I know there are some mods available for the G1000 (see https://forums.flightsimulator.com/t/update-g1000-improved-v2/262603/146), but I doubt these address the SDK side, although I haven't tried them yet. No, not necessarily. It could be that the events aren't hooked-up to the model yet.
-
Best way to make browser interface with FSUIPC?
John Dowson replied to Firefly's topic in FSUIPC Support Pete Dowson Modules
I'll definitely consider this when I get around to writing the installer for FSUIPC7, but the control for this may come later, we'll see.... -
Are the buttons on your saitek gear recognised by FSUIPC? If so, you can use the controls provided as Thomas says. However, usually saitek gear are not standard HID devices and are not recognised by FSUIPC and you need additional software/drivers to use them. Not the saitek drivers/software though, as these cause issues. You should look into using either SPAD (free) or SPAD.next (payware).
-
You could try the SDK documentation where you will find a list of event ids (under variable lists) broken down by various categories (Aircraft engine, Aircraft Avionics, etc). However, be aware that many of these are not yet connected/working, so activating a function in the UI doesn't fire the event (i.e. nothing logged) and sending the event has no affect. In other cases, you can see the event when activated, but sending the event has no affect. This is a known issue and things should (hopefully) improve in this area in successive SimConnect /SDK updates. There are other posts in this forum on the Avionics Master. Try using Avionics Master Set, possibly in combination with an offset conditional check on offset 0x02E80 (if using same button/key as a toggle)..
-
Best way to make browser interface with FSUIPC?
John Dowson replied to Firefly's topic in FSUIPC Support Pete Dowson Modules
Thanks Paul! I'll add this to the FSUIPC6 installer at some point as another optional 'extra'. It might also be worth adding functionality directly in FSUIPC to start/stop the http server (when installed), but that can come later. Btw, can you check the link address - I get a 'This site can’t be reached' message! -
@Matthew Twomey Yes, I understand your issue. What I will do as a "quick fix" will be to allow you to specify a wild card for the IngoreThese ini parameter, e.g. [Buttons] IgnoreThese=A.* However, when this is read and later the ini file re-written, it will expand to reference buttons 0-31 (as you now have it). I will also add an 'Ignore Button' button to the buttons & switches assignments dialog that will function in a similar way to the 'Ignore Axis' button in the axis assignments dialog, which will ignore specific buttons as long as the assignments dialog remains open. I'll add this to my 'todo' list, so will take longer to implement as this is quite minor as there is already a work-around (and my 'todo' list is already pretty large!).
-
This is a known problem with the throttle axis (and maybe prop axis as well) and seems to apply to all aircraft. There are other FSUIPC support requests on this issue and I have reported to Asobo but have not received a response as of yet.
-
It can do, but also note that updating an offset can also result in a control being sent (Ok-SimE) rather than the simvar being directly updated (Ok-SimC). But really, as an end user, you don't need to know how its implemented. Just use the controls, but if you cannot find a suitable control then try the offsets. It is preferable to use a control/event if available. Yes, it would be nice but not that straightforward. For example, a control may work with one aircraft but not with another. And if a control doesn't work, there is not much we can do about it in FSUIPC - it needs to be reported and fixed in MSFS/by Asobo. Why would you need to send both? You could overload your control to send both (by editing the ini), but then you should add an offset condition (using 0x0609) to only send the required control depending upon the aircraft type. You can repeat each control or not for each of the assignments, depending upon what works. Alternatively, you can use profiles to send the correct control for that aircraft type. It depends on the script. If its using an event, it will run all the time (or until killed), waiting for the event and then calling the appropriate function when received. Some scripts may also run in an infinite loop, and others may simply run and terminate. Note that if they run and terminate, the next time they are called they will be recompiled and ran in a new thread, which adds quite a bit of overhead. Using event based scripts is more efficient. So, its a lot more efficient to have a lua script running (usually from the [Auto] section of the in) and waiting for a button or key press event, rather than assigning the button or key press event to activate the lua.