summaryrefslogtreecommitdiff
path: root/tuer-rfid/statemachine.dot
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2013-08-08 22:39:50 +0000
committerChristian Pointner <equinox@spreadspace.org>2013-08-08 22:39:50 +0000
commit2c997f95cb167e9023c1a44abaeda4ea80bbc7d3 (patch)
tree66cd2988de8f233b80c8e9b83b597484c3a33607 /tuer-rfid/statemachine.dot
parentadded support for teenstep (diff)
moved usb-i2c-sl018 to tuer-rfid
git-svn-id: https://svn.spreadspace.org/avr/trunk@216 aa12f405-d877-488e-9caf-2d797e2a1cc7
Diffstat (limited to 'tuer-rfid/statemachine.dot')
-rw-r--r--tuer-rfid/statemachine.dot45
1 files changed, 45 insertions, 0 deletions
diff --git a/tuer-rfid/statemachine.dot b/tuer-rfid/statemachine.dot
new file mode 100644
index 0000000..d581de8
--- /dev/null
+++ b/tuer-rfid/statemachine.dot
@@ -0,0 +1,45 @@
+digraph G {
+ reset [shape=box];
+ toggle [shape=diamond];
+ btn_toggle [shape=diamond];
+ cmd_toggle [shape=diamond];
+ card [shape=diamond];
+ card ->toggle;
+ btn_toggle ->toggle;
+ cmd_toggle ->toggle;
+ all_states [shape=box];
+ opened [shape=box];
+ closed [shape=box];
+ opening [shape=box];
+ closing [shape=box];
+ timeout_after_open [shape=box];
+ timeout_after_close [shape=box];
+ manual_movement [shape=box];
+ error [shape=box];
+ reset -> closed [label="limit_closed"];
+ reset -> closing [label="limit_none"];
+ reset -> opened [label="limit_opened"];
+ error -> closed [label="limit_closed"];
+ error -> opened [label="limit_opened"];
+ error -> manual_movement [label="limit_none"];
+ manual_movement -> opening [label="cmd_open"];
+ manual_movement -> closing [label="cmd_close"];
+ manual_movement -> closing [label="toggle"];
+ opened -> closing [label="cmd_close"];
+ opened -> closing [label="toggle"];
+ closed -> opening [label="cmd_open"];
+ closed -> opening [label="toggle"];
+ opening -> opened [label="open_fin"];
+ closing -> closed [label="close_fin"];
+ closing -> timeout_after_close [label="timeout"];
+ opening -> timeout_after_open [label="timeout"];
+ timeout_after_open -> closing [label="cmd_close"];
+ timeout_after_open -> closing [label="toggle"];
+ timeout_after_open -> opened [label="limit_open"];
+ timeout_after_open -> closed [label="limit_close"];
+ timeout_after_close -> opening [label="cmd_open"];
+ timeout_after_close -> opening [label="toggle"];
+ timeout_after_close -> opened [label="limit_open"];
+ timeout_after_close -> closed [label="limit_close"];
+ all_states -> error [label="limit_both"];
+}