Jump to content
The simFlight Network Forums

How to use FSUIPC7 on a 2nd / client PC


John Dowson

Recommended Posts

It is now possible to run FSUIPC7 (v7.2.13 and later) on a client PC, that is, a 2nd PC where MSFS is not installed. This should allow FSUIPC clients to be ran on the client PC and allow them to communicate to the FS without the need for WideFS/WideClient. Note that this DOES NOT replace or duplicate the functionality provided by WideFS. When FSUIPC7 runs on a client PC, it will maintain its own offset area distinct from that of the offset area used by FSUIPC7 on the FS machine. However, most offsets should contain the same data, as they are populated by the data received from the FS, but be aware of this if/when writing to user offsets (e.g. using lua).

Note also that you do not have to have FSUIPC7 running on the FS machine to run FSUIPC7 in the client machine.

The following functionality in FSUIPC7 will not work (or is not available) in FSUIPC7 when ran in a client machine:
    - no installer - you need to manually install/copy FSUIPC7 to the client machine
    - no possibility of sending key presses to the FS (key presses CAN be received)
    - no auto-start or auto-connection
    - ....

To have FSUIPC7 running on a client machine, please follow the steps indicated below.

 

1. Configuring SimConnect on the MSFS computer
Locate your MSFS2020 SimConnect.xml file. For steam installs, this should be under
    <Your User Account>\AppData\Roaming\Microsoft Flight Simulator
and for MS Store installs under:
    <Your User Account>\Local\Packages\Microsoft.FlightSimulator_8wekyb3d8bbwe\LocalCache

Open the file in an editor, and add a Global (remote) IPv4 port by adding the the following entry:

Quote

    <SimConnect.Comm>
        <Descr>Global IP Port</Descr>
        <Disabled>False</Disabled>
        <Protocol>IPv4</Protocol>
        <Scope>global</Scope>
        <Address>Your Local MSFS PC Address</Address>
        <MaxClients>64</MaxClients>
        <Port>7421</Port>
        <MaxRecvSize>4096</MaxRecvSize>
        <DisableNagle>False</DisableNagle>
    </SimConnect.Comm>

where Your Local MSFS PC Address is your 'internal' network IP address, not your outward-facing IP. To find this, open Command Prompt on the MSFS Computer, type "ipconfig" and look for the "IPv4 Address" listed under your active internet connections.

You can also change the port number, but this MUST match the port number defined in the SimConnect.cfg in your client PC (see below). Note that you also may need to open this port in any firewalls that you may use (although I did not have to do this when I configured in my LAN).

 

2. Install FSUIPC7 in the client machine
To install FSUIPC7 on a client machine, create an DSUIPC7 folder (preferably not under Documents, Program Files, or any other windows-protected folder) and copy across the following files from your MSFS computer:
      FSUIPC7.exe
      FSUIPC7.key (if using a registered version)
You can also copy across your FSUIPC7.ini file, but it may be better to start afresh with this in your client PC.

 

3. Configuring SimConnect on the Client computer
To configure SimConnect on the client PC, create a file called SimConnect.cfg in your FSUIPC7 folder on the client machine with the following contents:

Quote
[SimConnect]
Protocol=IPv4
Address=Your Local MSFS PC Address
Port=7421
MaxReceiveSize=4096
DisableNagle=0

where Your Local MSFS PC Address is the same address as used in the client configuration (and the port also must, of course, be the same as the one used there).

 

4. Configure FSUIPC7 to run on the Client computer
If you have copied across your FSUIPC7.ini, open this in an editor and removed any unwanted assignments/profiles.
If you have not copied across your FSUIPC7.ini, run FSUIPC7 once and exit - this will create a default FSUIPC7.ini file for you.
Open this file in an editor (e.g. Notepad++).

Under the [General] section, add the following ini parameters:
    RunningOnClientPC=Yes
    UseSimConnection=0

and under the [WAPI] section (if using the FSUIPC7 WASM module on the MSFS computer) - create if necessary, also add the following:
    UseSimConnection=0

And that is all!

To use FSUIPC7 on the client machine, you must manually connect once MSFS is up and running.

For any issues or questions, please use/comment on this topic.

John

 

Link to comment
Share on other sites

  • 2 months later...

Hey John, I have set up as you posted here, When i start up FSUIPC on the client PC in the top of the FSUIPC window it says FSUIPC7: Not ready yet. Then when i go under the MSFS header and choose connect I get an "Failed to connect. Do you want to try again?" error.  The  thing I'm not sure about is the direction "and under the [WAPI] section (if using the FSUIPC7 WASM module on the MSFS computer) - create if necessary, also add the following:
    UseSimConnection=0"... I did this on the Client PC, in the FSUIPC7 ini file. Should i also add this to the MSFS pc  FSUIPC ini file?

Link to comment
Share on other sites

6 hours ago, mcduffrobert said:

I did this on the Client PC, in the FSUIPC7 ini file. Should i also add this to the MSFS pc  FSUIPC ini file?

