Jump to content

DCS-ExportScripts for Stream Deck Community Github Library


Recommended Posts

Hi again everyone,

I flew the F-5E a few times these last few days, so I made myself a profile for it. Would be a shame not to share it, so as usual, PR opened. For those who would want to download it, when my PR is merged, head to the repository and download the latest master source. Although, @Bailey, maybe we should tag a version and make some new releases? Last one is from four years ago.

Pictures of what it looks like :

F-5E profile demo.png


Edited by ExoLight
  • Like 5
Link to comment
Share on other sites

On 1/20/2024 at 2:11 PM, ExoLight said:

Hi all,

A while back I made myself a Mirage 2000C profile. It occured to me that this project doesn't seem to have a M-2000C StreamDeck profile, so I thought I'd clean it up a little and upload it to the repo.

It handles PCA, Green V/UHF control panel, some radar controls, and 4-state lamps (instead of just 2-state) for AP & master caution/warning operations.

PR opened. In the meantime, here's how it looks like:

image.png

It seems it doesn't work, or the profile on github is not completed.

I have your lua.

Link to comment
Share on other sites

I have done some simple Stream Deck buttons with the DCS Interface, but the buttons on the attached list for the F5e confuses me. 

https://github.com/asherao/DCS-ExportScripts/wiki/F-5-Tiger-II

If someone can do one of the buttons (preferably a button with multiple line entries) with the DCS Interface showing what you did, I believe that I can do the rest of them. 

I loaded what I believe is the latest versions and yet I cannot locate any button id numbers in the 8000 range.  Where are they?

I looked at the F5e lua file and found the following lines:        Line    4: local os      = base.os -- time
    Line  423:     [512] = "%1d",    -- ABU-11 Clock Elapsed Time Knob
    Line  642:   local dcsModelTime = LoGetModelTime() -- time since aircraft spawn
    Line  644:   local dcsTimeLocal = formatTime(LoGetMissionStartTime() + LoGetModelTime()) -- up-to-date time in dcs
    Line  646:   local dcsTimeUtc = formatTime(dcsModelTime + LoGetMissionStartTime() + utcOffset) -- dcs zulu time
    Line  647:   local realTimeLocal = os.date("%H-%M-%S") -- real life time
    Line  648:   local realTimeUtc = os.date("!%H-%M-%S") -- real life zulu time
    Line  711:   ExportScript.Tools.SendData(8002, 'Real Time\n'.. realTimeLocal .. '\nDCS Time\n' .. dcsTimeLocal) -- clocks
    Line  759:   -- airportInfo[1][4] is the extimated time en route
    Line  847:                                 .. 'ETE ' .. airportInfo[1][4] .. '\n' -- estimated time in route
    Line  858:                                 .. 'ETE ' .. airportInfo[2][4] .. '\n' -- estimated time in route
    Line 1338:     -- The logic below will allow the longest reasonable time for the gif to play
    Line 1339:     -- The time for your gif will be based on the time the ingame animation goes from 0 to 1 and back to 0
    Line 1355: function formatTime(time)
    Line 1356:     local seconds = math.floor(time) % 60
    Line 1357:     local minutes = math.floor(time / 60) % 60
    Line 1358:     local hours = math.floor(time / (60 * 60)) % 24                                                                                                              LINES 646, 647 AND 648 LOOK USEFULL, BUT WHAT DO i DO WITH IT WITH THE DCS INTERFACE FOR "802 TIME"  IN THE ABOVE GITHUB CHART?


Edited by sobe
ADDED LUA INFORMATION

Trackir4 using the latest Trackir 5 software, Win10 Pro [Creator Update] updated from Win7Pro Pro 64Bit, Intel® Core™ i5-2500 3.30 GHz 6M Intel Smart Cache LGA115 , GigaByte GA-Z68XP-UD4 Intel Z68 Chipset DDR3 16GB Ram, GTX MSI Gaming 1060 [6 GB] Video Card, Main Monitor 1 on left 1920x1080 Touchscreen Monitor 2 on right 1920x1080 .

Link to comment
Share on other sites

On 1/28/2024 at 2:00 PM, Phoenix FR said:

It seems it doesn't work, or the profile on github is not completed.

That's odd, it works with my friends. You sure you've got the latest export file and streamdeck profile ?

