This commit is contained in:
Snorre Selmer 2022-11-22 22:37:41 +01:00
commit 9fb5e6d42c
2 changed files with 20 additions and 33 deletions

View File

@ -1,26 +1,24 @@
alias GasSensor d0 alias GasSensor d0
# d1= Logic Switch, Dial variant (Max=30) # d1= Logic Switch, Dial variant (Max=30)
alias Thermostat d1 alias Thermostat d1
# d2 = Logic Memory, must be more than 0 # d2 = Console, LED Display variant, optional
alias TempVariance d2 alias TempDisplay d2
# d3 = Console, LED Display variant, optional # d3 = Wall Cooler
alias TempDisplay d3 alias WallCooler d3
# d4 = Wall Cooler # d4 = Wall Heater
alias WallCooler d4 alias WallHeater d4
# d5 = Wall Heater
alias WallHeater d5
alias CurrentTemp r0 alias CurrentTemp r0
alias TargetTemp r1 alias TargetTemp r1
alias Variance r2 alias MinTemp r2
alias MinTemp r3 alias MaxTemp r3
alias MaxTemp r4 alias CoolingActive r4
alias CoolingActive r5 alias HeatingActive r5
alias HeatingActive r6 alias Cooler r6
alias Cooler r7 alias Heater r7
alias Heater r8
define TEMPCONVERT 273.15 define TEMPCONVERT 273.15
define VARIANCE 2
move CoolingActive 0 move CoolingActive 0
move HeatingActive 0 move HeatingActive 0
@ -31,10 +29,9 @@ l Heater WallHeater PrefabHash
start: start:
yield yield
# establish min- and max-temps to registry # establish min- and max-temps to registry
l Variance TempVariance Setting
l TargetTemp Thermostat Setting l TargetTemp Thermostat Setting
sub MinTemp TargetTemp Variance sub MinTemp TargetTemp VARIANCE
add MaxTemp TargetTemp Variance add MaxTemp TargetTemp VARIANCE
# get current temperature # get current temperature
jal temp_read jal temp_read
@ -92,4 +89,4 @@ bdseal TempDisplay display
sb Heater On HeatingActive sb Heater On HeatingActive
bgtz HeatingActive heating bgtz HeatingActive heating
j start j start

View File

@ -1,7 +1,3 @@
# needs a Weather Station
# a siren and an announcer (2x Kit (Speaker))
# and a display of some sort (Kit (Console))
alias Weather d0 # Weather Station alias Weather d0 # Weather Station
alias Readout d1 # Kit (Console) alias Readout d1 # Kit (Console)
alias Announcer d2 # Kit (Speaker) alias Announcer d2 # Kit (Speaker)
@ -9,9 +5,7 @@ alias Siren d3 # Kit (Speaker)
alias StormMode r0 alias StormMode r0
alias Minutes r1 alias Minutes r1
alias SirenHigh r2 alias SirenOn r2
alias SirenLow r3
alias SirenOn r4
s Announcer Mode 18 # "StormIncoming" s Announcer Mode 18 # "StormIncoming"
s Siren Mode 10 # "Alarm8" s Siren Mode 10 # "Alarm8"
@ -32,12 +26,8 @@ l Minutes Weather NextWeatherEventTime
div Minutes Minutes 60 # convert to minutes div Minutes Minutes 60 # convert to minutes
trunc Minutes Minutes # drop decimals trunc Minutes Minutes # drop decimals
s Readout Setting Minutes # send to display s Readout Setting Minutes # send to display
j warning bgt Minutes 2 countdown # got more than 3m?
sgt SirenOn Minutes 0 # got more than 60s?
warning:
slt SirenHigh Minutes 3 # got less than 3m?
sgt SirenLow Minutes 0 # got more than 60s?
and SirenOn SirenHigh SirenLow # sound siren?
s Siren On SirenOn # start siren if 1<minutes<3 s Siren On SirenOn # start siren if 1<minutes<3
beq StormMode 1 countdown # still waiting? go back beq StormMode 1 countdown # still waiting? go back
j start # reset and start waiting again j start # reset and start waiting again