No, just on the client. FSUIPC7 running on a client PC is completely independent of FSUIPC7 running on the FS pc. All you need to do on the FS PC is to update the MSFS simconnect config, as stated.

If it can't connect, it is probably either firewall issues (check by temporarily disabling any firewalls on both the client and FS PCs) or windows network issues (check that both client and FS PCs are in the same workgroup and can see each other).

Link to comment
Share on other sites

Thanks so much John, but encountered another problem. When I add " <SimConnect.Comm>
        <Descr>Global IP Port</Descr>
        <Disabled>False</Disabled>
        <Protocol>IPv4</Protocol>
        <Scope>global</Scope>
        <Address>Your Local MSFS PC Address</Address>
        <MaxClients>64</MaxClients>
        <Port>7421</Port>
        <MaxRecvSize>4096</MaxRecvSize>
        <DisableNagle>False</DisableNagle>
    </SimConnect.Comm>" to my SimConnect.xml file, and save, it will not stay there. I go to the client pc, start FSUIPC, then go back into the MSFS pc and open up the  SimConnect.xml file, and the part that I added is gone !!!!.... The reason i wanted to set up FSUIPC this way is because I want to use a co-pilot program to set up on the client pc in order to use my bluetooth headphones to here the co-pilot. On the MSFS pc  I have  Bluetooth speakers. I have tried having both bluetooth speakers and bluetooth headphones connected to the MSFS pc , running Windows 10, but it will only allow me to use one or the other....unless there is something i'm missing... Thanks so much for your help.

Link to comment
Share on other sites

5 hours ago, mcduffrobert said:

my SimConnect.xml file, and save, it will not stay there.

Not sure why this would be...

Check two things:
1. That you are updating the correct file - where is the location of the file you are updating?
2. That it isn't being synced/copied back by a cloud service (such as OneDrive)

Other than that, I don't understand why this would be happening - maybe ask on the Asobo forums.

John

Link to comment
Share on other sites

  • 2 weeks later...
11 minutes ago, DOUGLAS DEACON said:

am totally confused about how to install FSUIPC7 for MFS 2020............help

Are you installing on a client PC? If so, why are you confused? Did you follow the instructions? I cannot help if you do not tell me what the problem is.

If you are installing on the same machine aa MSFS, why are you posting in this topic?
What is confusing about the installation process? You just run the installer... See the included Installing and Registering FSUIPC7 document.

John

Link to comment
Share on other sites

  • John Dowson changed the title to How to use FSUIPC7 on a 2nd / client PC (Experimental)

John I currently use FSUIPC with MSFS, and P2ATC. I want to use P2ATC on a networked client PC, will this method work with P2ATC? Or do I still need to purchase WideFS?

