Saitek X52 Pro MFD plugin - Version 1.1
Moderators: Scripting / Modding Moderators, Moderators for English X Forum
-
- Posts: 159
- Joined: Wed, 11. Feb 04, 00:18
This is very odd. I grabbed the debug version, but both it /and/ the original now do nothing: even the basic MFD display disappears and there are no LED changes. The debug log is pretty bare each time:
00:04:16.562: DLL version: 6.2.2.4
00:04:16.839: InitLeds starting
00:08:08.329: DLL version: 6.2.2.4
00:08:08.331: InitLeds starting
00:11:43.759: DLL version: 6.2.2.4
00:11:43.762: InitLeds starting
Just in case I started the app both before and after launching X3.
Software version 9.9.9.9 SST version 6.6.6.9
00:04:16.562: DLL version: 6.2.2.4
00:04:16.839: InitLeds starting
00:08:08.329: DLL version: 6.2.2.4
00:08:08.331: InitLeds starting
00:11:43.759: DLL version: 6.2.2.4
00:11:43.762: InitLeds starting
Just in case I started the app both before and after launching X3.
Software version 9.9.9.9 SST version 6.6.6.9
-
- Posts: 24
- Joined: Tue, 2. Dec 03, 22:20
Did you check the "Activate debug mode" checkbox below the text window?
That activates verbose logging, if its not checked its normal that only a few lines are written to the log file.
If its checked, it should show something like this if you hit the Reinit button:
07:16:23.909: DLL version: 6.2.2.4
07:16:24.021: InitLeds starting
07:18:52.965: Starting reinit sequence
07:18:52.966: LedHandlerThread terminated
07:18:52.966: MFDHadnlerThread terminated
07:18:52.967: Controller DeInitialized
07:18:52.967: DLL unloaded
07:18:56.996: Saitek service restarted
07:18:56.997: DLL loaded
07:18:56.998: DLL version: 6.2.2.4
07:18:57.000: DirectOutput library initialized.
07:18:57.001: Device change callback procedure registered.
07:18:57.089: Device_CallBack: hDevice 37301928
07:18:57.090: SoftButton callback procedure registered.
07:18:57.090: PageChange callback procedure registered.
07:18:57.091: PageChange_CallBack: hDevice 37301928 lPage 0
07:18:57.091: PageChange_CallBack: bActivated True
07:18:57.092: InitLeds starting
Using the left scroll wheel should generate these messages:
07:19:37.928: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:37.928: PageChange_CallBack: hDevice 37301928 lPage 0
07:19:37.928: PageChange_CallBack: bActivated True
07:19:38.208: PageChange_CallBack: hDevice 37301928 lPage 6
07:19:38.208: PageChange_CallBack: bActivated True
07:19:38.839: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:38.840: PageChange_CallBack: hDevice 37301928 lPage 6
07:19:38.840: PageChange_CallBack: bActivated True
Right scroll wheel:
07:19:41.557: SoftButton_CallBack: hDevice 37301928 lButtons 4
07:19:41.622: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:41.742: SoftButton_CallBack: hDevice 37301928 lButtons 4
07:19:41.806: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:42.150: SoftButton_CallBack: hDevice 37301928 lButtons 4
07:19:42.214: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:42.597: SoftButton_CallBack: hDevice 37301928 lButtons 4
07:19:42.654: SoftButton_CallBack: hDevice 37301928 lButtons 0
If something is wrong there should be error messages in the reinit sequence.
That activates verbose logging, if its not checked its normal that only a few lines are written to the log file.
If its checked, it should show something like this if you hit the Reinit button:
07:16:23.909: DLL version: 6.2.2.4
07:16:24.021: InitLeds starting
07:18:52.965: Starting reinit sequence
07:18:52.966: LedHandlerThread terminated
07:18:52.966: MFDHadnlerThread terminated
07:18:52.967: Controller DeInitialized
07:18:52.967: DLL unloaded
07:18:56.996: Saitek service restarted
07:18:56.997: DLL loaded
07:18:56.998: DLL version: 6.2.2.4
07:18:57.000: DirectOutput library initialized.
07:18:57.001: Device change callback procedure registered.
07:18:57.089: Device_CallBack: hDevice 37301928
07:18:57.090: SoftButton callback procedure registered.
07:18:57.090: PageChange callback procedure registered.
07:18:57.091: PageChange_CallBack: hDevice 37301928 lPage 0
07:18:57.091: PageChange_CallBack: bActivated True
07:18:57.092: InitLeds starting
Using the left scroll wheel should generate these messages:
07:19:37.928: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:37.928: PageChange_CallBack: hDevice 37301928 lPage 0
07:19:37.928: PageChange_CallBack: bActivated True
07:19:38.208: PageChange_CallBack: hDevice 37301928 lPage 6
07:19:38.208: PageChange_CallBack: bActivated True
07:19:38.839: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:38.840: PageChange_CallBack: hDevice 37301928 lPage 6
07:19:38.840: PageChange_CallBack: bActivated True
Right scroll wheel:
07:19:41.557: SoftButton_CallBack: hDevice 37301928 lButtons 4
07:19:41.622: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:41.742: SoftButton_CallBack: hDevice 37301928 lButtons 4
07:19:41.806: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:42.150: SoftButton_CallBack: hDevice 37301928 lButtons 4
07:19:42.214: SoftButton_CallBack: hDevice 37301928 lButtons 0
07:19:42.597: SoftButton_CallBack: hDevice 37301928 lButtons 4
07:19:42.654: SoftButton_CallBack: hDevice 37301928 lButtons 0
If something is wrong there should be error messages in the reinit sequence.
-
- Posts: 159
- Joined: Wed, 11. Feb 04, 00:18
Yes, I checked the box each time. As the vanilla version is also failing now, I'm going to reinstall the X52 drivers and utilities before testing again. It may be a little while before I can get round to it, but I'll post as soon as I've got a result for you.
<later> Belay that. The situation went back to the previous state, with all but the left wheel working. However, when I clicked the wheel before scrolling it seemed to enable the function for the duration of the app instance. Only worked the once though - subsequently running the app I was back to the original behaviour.
So, log after reinit, with L Wheel click and scrolling but no effect or log entries (R Wheel entries are as you posted):
11:37:24.477: DLL version: 6.2.2.4
11:37:24.480: InitLeds starting
11:37:36.566: Starting reinit sequence
11:37:36.566: LedHandlerThread terminated
11:37:36.567: MFDHadnlerThread terminated
11:37:36.567: Controller DeInitialized
11:37:36.567: DLL unloaded
11:37:40.599: Saitek service restarted
11:37:40.601: DLL loaded
11:37:40.601: DLL version: 6.2.2.4
11:37:40.603: DirectOutput library initialized.
11:37:40.603: Device change callback procedure registered.
11:37:40.728: Device_CallBack: hDevice 9113640
11:37:40.729: SoftButton callback procedure registered.
11:37:40.729: PageChange callback procedure registered.
11:37:40.730: PageChange_CallBack: hDevice 9113640 lPage 0
11:37:40.730: PageChange_CallBack: bActivated True
11:37:40.732: InitLeds starting
I'll carry on with my plan to reinstall as soon as I can get the time.
<later> Belay that. The situation went back to the previous state, with all but the left wheel working. However, when I clicked the wheel before scrolling it seemed to enable the function for the duration of the app instance. Only worked the once though - subsequently running the app I was back to the original behaviour.
So, log after reinit, with L Wheel click and scrolling but no effect or log entries (R Wheel entries are as you posted):
11:37:24.477: DLL version: 6.2.2.4
11:37:24.480: InitLeds starting
11:37:36.566: Starting reinit sequence
11:37:36.566: LedHandlerThread terminated
11:37:36.567: MFDHadnlerThread terminated
11:37:36.567: Controller DeInitialized
11:37:36.567: DLL unloaded
11:37:40.599: Saitek service restarted
11:37:40.601: DLL loaded
11:37:40.601: DLL version: 6.2.2.4
11:37:40.603: DirectOutput library initialized.
11:37:40.603: Device change callback procedure registered.
11:37:40.728: Device_CallBack: hDevice 9113640
11:37:40.729: SoftButton callback procedure registered.
11:37:40.729: PageChange callback procedure registered.
11:37:40.730: PageChange_CallBack: hDevice 9113640 lPage 0
11:37:40.730: PageChange_CallBack: bActivated True
11:37:40.732: InitLeds starting
I'll carry on with my plan to reinstall as soon as I can get the time.
-
- Posts: 159
- Joined: Wed, 11. Feb 04, 00:18
-
- Posts: 24
- Joined: Tue, 2. Dec 03, 22:20
Does your left scrollwheel work? I mean hardware-wise. You can test it using the saitek control panel. If its not working - get a replacement.
The fact that you dont have callbacks logged means that the device is not sending button scroll events when you use it.
Your logs show that the device is correctly recognized and the softbutton and pagechange routines are registered, the plugin is watching them.
As I wrote before, these are those events for example:
07:19:38.208: PageChange_CallBack: hDevice 37301928 lPage 6
The above lines means that the user scrolled to page 6. But in your case these events are missing completly, the device is not telling the computer that you used the wheel...
The only line you have shows Page 0, which message is generated all the time and is discarded normally. There should be higher then 0 numbers, those are processed.
The only thing I can think of is that your X52 is not getting the pages the the plugin is adding thats why it cant change to them. I'll do another version and add verbose logging to all these routines to see if they are correctly processed.
The fact that you dont have callbacks logged means that the device is not sending button scroll events when you use it.
Your logs show that the device is correctly recognized and the softbutton and pagechange routines are registered, the plugin is watching them.
As I wrote before, these are those events for example:
07:19:38.208: PageChange_CallBack: hDevice 37301928 lPage 6
The above lines means that the user scrolled to page 6. But in your case these events are missing completly, the device is not telling the computer that you used the wheel...
The only line you have shows Page 0, which message is generated all the time and is discarded normally. There should be higher then 0 numbers, those are processed.
The only thing I can think of is that your X52 is not getting the pages the the plugin is adding thats why it cant change to them. I'll do another version and add verbose logging to all these routines to see if they are correctly processed.
-
- Posts: 159
- Joined: Wed, 11. Feb 04, 00:18
-
- Posts: 159
- Joined: Wed, 11. Feb 04, 00:18
-
- Posts: 115
- Joined: Mon, 18. Dec 06, 20:00
Hi,
I'm playing a fresh install of AP, havent played X3 since two years. on Win7 64bit
I installed and activated the SPK 1.1 in plugin manager, plugin manager set to "modified",
but it doesnt seem to work ingame.
Game log files are empty,
The x52 is listed ingame in "ai plugins" but blocked on "no"
on the trhottle display, i see mode1 -scroll down -no profile
any idea what i am missing?
****************
edit: deinstalled the spk and installed the programm. i couldnt find any save log*.txt file anywhere, seems i really need to give its path
any idea?
the x52pro shows other colour pattern but ingame the buttons seem not working any better
I'm playing a fresh install of AP, havent played X3 since two years. on Win7 64bit
I installed and activated the SPK 1.1 in plugin manager, plugin manager set to "modified",
but it doesnt seem to work ingame.
Game log files are empty,
The x52 is listed ingame in "ai plugins" but blocked on "no"
on the trhottle display, i see mode1 -scroll down -no profile
any idea what i am missing?
****************
edit: deinstalled the spk and installed the programm. i couldnt find any save log*.txt file anywhere, seems i really need to give its path
any idea?
the x52pro shows other colour pattern but ingame the buttons seem not working any better
-
- Posts: 24
- Joined: Tue, 2. Dec 03, 22:20
The plugin was designed and tested with X3:TC, it's looking for TC's log file folder. Others reported that it's working with AP if you point it to the log files manually.
First you need to locate you logfile folder. For TC this is at C:\Users\<username>\Documents\Egosoft\X3TC. For AP I'm assuming it's the same just \X3AP.
Look into that folder, if the data extractor plugin is working, you should be able to see some txt files there:
weapons data: log01109.txt
cargo data: log01110.txt
misc data: log01111.txt + log01112.txt
Point the app at this folder and you should be good to go.
Send me a message if you have troubles and I set up a test with AP as soon as I have some time, maybe I update the app as well to support AP out of the box.
First you need to locate you logfile folder. For TC this is at C:\Users\<username>\Documents\Egosoft\X3TC. For AP I'm assuming it's the same just \X3AP.
Look into that folder, if the data extractor plugin is working, you should be able to see some txt files there:
weapons data: log01109.txt
cargo data: log01110.txt
misc data: log01111.txt + log01112.txt
Point the app at this folder and you should be good to go.
Send me a message if you have troubles and I set up a test with AP as soon as I have some time, maybe I update the app as well to support AP out of the box.
-
- Posts: 115
- Joined: Mon, 18. Dec 06, 20:00
-
- Posts: 24
- Joined: Tue, 2. Dec 03, 22:20
-
- Posts: 251
- Joined: Tue, 13. Oct 09, 17:43
Just wanted to say how appreciative I / we are of this awesome endeavor. May not be perfect yet, but just doing it is really cool.
Question: how easy would it be to do the same essential thing, but ported to a smartphone or some other secondary screen? I use my smartphone as a secondary screen / desktop extension... I actually have several Ipods / smartphones installed in my home cockpit running windows. If I could get some kind of actual functionality from them in the same way that newer keyboards display real game info and stats on their screens and how you are doing it with the stick, that would make my system the ultimate power in the universe!
Question: how easy would it be to do the same essential thing, but ported to a smartphone or some other secondary screen? I use my smartphone as a secondary screen / desktop extension... I actually have several Ipods / smartphones installed in my home cockpit running windows. If I could get some kind of actual functionality from them in the same way that newer keyboards display real game info and stats on their screens and how you are doing it with the stick, that would make my system the ultimate power in the universe!

