RichardL Posted March 27, 2008 Report Posted March 27, 2008 Could someone help with a button assignment question? Some background. FSX and FSUIPC on the server. PMRJ software and GoFlight module on client 1. I want to control a Project Magenta function ( "T" key press ) with a button press on a client. In the FSUIPC BUTTONS section, I have added this: 19=P1174,7, K84, 0 This command ( "T " ) is to toggle between the RJ Fuel and Flight Controls on the navigation display. The button press does work, but the key press is being sent to the FSX server instead of the client. Pressing the button sends a "T" key press which is for the FSX Transponder. I want the command to go the the client not the server. I do have other PMRJ commands assigned to this GF unit, but they are with the direct PM offsets or by parameter. Is this possible? I have looked but not found how to do this in the advanced documentation manual. Thanks, Richard
RichardL Posted March 27, 2008 Author Report Posted March 27, 2008 Quick update. I do believe I have found the way to control the client. In the Buttons section of FSUIPC GUI, right side of screen, check mark FS and PM, then scroll down to PM GC Keys ( By Param). In the Parameter box, I entered 84, which is the parameter for the "T" key. It works, but pressing the GF button does not always sent the command. Appears to be a lag in sending the command. Richard
Pete Dowson Posted March 27, 2008 Report Posted March 27, 2008 I do believe I have found the way to control the client. In the Buttons section of FSUIPC GUI, right side of screen, check mark FS and PM, then scroll down to PM GC Keys ( By Param). In the Parameter box, I entered 84, which is the parameter for the "T" key. For something like PM, which is entirely controllable via FSUIPC offsets that is usually the best way. But your earlier attempt, using KeyPresses, can also work. You have to program the button on the Server to use the FSUIPC "KeySend" control, with an ID number (1-255) as the parameter. Then you program that KeySend number in the WideClient.INI file, on the Clinet, to send whatever keypress you want. If the programs on the Client are started via Run parameters in the INI you can precisely direct the keypress to the correct program. Regards Pete
RichardL Posted March 28, 2008 Author Report Posted March 28, 2008 Pete, Ok, good to know on the alternate method. Can you comment on why there is a lag in from button press to when the PM nav display actually changes from Fuel to Controls? What I'm referring to is, it seem that the button press is not being received properly. Sometimes it takes a quick double press for the dsiplay to change. Is there an FSUIPC.cfg setting that I could change that might help? Regards, Richard
Pete Dowson Posted March 28, 2008 Report Posted March 28, 2008 Can you comment on why there is a lag in from button press to when the PM nav display actually changes from Fuel to Controls? That's a question for PM I'm afraid. I don't know which modules are doing what, nor how often they are reading the offsets. Obviously there is some latency in the network, but your WideFS installation should be running at the FS frame rate, or close, throughout. You can check that in the WideClient logs -- performance is logged when the Client EXE is closed. The PM GC module has a performance measurement too -- I think you press "F". It will display the FS frame rate and its own "data rate". I'm not sure what the latter is checking, but it should be close to the FS frame rate too. What I'm referring to is, it seem that the button press is not being received properly. Sometimes it takes a quick double press for the dsiplay to change. Well, a missing press is a different matter -- that's not a delay or performance issue. Also note that for some options you can't send the same value twice as it needs to see a change. I think the one you are using (offset 542A) is one of these. Here's its description in the PM doc: low byte, ascii characterhigh byte shift = Bit0, Ctrl = Bit1, Alt = Bit2other bits must change if you have two same characters after the other... high byte target GC All = no further bit set, Captain Bit 4, Copilot Bit 5, EICAS/ECAM Bit 6 (F3 Page) You could program a different value on button release -- send some innocuous key value (one which doesn't do anything). You might need to hold the button pressed a little longer to make sure the "press" value gets there first, though. It is best to always check the PM offsets documentation: http://www.projectmagenta.com/pmoffsets.html Is there an FSUIPC.cfg setting that I could change that might help? .INI you mean? No, what would you think would make it work differently? You can log Button actions (Logging tab, left hand side), and also monitor the offset you are changing -- 542A as a U16 on the right-hand side of the Logging tab. Select the FS display/ Advdisplay option below to see it in real time on screen. Regards, Pete
RichardL Posted March 28, 2008 Author Report Posted March 28, 2008 Ok, I'll look through the PM doc. My mistake, I meant the WideFS .ini files for adding or changing a value. I'll look through that doc file also. I do have the PMRJ nav display's Airport, VOR, NDB, and Fix assinged to other GF buttons. Those are with the direct assignment listed in the FSUIPC Buttons and Switches, PM drop down box. Those work with no problems as does the Weather Radar using Assign by Parameter 72. The Fuel/Flight Control toggle has no directly assigned function (offset?). That is why I went to the key command option. Regards, Richard
Pete Dowson Posted March 28, 2008 Report Posted March 28, 2008 I do have the PMRJ nav display's Airport, VOR, NDB, and Fix assinged to other GF buttons. Those are with the direct assignment listed in the FSUIPC Buttons and Switches, PM drop down box. Those work with no problems as does the Weather Radar using Assign by Parameter 72. Well, all those merely change PM offsets in exactly the same manner, and are presumably being read by PM at the same rate. So it sounds like it must simply be a problem in how that specific function operates in PM. As I pointed out, repeating the same keypress via that method does need a change between (PM documentation states this). The Fuel/Flight Control toggle has no directly assigned function (offset?). That is why I went to the key command option. Right. Is it any better using KeySend to send the keypress at the client, as I described? I think for further advice you should be asking on the PM forums or direct with PM support. I am really only guessing some of this. Regards Pete
RichardL Posted March 29, 2008 Author Report Posted March 29, 2008 I'll try your recommendations Pete. Not that it may matter, but using the client key board and manually pressing the "T" key causes no lag or problems in toggling the Fuel/Control display. Richard
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