(if no WideFS do I need to puchase a second FSUIPC7 License?

Link to comment
Share on other sites

John, I followed all your instructions, and P2ATC works just fine on the Client computer. So i set the PTT in P2ATC as "Shift+A, and that works as well in P2ATC. After reading the Docs for FSUIPC, and WideFS, and alot of forum posts, I tried to set up a PTT from the MSFS computer to the Client with no luck.

My MSFS computer is a new build running Win 11 with the latest MSFS update SU8, and my yoke is the Honeycomb Alpha. The client computer is Win 10, and both have the firewalls turned off.

I have attached both config files, and hopefully you can point me in the right direction.

Thanks Tim

FSUIPC7 Client.ini FSUIPC7 MSFS.ini

Link to comment
Share on other sites

10 hours ago, Tim M said:

I have attached both config files, and hopefully you can point me in the right direction.

You cannot use KeySend - that is for WideFS. What makes you think that would work? Using FSUIPC7 on a client PC is not the same as using WideClient/WideFS.

10 hours ago, Tim M said:

P2ATC works just fine on the Client computer. So i set the PTT in P2ATC as "Shift+A, and that works as well in P2ATC.

So 'shift + A' works from the client PC. Does this also now work from the MSFS PC? FSUIPC7 on the client PC should receive the key presses from the FS machine via SimConnect, although I haven't verified this (I can check later).

John

Link to comment
Share on other sites

20 minutes ago, John Dowson said:

FSUIPC7 on the client PC should receive the key presses from the FS machine via SimConnect, although I haven't verified this (I can check later).

Yes, FSUIPC7 on the client machine receives the key presses from the FS machine. However, P2ATC will not see that key press, only FSUIPC.

Link to comment
Share on other sites

3 minutes ago, John Dowson said:

However, P2ATC will not see that key press, only FSUIPC.

To send the key press to P2ATC, you would have to use the lua function ext.sendkeys, and either start P2ATC via the lua EXT library ot use ext.gethandle to get the P2ATC window handle.

John

Link to comment
Share on other sites

13 hours ago, John Dowson said:

You cannot use KeySend - that is for WideFS. What makes you think that would work? Using FSUIPC7 on a client PC is not the same as using WideClient/WideFS.

As you know there are many posts involving how to use a PTT button across a network, and most point to the WideFS documentation, or third party applications. Most pointed to:"KeySend". This thread has Experimental in the title, so information is limited. My coding experience is limited, and I have read almost all of the Documents you provided, and tried fumbling through trying to figure this out. so with that said Do I need to create a plugin script for the Host computer (modules folder)? then reference that script in one or both >ini files? (host & client)

Tim

What folder does the lua script go in? Could not find a Modules folder for MSFS 2020.

Link to comment
Share on other sites

13 hours ago, Tim M said:

As you know there are many posts involving how to use a PTT button across a network, and most point to the WideFS documentation, or third party applications. Most pointed to:"KeySend".

Yes, but you cannot use that if not using WideFS/WideClient.

13 hours ago, Tim M said:

What folder does the lua script go in? Could not find a Modules folder for MSFS 2020.

There is no Modules folder in either FSUIPC6 or FSUIPC7. If you see a reference to this folder, just use your FSUIPC7 installation folder (if you don't know where that is, you can use the File -> Open Installation Folder... menu option).

13 hours ago, Tim M said:

Do I need to create a plugin script for the Host computer (modules folder)? then reference that script in one or both >ini files? (host & client)

No, you just need a lua script on the client computer. The lua should be auto-started from the [Auto] section of the FSUIPC7.ini on the client computer. In the script, you can start P2ATC using the ext.run library function. Then have an event waiting for a key (ir keys) press/release using event.key function. In the handling function, you can then send the key press/release to the P2A application using the ext.sendkeys function.

However, there is no way to send a separate press and release using ext.sendkeys. If P2A uses press for PTT on and release for PTT off, this won't work as this would turn PTT on momentarily and then off, but try this first. If a separate press and release is needed, then you would need to use the ext.postmessage function, which is more complicated. If PTT is just toggled by a key press/release combination (or you can assign PTT on with one key press and off with another), you should be fine.

I can look into this in more detail if you have issues, maybe later today or most probably tomorrow.

John

Link to comment
Share on other sites

19 hours ago, Tim M said:

I'll wait, and see what you find.

I have this working now, but with a caveat...it is only working when FSUIPC7 on the client PC doesn't have the window input focus - the focus can be on any other window except for the FSUIPC7 main window. Not sure why this is at the moment, I will look to see if I can correct this. The solution doesn't use lua, but you need a new version of FSUIPC7 with keyboard input/forwarding activated on the FSUIPC7 client (this is currently disabled).

I will look into this further tomorrow (have to finish now) and I'll post you an updated version to test with instructions on how to set this up.

John

Link to comment
Share on other sites

48 minutes ago, John Dowson said:

I have this working now, but with a caveat...it is only working when FSUIPC7 on the client PC doesn't have the window input focus - the focus can be on any other window except for the FSUIPC7 main window. Not sure why this is at the moment, I will look to see if I can correct this. The solution doesn't use lua, but you need a new version of FSUIPC7 with keyboard input/forwarding activated on the FSUIPC7 client (this is currently disabled).

I will look into this further tomorrow (have to finish now) and I'll post you an updated version to test with instructions on how to set this up.

John

ok,

Thanks

Link to comment
Share on other sites

Can you please try with the attached FSUIPC7 version below, v7.3.2a. To set up PTT on a client PC with P2A, follow the following steps:

1. Assign a hot key in P2A for PTT. For this example, I will use the z key. Note that this IS NOT the key that you will use to activate PTT, but the key that FSUIPC7 will use.

2.  In FSUIPC7 on the client PC, go into the 'Key Assignments' panel and assign the key you want to use for PTT to the 'Key Press/hold' event on keys pressed, and to the 'Key Release' event on keys released. You will need to know the virtual keycode number of the key assigned in step 1. I used the 'z' key, which has a vk code of 90, so my assignment to the 'T' key looks like the following (left-hand side, note also check for 'No Repeats'):

p2A-key.png.b3dd39f24389e6b9ce6b2ae2b94ad208.png

If you do this, PTT should activate when using the assigned key ('T' in this example) on both the MSFS host PC as well as the client. I also fixed the focus issue, so it shouldn't matter where the input focus is on the client PC for this to work.

Let me know how it goes.

John

FSUIPC7.exe

Link to comment
Share on other sites

Yes it works! On the host in [Buttons & Switch Assignments} I used [Select for Key press] and set F1 and I did "check" key press to repeat? then "confirm, and on the Client {key assignments] I used the F1 key, and 112+0.

Thanks Tim

 

 

Link to comment
Share on other sites

14 hours ago, Tim M said:

I did "check" key press to repeat?

You shouldn't need repeat, as the key is assigned to press & hold on the client.

Also, using the same key (F1) to send from the host to the client and also to activate PTT on the client works ok for now, but I recommend that you use a different key. Currently its ok to do this as I remove the keyboard focus on the client before I send the PTT key, so there is no loop (i.e. the key press being sent by the client is not received by the client), but this could possibly change in the future, although I have  no plans to change this at the moment.

John

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.