-
- Posts: 115
- Joined: Mon, 18. Dec 06, 20:00
-
- Posts: 24
- Joined: Tue, 2. Dec 03, 22:20
AP compatibility
Today I finally had a chance to test AP with the X52 plugin.
I tried to copy the files manually into the scripts folder after activated modified mode but they did not show up in the script editor and no logfiles were written to disk. They probably changed something in the script install routine since TC, I don't know.
After this I grabbed Cyrows plugin manager to install the SPK version and that worked. http://cycrow.thexuniverse.us/XPluginMa ... taller.exe
It complains that the script is not compatible (X3 TC required) but don't care about that, just tell it to proceed.
The logfiles are placed in the My documents\Egosoft\X3AP folder, just point the app there.
If I'll have some time (tell my boss to leave me alone for a day) I'll do an update to fix the compatibility warning and look into the incoming missile damage issue. That never worked in TC, maybe they fixed it in the meantime.
I tried to copy the files manually into the scripts folder after activated modified mode but they did not show up in the script editor and no logfiles were written to disk. They probably changed something in the script install routine since TC, I don't know.
After this I grabbed Cyrows plugin manager to install the SPK version and that worked. http://cycrow.thexuniverse.us/XPluginMa ... taller.exe
It complains that the script is not compatible (X3 TC required) but don't care about that, just tell it to proceed.
The logfiles are placed in the My documents\Egosoft\X3AP folder, just point the app there.
If I'll have some time (tell my boss to leave me alone for a day) I'll do an update to fix the compatibility warning and look into the incoming missile damage issue. That never worked in TC, maybe they fixed it in the meantime.
-
- Posts: 181
- Joined: Wed, 15. Sep 10, 13:09
-
- Posts: 24
- Joined: Tue, 2. Dec 03, 22:20
-
- Posts: 115
- Joined: Mon, 18. Dec 06, 20:00
Re: AP compatibility
Hi, i dont get it, if you have the SPK version, how to you point to the logfiles? isnt this only possible with the "application" version?Exi wrote:Today I finally had a chance to test AP with the X52 plugin.
I tried to copy the files manually into the scripts folder after activated modified mode but they did not show up in the script editor and no logfiles were written to disk. They probably changed something in the script install routine since TC, I don't know.
After this I grabbed Cyrows plugin manager to install the SPK version and that worked. http://cycrow.thexuniverse.us/XPluginMa ... taller.exe
It complains that the script is not compatible (X3 TC required) but don't care about that, just tell it to proceed.
The logfiles are placed in the My documents\Egosoft\X3AP folder, just point the app there.
I tried with the spk alone, with the application alone and with both together, no changes to be seen on my x52pro ingame.
The "christmas tree" test of the application works fine, the application shows no error messages
-
- Posts: 24
- Joined: Tue, 2. Dec 03, 22:20
You need BOTH the script and the application. The script runs inside X3 and exports needed data into logfiles (ship data, weapons, target info, etc). The application is reading these logfiles and showing you the info on the MFD and it also sets the LEDs on the joystick to give you feedback.
I provided 2 version of the script, an SPK and a plain ZIP.
So what you need to do is:
1. Install Cyrows plugin manager
2. Install the SPK version of the script and verify that it's working (Start the game and check if txt files are created in My documents\Egosoft\X3AP)
3. Start the application and set the logfile dir to that folder
4. Play
Let me know if you still have issues.
I provided 2 version of the script, an SPK and a plain ZIP.
So what you need to do is:
1. Install Cyrows plugin manager
2. Install the SPK version of the script and verify that it's working (Start the game and check if txt files are created in My documents\Egosoft\X3AP)
3. Start the application and set the logfile dir to that folder
4. Play
Let me know if you still have issues.
-
- Posts: 24
- Joined: Tue, 2. Dec 03, 22:20
I bet it's not that difficult, definitely possible. However, I'm not a mobile device app developer, more like an oldschool coder, I don't have the required tools and knowledge to develop for any mobile device and because the lack of time I don't even plan to go in that direction. So someone else has to pick up this ideaQuestion: how easy would it be to do the same essential thing, but ported to a smartphone or some other secondary screen? I use my smartphone as a secondary screen / desktop extension... I actually have several Ipods / smartphones installed in my home cockpit running windows. If I could get some kind of actual functionality from them in the same way that newer keyboards display real game info and stats on their screens and how you are doing it with the stick, that would make my system the ultimate power in the universe!

-
- Posts: 251
- Joined: Tue, 13. Oct 09, 17:43
Hehehe... that's cool... the glimmer of hope was enough. Thanks!Exi wrote:I bet it's not that difficult, definitely possible. However, I'm not a mobile device app developer, more like an oldschool coder, I don't have the required tools and knowledge to develop for any mobile device and because the lack of time I don't even plan to go in that direction. So someone else has to pick up this ideaQuestion: how easy would it be to do the same essential thing, but ported to a smartphone or some other secondary screen? I use my smartphone as a secondary screen / desktop extension... I actually have several Ipods / smartphones installed in my home cockpit running windows. If I could get some kind of actual functionality from them in the same way that newer keyboards display real game info and stats on their screens and how you are doing it with the stick, that would make my system the ultimate power in the universe!