Skip to content

Instantly share code, notes, and snippets.

@edgerunner
Last active April 24, 2019 10:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save edgerunner/f0f702bcdaf226de93a12b6721970497 to your computer and use it in GitHub Desktop.
Save edgerunner/f0f702bcdaf226de93a12b6721970497 to your computer and use it in GitHub Desktop.
Washer &
Washer &
Cycle
Locking door
# fire this on entry
lock -> Locking
locking complete -> Phase
Phase
pause phase -> Phase paused
Preparing
phase ready -> Washing
phase prep timeout -> Finishing
Washing
washing timer done -> Finishing
Finishing
phase complete -> Phase
final phase complete -> Draining
Phase paused
phase pause timeout -> Draining
resume phase -> Phase state before pause?
Phase state before pause?
preparing? -> Preparing
washing? -> Washing
finishing? -> Finishing
Draining
draining complete -> Unlocking door
Unlocking door
unlocking complete -> Cycle complete
Cycle complete
Lock
Unlocked
lock -> Locking
Locking
locking complete -> Locked
unlock -> Unlocking
timeout -> Lock failed
Locked
unlock -> Unlocking
level above door -> Blocked
Blocked
level below door -> Locked
Unlocking
lock -> Locking
unlocking complete -> Unlocked
timeout -> Lock failed
Lock failed
lock -> Locking
unlock -> Unlocking
Water Level
Zero level
level above door -> Door level
Door level
level below door -> Zero level
level above heater -> Heater level
Heater level
level below heater -> Door level
level above lower -> Lower level
Lower level
level below lower -> Heater level
level at setpoint -> Set level
Set level
level below setpoint -> Lower level
level above setpoint -> High level
High level
level at setpoint -> Set level
level above max -> Max level
Max level
level below max -> High level
Temperature
Low temp
temperature at setpoint -> Set temp
Set temp
temperature below setpoint -> Low temp
temperature above setpoint -> High temp
High temp
temperature at setpoint -> Set temp
temperature above danger -> Danger temp
Danger temp
temperature below danger -> High temp
function render(model){
let current_state_name = model.active_states.map(s => `${s.parent.name} ${s.name}`);
return $("h1",
{style: {color: "darkBlue"}},
`The current state is: ${current_state_name}`);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment