Jump to content

Recommended Posts

Posted (edited)

So i got the SD xl the other day first thing i did was watch a video on how to set it up for dcs, got the files the plugins and so on but when i go onto DCS  and load up a mission in the F18 all the buttons work but its not connecting to dcs comms and says this 

 

DCS module not detected.

Check that DCS mission is running, there is a .lua script for the module within "DCS-ExportScript\ExportsModules\", and the port settings above match those in "DCS-ExportScript\Config.lua"

the IP address is 127.0.0.1

lister port is 1725

send port is 26027

how can i fix this I've done what it says 

 

ive ran stream deck in admin

dcs is not running on admin 

 

ive tried every combo of them two and nothing works

 

this is my export.lua 

-- Data export script for DCS, version 1.2.
-- Copyright (C) 2006-2014, Eagle Dynamics.
-- See http://www.lua.org for Lua script system info 
-- We recommend to use the LuaSocket addon (http://www.tecgraf.puc-rio.br/luasocket) 
-- to use standard network protocols in Lua scripts.
-- LuaSocket 2.0 files (*.dll and *.lua) are supplied in the Scripts/LuaSocket folder
-- and in the installation folder of the DCS. 
-- Expand the functionality of following functions for your external application needs.
-- Look into Saved Games\DCS\Logs\dcs.log for this script errors, please.

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


local Tacviewlfs=require('lfs');dofile(Tacviewlfs.writedir()..'Scripts/TacviewGameExport.lua')


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

 

this is my config script

 

-- 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      = 1625         -- 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.

-- Other
ExportScript.Config.ExportInterval         = 0.05    -- export evry 0.05 secounds
ExportScript.Config.ExportLowTickInterval  = 0.5    -- export evry 0.5 secounds
ExportScript.Config.LogPath                = lfs.writedir()..[[Logs\Export.log]]
ExportScript.Config.ExportModulePath       = lfs.writedir()..[[Scripts\DCS-ExportScript\ExportsModules\]]
ExportScript.Config.Debug                  = false
ExportScript.Config.SocketDebug            = false
ExportScript.Config.FirstNewDataSend       = true
ExportScript.Config.FirstNewDataSendCount  = 100

 

 

 

And this is my export.lua script inside the \DCS\Scripts\DCS-ExportScript folder 

 

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


-- Main Table
ExportScript = {}
ExportScript.Version = {}
ExportScript.Version.ExportScript = "1.2.1"
-- Simulation id
ExportScript.SimID = string.format("%08x*",os.time())

-- State data for export
ExportScript.PacketSize     = 0
ExportScript.SendStrings    = {}
ExportScript.LastData       = {}

ExportScript.PacketSizeDAC  = {}
ExportScript.SendStringsDAC = {}
ExportScript.LastDataDAC    = {}

ExportScript.lastExportTimeHI       = 0
ExportScript.lastExportTimeLI       = 0

ExportScript.NoLuaExportBeforeNextFrame = false

local PrevExport                    = {}
PrevExport.LuaExportStart           = LuaExportStart
PrevExport.LuaExportStop            = LuaExportStop
PrevExport.LuaExportBeforeNextFrame = LuaExportBeforeNextFrame
PrevExport.LuaExportAfterNextFrame  = LuaExportAfterNextFrame

dofile(lfs.writedir()..[[Scripts\DCS-ExportScript\Config.lua]])
ExportScript.utf8 = dofile(lfs.writedir()..[[Scripts\DCS-ExportScript\lib\utf8.lua]])
dofile(lfs.writedir()..[[Scripts\DCS-ExportScript\lib\Tools.lua]])
dofile(lfs.writedir()..[[Scripts\DCS-ExportScript\lib\genericRadio.lua]])
dofile(lfs.writedir()..[[Scripts\DCS-ExportScript\lib\Maps.lua]])

for i = 1, #ExportScript.Config.DAC, 1 do
    ExportScript.PacketSizeDAC[i]  = 0
    ExportScript.SendStringsDAC[i] = {}
    ExportScript.LastDataDAC[i]    = {}
end

-- Found DCS or FC Module
ExportScript.FoundDCSModule = false
ExportScript.FoundFCModule  = false
ExportScript.FoundNoModul   = true

---------------------------------------------
-- DCS Export API Function Implementations --
---------------------------------------------

function LuaExportStart()
-- Works once just before mission start.
-- (and before player selects their aircraft, if there is a choice!)

    -- 2) Setup udp sockets to talk to GlassCockpit
    package.path  = package.path..";.\\LuaSocket\\?.lua"
    package.cpath = package.cpath..";.\\LuaSocket\\?.dll"

    --local lrename1, lrename2 = os.rename(ExportScript.Config.LogPath, ExportScript.Config.LogPath..".old")
    ExportScript.logFile = io.open(ExportScript.Config.LogPath, "wa") -- "W+"
    if ExportScript.logFile then
        ExportScript.logFile:write('\239\187\191') -- create a UTF-8 BOM
        ExportScript.logFile:write("ExportScript Version: "..ExportScript.Version.ExportScript.."\r\n")
    end
    --if lrenmae1 == nil then
    --    ExportScript.Tools.WriteToLog("Rename Error: "..lrename2)
    --end

    ExportScript.Tools.createUDPSender()
    ExportScript.Tools.createUDPListner()

    ExportScript.AF = {} -- Table for Auxiliary functions

    ExportScript.NoLuaExportBeforeNextFrame = false
    ExportScript.Tools.SelectModule()   -- point globals to Module functions and data.
    
    -- Chain previously-included export as necessary
    if PrevExport.LuaExportStart then
        PrevExport.LuaExportStart()
    end
