Skip to content

Commit

Permalink
AP_Scripting: added notch_switch example
Browse files Browse the repository at this point in the history
switch between two notch setups using attenuation change
  • Loading branch information
tridge committed May 27, 2024
1 parent 76495b4 commit 2c6ff74
Showing 1 changed file with 46 additions and 0 deletions.
46 changes: 46 additions & 0 deletions libraries/AP_Scripting/examples/notch_switch.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
--[[
example script to switch between two notch setups by changing the
attenuation to zero on the notch to disable. This allows for easy
in-flight switching between two different notch setups
--]]
local INS_HNTCH_ATT = Parameter('INS_HNTCH_ATT')
local INS_HNTC2_ATT = Parameter('INS_HNTC2_ATT')

if not INS_HNTCH_ATT:get() or not INS_HNTC2_ATT:get() then
gcs:send_text(0, string.format("Need 2 notches configured"))
return
end

local last_sw = -1
local AUX_FN = 300

local attenuation = INS_HNTCH_ATT:get()
if not attenuation then
gcs:send_text(0, string.format("Unable to get attenuation"))
return
end

function update()
local sw_current = rc:get_aux_cached(AUX_FN)
if not sw_current then
-- treat unset as notch1
sw_current = 0
end
if sw_current ~= last_sw then
last_sw = sw_current
if sw_current == 0 then
INS_HNTC2_ATT:set(0)
INS_HNTCH_ATT:set(attenuation)
gcs:send_text(0, string.format("Switched to notch1 %.2f", attenuation))
else
INS_HNTC2_ATT:set(attenuation)
INS_HNTCH_ATT:set(0)
gcs:send_text(0, string.format("Switched to notch2 %.2f", attenuation))
end
end
return update,100
end

return update()

0 comments on commit 2c6ff74

Please sign in to comment.