Just in case, I zipped them (they're even more recent versions, these are only on my fork and not on the main repo yet) and attached them to this message. Please try these ones.

M-2000C.zip

Link to comment
Share on other sites

  • 3 weeks later...

Hi everyone,

just discovered this thread but have been using this along with the streamdeckXL for a while. 
 

I’ve noticed a couple of things though and would appreciate your thoughts. 
 

1. The UH-60L stream deck profile contained in the repo has several decide ids wrong and therefore won’t work. I am progressively trawling through all the lua files to find the correct devices. If I fix them and create a pull request will you approve it @Bailey?

 

2. The A-10C2 is not pumping out any info on fuel or and of the other calculated values. I know it is essentially the A-10C file with some changes but the A-10c will happily show data on the stream deck about fuel (code 4002 or something) but the exact same code for the A-10c2 seemingly does nothing as the button that should display a fuel value is simply blank. I suspect it’s also a device id issue but does  anyone have any thoughts on why it isn’t working? Or can confirm that showing total fuel works in A-10c but not in A-10c2

 

Thanks everyone. 

[sIGPIC][/sIGPIC]

 

Creator of:

 

F-18C VFA-195 "Dambusters" 1998 CAG Livery

https://forums.eagle.ru/showthread.php?t=213788

 

F-18C VFA-195 "Dambusters" July 2001 CAG Livery

https://forums.eagle.ru/showthread.php?t=215950

 

Pilot avatars for DCS Logbook

https://forums.eagle.ru/showthread.php?t=221160

 

How to make a DCS A-10C Panel

http://forums.eagle.ru/showthread.php?t=65998

Link to comment
Share on other sites

Here are some examples of what I'm talking about. I also realised the fuel status is not updating in the A-10C either. 

Here what my streamdeck is showing when I load up the A-10C module. You can see the button is set to show code 2007. The A-10C shows a value (although it doesn't seem to update over time). The A-10C2 uses the same value but the button shows nothing.

 

Screenshots attached.

 

a-1oc2 no label.png

a-10c not updating.png

a=10c.png

[sIGPIC][/sIGPIC]

 

Creator of:

 

F-18C VFA-195 "Dambusters" 1998 CAG Livery

https://forums.eagle.ru/showthread.php?t=213788

 

F-18C VFA-195 "Dambusters" July 2001 CAG Livery

https://forums.eagle.ru/showthread.php?t=215950

 

Pilot avatars for DCS Logbook

https://forums.eagle.ru/showthread.php?t=221160

 

How to make a DCS A-10C Panel

http://forums.eagle.ru/showthread.php?t=65998

Link to comment
Share on other sites

Hi,

 

I am currently editing an F15 profile and unfortunately the "ID lookup" button isnt working for this module so I looked in the lua and found this:

            [275]    = "%.1f",    -- PILOT UFC Push Button 10  ( DEVICE_ID: 56 DCS_ID: 3006)
            [276]    = "%.1f",    -- PILOT UFC Push Button 9  ( DEVICE_ID: 56 DCS_ID: 3007)
            [277]    = "%.1f",    -- PILOT UFC Push Button 8  ( DEVICE_ID: 56 DCS_ID: 3008)
            [278]    = "%.1f",    -- PILOT UFC Push Button 7  ( DEVICE_ID: 56 DCS_ID: 3009)
            [279]    = "%.1f",    -- PILOT UFC Push Button 6  ( DEVICE_ID: 56 DCS_ID: 3010)

There seems to be a mixup here i was trying to bind UFC pushbuttn 10 so i used id 3006 but it pusshed the radio button which is UFC Butn6 ingame.
Had to use ID 3010. Notice the other UFCS are also wrong

Link to comment
Share on other sites

Mig-19P profile and customized export script based on the one on Bailey's GitHub site with some added stuff I ported over from the DCS BIOS script for the Farmer.  Fair warning...it's not a work of art...but it works for me.  😁  I hope one of you finds it useful as well.  Enjoy!

NOTE:  I also uploaded the profile to User Files -> Device Profiles:

https://www.digitalcombatsimulator.com/en/files/3336052/

 

Pg 1.PNG

Pg 2.PNG

Pg 3.PNG

Mig-19P Streamdeck Profile.zip


Edited by Invictus84
Added User Files link...
  • Like 2
  • Thanks 1

 


 
Link to comment
Share on other sites

I found yet another module which doesn't populate the buttons on streamdeck; Mirage F1. It's very sad situation 😕

I used Baileys example-streamdeck profile. I also have to .lua -file from asherao's branch of ExportScript.

There are also some buttons in the profile that work and some buttons that dont'. For instance, M-1 Mode switch button doesn't work when pushed. However, the status is updated if I switch it from game.

I wonder what is different in Mirage F1-lua and Mig 19P lua-file made by Invictus84? Thankfully Mig-19P populates fine on streamdeck!

Link to comment
Share on other sites

  • 2 weeks later...

Is there anyone else having troubles with getting Streamdeck to work? Mine worked for quite some time. However, now it has stopped working completely. 

Streamdeck is not detecting any module any longer. Streamdeck can populate bindings for the planes, [that work].

I haven't touched the settings. I checked the network settings as in the instructions and they are matching.

Other exports in my exports, such as TelemFFB is working fine. There was some hiccups with Volanta. When the software was not on, it pretty much disabled others as well.

Here is my export.lua -file

local wwtlfs=require('lfs')
dofile(wwtlfs.writedir()..'Scripts/wwt/wwtExport.lua')

-- load the DCS ExportScript for DAC and Ikarus
dofile(lfs.writedir()..[[Scripts\DCS-ExportScript\ExportScript.lua]])
local vaicomlfs = require('lfs'); dofile(vaicomlfs.writedir()..[[Scripts\VAICOMPRO\VAICOMPRO.export.lua]])
local telemffblfs=require('lfs');dofile(telemffblfs.writedir()..'Scripts/TelemFFB.lua')
local Tacviewlfs=require('lfs');dofile(Tacviewlfs.writedir()..'Scripts/TacviewGameExport.lua')

pcall(function() local dcsSr=require('lfs');dofile(dcsSr.writedir()..[[Mods\Services\DCS-SRS\Scripts\DCS-SimpleRadioStandalone.lua]]); end,nil)


dofile(lfs.writedir() .. "Scripts/DCS_Volanta.lua")

nullnull

image.png

image.png

Link to comment
Share on other sites

Try with this line 

dofile(lfs.writedir()..[[Scripts\DCS-ExportScript\ExportScript.lua]]) 

first, or at least before WinWing (wwt, which can have issues with null values)

 

  • Like 1
Link to comment
Share on other sites

Unfortunately it didn't help. Down below is my current export.lua. Export to Volanta and TelemFFB work just fine

-- load the DCS ExportScript for DAC and Ikarus
dofile(lfs.writedir()..[[Scripts\DCS-ExportScript\ExportScript.lua]])

local wwtlfs=require('lfs')

dofile(wwtlfs.writedir()..'Scripts/wwt/wwtExport.lua')


local vaicomlfs = require('lfs'); dofile(vaicomlfs.writedir()..[[Scripts\VAICOMPRO\VAICOMPRO.export.lua]])
local telemffblfs=require('lfs');dofile(telemffblfs.writedir()..'Scripts/TelemFFB.lua')
local Tacviewlfs=require('lfs');dofile(Tacviewlfs.writedir()..'Scripts/TacviewGameExport.lua')

pcall(function() local dcsSr=require('lfs');dofile(dcsSr.writedir()..[[Mods\Services\DCS-SRS\Scripts\DCS-SimpleRadioStandalone.lua]]); end,nil)


dofile(lfs.writedir() .. "Scripts/DCS_Volanta.lua")

Below is the start of my DCS-exportscript\config.lua -file

-- Ikarus and D.A.C. Export Script
--
-- Config File
--
-- Copyright by Michael aka McMicha 2014
-- Contact dcs2arcaze.micha@farbpigmente.org

ExportScript.Config = {}
ExportScript.Version.Config = "1.2.1"

-- Ikarus a Glass Cockpit Software
ExportScript.Config.IkarusExport    = true         -- false for not use
ExportScript.Config.IkarusHost      = "127.0.0.1"  -- IP for Ikarus
ExportScript.Config.IkarusPort      = 1725         -- Port Ikarus (1625)
ExportScript.Config.IkarusSeparator = ":"

-- D.A.C. (DCS Arcaze Connector)
ExportScript.Config.DACExport        = false        -- true for use
ExportScript.Config.DAC              = {}
-- first hardware
ExportScript.Config.DAC[1]           = {}
ExportScript.Config.DAC[1].Host      = "127.0.0.1" -- IP for hardware 1
ExportScript.Config.DAC[1].SendPort  = 26026       -- Port for hardware 1
ExportScript.Config.DAC[1].Separator = ":"
-- secound to n hardware
--ExportScript.Config.DAC[2]           = {}
--ExportScript.Config.DAC[2].Host      = "127.0.0.1" -- IP for hardware 2
--ExportScript.Config.DAC[2].SendPort  = 9092        -- Port for hardware 2
--ExportScript.Config.DAC[2].Separator = ":"

-- Ikarus and D.A.C. can data send
ExportScript.Config.Listener         = true         -- false for not use
ExportScript.Config.ListenerPort     = 26027        -- Listener Port for D.A.C.

image.png


Edited by Eraseri
Link to comment
Share on other sites

SOLUTION: Volanta is the culprit that is interfering with DCS-ExportsScript. When I removed everything except exportscript from export.lua, Streamdeck worked. After I put back everything but Volanta, Streamdeck worked again. After returning Volanta it didn't work any longer.

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Hello @Bailey, parts of the F1EE lua stopped working since the recent large F1 patch.
For example the functions in the DCS ID 80xx range - exporting speed, waypoint distance and bearing, RPM, etc. They don't even show up in the DCS Comms list in the Stream Deck app.
Any idea what might have gone wrong?
The basic DCS IDs with which these functions work with seem to export as expected.

G6XLe1V.png
Link to comment
Share on other sites

  • 3 weeks later...

@Bailey Can you check the F-15E script? It no longer shows any items in the ID Lookup. The other scripts do fine but the F-15E one is blank when selected. The script apparently works as the stream deck profiles still work in game. Thanks.

Link to comment
Share on other sites

We've noticed an issue with the f16 export on my server, it seems to cause an intermittent (about once a second or so) stutter. Removing the export script fixes it. We are running a pretense mission. In case any code gurus want to take a look 🙂

Link to comment
Share on other sites

On 4/10/2024 at 9:51 AM, Padinn said:

We've noticed an issue with the f16 export on my server, it seems to cause an intermittent (about once a second or so) stutter. Removing the export script fixes it. We are running a pretense mission. In case any code gurus want to take a look 🙂

Buddy found a work around. Go to line 713 and comment out

--ExportScript.GroundRadar(mainPanelDevice) -- Reports 2 closest friendlies and 2 enemies (Use in Single Player)
  --ExportScript.AirRadar(mainPanelDevice) -- Reports 2 closest friendlies and 2 enemies (Use in Single Player)
  --ExportScript.IglaHunter(mainPanelDevice) -- Locates closest Igla (Use in Single Player)
    end
  end

 

image.png


Edited by Padinn
Link to comment
Share on other sites

On 3/19/2024 at 12:29 AM, hasole said:

Does anyone have the Stream Deck plus?  I'd like to know how well the knobs work for Zoom, CRS, HDG in the hornet, viper, tomcat.

Since you want a short answer (and it's difficult to give one): it's a mixed bag, some controls will work fine, some only if you modify Lua, others just won't.

As for the Viper, I don't fly it, like at all, maybe 6 hours total.

I don't fly Hornet much, either (maybe a 100 hours) and it's a mixed bag. Never tried zoom. As for CRS/HDG - this plane has those toggle switches for that and they're actually "tuned" exactly for 1° (single "tap" on the switch), which is absolutely unique in DCS, so they should work the same with a rotary. One notch on the rotary should be exactly 1° of a CRS/HDG change. Sounds great, but this also means you'll probably have to make 180 "notches" to set the reciprocal heading. I'm not sure, but the rotaries on SD+ have about 12 detents per turn, something in this range. So, if 12 is the correct number, 180/12 = 15 full turns with a rotary! You're not gonna like it, and the rotary isn't, either. Maybe you can write a separate pair of "fast" commands, which would turn the CRS/HDG by 10°, but that's very doubtful (it's a complex, "variable speed" command). This will work, however, in the Tomcat! I have it arranged like that (Lua modification) - 2 speeds, slow and fast, you alternate between the two with a push on the rotary ("Dial Stack" in SD software). Tune CRS/HDG fast/coarse (approximately 10° increments), push, now fine tune. Works quite well, but "fine speed" isn't tuned precisely to 1°.

In reality, you'd have to go through all such controls one by one and see which work well out of the box, which need some Lua tinkering (but it's doable), and which work bad, are hardcoded, and you're toast. With every module you'll get a mixture of all these 3 cases. That's why it's very hard to give you a single "go for it" or "save yourself the pain" answer. Mixed bag, all across the board.

Still, I think that if (and only if) you have a SD XL already, buying a SD+ (or better yet - TWO of them) is a good option. It's just it won't be all roses. Let's say 30-40% roses, 60-70% weeds. It has nothing to do with SD+, but with the mercy of the particular module's authors. In my experience it's somewhat limited 😉
You know... the principle of clickable cockpits in DCS is a bit insidious. It's not (always) merely a control method option, i.e. clicking things with a mouse. Sometimes it's the ONLY method, because the commands for joystick or similar controls have been neglected and are difficult to use (too fast), or virtually impossible to use (too coarse for rotaries or way too fast for "normal" buttons). Or completely missing, which is also a popular design principle.

 


Edited by scoobie

i7-8700K 32GB 2060(6GB) 27"@1080p TM Hawg HOTAS TPR TIR5 SD-XL 2xSD+ HC Bravo button/pot box

Link to comment
Share on other sites

On 4/11/2024 at 11:17 PM, Padinn said:

Buddy found a work around. Go to line 713 and comment out

--ExportScript.GroundRadar(mainPanelDevice) -- Reports 2 closest friendlies and 2 enemies (Use in Single Player)
  --ExportScript.AirRadar(mainPanelDevice) -- Reports 2 closest friendlies and 2 enemies (Use in Single Player)
  --ExportScript.IglaHunter(mainPanelDevice) -- Locates closest Igla (Use in Single Player)
    end
  end

 

image.png

 

Updated in the Git, Thank you.

On 4/10/2024 at 8:25 AM, Casper86 said:

@Bailey Can you check the F-15E script? It no longer shows any items in the ID Lookup. The other scripts do fine but the F-15E one is blank when selected. The script apparently works as the stream deck profiles still work in game. Thanks.

Unfortunately I cannot personally check at the moment. Hopefully another helpful soul will come by soon.

On 3/17/2024 at 8:56 AM, 312_JS said:

Hello @Bailey, parts of the F1EE lua stopped working since the recent large F1 patch.
For example the functions in the DCS ID 80xx range - exporting speed, waypoint distance and bearing, RPM, etc. They don't even show up in the DCS Comms list in the Stream Deck app.
Any idea what might have gone wrong?
The basic DCS IDs with which these functions work with seem to export as expected.

The devs likely changed the args. Track down what went wrong where one step at a time. You said that the basic DCS IDs are the same, so that alleviates much of the troubleshooting.

Link to comment
Share on other sites

On 3/9/2024 at 1:01 AM, Eraseri said:

SOLUTION: Volanta is the culprit that is interfering with DCS-ExportsScript. When I removed everything except exportscript from export.lua, Streamdeck worked. After I put back everything but Volanta, Streamdeck worked again. After returning Volanta it didn't work any longer.

Interesting. Thanks for the heads up.

On 2/18/2024 at 7:22 AM, TigersharkBAS said:

Hi everyone,

just discovered this thread but have been using this along with the streamdeckXL for a while. 
 

I’ve noticed a couple of things though and would appreciate your thoughts. 
 

1. The UH-60L stream deck profile contained in the repo has several decide ids wrong and therefore won’t work. I am progressively trawling through all the lua files to find the correct devices. If I fix them and create a pull request will you approve it @Bailey?

 

2. The A-10C2 is not pumping out any info on fuel or and of the other calculated values. I know it is essentially the A-10C file with some changes but the A-10c will happily show data on the stream deck about fuel (code 4002 or something) but the exact same code for the A-10c2 seemingly does nothing as the button that should display a fuel value is simply blank. I suspect it’s also a device id issue but does  anyone have any thoughts on why it isn’t working? Or can confirm that showing total fuel works in A-10c but not in A-10c2

 

Thanks everyone. 

1. Yes.

2. Good luck. I had a feeling it would be weird.

On 1/24/2024 at 1:13 AM, ExoLight said:

Hi again everyone,

I flew the F-5E a few times these last few days, so I made myself a profile for it. Would be a shame not to share it, so as usual, PR opened. For those who would want to download it, when my PR is merged, head to the repository and download the latest master source. Although, @Bailey, maybe we should tag a version and make some new releases? Last one is from four years ago.

Pictures of what it looks like :

F-5E profile demo.png

 

Amazing! Merged! Thank you! I like how you displayed the info with graphics so much!!!

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...