end

function LuaExportBeforeNextFrame()
--[[    if ExportScript.Config.Debug then
        ExportScript.Tools.ProcessInput()
    else
        ExportScript.coProcessArguments_BeforeNextFrame = coroutine.create(ExportScript.Tools.ProcessInput)
        coStatus = coroutine.resume(ExportScript.coProcessArguments_BeforeNextFrame)
    end
    
    if ExportScript.NoLuaExportBeforeNextFrame == false then
        ExportScript.Tools.ProcessOutput()
    end
]]    
    -- Chain previously-included export as necessary
    if PrevExport.LuaExportBeforeNextFrame then
        PrevExport.LuaExportBeforeNextFrame()
    end
end

function LuaExportAfterNextFrame()
    if ExportScript.NoLuaExportBeforeNextFrame then
        ExportScript.Tools.ProcessOutput()
    end
    
    -- Chain previously-included export as necessary
    if PrevExport.LuaExportAfterNextFrame then
        PrevExport.LuaExportAfterNextFrame()
    end
end

function LuaExportActivityNextEvent(t)
    local tNext = t

-- Put your event code here and increase tNext for the next event
-- so this function will be called automatically at your custom
-- model times. 
-- If tNext == t then the activity will be terminated.

    if ExportScript.Config.Debug then
        ExportScript.Tools.ProcessInput()
    else
        ExportScript.coProcessArguments_BeforeNextFrame = coroutine.create(ExportScript.Tools.ProcessInput)
        coStatus = coroutine.resume(ExportScript.coProcessArguments_BeforeNextFrame)
    end
    
    if ExportScript.NoLuaExportBeforeNextFrame == false then
        ExportScript.Tools.ProcessOutput()
    end

    tNext = tNext + ExportScript.Config.ExportInterval

    return tNext
end

function LuaExportStop()
-- Works once just after mission stop.
    if ExportScript.Config.DACExport then
        ExportScript.Tools.SendDataDAC("DAC", "stop")
        for i=1, #ExportScript.Config.DAC, 1 do
            ExportScript.Tools.FlushDataDAC(i)
        end
    end

    if ExportScript.Config.IkarusExport then
        ExportScript.Tools.SendData("Ikarus", "stop")
        ExportScript.Tools.FlushData()
    end

    ExportScript.UDPsender:close()
    if ExportScript.Config.Listener then
        ExportScript.UDPListener:close()
    end
    
    ExportScript.ModuleName   = nil
    ExportScript.FoundNoModul = false

    if ExportScript.logFile then
        ExportScript.Tools.WriteToLog("====== Logfile close ======")
        ExportScript.logFile:flush()
        ExportScript.logFile:close()
        ExportScript.logFile = nil
    end
    
    -- Chain previously-included export as necessary
    if PrevExport.LuaExportStop then
        PrevExport.LuaExportStop()
    end
end

 

 

 

really appreciate it if one of you could help thank you.

Edited by Loopyllu1
  • 3 weeks later...
Posted

You went off some sort of deep end. Remove everything you've already done with DCS-ExportScripts and install fresh. You shouldn't need to touch those scripts as the defaults for the plugin already properly communicates DCS-ExportScripts properly. I'm a software engineer, but even I'm not willing to "code review" what might be messed up because it could be literally anywhere. So again, do a clean install of DCS-ExportScripts, and use the defaults of the StreamDeck plugin to talk to DCS.

Don't run either StreamDeck software or DCS as admin, that is not your problem.

  • Like 1

CPU: 5950x || Memory: 64GB || GPU: RTX 4090

Input: Virpil CM3, TM F/A-18 Grip on Virpil WarBRD base, WW F-16EX grip on TM Warthog base, Virpil CP1 and CP2, Cougar MFD x2 / w CubeSim screens, StreamDeck XL x2, StreamDeck 15-key, TrackIR5

  • 1 year later...
Posted (edited)

@Loopyllu1 I'm also having this issue. I've removed and reinstalled the software exactly as the video from @ctytler explains in his 2020 video https://www.youtube.com/watch?v=RPKnp6PJU7U&t=318s I am not using Ikarus so the port was changed to 1725 per the instructions.

I did try running in admin mode as well, but according to @EbonySeraphim that isn't needed.  I keep getting this DCS Comms error where it's not detecting DCS while the simulator and Stream Deck are running, however Stream Deck is detecting the modules I have installed with ID Lookup.

Anybody have any suggestions?

 

 

 

streamdeckerror.jpg

Edited by aLoneIceburg

🖥️ CPU: AMD 9800X3D | Cooling: MSI MAG CoreLiquid E240 AIO | RAM: 96GB GSkill DDR5 5600 | GPU: MSI 4070 Super 12GB VRAM | MOBO: MSI MAG X870 | Flight Controls: Thrustmaster T16000M FCS Flight Pack (Flight Stick, Throttle, & Rudder Pedals) | Monitor: ASUS TUF Gaming 27" 1440p | OS: Windows 11 😢 | SSD: Samsung 990 EVO Plus 2TB & MSI Spatium M461 2TB | Additional Gear: Quest 3, HyperX QuadCast S Microphone

  • Recently Browsing   0 members

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