소스 검색

Updated doxygen

Philipp Hinz 8 년 전
부모
커밋
dca3c09a02
100개의 변경된 파일5858개의 추가작업 그리고 972개의 파일을 삭제
  1. 3 2
      CoffeeCode/html/annotated.html
  2. 6 5
      CoffeeCode/html/classes.html
  3. 483 0
      CoffeeCode/html/coffee_8cpp.html
  4. 538 0
      CoffeeCode/html/coffee_8h.html
  5. 149 0
      CoffeeCode/html/coffee_8h_source.html
  6. 6 66
      CoffeeCode/html/database_8h.html
  7. 29 41
      CoffeeCode/html/database_8h_source.html
  8. 503 0
      CoffeeCode/html/display_8cpp.html
  9. 455 0
      CoffeeCode/html/display_8h.html
  10. 223 0
      CoffeeCode/html/display_8h_source.html
  11. 22 18
      CoffeeCode/html/files.html
  12. 3 0
      CoffeeCode/html/functions.html
  13. 3 0
      CoffeeCode/html/functions_vars.html
  14. 8 8
      CoffeeCode/html/global_8h.html
  15. 20 21
      CoffeeCode/html/global_8h_source.html
  16. 6 2
      CoffeeCode/html/globals.html
  17. 11 0
      CoffeeCode/html/globals_b.html
  18. 45 7
      CoffeeCode/html/globals_c.html
  19. 63 0
      CoffeeCode/html/globals_d.html
  20. 77 19
      CoffeeCode/html/globals_defs.html
  21. 7 0
      CoffeeCode/html/globals_e.html
  22. 6 0
      CoffeeCode/html/globals_enum.html
  23. 47 22
      CoffeeCode/html/globals_eval.html
  24. 6 2
      CoffeeCode/html/globals_f.html
  25. 17 378
      CoffeeCode/html/globals_func.html
  26. 168 0
      CoffeeCode/html/globals_func_c.html
  27. 165 0
      CoffeeCode/html/globals_func_d.html
  28. 132 0
      CoffeeCode/html/globals_func_g.html
  29. 211 0
      CoffeeCode/html/globals_func_h.html
  30. 140 0
      CoffeeCode/html/globals_func_i.html
  31. 128 0
      CoffeeCode/html/globals_func_k.html
  32. 191 0
      CoffeeCode/html/globals_func_l.html
  33. 130 0
      CoffeeCode/html/globals_func_m.html
  34. 128 0
      CoffeeCode/html/globals_func_n.html
  35. 262 0
      CoffeeCode/html/globals_func_s.html
  36. 130 0
      CoffeeCode/html/globals_func_t.html
  37. 127 0
      CoffeeCode/html/globals_func_u.html
  38. 140 0
      CoffeeCode/html/globals_g.html
  39. 28 8
      CoffeeCode/html/globals_h.html
  40. 5 4
      CoffeeCode/html/globals_i.html
  41. 1 0
      CoffeeCode/html/globals_k.html
  42. 24 27
      CoffeeCode/html/globals_l.html
  43. 1 0
      CoffeeCode/html/globals_m.html
  44. 1 0
      CoffeeCode/html/globals_n.html
  45. 9 4
      CoffeeCode/html/globals_o.html
  46. 15 8
      CoffeeCode/html/globals_p.html
  47. 4 0
      CoffeeCode/html/globals_r.html
  48. 98 32
      CoffeeCode/html/globals_s.html
  49. 16 9
      CoffeeCode/html/globals_t.html
  50. 1 0
      CoffeeCode/html/globals_u.html
  51. 1 0
      CoffeeCode/html/globals_v.html
  52. 131 10
      CoffeeCode/html/globals_vars.html
  53. 1 0
      CoffeeCode/html/globals_w.html
  54. 175 4
      CoffeeCode/html/hal_8cpp.html
  55. 136 43
      CoffeeCode/html/hal_8h.html
  56. 95 73
      CoffeeCode/html/hal_8h_source.html
  57. 3 3
      CoffeeCode/html/lcd_8cpp.html
  58. 3 3
      CoffeeCode/html/lcd_8h.html
  59. 2 1
      CoffeeCode/html/lcd_8h_source.html
  60. 8 46
      CoffeeCode/html/main_8cpp.html
  61. 2 1
      CoffeeCode/html/search/all_0.js
  62. 3 0
      CoffeeCode/html/search/all_1.js
  63. 24 3
      CoffeeCode/html/search/all_10.js
  64. 5 2
      CoffeeCode/html/search/all_11.js
  65. 14 1
      CoffeeCode/html/search/all_2.js
  66. 22 1
      CoffeeCode/html/search/all_3.js
  67. 2 0
      CoffeeCode/html/search/all_4.js
  68. 2 1
      CoffeeCode/html/search/all_5.js
  69. 2 0
      CoffeeCode/html/search/all_6.js
  70. 5 0
      CoffeeCode/html/search/all_7.js
  71. 2 2
      CoffeeCode/html/search/all_8.js
  72. 4 5
      CoffeeCode/html/search/all_a.js
  73. 1 0
      CoffeeCode/html/search/all_d.js
  74. 6 4
      CoffeeCode/html/search/all_e.js
  75. 1 0
      CoffeeCode/html/search/all_f.js
  76. 1 1
      CoffeeCode/html/search/classes_0.js
  77. 1 1
      CoffeeCode/html/search/classes_1.js
  78. 26 0
      CoffeeCode/html/search/classes_2.html
  79. 4 0
      CoffeeCode/html/search/classes_2.js
  80. 2 5
      CoffeeCode/html/search/defines_0.js
  81. 5 1
      CoffeeCode/html/search/defines_1.js
  82. 3 4
      CoffeeCode/html/search/defines_2.js
  83. 1 4
      CoffeeCode/html/search/defines_3.js
  84. 3 9
      CoffeeCode/html/search/defines_4.js
  85. 2 20
      CoffeeCode/html/search/defines_5.js
  86. 9 1
      CoffeeCode/html/search/defines_6.js
  87. 20 4
      CoffeeCode/html/search/defines_7.js
  88. 1 5
      CoffeeCode/html/search/defines_8.js
  89. 6 18
      CoffeeCode/html/search/defines_9.js
  90. 6 7
      CoffeeCode/html/search/defines_a.js
  91. 26 1
      CoffeeCode/html/search/defines_b.js
  92. 10 1
      CoffeeCode/html/search/defines_c.js
  93. 26 0
      CoffeeCode/html/search/defines_d.html
  94. 4 0
      CoffeeCode/html/search/defines_d.js
  95. 26 0
      CoffeeCode/html/search/defines_e.html
  96. 4 0
      CoffeeCode/html/search/defines_e.js
  97. 2 1
      CoffeeCode/html/search/enums_1.js
  98. 1 2
      CoffeeCode/html/search/enums_2.js
  99. 2 1
      CoffeeCode/html/search/enums_3.js
  100. 26 0
      CoffeeCode/html/search/enums_4.html

+ 3 - 2
CoffeeCode/html/annotated.html

@@ -88,8 +88,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="contents">
 <div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
 <table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structstripe__color.html" target="_self">stripe_color</a></td><td class="desc"></td></tr>
-<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classtimer.html" target="_self">timer</a></td><td class="desc">Timer Class This class allows the creation of multiple timers that are based by a divider on a single system timer </td></tr>
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structdisplay__string__t.html" target="_self">display_string_t</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structstripe__color.html" target="_self">stripe_color</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classtimer.html" target="_self">timer</a></td><td class="desc">Timer Class This class allows the creation of multiple timers that are based by a divider on a single system timer </td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->

+ 6 - 5
CoffeeCode/html/classes.html

@@ -86,16 +86,17 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="title">Data Structure Index</div>  </div>
 </div><!--header-->
 <div class="contents">
-<div class="qindex"><a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a></div>
+<div class="qindex"><a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a></div>
 <table style="margin: 10px; white-space: nowrap;" align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
-<tr><td rowspan="2" valign="bottom"><a name="letter_s"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;s&#160;&#160;</div></td></tr></table>
+<tr><td rowspan="2" valign="bottom"><a name="letter_d"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;d&#160;&#160;</div></td></tr></table>
+</td><td rowspan="2" valign="bottom"><a name="letter_s"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;s&#160;&#160;</div></td></tr></table>
 </td><td rowspan="2" valign="bottom"><a name="letter_t"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;t&#160;&#160;</div></td></tr></table>
 </td><td></td></tr>
 <tr><td></td></tr>
-<tr><td valign="top"><a class="el" href="structstripe__color.html">stripe_color</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classtimer.html">timer</a>&#160;&#160;&#160;</td><td></td></tr>
-<tr><td></td><td></td><td></td></tr>
+<tr><td valign="top"><a class="el" href="structdisplay__string__t.html">display_string_t</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structstripe__color.html">stripe_color</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classtimer.html">timer</a>&#160;&#160;&#160;</td><td></td></tr>
+<tr><td></td><td></td><td></td><td></td></tr>
 </table>
-<div class="qindex"><a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a></div>
+<div class="qindex"><a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a></div>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 483 - 0
CoffeeCode/html/coffee_8cpp.html

@@ -0,0 +1,483 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: coffee.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a>  </div>
+  <div class="headertitle">
+<div class="title">coffee.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdio.h&gt;</code><br />
+<code>#include &lt;stdlib.h&gt;</code><br />
+<code>#include &lt;string.h&gt;</code><br />
+<code>#include &lt;errno.h&gt;</code><br />
+<code>#include &lt;stdint.h&gt;</code><br />
+<code>#include &lt;wiringPi.h&gt;</code><br />
+<code>#include &lt;pthread.h&gt;</code><br />
+<code>#include &lt;unistd.h&gt;</code><br />
+<code>#include &lt;iostream&gt;</code><br />
+<code>#include &lt;csignal&gt;</code><br />
+<code>#include &lt;time.h&gt;</code><br />
+<code>#include &lt;ctime&gt;</code><br />
+<code>#include &quot;<a class="el" href="coffee_8h_source.html">coffee.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="hal_8h_source.html">hal.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="logger_8h_source.html">logger.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="timer_8h_source.html">timer.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="database_8h_source.html">database.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="display_8h_source.html">display.h</a>&quot;</code><br />
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:afed8c565650f5808745b6c6c7d45462c"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#afed8c565650f5808745b6c6c7d45462c">coffeeThread</a> (void *threadid)</td></tr>
+<tr class="memdesc:afed8c565650f5808745b6c6c7d45462c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Thread for the finite state machine It represents the current state of the machine and handles signals coming from the pressure control, buttons, the brew switch and the proximity sensor.  <a href="#afed8c565650f5808745b6c6c7d45462c">More...</a><br /></td></tr>
+<tr class="separator:afed8c565650f5808745b6c6c7d45462c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44f0ebaec249d2ce6316c1bddff54d79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a44f0ebaec249d2ce6316c1bddff54d79">coffeeHandler</a> (int signum, siginfo_t *siginfo, void *context)</td></tr>
+<tr class="memdesc:a44f0ebaec249d2ce6316c1bddff54d79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handler for the Signal send to this thread It saves the type of signal received and tracks the time between a push and release event of up to 4 signals The time is stored in the HalEvent variable when a release event is received.  <a href="#a44f0ebaec249d2ce6316c1bddff54d79">More...</a><br /></td></tr>
+<tr class="separator:a44f0ebaec249d2ce6316c1bddff54d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3290268b8fcbba9a6b642b68860a8503"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a3290268b8fcbba9a6b642b68860a8503">getSigValue</a> (void)</td></tr>
+<tr class="memdesc:a3290268b8fcbba9a6b642b68860a8503"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the Signal value from the last received Signal and clears the variable  <a href="#a3290268b8fcbba9a6b642b68860a8503">More...</a><br /></td></tr>
+<tr class="separator:a3290268b8fcbba9a6b642b68860a8503"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63f25020d1567a2d5e03a9a59e75a0fc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a63f25020d1567a2d5e03a9a59e75a0fc">SigValueEmpty</a> (void)</td></tr>
+<tr class="separator:a63f25020d1567a2d5e03a9a59e75a0fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4d9681385a3f678dee40458cf55dca0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#ae4d9681385a3f678dee40458cf55dca0">changeState</a> (int newState)</td></tr>
+<tr class="memdesc:ae4d9681385a3f678dee40458cf55dca0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the state of the machine to newState prints the change to the logger.  <a href="#ae4d9681385a3f678dee40458cf55dca0">More...</a><br /></td></tr>
+<tr class="separator:ae4d9681385a3f678dee40458cf55dca0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc0b4325b7cabe49f623d5e44aaa37d7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#afc0b4325b7cabe49f623d5e44aaa37d7">getState</a> (void)</td></tr>
+<tr class="memdesc:afc0b4325b7cabe49f623d5e44aaa37d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current state of the FSM.  <a href="#afc0b4325b7cabe49f623d5e44aaa37d7">More...</a><br /></td></tr>
+<tr class="separator:afc0b4325b7cabe49f623d5e44aaa37d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66d75a676639d0f8e56c0efe76547482"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a66d75a676639d0f8e56c0efe76547482">brewTimeHandler</a> (void)</td></tr>
+<tr class="memdesc:a66d75a676639d0f8e56c0efe76547482"><td class="mdescLeft">&#160;</td><td class="mdescRight">Counter for the brew time refresh every 200ms.  <a href="#a66d75a676639d0f8e56c0efe76547482">More...</a><br /></td></tr>
+<tr class="separator:a66d75a676639d0f8e56c0efe76547482"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c611f1d81caf2f51c8b77b307028e4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a5c611f1d81caf2f51c8b77b307028e4d">coffeeTerminate</a> (void)</td></tr>
+<tr class="memdesc:a5c611f1d81caf2f51c8b77b307028e4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">handles program termination  <a href="#a5c611f1d81caf2f51c8b77b307028e4d">More...</a><br /></td></tr>
+<tr class="separator:a5c611f1d81caf2f51c8b77b307028e4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a343324d9863aa6eb3d7e2a183aec4a09"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a343324d9863aa6eb3d7e2a183aec4a09">coffeeBrew</a> (void)</td></tr>
+<tr class="memdesc:a343324d9863aa6eb3d7e2a183aec4a09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Brewing process.  <a href="#a343324d9863aa6eb3d7e2a183aec4a09">More...</a><br /></td></tr>
+<tr class="separator:a343324d9863aa6eb3d7e2a183aec4a09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c29bb32c4f3971f78dd515e568042c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a7c29bb32c4f3971f78dd515e568042c3">coffeeIncreaseBrewCounter</a> (void)</td></tr>
+<tr class="separator:a7c29bb32c4f3971f78dd515e568042c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11b81e21f5769fc6b0e55ecbac8d3976"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a11b81e21f5769fc6b0e55ecbac8d3976">coffeeIncreaseHeatingTime</a> (uint64_t <a class="el" href="coffee_8cpp.html#ac88c1bf95effb2aeddc71b1c2cf9034b">heatingTime</a>)</td></tr>
+<tr class="separator:a11b81e21f5769fc6b0e55ecbac8d3976"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a89f234133d3efe315836311cbf21c64b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a></td></tr>
+<tr class="separator:a89f234133d3efe315836311cbf21c64b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a959eceab8fe67a33076aa42e877441a5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a959eceab8fe67a33076aa42e877441a5">sigValue</a></td></tr>
+<tr class="separator:a959eceab8fe67a33076aa42e877441a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3756d547bc4c41a306650f4f4bbb930c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a3756d547bc4c41a306650f4f4bbb930c">brewTime</a></td></tr>
+<tr class="separator:a3756d547bc4c41a306650f4f4bbb930c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25ddb2af4585729d37dab1e1b5bb0b06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classtimer.html">timer</a> brewTimer &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a25ddb2af4585729d37dab1e1b5bb0b06">brewTimeHandler</a></td></tr>
+<tr class="separator:a25ddb2af4585729d37dab1e1b5bb0b06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1426cd37aa49a96e7bcf12d26cde1a0d"><td class="memItemLeft" align="right" valign="top">clock_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a1426cd37aa49a96e7bcf12d26cde1a0d">beginHeating</a></td></tr>
+<tr class="separator:a1426cd37aa49a96e7bcf12d26cde1a0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1aaa11435974ab87937d68b01ee71074"><td class="memItemLeft" align="right" valign="top">clock_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#a1aaa11435974ab87937d68b01ee71074">endHeating</a></td></tr>
+<tr class="separator:a1aaa11435974ab87937d68b01ee71074"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac88c1bf95effb2aeddc71b1c2cf9034b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8cpp.html#ac88c1bf95effb2aeddc71b1c2cf9034b">heatingTime</a></td></tr>
+<tr class="separator:ac88c1bf95effb2aeddc71b1c2cf9034b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a66d75a676639d0f8e56c0efe76547482"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void brewTimeHandler </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Counter for the brew time refresh every 200ms. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae4d9681385a3f678dee40458cf55dca0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void changeState </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>newState</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Changes the state of the machine to newState prints the change to the logger. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">newState</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a343324d9863aa6eb3d7e2a183aec4a09"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeBrew </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Brewing process. </p>
+
+</div>
+</div>
+<a class="anchor" id="a44f0ebaec249d2ce6316c1bddff54d79"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeHandler </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>signum</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">siginfo_t *&#160;</td>
+          <td class="paramname"><em>siginfo</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>context</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Handler for the Signal send to this thread It saves the type of signal received and tracks the time between a push and release event of up to 4 signals The time is stored in the HalEvent variable when a release event is received. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">signum</td><td></td></tr>
+    <tr><td class="paramname">siginfo</td><td></td></tr>
+    <tr><td class="paramname">context</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a7c29bb32c4f3971f78dd515e568042c3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeIncreaseBrewCounter </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a11b81e21f5769fc6b0e55ecbac8d3976"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeIncreaseHeatingTime </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>heatingTime</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c611f1d81caf2f51c8b77b307028e4d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeTerminate </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>handles program termination </p>
+
+</div>
+</div>
+<a class="anchor" id="afed8c565650f5808745b6c6c7d45462c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void* coffeeThread </td>
+          <td>(</td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>threadid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Thread for the finite state machine It represents the current state of the machine and handles signals coming from the pressure control, buttons, the brew switch and the proximity sensor. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">threadid</td><td>the ID of the thread </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a3290268b8fcbba9a6b642b68860a8503"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int getSigValue </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>returns the Signal value from the last received Signal and clears the variable </p>
+<dl class="section return"><dt>Returns</dt><dd>value sent with the last signal </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="afc0b4325b7cabe49f623d5e44aaa37d7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int getState </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Returns the current state of the FSM. </p>
+
+</div>
+</div>
+<a class="anchor" id="a63f25020d1567a2d5e03a9a59e75a0fc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SigValueEmpty </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a1426cd37aa49a96e7bcf12d26cde1a0d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">clock_t beginHeating</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3756d547bc4c41a306650f4f4bbb930c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int brewTime</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a25ddb2af4585729d37dab1e1b5bb0b06"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classtimer.html">timer</a> brewTimer&amp; brewTimeHandler</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1aaa11435974ab87937d68b01ee71074"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">clock_t endHeating</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac88c1bf95effb2aeddc71b1c2cf9034b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double heatingTime</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a959eceab8fe67a33076aa42e877441a5"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int sigValue</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a89f234133d3efe315836311cbf21c64b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int state</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 538 - 0
CoffeeCode/html/coffee_8h.html

@@ -0,0 +1,538 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: coffee.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">coffee.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;csignal&gt;</code><br />
+</div>
+<p><a href="coffee_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a0cc0d45e13bc83065d45df9d3d1dc887"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a0cc0d45e13bc83065d45df9d3d1dc887">STATE_OFF</a>&#160;&#160;&#160;0</td></tr>
+<tr class="separator:a0cc0d45e13bc83065d45df9d3d1dc887"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab87d7787dc7a2c2afc6d7853353d7003"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#ab87d7787dc7a2c2afc6d7853353d7003">STATE_HEATING</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:ab87d7787dc7a2c2afc6d7853353d7003"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af74b21e82c0f8fbf7f697db071d420a0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#af74b21e82c0f8fbf7f697db071d420a0">STATE_INITALHEATING</a>&#160;&#160;&#160;2</td></tr>
+<tr class="separator:af74b21e82c0f8fbf7f697db071d420a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafff27c7165f059a969fe60fee51f683"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#aafff27c7165f059a969fe60fee51f683">STATE_IDLE</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:aafff27c7165f059a969fe60fee51f683"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a56332694aec763a9f8028113a07199"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a7a56332694aec763a9f8028113a07199">STATE_BREW</a>&#160;&#160;&#160;4</td></tr>
+<tr class="separator:a7a56332694aec763a9f8028113a07199"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af696741daae3faab28c27755188fd828"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#af696741daae3faab28c27755188fd828">STATE_BREWMANUAL</a>&#160;&#160;&#160;5</td></tr>
+<tr class="separator:af696741daae3faab28c27755188fd828"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a3e5a95a5ba91345c6a1b6f7e06c737"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a3a3e5a95a5ba91345c6a1b6f7e06c737">STATE_CLEANING</a>&#160;&#160;&#160;6</td></tr>
+<tr class="separator:a3a3e5a95a5ba91345c6a1b6f7e06c737"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bf0c086c7c41c12cc63324327932d91"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a7bf0c086c7c41c12cc63324327932d91">STATE_ERROR</a>&#160;&#160;&#160;7</td></tr>
+<tr class="separator:a7bf0c086c7c41c12cc63324327932d91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8bfbae67917bc4a69ae336c65b3aba2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#ad8bfbae67917bc4a69ae336c65b3aba2">AMOUNT_PREINFUSION</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:ad8bfbae67917bc4a69ae336c65b3aba2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4b00557d847ecf54b790844b3be2eb0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#ad4b00557d847ecf54b790844b3be2eb0">TIME_SOAK</a>&#160;&#160;&#160;3000</td></tr>
+<tr class="separator:ad4b00557d847ecf54b790844b3be2eb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd34aefc536dfe9b45dbed679cf6afaf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#acd34aefc536dfe9b45dbed679cf6afaf">TIME_INFUSION</a>&#160;&#160;&#160;25000</td></tr>
+<tr class="separator:acd34aefc536dfe9b45dbed679cf6afaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e3abbeb2301b9265ee297ee63e2f4c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a4e3abbeb2301b9265ee297ee63e2f4c8">AMOUNT_DBLESPRESSO</a>&#160;&#160;&#160;25.0</td></tr>
+<tr class="separator:a4e3abbeb2301b9265ee297ee63e2f4c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:afed8c565650f5808745b6c6c7d45462c"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#afed8c565650f5808745b6c6c7d45462c">coffeeThread</a> (void *threadid)</td></tr>
+<tr class="memdesc:afed8c565650f5808745b6c6c7d45462c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Thread for the finite state machine It represents the current state of the machine and handles signals coming from the pressure control, buttons, the brew switch and the proximity sensor.  <a href="#afed8c565650f5808745b6c6c7d45462c">More...</a><br /></td></tr>
+<tr class="separator:afed8c565650f5808745b6c6c7d45462c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44f0ebaec249d2ce6316c1bddff54d79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a44f0ebaec249d2ce6316c1bddff54d79">coffeeHandler</a> (int signum, siginfo_t *siginfo, void *context)</td></tr>
+<tr class="memdesc:a44f0ebaec249d2ce6316c1bddff54d79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handler for the Signal send to this thread It saves the type of signal received and tracks the time between a push and release event of up to 4 signals The time is stored in the HalEvent variable when a release event is received.  <a href="#a44f0ebaec249d2ce6316c1bddff54d79">More...</a><br /></td></tr>
+<tr class="separator:a44f0ebaec249d2ce6316c1bddff54d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3290268b8fcbba9a6b642b68860a8503"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a3290268b8fcbba9a6b642b68860a8503">getSigValue</a> (void)</td></tr>
+<tr class="memdesc:a3290268b8fcbba9a6b642b68860a8503"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the Signal value from the last received Signal and clears the variable  <a href="#a3290268b8fcbba9a6b642b68860a8503">More...</a><br /></td></tr>
+<tr class="separator:a3290268b8fcbba9a6b642b68860a8503"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63f25020d1567a2d5e03a9a59e75a0fc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a63f25020d1567a2d5e03a9a59e75a0fc">SigValueEmpty</a> (void)</td></tr>
+<tr class="separator:a63f25020d1567a2d5e03a9a59e75a0fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4d9681385a3f678dee40458cf55dca0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#ae4d9681385a3f678dee40458cf55dca0">changeState</a> (int newState)</td></tr>
+<tr class="memdesc:ae4d9681385a3f678dee40458cf55dca0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the state of the machine to newState prints the change to the logger.  <a href="#ae4d9681385a3f678dee40458cf55dca0">More...</a><br /></td></tr>
+<tr class="separator:ae4d9681385a3f678dee40458cf55dca0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc0b4325b7cabe49f623d5e44aaa37d7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#afc0b4325b7cabe49f623d5e44aaa37d7">getState</a> (void)</td></tr>
+<tr class="memdesc:afc0b4325b7cabe49f623d5e44aaa37d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current state of the FSM.  <a href="#afc0b4325b7cabe49f623d5e44aaa37d7">More...</a><br /></td></tr>
+<tr class="separator:afc0b4325b7cabe49f623d5e44aaa37d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66d75a676639d0f8e56c0efe76547482"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a66d75a676639d0f8e56c0efe76547482">brewTimeHandler</a> (void)</td></tr>
+<tr class="memdesc:a66d75a676639d0f8e56c0efe76547482"><td class="mdescLeft">&#160;</td><td class="mdescRight">Counter for the brew time refresh every 200ms.  <a href="#a66d75a676639d0f8e56c0efe76547482">More...</a><br /></td></tr>
+<tr class="separator:a66d75a676639d0f8e56c0efe76547482"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c611f1d81caf2f51c8b77b307028e4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a5c611f1d81caf2f51c8b77b307028e4d">coffeeTerminate</a> (void)</td></tr>
+<tr class="memdesc:a5c611f1d81caf2f51c8b77b307028e4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">handles program termination  <a href="#a5c611f1d81caf2f51c8b77b307028e4d">More...</a><br /></td></tr>
+<tr class="separator:a5c611f1d81caf2f51c8b77b307028e4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a343324d9863aa6eb3d7e2a183aec4a09"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a343324d9863aa6eb3d7e2a183aec4a09">coffeeBrew</a> (void)</td></tr>
+<tr class="memdesc:a343324d9863aa6eb3d7e2a183aec4a09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Brewing process.  <a href="#a343324d9863aa6eb3d7e2a183aec4a09">More...</a><br /></td></tr>
+<tr class="separator:a343324d9863aa6eb3d7e2a183aec4a09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c29bb32c4f3971f78dd515e568042c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a7c29bb32c4f3971f78dd515e568042c3">coffeeIncreaseBrewCounter</a> (void)</td></tr>
+<tr class="separator:a7c29bb32c4f3971f78dd515e568042c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11b81e21f5769fc6b0e55ecbac8d3976"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="coffee_8h.html#a11b81e21f5769fc6b0e55ecbac8d3976">coffeeIncreaseHeatingTime</a> (uint64_t <a class="el" href="coffee_8cpp.html#ac88c1bf95effb2aeddc71b1c2cf9034b">heatingTime</a>)</td></tr>
+<tr class="separator:a11b81e21f5769fc6b0e55ecbac8d3976"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a4e3abbeb2301b9265ee297ee63e2f4c8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define AMOUNT_DBLESPRESSO&#160;&#160;&#160;25.0</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad8bfbae67917bc4a69ae336c65b3aba2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define AMOUNT_PREINFUSION&#160;&#160;&#160;3</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7a56332694aec763a9f8028113a07199"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define STATE_BREW&#160;&#160;&#160;4</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af696741daae3faab28c27755188fd828"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define STATE_BREWMANUAL&#160;&#160;&#160;5</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3a3e5a95a5ba91345c6a1b6f7e06c737"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define STATE_CLEANING&#160;&#160;&#160;6</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7bf0c086c7c41c12cc63324327932d91"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define STATE_ERROR&#160;&#160;&#160;7</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab87d7787dc7a2c2afc6d7853353d7003"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define STATE_HEATING&#160;&#160;&#160;1</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aafff27c7165f059a969fe60fee51f683"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define STATE_IDLE&#160;&#160;&#160;3</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af74b21e82c0f8fbf7f697db071d420a0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define STATE_INITALHEATING&#160;&#160;&#160;2</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0cc0d45e13bc83065d45df9d3d1dc887"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define STATE_OFF&#160;&#160;&#160;0</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acd34aefc536dfe9b45dbed679cf6afaf"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define TIME_INFUSION&#160;&#160;&#160;25000</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad4b00557d847ecf54b790844b3be2eb0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define TIME_SOAK&#160;&#160;&#160;3000</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a66d75a676639d0f8e56c0efe76547482"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void brewTimeHandler </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Counter for the brew time refresh every 200ms. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae4d9681385a3f678dee40458cf55dca0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void changeState </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>newState</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Changes the state of the machine to newState prints the change to the logger. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">newState</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a343324d9863aa6eb3d7e2a183aec4a09"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeBrew </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Brewing process. </p>
+
+</div>
+</div>
+<a class="anchor" id="a44f0ebaec249d2ce6316c1bddff54d79"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeHandler </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>signum</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">siginfo_t *&#160;</td>
+          <td class="paramname"><em>siginfo</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>context</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Handler for the Signal send to this thread It saves the type of signal received and tracks the time between a push and release event of up to 4 signals The time is stored in the HalEvent variable when a release event is received. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">signum</td><td></td></tr>
+    <tr><td class="paramname">siginfo</td><td></td></tr>
+    <tr><td class="paramname">context</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a7c29bb32c4f3971f78dd515e568042c3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeIncreaseBrewCounter </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a11b81e21f5769fc6b0e55ecbac8d3976"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeIncreaseHeatingTime </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>heatingTime</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c611f1d81caf2f51c8b77b307028e4d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void coffeeTerminate </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>handles program termination </p>
+
+</div>
+</div>
+<a class="anchor" id="afed8c565650f5808745b6c6c7d45462c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void* coffeeThread </td>
+          <td>(</td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>threadid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Thread for the finite state machine It represents the current state of the machine and handles signals coming from the pressure control, buttons, the brew switch and the proximity sensor. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">threadid</td><td>the ID of the thread </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a3290268b8fcbba9a6b642b68860a8503"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int getSigValue </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>returns the Signal value from the last received Signal and clears the variable </p>
+<dl class="section return"><dt>Returns</dt><dd>value sent with the last signal </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="afc0b4325b7cabe49f623d5e44aaa37d7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int getState </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Returns the current state of the FSM. </p>
+
+</div>
+</div>
+<a class="anchor" id="a63f25020d1567a2d5e03a9a59e75a0fc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SigValueEmpty </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 149 - 0
CoffeeCode/html/coffee_8h_source.html

@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: coffee.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle">
+<div class="title">coffee.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="coffee_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * coffee.h</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> *  Created on: Sep 25, 2017</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> *      Author: sebastian</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#ifndef COFFEE_H_</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#define COFFEE_H_</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;csignal&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">//define status</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="coffee_8h.html#a0cc0d45e13bc83065d45df9d3d1dc887">   14</a></span>&#160;<span class="preprocessor">#define STATE_OFF   0</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="coffee_8h.html#ab87d7787dc7a2c2afc6d7853353d7003">   15</a></span>&#160;<span class="preprocessor">#define STATE_HEATING   1</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="coffee_8h.html#af74b21e82c0f8fbf7f697db071d420a0">   16</a></span>&#160;<span class="preprocessor">#define STATE_INITALHEATING 2</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="coffee_8h.html#aafff27c7165f059a969fe60fee51f683">   17</a></span>&#160;<span class="preprocessor">#define STATE_IDLE  3</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="coffee_8h.html#a7a56332694aec763a9f8028113a07199">   18</a></span>&#160;<span class="preprocessor">#define STATE_BREW  4</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="coffee_8h.html#af696741daae3faab28c27755188fd828">   19</a></span>&#160;<span class="preprocessor">#define STATE_BREWMANUAL    5</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="coffee_8h.html#a3a3e5a95a5ba91345c6a1b6f7e06c737">   20</a></span>&#160;<span class="preprocessor">#define STATE_CLEANING  6</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="coffee_8h.html#a7bf0c086c7c41c12cc63324327932d91">   21</a></span>&#160;<span class="preprocessor">#define STATE_ERROR 7</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="coffee_8h.html#ad8bfbae67917bc4a69ae336c65b3aba2">   23</a></span>&#160;<span class="preprocessor">#define AMOUNT_PREINFUSION  3 //Preinfusion amount in ml</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="coffee_8h.html#ad4b00557d847ecf54b790844b3be2eb0">   24</a></span>&#160;<span class="preprocessor">#define TIME_SOAK   3000//Time between preinfusion and infusion in ms</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="coffee_8h.html#acd34aefc536dfe9b45dbed679cf6afaf">   25</a></span>&#160;<span class="preprocessor">#define TIME_INFUSION 25000 //Infusion time in ms</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="coffee_8h.html#a4e3abbeb2301b9265ee297ee63e2f4c8">   26</a></span>&#160;<span class="preprocessor">#define AMOUNT_DBLESPRESSO  25.0    //Size of a double espresso in ml</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="coffee_8h.html#afed8c565650f5808745b6c6c7d45462c">coffeeThread</a>(<span class="keywordtype">void</span> *threadid);</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keywordtype">void</span> <a class="code" href="coffee_8h.html#a44f0ebaec249d2ce6316c1bddff54d79">coffeeHandler</a> (<span class="keywordtype">int</span> signum, siginfo_t *siginfo, <span class="keywordtype">void</span> *context);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keywordtype">int</span> <a class="code" href="coffee_8h.html#a3290268b8fcbba9a6b642b68860a8503">getSigValue</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="coffee_8h.html#a63f25020d1567a2d5e03a9a59e75a0fc">SigValueEmpty</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keywordtype">void</span> <a class="code" href="coffee_8h.html#ae4d9681385a3f678dee40458cf55dca0">changeState</a>(<span class="keywordtype">int</span> newState);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="keywordtype">int</span> <a class="code" href="coffee_8h.html#afc0b4325b7cabe49f623d5e44aaa37d7">getState</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keywordtype">void</span> <a class="code" href="coffee_8h.html#a66d75a676639d0f8e56c0efe76547482">brewTimeHandler</a> (<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keywordtype">void</span> <a class="code" href="coffee_8h.html#a5c611f1d81caf2f51c8b77b307028e4d">coffeeTerminate</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="keywordtype">void</span> <a class="code" href="coffee_8h.html#a343324d9863aa6eb3d7e2a183aec4a09">coffeeBrew</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keywordtype">void</span> <a class="code" href="coffee_8h.html#a7c29bb32c4f3971f78dd515e568042c3">coffeeIncreaseBrewCounter</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="keywordtype">void</span> <a class="code" href="coffee_8h.html#a11b81e21f5769fc6b0e55ecbac8d3976">coffeeIncreaseHeatingTime</a>(uint64_t <a class="code" href="coffee_8cpp.html#ac88c1bf95effb2aeddc71b1c2cf9034b">heatingTime</a>);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* COFFEE_H_ */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="coffee_8h_html_a63f25020d1567a2d5e03a9a59e75a0fc"><div class="ttname"><a href="coffee_8h.html#a63f25020d1567a2d5e03a9a59e75a0fc">SigValueEmpty</a></div><div class="ttdeci">bool SigValueEmpty(void)</div><div class="ttdef"><b>Definition:</b> coffee.cpp:238</div></div>
+<div class="ttc" id="coffee_8h_html_a5c611f1d81caf2f51c8b77b307028e4d"><div class="ttname"><a href="coffee_8h.html#a5c611f1d81caf2f51c8b77b307028e4d">coffeeTerminate</a></div><div class="ttdeci">void coffeeTerminate(void)</div><div class="ttdoc">handles program termination </div><div class="ttdef"><b>Definition:</b> coffee.cpp:275</div></div>
+<div class="ttc" id="coffee_8h_html_a11b81e21f5769fc6b0e55ecbac8d3976"><div class="ttname"><a href="coffee_8h.html#a11b81e21f5769fc6b0e55ecbac8d3976">coffeeIncreaseHeatingTime</a></div><div class="ttdeci">void coffeeIncreaseHeatingTime(uint64_t heatingTime)</div><div class="ttdef"><b>Definition:</b> coffee.cpp:350</div></div>
+<div class="ttc" id="coffee_8h_html_afc0b4325b7cabe49f623d5e44aaa37d7"><div class="ttname"><a href="coffee_8h.html#afc0b4325b7cabe49f623d5e44aaa37d7">getState</a></div><div class="ttdeci">int getState(void)</div><div class="ttdoc">Returns the current state of the FSM. </div><div class="ttdef"><b>Definition:</b> coffee.cpp:260</div></div>
+<div class="ttc" id="coffee_8h_html_a3290268b8fcbba9a6b642b68860a8503"><div class="ttname"><a href="coffee_8h.html#a3290268b8fcbba9a6b642b68860a8503">getSigValue</a></div><div class="ttdeci">int getSigValue(void)</div><div class="ttdoc">returns the Signal value from the last received Signal and clears the variable </div><div class="ttdef"><b>Definition:</b> coffee.cpp:232</div></div>
+<div class="ttc" id="coffee_8h_html_a7c29bb32c4f3971f78dd515e568042c3"><div class="ttname"><a href="coffee_8h.html#a7c29bb32c4f3971f78dd515e568042c3">coffeeIncreaseBrewCounter</a></div><div class="ttdeci">void coffeeIncreaseBrewCounter(void)</div><div class="ttdef"><b>Definition:</b> coffee.cpp:340</div></div>
+<div class="ttc" id="coffee_8h_html_a44f0ebaec249d2ce6316c1bddff54d79"><div class="ttname"><a href="coffee_8h.html#a44f0ebaec249d2ce6316c1bddff54d79">coffeeHandler</a></div><div class="ttdeci">void coffeeHandler(int signum, siginfo_t *siginfo, void *context)</div><div class="ttdoc">Handler for the Signal send to this thread It saves the type of signal received and tracks the time b...</div><div class="ttdef"><b>Definition:</b> coffee.cpp:222</div></div>
+<div class="ttc" id="coffee_8h_html_a343324d9863aa6eb3d7e2a183aec4a09"><div class="ttname"><a href="coffee_8h.html#a343324d9863aa6eb3d7e2a183aec4a09">coffeeBrew</a></div><div class="ttdeci">void coffeeBrew(void)</div><div class="ttdoc">Brewing process. </div><div class="ttdef"><b>Definition:</b> coffee.cpp:285</div></div>
+<div class="ttc" id="coffee_8cpp_html_ac88c1bf95effb2aeddc71b1c2cf9034b"><div class="ttname"><a href="coffee_8cpp.html#ac88c1bf95effb2aeddc71b1c2cf9034b">heatingTime</a></div><div class="ttdeci">double heatingTime</div><div class="ttdef"><b>Definition:</b> coffee.cpp:33</div></div>
+<div class="ttc" id="coffee_8h_html_a66d75a676639d0f8e56c0efe76547482"><div class="ttname"><a href="coffee_8h.html#a66d75a676639d0f8e56c0efe76547482">brewTimeHandler</a></div><div class="ttdeci">void brewTimeHandler(void)</div><div class="ttdoc">Counter for the brew time refresh every 200ms. </div><div class="ttdef"><b>Definition:</b> coffee.cpp:268</div></div>
+<div class="ttc" id="coffee_8h_html_ae4d9681385a3f678dee40458cf55dca0"><div class="ttname"><a href="coffee_8h.html#ae4d9681385a3f678dee40458cf55dca0">changeState</a></div><div class="ttdeci">void changeState(int newState)</div><div class="ttdoc">Changes the state of the machine to newState prints the change to the logger. </div><div class="ttdef"><b>Definition:</b> coffee.cpp:250</div></div>
+<div class="ttc" id="coffee_8h_html_afed8c565650f5808745b6c6c7d45462c"><div class="ttname"><a href="coffee_8h.html#afed8c565650f5808745b6c6c7d45462c">coffeeThread</a></div><div class="ttdeci">void * coffeeThread(void *threadid)</div><div class="ttdoc">Thread for the finite state machine It represents the current state of the machine and handles signal...</div><div class="ttdef"><b>Definition:</b> coffee.cpp:41</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 6 - 66
CoffeeCode/html/database_8h.html

@@ -100,16 +100,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
 Enumerations</h2></td></tr>
-<tr class="memitem:ae1822373f950fb4881633b7ec843f4df"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a> { <br />
-&#160;&#160;<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827">CRC</a> = 1, 
-<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f">AliveCRC</a> = 2, 
-<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424">lastTC1</a> = 3, 
-<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5">lastTC2</a> = 4, 
-<br />
-&#160;&#160;<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848">lastTC3</a> = 5, 
-<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4">lastTerm</a> = 6, 
-<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1">testSlowCnt</a> = 7
-<br />
+<tr class="memitem:ae1822373f950fb4881633b7ec843f4df"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a> { <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e">CFGbrewcounter</a> = 1, 
+<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968">CFGHeatingTime</a> = 2, 
+<a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4">CFGdisplaylang</a> = 3
  }<tr class="separator:ae1822373f950fb4881633b7ec843f4df"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </td></tr>
 </table><table class="memberdecls">
@@ -127,10 +120,6 @@ Functions</h2></td></tr>
 <tr class="memitem:afd88a963f835215b8dad9ee9e49866dc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="database_8h.html#afd88a963f835215b8dad9ee9e49866dc">sqlExecute</a> (string query)</td></tr>
 <tr class="memdesc:afd88a963f835215b8dad9ee9e49866dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes a SQL statement.  <a href="#afd88a963f835215b8dad9ee9e49866dc">More...</a><br /></td></tr>
 <tr class="separator:afd88a963f835215b8dad9ee9e49866dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6ad9c375b101ce2cb461975eb2748b93"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="database_8h.html#a6ad9c375b101ce2cb461975eb2748b93">sqlInsertNode</a> (uint8_t *guid, bool terminal)</td></tr>
-<tr class="separator:a6ad9c375b101ce2cb461975eb2748b93"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae28580072312f213d923d9b145e3dc90"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="database_8h.html#ae28580072312f213d923d9b145e3dc90">sqlReadNodes</a> ()</td></tr>
-<tr class="separator:ae28580072312f213d923d9b145e3dc90"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a437086982a7400d7205f3ab6600e6dcf"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="database_8h.html#a437086982a7400d7205f3ab6600e6dcf">inttochar</a> (uint8_t *guid)</td></tr>
 <tr class="memdesc:a437086982a7400d7205f3ab6600e6dcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts the GUID from int to char array.  <a href="#a437086982a7400d7205f3ab6600e6dcf">More...</a><br /></td></tr>
 <tr class="separator:a437086982a7400d7205f3ab6600e6dcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -165,19 +154,11 @@ Functions</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827"></a>CRC&#160;</td><td class="fielddoc">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e"></a>CFGbrewcounter&#160;</td><td class="fielddoc">
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f"></a>AliveCRC&#160;</td><td class="fielddoc">
+<tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968"></a>CFGHeatingTime&#160;</td><td class="fielddoc">
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424"></a>lastTC1&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5"></a>lastTC2&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848"></a>lastTC3&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4"></a>lastTerm&#160;</td><td class="fielddoc">
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1"></a>testSlowCnt&#160;</td><td class="fielddoc">
+<tr><td class="fieldname"><a class="anchor" id="ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4"></a>CFGdisplaylang&#160;</td><td class="fielddoc">
 </td></tr>
 </table>
 
@@ -340,32 +321,6 @@ Functions</h2></td></tr>
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>value as integer (up to 64bit), 0 for not found </dd></dl>
 
-</div>
-</div>
-<a class="anchor" id="a6ad9c375b101ce2cb461975eb2748b93"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int sqlInsertNode </td>
-          <td>(</td>
-          <td class="paramtype">uint8_t *&#160;</td>
-          <td class="paramname"><em>guid</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">bool&#160;</td>
-          <td class="paramname"><em>terminal</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-
 </div>
 </div>
 <a class="anchor" id="a1885a74e6af3ee510f30f98e60372e3e"></a>
@@ -384,21 +339,6 @@ Functions</h2></td></tr>
 <p>Opens and initializes a sqlite3 database connection. </p>
 <dl class="section return"><dt>Returns</dt><dd>0 on success </dd></dl>
 
-</div>
-</div>
-<a class="anchor" id="ae28580072312f213d923d9b145e3dc90"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int sqlReadNodes </td>
-          <td>(</td>
-          <td class="paramname"></td><td>)</td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-
 </div>
 </div>
 <a class="anchor" id="a1ce0ac0c58916c138a92d3282f569784"></a>

+ 29 - 41
CoffeeCode/html/database_8h_source.html

@@ -106,54 +106,42 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
 <div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">// Config Keys</span></div>
 <div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">   21</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827">   22</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827">CRC</a> = 1,</div>
-<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f">   23</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f">AliveCRC</a> = 2,</div>
-<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424">   24</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424">lastTC1</a> = 3,</div>
-<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5">   25</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5">lastTC2</a> = 4,</div>
-<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848">   26</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848">lastTC3</a> = 5,</div>
-<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4">   27</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4">lastTerm</a> = 6,</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1">   28</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1">testSlowCnt</a> = 7,</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;} <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a>;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#a1885a74e6af3ee510f30f98e60372e3e">sqlOpen</a>();</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keywordtype">void</span> <a class="code" href="database_8h.html#a7264f51f982e908b32635e91e6dc0062">sqlClose</a>();</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#aaed3fb776c9dc76d262df026803d3b8c">sqlSetup</a>();</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#afd88a963f835215b8dad9ee9e49866dc">sqlExecute</a>(<span class="keywordtype">string</span> query);</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#a6ad9c375b101ce2cb461975eb2748b93">sqlInsertNode</a>(uint8_t *guid, <span class="keywordtype">bool</span> terminal);</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#ae28580072312f213d923d9b145e3dc90">sqlReadNodes</a>();</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="database_8h.html#a437086982a7400d7205f3ab6600e6dcf">inttochar</a>(uint8_t *guid);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;uint8_t *<a class="code" href="database_8h.html#ad2d2a73c367513b8b71aff5546276a3c">chartoint</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *guid);</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;uint8_t *<a class="code" href="database_8h.html#a28dbbb9e24e2035535645629105aea46">int64to8bit</a>(sqlite_int64 guid);</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;sqlite_int64 <a class="code" href="database_8h.html#a99cc529fd785c752cd4b73ea7989521d">int8to64bit</a>(uint8_t *guid);</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keywordtype">void</span> <a class="code" href="database_8h.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">sqltest</a>();</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;std::string <a class="code" href="database_8h.html#a6c0bc3256310fd400a26243d8a8f1652">string_sprintf</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* format, ...);</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;uint64_t <a class="code" href="database_8h.html#aad0e803eda7a440a6063a447cfeca0cd">sqlGetConf</a>(<a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a> <span class="keywordtype">id</span>);</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#a1ce0ac0c58916c138a92d3282f569784">sqlSetConf</a>(<a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a> <span class="keywordtype">id</span>, uint64_t value);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* DATABASE_H_ */</span><span class="preprocessor"></span></div>
-<div class="ttc" id="database_8h_html_a1ce0ac0c58916c138a92d3282f569784"><div class="ttname"><a href="database_8h.html#a1ce0ac0c58916c138a92d3282f569784">sqlSetConf</a></div><div class="ttdeci">int sqlSetConf(config_key_t id, uint64_t value)</div><div class="ttdoc">Saves a configuration key to the database. </div><div class="ttdef"><b>Definition:</b> database.cpp:231</div></div>
-<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4">lastTerm</a></div><div class="ttdef"><b>Definition:</b> database.h:27</div></div>
-<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827">CRC</a></div><div class="ttdef"><b>Definition:</b> database.h:22</div></div>
-<div class="ttc" id="database_8h_html_a6ad9c375b101ce2cb461975eb2748b93"><div class="ttname"><a href="database_8h.html#a6ad9c375b101ce2cb461975eb2748b93">sqlInsertNode</a></div><div class="ttdeci">int sqlInsertNode(uint8_t *guid, bool terminal)</div></div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e">   22</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e">CFGbrewcounter</a> = 1,</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968">   23</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968">CFGHeatingTime</a> = 2,</div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4">   24</a></span>&#160;    <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4">CFGdisplaylang</a> = 3</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;} <a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#a1885a74e6af3ee510f30f98e60372e3e">sqlOpen</a>();</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keywordtype">void</span> <a class="code" href="database_8h.html#a7264f51f982e908b32635e91e6dc0062">sqlClose</a>();</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#aaed3fb776c9dc76d262df026803d3b8c">sqlSetup</a>();</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#afd88a963f835215b8dad9ee9e49866dc">sqlExecute</a>(<span class="keywordtype">string</span> query);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="database_8h.html#a437086982a7400d7205f3ab6600e6dcf">inttochar</a>(uint8_t *guid);</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;uint8_t *<a class="code" href="database_8h.html#ad2d2a73c367513b8b71aff5546276a3c">chartoint</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *guid);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;uint8_t *<a class="code" href="database_8h.html#a28dbbb9e24e2035535645629105aea46">int64to8bit</a>(sqlite_int64 guid);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;sqlite_int64 <a class="code" href="database_8h.html#a99cc529fd785c752cd4b73ea7989521d">int8to64bit</a>(uint8_t *guid);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keywordtype">void</span> <a class="code" href="database_8h.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">sqltest</a>();</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;std::string <a class="code" href="database_8h.html#a6c0bc3256310fd400a26243d8a8f1652">string_sprintf</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* format, ...);</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;uint64_t <a class="code" href="database_8h.html#aad0e803eda7a440a6063a447cfeca0cd">sqlGetConf</a>(<a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a> <span class="keywordtype">id</span>);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keywordtype">int</span> <a class="code" href="database_8h.html#a1ce0ac0c58916c138a92d3282f569784">sqlSetConf</a>(<a class="code" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a> <span class="keywordtype">id</span>, uint64_t value);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* DATABASE_H_ */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="database_8h_html_a1ce0ac0c58916c138a92d3282f569784"><div class="ttname"><a href="database_8h.html#a1ce0ac0c58916c138a92d3282f569784">sqlSetConf</a></div><div class="ttdeci">int sqlSetConf(config_key_t id, uint64_t value)</div><div class="ttdoc">Saves a configuration key to the database. </div><div class="ttdef"><b>Definition:</b> database.cpp:198</div></div>
 <div class="ttc" id="database_8h_html_a6c0bc3256310fd400a26243d8a8f1652"><div class="ttname"><a href="database_8h.html#a6c0bc3256310fd400a26243d8a8f1652">string_sprintf</a></div><div class="ttdeci">std::string string_sprintf(const char *format,...)</div><div class="ttdoc">Allows the format of printf but returns a string Source: http://codereview.stackexchange.com/questions/52522/mimic-sprintf-with-stdstring-output. </div><div class="ttdef"><b>Definition:</b> database.cpp:54</div></div>
 <div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4df"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">config_key_t</a></div><div class="ttdeci">config_key_t</div><div class="ttdef"><b>Definition:</b> database.h:21</div></div>
 <div class="ttc" id="namespacestd_html"><div class="ttname"><a href="namespacestd.html">std</a></div></div>
-<div class="ttc" id="database_8h_html_ad2d2a73c367513b8b71aff5546276a3c"><div class="ttname"><a href="database_8h.html#ad2d2a73c367513b8b71aff5546276a3c">chartoint</a></div><div class="ttdeci">uint8_t * chartoint(const unsigned char *guid)</div><div class="ttdoc">Converts the GUID from char to int array. </div><div class="ttdef"><b>Definition:</b> database.cpp:260</div></div>
-<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1">testSlowCnt</a></div><div class="ttdef"><b>Definition:</b> database.h:28</div></div>
+<div class="ttc" id="database_8h_html_ad2d2a73c367513b8b71aff5546276a3c"><div class="ttname"><a href="database_8h.html#ad2d2a73c367513b8b71aff5546276a3c">chartoint</a></div><div class="ttdeci">uint8_t * chartoint(const unsigned char *guid)</div><div class="ttdoc">Converts the GUID from char to int array. </div><div class="ttdef"><b>Definition:</b> database.cpp:227</div></div>
 <div class="ttc" id="database_8h_html_a1885a74e6af3ee510f30f98e60372e3e"><div class="ttname"><a href="database_8h.html#a1885a74e6af3ee510f30f98e60372e3e">sqlOpen</a></div><div class="ttdeci">int sqlOpen()</div><div class="ttdoc">Opens and initializes a sqlite3 database connection. </div><div class="ttdef"><b>Definition:</b> database.cpp:76</div></div>
-<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848">lastTC3</a></div><div class="ttdef"><b>Definition:</b> database.h:26</div></div>
-<div class="ttc" id="database_8h_html_ae28580072312f213d923d9b145e3dc90"><div class="ttname"><a href="database_8h.html#ae28580072312f213d923d9b145e3dc90">sqlReadNodes</a></div><div class="ttdeci">int sqlReadNodes()</div></div>
 <div class="ttc" id="database_8h_html_afd88a963f835215b8dad9ee9e49866dc"><div class="ttname"><a href="database_8h.html#afd88a963f835215b8dad9ee9e49866dc">sqlExecute</a></div><div class="ttdeci">int sqlExecute(string query)</div><div class="ttdoc">Executes a SQL statement. </div><div class="ttdef"><b>Definition:</b> database.cpp:103</div></div>
 <div class="ttc" id="database_8h_html_a7264f51f982e908b32635e91e6dc0062"><div class="ttname"><a href="database_8h.html#a7264f51f982e908b32635e91e6dc0062">sqlClose</a></div><div class="ttdeci">void sqlClose()</div><div class="ttdoc">Closes the database connection. </div><div class="ttdef"><b>Definition:</b> database.cpp:92</div></div>
-<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424">lastTC1</a></div><div class="ttdef"><b>Definition:</b> database.h:24</div></div>
-<div class="ttc" id="database_8h_html_a437086982a7400d7205f3ab6600e6dcf"><div class="ttname"><a href="database_8h.html#a437086982a7400d7205f3ab6600e6dcf">inttochar</a></div><div class="ttdeci">char * inttochar(uint8_t *guid)</div><div class="ttdoc">Converts the GUID from int to char array. </div><div class="ttdef"><b>Definition:</b> database.cpp:245</div></div>
-<div class="ttc" id="database_8h_html_a5d0363e5d886e2c3e4bb5ca46d265ba7"><div class="ttname"><a href="database_8h.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">sqltest</a></div><div class="ttdeci">void sqltest()</div><div class="ttdef"><b>Definition:</b> database.cpp:291</div></div>
+<div class="ttc" id="database_8h_html_a437086982a7400d7205f3ab6600e6dcf"><div class="ttname"><a href="database_8h.html#a437086982a7400d7205f3ab6600e6dcf">inttochar</a></div><div class="ttdeci">char * inttochar(uint8_t *guid)</div><div class="ttdoc">Converts the GUID from int to char array. </div><div class="ttdef"><b>Definition:</b> database.cpp:212</div></div>
+<div class="ttc" id="database_8h_html_a5d0363e5d886e2c3e4bb5ca46d265ba7"><div class="ttname"><a href="database_8h.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">sqltest</a></div><div class="ttdeci">void sqltest()</div><div class="ttdef"><b>Definition:</b> database.cpp:258</div></div>
 <div class="ttc" id="database_8h_html_aaed3fb776c9dc76d262df026803d3b8c"><div class="ttname"><a href="database_8h.html#aaed3fb776c9dc76d262df026803d3b8c">sqlSetup</a></div><div class="ttdeci">int sqlSetup()</div><div class="ttdoc">Sets up the database and creates the needed structure. </div><div class="ttdef"><b>Definition:</b> database.cpp:150</div></div>
-<div class="ttc" id="database_8h_html_aad0e803eda7a440a6063a447cfeca0cd"><div class="ttname"><a href="database_8h.html#aad0e803eda7a440a6063a447cfeca0cd">sqlGetConf</a></div><div class="ttdeci">uint64_t sqlGetConf(config_key_t id)</div><div class="ttdoc">Reads a configuration key from the database. </div><div class="ttdef"><b>Definition:</b> database.cpp:196</div></div>
-<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f">AliveCRC</a></div><div class="ttdef"><b>Definition:</b> database.h:23</div></div>
-<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5">lastTC2</a></div><div class="ttdef"><b>Definition:</b> database.h:25</div></div>
-<div class="ttc" id="database_8h_html_a99cc529fd785c752cd4b73ea7989521d"><div class="ttname"><a href="database_8h.html#a99cc529fd785c752cd4b73ea7989521d">int8to64bit</a></div><div class="ttdeci">sqlite_int64 int8to64bit(uint8_t *guid)</div><div class="ttdef"><b>Definition:</b> database.cpp:283</div></div>
-<div class="ttc" id="database_8h_html_a28dbbb9e24e2035535645629105aea46"><div class="ttname"><a href="database_8h.html#a28dbbb9e24e2035535645629105aea46">int64to8bit</a></div><div class="ttdeci">uint8_t * int64to8bit(sqlite_int64 guid)</div><div class="ttdoc">Converts the GUID from int64 to int8 array. </div><div class="ttdef"><b>Definition:</b> database.cpp:274</div></div>
+<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4">CFGdisplaylang</a></div><div class="ttdef"><b>Definition:</b> database.h:24</div></div>
+<div class="ttc" id="database_8h_html_aad0e803eda7a440a6063a447cfeca0cd"><div class="ttname"><a href="database_8h.html#aad0e803eda7a440a6063a447cfeca0cd">sqlGetConf</a></div><div class="ttdeci">uint64_t sqlGetConf(config_key_t id)</div><div class="ttdoc">Reads a configuration key from the database. </div><div class="ttdef"><b>Definition:</b> database.cpp:163</div></div>
+<div class="ttc" id="database_8h_html_a99cc529fd785c752cd4b73ea7989521d"><div class="ttname"><a href="database_8h.html#a99cc529fd785c752cd4b73ea7989521d">int8to64bit</a></div><div class="ttdeci">sqlite_int64 int8to64bit(uint8_t *guid)</div><div class="ttdef"><b>Definition:</b> database.cpp:250</div></div>
+<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e">CFGbrewcounter</a></div><div class="ttdef"><b>Definition:</b> database.h:22</div></div>
+<div class="ttc" id="database_8h_html_ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968"><div class="ttname"><a href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968">CFGHeatingTime</a></div><div class="ttdef"><b>Definition:</b> database.h:23</div></div>
+<div class="ttc" id="database_8h_html_a28dbbb9e24e2035535645629105aea46"><div class="ttname"><a href="database_8h.html#a28dbbb9e24e2035535645629105aea46">int64to8bit</a></div><div class="ttdeci">uint8_t * int64to8bit(sqlite_int64 guid)</div><div class="ttdoc">Converts the GUID from int64 to int8 array. </div><div class="ttdef"><b>Definition:</b> database.cpp:241</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 503 - 0
CoffeeCode/html/display_8cpp.html

@@ -0,0 +1,503 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: display.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a>  </div>
+  <div class="headertitle">
+<div class="title">display.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdlib.h&gt;</code><br />
+<code>#include &lt;pthread.h&gt;</code><br />
+<code>#include &lt;time.h&gt;</code><br />
+<code>#include &lt;unistd.h&gt;</code><br />
+<code>#include &lt;string.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="global_8h_source.html">global.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="display_8h_source.html">display.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="logger_8h_source.html">logger.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="database_8h_source.html">database.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="timer_8h_source.html">timer.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="lcd_8h_source.html">lcd.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="coffee_8h_source.html">coffee.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="hal_8h_source.html">hal.h</a>&quot;</code><br />
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aad3b4a291f0ad570bb1035a133ec46aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#aad3b4a291f0ad570bb1035a133ec46aa">displayPrintTime</a> (int line)</td></tr>
+<tr class="memdesc:aad3b4a291f0ad570bb1035a133ec46aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prints out the current time in a centered position.  <a href="#aad3b4a291f0ad570bb1035a133ec46aa">More...</a><br /></td></tr>
+<tr class="separator:aad3b4a291f0ad570bb1035a133ec46aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae552c34299838e4f57e3516553ed566f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#ae552c34299838e4f57e3516553ed566f">displayPrintFlow</a> (int line)</td></tr>
+<tr class="memdesc:ae552c34299838e4f57e3516553ed566f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prints out the total volume flow.  <a href="#ae552c34299838e4f57e3516553ed566f">More...</a><br /></td></tr>
+<tr class="separator:ae552c34299838e4f57e3516553ed566f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e4f853ea431989d2adc2aeb7a8e46b5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#a2e4f853ea431989d2adc2aeb7a8e46b5">displayPrintLn</a> (int line, const char *str, bool centered)</td></tr>
+<tr class="memdesc:a2e4f853ea431989d2adc2aeb7a8e46b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prints a string to a specific line, optionally centered.  <a href="#a2e4f853ea431989d2adc2aeb7a8e46b5">More...</a><br /></td></tr>
+<tr class="separator:a2e4f853ea431989d2adc2aeb7a8e46b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2db422e214d76776b8a375787d1384c"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#ab2db422e214d76776b8a375787d1384c">displayThread</a> (void *threadid)</td></tr>
+<tr class="memdesc:ab2db422e214d76776b8a375787d1384c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main thread to handle display data.  <a href="#ab2db422e214d76776b8a375787d1384c">More...</a><br /></td></tr>
+<tr class="separator:ab2db422e214d76776b8a375787d1384c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5eb6b80aca0f751332c47c410d06a2a"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#ab5eb6b80aca0f751332c47c410d06a2a">displayTimerHandler</a> (void *threadid)</td></tr>
+<tr class="memdesc:ab5eb6b80aca0f751332c47c410d06a2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Timer handler for display update.  <a href="#ab5eb6b80aca0f751332c47c410d06a2a">More...</a><br /></td></tr>
+<tr class="separator:ab5eb6b80aca0f751332c47c410d06a2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c548751802c5960b3092be28cc56d9f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#a8c548751802c5960b3092be28cc56d9f">displayInit</a> (void)</td></tr>
+<tr class="memdesc:a8c548751802c5960b3092be28cc56d9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes display.  <a href="#a8c548751802c5960b3092be28cc56d9f">More...</a><br /></td></tr>
+<tr class="separator:a8c548751802c5960b3092be28cc56d9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfd367c63541be192cdc63d6e8b38a79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#abfd367c63541be192cdc63d6e8b38a79">displayTerminate</a> (void)</td></tr>
+<tr class="memdesc:abfd367c63541be192cdc63d6e8b38a79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handles cleanup before program termination.  <a href="#abfd367c63541be192cdc63d6e8b38a79">More...</a><br /></td></tr>
+<tr class="separator:abfd367c63541be192cdc63d6e8b38a79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b10d2d49414256ef745f7e910748fee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#a9b10d2d49414256ef745f7e910748fee">displaySetLang</a> (<a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a> lang)</td></tr>
+<tr class="memdesc:a9b10d2d49414256ef745f7e910748fee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the language of the display text.  <a href="#a9b10d2d49414256ef745f7e910748fee">More...</a><br /></td></tr>
+<tr class="separator:a9b10d2d49414256ef745f7e910748fee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac750de2337343c08e5fd88d08316adb2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#ac750de2337343c08e5fd88d08316adb2">displayRefresh</a> (void)</td></tr>
+<tr class="memdesc:ac750de2337343c08e5fd88d08316adb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Refreshed the display content and outputs it.  <a href="#ac750de2337343c08e5fd88d08316adb2">More...</a><br /></td></tr>
+<tr class="separator:ac750de2337343c08e5fd88d08316adb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2661cdbd686f7d3389a3d9c2cf98f47"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#ab2661cdbd686f7d3389a3d9c2cf98f47">displayGetString</a> (<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a> string)</td></tr>
+<tr class="memdesc:ab2661cdbd686f7d3389a3d9c2cf98f47"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the matching translation of a string.  <a href="#ab2661cdbd686f7d3389a3d9c2cf98f47">More...</a><br /></td></tr>
+<tr class="separator:ab2661cdbd686f7d3389a3d9c2cf98f47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf85c9537e38ffe3f1ee356a4638880e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#adf85c9537e38ffe3f1ee356a4638880e">displayPushState</a> (int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
+<tr class="memdesc:adf85c9537e38ffe3f1ee356a4638880e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates the display state to the matching coffee state.  <a href="#adf85c9537e38ffe3f1ee356a4638880e">More...</a><br /></td></tr>
+<tr class="separator:adf85c9537e38ffe3f1ee356a4638880e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ae110c5cc57190b02aaa0d543a80cdc20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#ae110c5cc57190b02aaa0d543a80cdc20">displayLang</a></td></tr>
+<tr class="separator:ae110c5cc57190b02aaa0d543a80cdc20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afebf5c16da7043af9cbd74ef9f489ea7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classtimer.html">timer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#afebf5c16da7043af9cbd74ef9f489ea7">displayTimer</a> (<a class="el" href="display_8h.html#ab5eb6b80aca0f751332c47c410d06a2a">displayTimerHandler</a>)</td></tr>
+<tr class="separator:afebf5c16da7043af9cbd74ef9f489ea7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d1129916cfa4cbd7489638ce470c3a4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#a9d1129916cfa4cbd7489638ce470c3a4">lcd</a> = 0</td></tr>
+<tr class="separator:a9d1129916cfa4cbd7489638ce470c3a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf977b563dc485f1d1c4e601a9b31b68"><td class="memItemLeft" align="right" valign="top">volatile int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#adf977b563dc485f1d1c4e601a9b31b68">timerScaler</a> = 0</td></tr>
+<tr class="separator:adf977b563dc485f1d1c4e601a9b31b68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01cd2b69770b3c4cd7adc6e27d48c28a"><td class="memItemLeft" align="right" valign="top">volatile int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#a01cd2b69770b3c4cd7adc6e27d48c28a">elapsedCnt</a> = 0</td></tr>
+<tr class="separator:a01cd2b69770b3c4cd7adc6e27d48c28a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f3437c133bc4d1be650cbbc5128f1a8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8cpp.html#a8f3437c133bc4d1be650cbbc5128f1a8">coffeeState</a> = <a class="el" href="coffee_8h.html#a0cc0d45e13bc83065d45df9d3d1dc887">STATE_OFF</a></td></tr>
+<tr class="separator:a8f3437c133bc4d1be650cbbc5128f1a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ab2661cdbd686f7d3389a3d9c2cf98f47"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* displayGetString </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a>&#160;</td>
+          <td class="paramname"><em>string</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Returns the matching translation of a string. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">string</td><td>Requested string </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Translated string </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8c548751802c5960b3092be28cc56d9f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayInit </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Initializes display. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae552c34299838e4f57e3516553ed566f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayPrintFlow </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Prints out the total volume flow. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">line</td><td>Target line in display </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a2e4f853ea431989d2adc2aeb7a8e46b5"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayPrintLn </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>str</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>centered</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Prints a string to a specific line, optionally centered. </p>
+<p>This function also fills out the remaining row of the display with spaces, to ensure there is no old data left. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">line</td><td>Target line in display </td></tr>
+    <tr><td class="paramname">*str</td><td>String to print </td></tr>
+    <tr><td class="paramname">centered</td><td>Print centered or not </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="aad3b4a291f0ad570bb1035a133ec46aa"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayPrintTime </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Prints out the current time in a centered position. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">line</td><td>Target line in display </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="adf85c9537e38ffe3f1ee356a4638880e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayPushState </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Updates the display state to the matching coffee state. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">state</td><td>New state </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ac750de2337343c08e5fd88d08316adb2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayRefresh </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Refreshed the display content and outputs it. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9b10d2d49414256ef745f7e910748fee"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displaySetLang </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a>&#160;</td>
+          <td class="paramname"><em>lang</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Sets the language of the display text. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">lang</td><td>New language </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="abfd367c63541be192cdc63d6e8b38a79"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayTerminate </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Handles cleanup before program termination. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab2db422e214d76776b8a375787d1384c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void* displayThread </td>
+          <td>(</td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>threadid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Main thread to handle display data. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">*threadid</td><td>Thread ID </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ab5eb6b80aca0f751332c47c410d06a2a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void* displayTimerHandler </td>
+          <td>(</td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>threadid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Timer handler for display update. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">*threadid</td><td>Thread ID </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a8f3437c133bc4d1be650cbbc5128f1a8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int coffeeState = <a class="el" href="coffee_8h.html#a0cc0d45e13bc83065d45df9d3d1dc887">STATE_OFF</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae110c5cc57190b02aaa0d543a80cdc20"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a> displayLang</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afebf5c16da7043af9cbd74ef9f489ea7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classtimer.html">timer</a> displayTimer(<a class="el" href="display_8h.html#ab5eb6b80aca0f751332c47c410d06a2a">displayTimerHandler</a>)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a01cd2b69770b3c4cd7adc6e27d48c28a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">volatile int elapsedCnt = 0</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9d1129916cfa4cbd7489638ce470c3a4"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int lcd = 0</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf977b563dc485f1d1c4e601a9b31b68"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">volatile int timerScaler = 0</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 455 - 0
CoffeeCode/html/display_8h.html

@@ -0,0 +1,455 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: display.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">display.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;string&gt;</code><br />
+</div>
+<p><a href="display_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdisplay__string__t.html">display_string_t</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aa0b13de112401f9608d402bfc5a14d0d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#aa0b13de112401f9608d402bfc5a14d0d">DEFAULT_LANG</a>&#160;&#160;&#160;<a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30">lang_de</a></td></tr>
+<tr class="memdesc:aa0b13de112401f9608d402bfc5a14d0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default display language.  <a href="#aa0b13de112401f9608d402bfc5a14d0d">More...</a><br /></td></tr>
+<tr class="separator:aa0b13de112401f9608d402bfc5a14d0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc2b684fcc127e93aee54a3a45e25a7c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#abc2b684fcc127e93aee54a3a45e25a7c">REFRESH_RATE</a>&#160;&#160;&#160;10</td></tr>
+<tr class="memdesc:abc2b684fcc127e93aee54a3a45e25a7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Display refresh rate in Hz.  <a href="#abc2b684fcc127e93aee54a3a45e25a7c">More...</a><br /></td></tr>
+<tr class="separator:abc2b684fcc127e93aee54a3a45e25a7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abdc19d7f30976562c2d3efce365ef8f4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#abdc19d7f30976562c2d3efce365ef8f4">DISPLAY_ROWS</a>&#160;&#160;&#160;2</td></tr>
+<tr class="separator:abdc19d7f30976562c2d3efce365ef8f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad01ecf7f4d29cece64f84d890e414570"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#ad01ecf7f4d29cece64f84d890e414570">DISPLAY_COLS</a>&#160;&#160;&#160;16</td></tr>
+<tr class="separator:ad01ecf7f4d29cece64f84d890e414570"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a681b0c0e7b9408f4c70f8e76da34d080"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a> { <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30">lang_de</a>, 
+<a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b">lang_en</a>, 
+<a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644">lang_last</a>
+ }<tr class="separator:a681b0c0e7b9408f4c70f8e76da34d080"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</td></tr>
+<tr class="memitem:a4984755f821d9f0c49acdcac62f4c907"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a> { <br />
+&#160;&#160;<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624">str_heating</a>, 
+<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0">str_heatingready</a>, 
+<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171">str_ready</a>, 
+<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272">str_brewing</a>, 
+<br />
+&#160;&#160;<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c">str_cleaning</a>, 
+<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890">str_error</a>, 
+<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572">str_flow</a>, 
+<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb">str_bye</a>, 
+<br />
+&#160;&#160;<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9">str_last</a>
+<br />
+ }<tr class="separator:a4984755f821d9f0c49acdcac62f4c907"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab2db422e214d76776b8a375787d1384c"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#ab2db422e214d76776b8a375787d1384c">displayThread</a> (void *threadid)</td></tr>
+<tr class="memdesc:ab2db422e214d76776b8a375787d1384c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main thread to handle display data.  <a href="#ab2db422e214d76776b8a375787d1384c">More...</a><br /></td></tr>
+<tr class="separator:ab2db422e214d76776b8a375787d1384c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5eb6b80aca0f751332c47c410d06a2a"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#ab5eb6b80aca0f751332c47c410d06a2a">displayTimerHandler</a> (void *threadid)</td></tr>
+<tr class="memdesc:ab5eb6b80aca0f751332c47c410d06a2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Timer handler for display update.  <a href="#ab5eb6b80aca0f751332c47c410d06a2a">More...</a><br /></td></tr>
+<tr class="separator:ab5eb6b80aca0f751332c47c410d06a2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c548751802c5960b3092be28cc56d9f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#a8c548751802c5960b3092be28cc56d9f">displayInit</a> (void)</td></tr>
+<tr class="memdesc:a8c548751802c5960b3092be28cc56d9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes display.  <a href="#a8c548751802c5960b3092be28cc56d9f">More...</a><br /></td></tr>
+<tr class="separator:a8c548751802c5960b3092be28cc56d9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfd367c63541be192cdc63d6e8b38a79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#abfd367c63541be192cdc63d6e8b38a79">displayTerminate</a> (void)</td></tr>
+<tr class="memdesc:abfd367c63541be192cdc63d6e8b38a79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handles cleanup before program termination.  <a href="#abfd367c63541be192cdc63d6e8b38a79">More...</a><br /></td></tr>
+<tr class="separator:abfd367c63541be192cdc63d6e8b38a79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b10d2d49414256ef745f7e910748fee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#a9b10d2d49414256ef745f7e910748fee">displaySetLang</a> (<a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a> lang)</td></tr>
+<tr class="memdesc:a9b10d2d49414256ef745f7e910748fee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the language of the display text.  <a href="#a9b10d2d49414256ef745f7e910748fee">More...</a><br /></td></tr>
+<tr class="separator:a9b10d2d49414256ef745f7e910748fee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf85c9537e38ffe3f1ee356a4638880e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#adf85c9537e38ffe3f1ee356a4638880e">displayPushState</a> (int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
+<tr class="memdesc:adf85c9537e38ffe3f1ee356a4638880e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates the display state to the matching coffee state.  <a href="#adf85c9537e38ffe3f1ee356a4638880e">More...</a><br /></td></tr>
+<tr class="separator:adf85c9537e38ffe3f1ee356a4638880e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac750de2337343c08e5fd88d08316adb2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#ac750de2337343c08e5fd88d08316adb2">displayRefresh</a> (void)</td></tr>
+<tr class="memdesc:ac750de2337343c08e5fd88d08316adb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Refreshed the display content and outputs it.  <a href="#ac750de2337343c08e5fd88d08316adb2">More...</a><br /></td></tr>
+<tr class="separator:ac750de2337343c08e5fd88d08316adb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2661cdbd686f7d3389a3d9c2cf98f47"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="display_8h.html#ab2661cdbd686f7d3389a3d9c2cf98f47">displayGetString</a> (<a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a> string)</td></tr>
+<tr class="memdesc:ab2661cdbd686f7d3389a3d9c2cf98f47"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the matching translation of a string.  <a href="#ab2661cdbd686f7d3389a3d9c2cf98f47">More...</a><br /></td></tr>
+<tr class="separator:ab2661cdbd686f7d3389a3d9c2cf98f47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aa0b13de112401f9608d402bfc5a14d0d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define DEFAULT_LANG&#160;&#160;&#160;<a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30">lang_de</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Default display language. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad01ecf7f4d29cece64f84d890e414570"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define DISPLAY_COLS&#160;&#160;&#160;16</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abdc19d7f30976562c2d3efce365ef8f4"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define DISPLAY_ROWS&#160;&#160;&#160;2</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc2b684fcc127e93aee54a3a45e25a7c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define REFRESH_RATE&#160;&#160;&#160;10</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Display refresh rate in Hz. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a681b0c0e7b9408f4c70f8e76da34d080"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30"></a>lang_de&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b"></a>lang_en&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644"></a>lang_last&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624"></a>str_heating&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0"></a>str_heatingready&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171"></a>str_ready&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272"></a>str_brewing&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c"></a>str_cleaning&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890"></a>str_error&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572"></a>str_flow&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb"></a>str_bye&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9"></a>str_last&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ab2661cdbd686f7d3389a3d9c2cf98f47"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* displayGetString </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a>&#160;</td>
+          <td class="paramname"><em>string</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Returns the matching translation of a string. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">string</td><td>Requested string </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Translated string </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8c548751802c5960b3092be28cc56d9f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayInit </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Initializes display. </p>
+
+</div>
+</div>
+<a class="anchor" id="adf85c9537e38ffe3f1ee356a4638880e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayPushState </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>state</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Updates the display state to the matching coffee state. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">state</td><td>New state </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ac750de2337343c08e5fd88d08316adb2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayRefresh </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Refreshed the display content and outputs it. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9b10d2d49414256ef745f7e910748fee"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displaySetLang </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a>&#160;</td>
+          <td class="paramname"><em>lang</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Sets the language of the display text. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">lang</td><td>New language </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="abfd367c63541be192cdc63d6e8b38a79"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void displayTerminate </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Handles cleanup before program termination. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab2db422e214d76776b8a375787d1384c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void* displayThread </td>
+          <td>(</td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>threadid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Main thread to handle display data. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">*threadid</td><td>Thread ID </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ab5eb6b80aca0f751332c47c410d06a2a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void* displayTimerHandler </td>
+          <td>(</td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>threadid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Timer handler for display update. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">*threadid</td><td>Thread ID </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 223 - 0
CoffeeCode/html/display_8h_source.html

@@ -0,0 +1,223 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: display.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle">
+<div class="title">display.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="display_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * display.h</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> *  Created on: Sep 26, 2017</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> *      Author: Philipp Hinz</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#ifndef DISPLAY_H_</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#define DISPLAY_H_</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">   12</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30">   13</a></span>&#160;    <a class="code" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30">lang_de</a>,</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b">   14</a></span>&#160;    <a class="code" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b">lang_en</a>,</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644">   15</a></span>&#160;    <a class="code" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644">lang_last</a></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;} <a class="code" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">   18</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624">   19</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624">str_heating</a>,</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0">   20</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0">str_heatingready</a>,</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171">   21</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171">str_ready</a>,</div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272">   22</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272">str_brewing</a>,</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c">   23</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c">str_cleaning</a>,</div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890">   24</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890">str_error</a>,</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572">   25</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572">str_flow</a>,</div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb">   26</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb">str_bye</a>,</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9">   27</a></span>&#160;    <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9">str_last</a></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;} <a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a>;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="structdisplay__string__t.html">   30</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="structdisplay__string__t.html#ab9601397e04cf6055529648402146924">   31</a></span>&#160;    <span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> text[<a class="code" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644">lang_last</a>];</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;} <a class="code" href="structdisplay__string__t.html">display_string_t</a>;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="structdisplay__string__t.html">display_string_t</a> display_strings[<a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9">str_last</a>] =</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;{</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        { <span class="comment">// heating</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                {</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                        <span class="stringliteral">&quot;Heizt auf&quot;</span>,</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                        <span class="stringliteral">&quot;Heating&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                }</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        },</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        { <span class="comment">// heatingready</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                {</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        <span class="stringliteral">&quot;Bereit (Heizt)&quot;</span>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                        <span class="stringliteral">&quot;Ready (Heating)&quot;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                }</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        },</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        { <span class="comment">// ready</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                {</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                        <span class="stringliteral">&quot;Bereit&quot;</span>,</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                        <span class="stringliteral">&quot;Ready&quot;</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                }</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        },</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        { <span class="comment">// brewing</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                {</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                        <span class="stringliteral">&quot;Bezug..&quot;</span>,</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        <span class="stringliteral">&quot;Brewing..&quot;</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                }</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        },</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        { <span class="comment">// cleaning</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                {</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                        <span class="stringliteral">&quot;Reinigt..&quot;</span>,</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                        <span class="stringliteral">&quot;Cleaning..&quot;</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                }</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        },</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        { <span class="comment">// error</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                {</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                        <span class="stringliteral">&quot;Fehler&quot;</span>,</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                        <span class="stringliteral">&quot;Error&quot;</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                }</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        },</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        { <span class="comment">// flow</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                {</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                        <span class="stringliteral">&quot;Menge&quot;</span>,</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                        <span class="stringliteral">&quot;Flow&quot;</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                }</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        },</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        { <span class="comment">// bye</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                {</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                        <span class="stringliteral">&quot;Auf wiedersehen&quot;</span>,</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                        <span class="stringliteral">&quot;Good bye&quot;</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                }</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        }</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;};</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="display_8h.html#aa0b13de112401f9608d402bfc5a14d0d">   86</a></span>&#160;<span class="preprocessor">#define DEFAULT_LANG    lang_de </span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="display_8h.html#abc2b684fcc127e93aee54a3a45e25a7c">   87</a></span>&#160;<span class="preprocessor">#define REFRESH_RATE    10 </span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="display_8h.html#abdc19d7f30976562c2d3efce365ef8f4">   88</a></span>&#160;<span class="preprocessor">#define DISPLAY_ROWS    2</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="display_8h.html#ad01ecf7f4d29cece64f84d890e414570">   89</a></span>&#160;<span class="preprocessor">#define DISPLAY_COLS    16</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="display_8h.html#ab2db422e214d76776b8a375787d1384c">displayThread</a>(<span class="keywordtype">void</span> *threadid);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="display_8h.html#ab5eb6b80aca0f751332c47c410d06a2a">displayTimerHandler</a>(<span class="keywordtype">void</span> *threadid);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="keywordtype">void</span> <a class="code" href="display_8h.html#a8c548751802c5960b3092be28cc56d9f">displayInit</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="keywordtype">void</span> <a class="code" href="display_8h.html#abfd367c63541be192cdc63d6e8b38a79">displayTerminate</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="keywordtype">void</span> <a class="code" href="display_8h.html#a9b10d2d49414256ef745f7e910748fee">displaySetLang</a>(<a class="code" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a> lang);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="keywordtype">void</span> <a class="code" href="display_8h.html#adf85c9537e38ffe3f1ee356a4638880e">displayPushState</a>(<span class="keywordtype">int</span> <a class="code" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="keywordtype">void</span> <a class="code" href="display_8h.html#ac750de2337343c08e5fd88d08316adb2">displayRefresh</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="display_8h.html#ab2661cdbd686f7d3389a3d9c2cf98f47">displayGetString</a>(<a class="code" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a> <span class="keywordtype">string</span>);</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* DISPLAY_H_ */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="display_8h_html_ac750de2337343c08e5fd88d08316adb2"><div class="ttname"><a href="display_8h.html#ac750de2337343c08e5fd88d08316adb2">displayRefresh</a></div><div class="ttdeci">void displayRefresh(void)</div><div class="ttdoc">Refreshed the display content and outputs it. </div><div class="ttdef"><b>Definition:</b> display.cpp:198</div></div>
+<div class="ttc" id="structdisplay__string__t_html"><div class="ttname"><a href="structdisplay__string__t.html">display_string_t</a></div><div class="ttdef"><b>Definition:</b> display.h:30</div></div>
+<div class="ttc" id="display_8h_html_ab2db422e214d76776b8a375787d1384c"><div class="ttname"><a href="display_8h.html#ab2db422e214d76776b8a375787d1384c">displayThread</a></div><div class="ttdeci">void * displayThread(void *threadid)</div><div class="ttdoc">Main thread to handle display data. </div><div class="ttdef"><b>Definition:</b> display.cpp:103</div></div>
+<div class="ttc" id="display_8h_html_a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b"><div class="ttname"><a href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b">lang_en</a></div><div class="ttdef"><b>Definition:</b> display.h:14</div></div>
+<div class="ttc" id="display_8h_html_adf85c9537e38ffe3f1ee356a4638880e"><div class="ttname"><a href="display_8h.html#adf85c9537e38ffe3f1ee356a4638880e">displayPushState</a></div><div class="ttdeci">void displayPushState(int state)</div><div class="ttdoc">Updates the display state to the matching coffee state. </div><div class="ttdef"><b>Definition:</b> display.cpp:263</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572">str_flow</a></div><div class="ttdef"><b>Definition:</b> display.h:25</div></div>
+<div class="ttc" id="display_8h_html_a681b0c0e7b9408f4c70f8e76da34d080"><div class="ttname"><a href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display_lang_t</a></div><div class="ttdeci">display_lang_t</div><div class="ttdef"><b>Definition:</b> display.h:12</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb">str_bye</a></div><div class="ttdef"><b>Definition:</b> display.h:26</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272">str_brewing</a></div><div class="ttdef"><b>Definition:</b> display.h:22</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display_strings_t</a></div><div class="ttdeci">display_strings_t</div><div class="ttdef"><b>Definition:</b> display.h:18</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c">str_cleaning</a></div><div class="ttdef"><b>Definition:</b> display.h:23</div></div>
+<div class="ttc" id="display_8h_html_a8c548751802c5960b3092be28cc56d9f"><div class="ttname"><a href="display_8h.html#a8c548751802c5960b3092be28cc56d9f">displayInit</a></div><div class="ttdeci">void displayInit(void)</div><div class="ttdoc">Initializes display. </div><div class="ttdef"><b>Definition:</b> display.cpp:159</div></div>
+<div class="ttc" id="display_8h_html_a9b10d2d49414256ef745f7e910748fee"><div class="ttname"><a href="display_8h.html#a9b10d2d49414256ef745f7e910748fee">displaySetLang</a></div><div class="ttdeci">void displaySetLang(display_lang_t lang)</div><div class="ttdoc">Sets the language of the display text. </div><div class="ttdef"><b>Definition:</b> display.cpp:190</div></div>
+<div class="ttc" id="display_8h_html_ab5eb6b80aca0f751332c47c410d06a2a"><div class="ttname"><a href="display_8h.html#ab5eb6b80aca0f751332c47c410d06a2a">displayTimerHandler</a></div><div class="ttdeci">void * displayTimerHandler(void *threadid)</div><div class="ttdoc">Timer handler for display update. </div><div class="ttdef"><b>Definition:</b> display.cpp:125</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171">str_ready</a></div><div class="ttdef"><b>Definition:</b> display.h:21</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9">str_last</a></div><div class="ttdef"><b>Definition:</b> display.h:27</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0">str_heatingready</a></div><div class="ttdef"><b>Definition:</b> display.h:20</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624">str_heating</a></div><div class="ttdef"><b>Definition:</b> display.h:19</div></div>
+<div class="ttc" id="display_8h_html_ab2661cdbd686f7d3389a3d9c2cf98f47"><div class="ttname"><a href="display_8h.html#ab2661cdbd686f7d3389a3d9c2cf98f47">displayGetString</a></div><div class="ttdeci">const char * displayGetString(display_strings_t string)</div><div class="ttdoc">Returns the matching translation of a string. </div><div class="ttdef"><b>Definition:</b> display.cpp:252</div></div>
+<div class="ttc" id="display_8h_html_a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890"><div class="ttname"><a href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890">str_error</a></div><div class="ttdef"><b>Definition:</b> display.h:24</div></div>
+<div class="ttc" id="display_8h_html_abfd367c63541be192cdc63d6e8b38a79"><div class="ttname"><a href="display_8h.html#abfd367c63541be192cdc63d6e8b38a79">displayTerminate</a></div><div class="ttdeci">void displayTerminate(void)</div><div class="ttdoc">Handles cleanup before program termination. </div><div class="ttdef"><b>Definition:</b> display.cpp:180</div></div>
+<div class="ttc" id="display_8h_html_a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30"><div class="ttname"><a href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30">lang_de</a></div><div class="ttdef"><b>Definition:</b> display.h:13</div></div>
+<div class="ttc" id="display_8h_html_a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644"><div class="ttname"><a href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644">lang_last</a></div><div class="ttdef"><b>Definition:</b> display.h:15</div></div>
+<div class="ttc" id="coffee_8cpp_html_a89f234133d3efe315836311cbf21c64b"><div class="ttname"><a href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a></div><div class="ttdeci">int state</div><div class="ttdef"><b>Definition:</b> coffee.cpp:27</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 22 - 18
CoffeeCode/html/files.html

@@ -87,24 +87,28 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="contents">
 <div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
 <table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="crc_8cpp.html" target="_self">crc.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="crc_8h_source.html"><span class="icondoc"></span></a><a class="el" href="crc_8h.html" target="_self">crc.h</a></td><td class="desc"></td></tr>
-<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="database_8cpp.html" target="_self">database.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="database_8h_source.html"><span class="icondoc"></span></a><a class="el" href="database_8h.html" target="_self">database.h</a></td><td class="desc"></td></tr>
-<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="global_8h_source.html"><span class="icondoc"></span></a><a class="el" href="global_8h.html" target="_self">global.h</a></td><td class="desc"></td></tr>
-<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="hal_8cpp.html" target="_self">hal.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="hal_8h_source.html"><span class="icondoc"></span></a><a class="el" href="hal_8h.html" target="_self">hal.h</a></td><td class="desc"></td></tr>
-<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="lcd_8cpp.html" target="_self">lcd.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="lcd_8h_source.html"><span class="icondoc"></span></a><a class="el" href="lcd_8h.html" target="_self">lcd.h</a></td><td class="desc"></td></tr>
-<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="logger_8cpp.html" target="_self">logger.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="logger_8h_source.html"><span class="icondoc"></span></a><a class="el" href="logger_8h.html" target="_self">logger.h</a></td><td class="desc"></td></tr>
-<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="main_8cpp.html" target="_self">main.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="spi_8cpp.html" target="_self">spi.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="spi_8h_source.html"><span class="icondoc"></span></a><a class="el" href="spi_8h.html" target="_self">spi.h</a></td><td class="desc"></td></tr>
-<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="stripe_8cpp.html" target="_self">stripe.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="stripe_8h_source.html"><span class="icondoc"></span></a><a class="el" href="stripe_8h.html" target="_self">stripe.h</a></td><td class="desc"></td></tr>
-<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="timer_8cpp.html" target="_self">timer.cpp</a></td><td class="desc"></td></tr>
-<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="timer_8h_source.html"><span class="icondoc"></span></a><a class="el" href="timer_8h.html" target="_self">timer.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="coffee_8cpp.html" target="_self">coffee.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="coffee_8h_source.html"><span class="icondoc"></span></a><a class="el" href="coffee_8h.html" target="_self">coffee.h</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="crc_8cpp.html" target="_self">crc.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="crc_8h_source.html"><span class="icondoc"></span></a><a class="el" href="crc_8h.html" target="_self">crc.h</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="database_8cpp.html" target="_self">database.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="database_8h_source.html"><span class="icondoc"></span></a><a class="el" href="database_8h.html" target="_self">database.h</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="display_8cpp.html" target="_self">display.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="display_8h_source.html"><span class="icondoc"></span></a><a class="el" href="display_8h.html" target="_self">display.h</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="global_8h_source.html"><span class="icondoc"></span></a><a class="el" href="global_8h.html" target="_self">global.h</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="hal_8cpp.html" target="_self">hal.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="hal_8h_source.html"><span class="icondoc"></span></a><a class="el" href="hal_8h.html" target="_self">hal.h</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="lcd_8cpp.html" target="_self">lcd.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="lcd_8h_source.html"><span class="icondoc"></span></a><a class="el" href="lcd_8h.html" target="_self">lcd.h</a></td><td class="desc"></td></tr>
+<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="logger_8cpp.html" target="_self">logger.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="logger_8h_source.html"><span class="icondoc"></span></a><a class="el" href="logger_8h.html" target="_self">logger.h</a></td><td class="desc"></td></tr>
+<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="main_8cpp.html" target="_self">main.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="spi_8cpp.html" target="_self">spi.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="spi_8h_source.html"><span class="icondoc"></span></a><a class="el" href="spi_8h.html" target="_self">spi.h</a></td><td class="desc"></td></tr>
+<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="stripe_8cpp.html" target="_self">stripe.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_19_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="stripe_8h_source.html"><span class="icondoc"></span></a><a class="el" href="stripe_8h.html" target="_self">stripe.h</a></td><td class="desc"></td></tr>
+<tr id="row_20_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="timer_8cpp.html" target="_self">timer.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="timer_8h_source.html"><span class="icondoc"></span></a><a class="el" href="timer_8h.html" target="_self">timer.h</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->

+ 3 - 0
CoffeeCode/html/functions.html

@@ -120,6 +120,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>stop()
 : <a class="el" href="classtimer.html#a3218d61649e284071544b17c8c915ecc">timer</a>
 </li>
+<li>text
+: <a class="el" href="structdisplay__string__t.html#ab9601397e04cf6055529648402146924">display_string_t</a>
+</li>
 <li>timer()
 : <a class="el" href="classtimer.html#a863dd9a194499a5ebbaf6937969916f2">timer</a>
 </li>

+ 3 - 0
CoffeeCode/html/functions_vars.html

@@ -102,6 +102,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>red
 : <a class="el" href="structstripe__color.html#a784aa14cb8856664e9533883d8add33b">stripe_color</a>
 </li>
+<li>text
+: <a class="el" href="structdisplay__string__t.html#ab9601397e04cf6055529648402146924">display_string_t</a>
+</li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->

+ 8 - 8
CoffeeCode/html/global_8h.html

@@ -101,7 +101,7 @@ Macros</h2></td></tr>
 <tr class="separator:a0056b7fdd0f81fad9cd38e9fd389a4b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a91dee3a4ce745234c8a4998388d6c645"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#a91dee3a4ce745234c8a4998388d6c645">TIMER_DELAY_US</a>&#160;&#160;&#160;50000</td></tr>
 <tr class="separator:a91dee3a4ce745234c8a4998388d6c645"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad55c274bf698014e01dbc9afde3fc610"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#ad55c274bf698014e01dbc9afde3fc610">SQL_DATABASE</a>&#160;&#160;&#160;&quot;nodes.sqlite&quot;</td></tr>
+<tr class="memitem:ad55c274bf698014e01dbc9afde3fc610"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#ad55c274bf698014e01dbc9afde3fc610">SQL_DATABASE</a>&#160;&#160;&#160;&quot;coffee.sqlite&quot;</td></tr>
 <tr class="separator:ad55c274bf698014e01dbc9afde3fc610"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a67a7c5f1e4a75f1508395d450895990d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#a67a7c5f1e4a75f1508395d450895990d">THREAD_MAIN</a>&#160;&#160;&#160;0</td></tr>
 <tr class="separator:a67a7c5f1e4a75f1508395d450895990d"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -126,10 +126,10 @@ Variables</h2></td></tr>
 <tr class="separator:ae88c926fe2a10f736eb01b1d1e899a1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a7bfeade3d2f19e8baecdcddd7f9162fa"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">optPower</a></td></tr>
 <tr class="separator:a7bfeade3d2f19e8baecdcddd7f9162fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a24ab7c0142e353c9ce9ca1ee1210bb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#a2a24ab7c0142e353c9ce9ca1ee1210bb">optCold</a></td></tr>
+<tr class="separator:a2a24ab7c0142e353c9ce9ca1ee1210bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a4acff8232e4aec9cd5c6dc200ac55ef3"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#a4acff8232e4aec9cd5c6dc200ac55ef3">mutex</a></td></tr>
 <tr class="separator:a4acff8232e4aec9cd5c6dc200ac55ef3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9d1129916cfa4cbd7489638ce470c3a4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#a9d1129916cfa4cbd7489638ce470c3a4">lcd</a></td></tr>
-<tr class="separator:a9d1129916cfa4cbd7489638ce470c3a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a5e61240888e929e526f41e19b6c0bd46"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="global_8h.html#a5e61240888e929e526f41e19b6c0bd46">thread</a> []</td></tr>
 <tr class="separator:a5e61240888e929e526f41e19b6c0bd46"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
@@ -163,7 +163,7 @@ Variables</h2></td></tr>
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define SQL_DATABASE&#160;&#160;&#160;&quot;nodes.sqlite&quot;</td>
+          <td class="memname">#define SQL_DATABASE&#160;&#160;&#160;&quot;coffee.sqlite&quot;</td>
         </tr>
       </table>
 </div><div class="memdoc">
@@ -267,24 +267,24 @@ Variables</h2></td></tr>
 </div>
 </div>
 <h2 class="groupheader">Variable Documentation</h2>
-<a class="anchor" id="a9d1129916cfa4cbd7489638ce470c3a4"></a>
+<a class="anchor" id="a4acff8232e4aec9cd5c6dc200ac55ef3"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">int lcd</td>
+          <td class="memname">pthread_mutex_t mutex</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a4acff8232e4aec9cd5c6dc200ac55ef3"></a>
+<a class="anchor" id="a2a24ab7c0142e353c9ce9ca1ee1210bb"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">pthread_mutex_t mutex</td>
+          <td class="memname">bool optCold</td>
         </tr>
       </table>
 </div><div class="memdoc">

+ 20 - 21
CoffeeCode/html/global_8h_source.html

@@ -104,34 +104,33 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="global_8h.html#a91dee3a4ce745234c8a4998388d6c645">   17</a></span>&#160;<span class="preprocessor">#define TIMER_DELAY_US  50000   // Basic timer delay in us</span></div>
 <div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">// SQL config</span></div>
 <div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="global_8h.html#ad55c274bf698014e01dbc9afde3fc610">   20</a></span>&#160;<span class="preprocessor">#define SQL_DATABASE    &quot;nodes.sqlite&quot;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="global_8h.html#ad55c274bf698014e01dbc9afde3fc610">   20</a></span>&#160;<span class="preprocessor">#define SQL_DATABASE    &quot;coffee.sqlite&quot;</span></div>
 <div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
 <div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">// Global variables</span></div>
 <div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
 <div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="global_8h.html#a0b2caeb4b6f130be43e5a2f0267dd453">verbose</a>;</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">bool</span> <a class="code" href="global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c">optDate</a>, <a class="code" href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">optPower</a>;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">bool</span> <a class="code" href="global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c">optDate</a>, <a class="code" href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">optPower</a>, <a class="code" href="global_8h.html#a2a24ab7c0142e353c9ce9ca1ee1210bb">optCold</a>;</div>
 <div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">extern</span> pthread_mutex_t <a class="code" href="global_8h.html#a4acff8232e4aec9cd5c6dc200ac55ef3">mutex</a>;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="global_8h.html#a9d1129916cfa4cbd7489638ce470c3a4">lcd</a>;</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keyword">extern</span> pthread_t <a class="code" href="global_8h.html#a5e61240888e929e526f41e19b6c0bd46">thread</a>[];</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">extern</span> pthread_t <a class="code" href="global_8h.html#a5e61240888e929e526f41e19b6c0bd46">thread</a>[];</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
 <div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="comment">// Thread IDs</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="global_8h.html#a67a7c5f1e4a75f1508395d450895990d">   32</a></span>&#160;<span class="preprocessor">#define THREAD_MAIN     0</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="global_8h.html#a77f390a98c0e73ae38abd20f467d6cce">   33</a></span>&#160;<span class="preprocessor">#define THREAD_STRIPE   1</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="global_8h.html#a843e1fa4b4de70b9f31d42a41a896c1c">   34</a></span>&#160;<span class="preprocessor">#define THREAD_DISPLAY  2</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="global_8h.html#a5f697926bb7bcc4722a9e650a1acdb6a">   35</a></span>&#160;<span class="preprocessor">#define THREAD_COFFEE   3</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="comment">// Thread IDs</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="global_8h.html#a67a7c5f1e4a75f1508395d450895990d">   31</a></span>&#160;<span class="preprocessor">#define THREAD_MAIN     0</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="global_8h.html#a77f390a98c0e73ae38abd20f467d6cce">   32</a></span>&#160;<span class="preprocessor">#define THREAD_STRIPE   1</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="global_8h.html#a843e1fa4b4de70b9f31d42a41a896c1c">   33</a></span>&#160;<span class="preprocessor">#define THREAD_DISPLAY  2</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="global_8h.html#a5f697926bb7bcc4722a9e650a1acdb6a">   34</a></span>&#160;<span class="preprocessor">#define THREAD_COFFEE   3</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
 <div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keywordtype">void</span> <a class="code" href="global_8h.html#ab6e46b0071bb3330546b7f2b601d0a6c">killThread</a>(<span class="keywordtype">int</span> threadid, <span class="keywordtype">int</span> sig);</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="ttc" id="global_8h_html_ab6e46b0071bb3330546b7f2b601d0a6c"><div class="ttname"><a href="global_8h.html#ab6e46b0071bb3330546b7f2b601d0a6c">killThread</a></div><div class="ttdeci">void killThread(int threadid, int sig)</div><div class="ttdoc">Sends a signal to a thread. </div><div class="ttdef"><b>Definition:</b> main.cpp:215</div></div>
-<div class="ttc" id="global_8h_html_ae88c926fe2a10f736eb01b1d1e899a1c"><div class="ttname"><a href="global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c">optDate</a></div><div class="ttdeci">bool optDate</div><div class="ttdef"><b>Definition:</b> main.cpp:34</div></div>
-<div class="ttc" id="global_8h_html_a5e61240888e929e526f41e19b6c0bd46"><div class="ttname"><a href="global_8h.html#a5e61240888e929e526f41e19b6c0bd46">thread</a></div><div class="ttdeci">pthread_t thread[]</div><div class="ttdef"><b>Definition:</b> main.cpp:43</div></div>
-<div class="ttc" id="global_8h_html_a4acff8232e4aec9cd5c6dc200ac55ef3"><div class="ttname"><a href="global_8h.html#a4acff8232e4aec9cd5c6dc200ac55ef3">mutex</a></div><div class="ttdeci">pthread_mutex_t mutex</div><div class="ttdef"><b>Definition:</b> main.cpp:44</div></div>
-<div class="ttc" id="global_8h_html_a0b2caeb4b6f130be43e5a2f0267dd453"><div class="ttname"><a href="global_8h.html#a0b2caeb4b6f130be43e5a2f0267dd453">verbose</a></div><div class="ttdeci">int verbose</div><div class="ttdef"><b>Definition:</b> main.cpp:33</div></div>
-<div class="ttc" id="global_8h_html_a7bfeade3d2f19e8baecdcddd7f9162fa"><div class="ttname"><a href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">optPower</a></div><div class="ttdeci">bool optPower</div><div class="ttdef"><b>Definition:</b> main.cpp:35</div></div>
-<div class="ttc" id="global_8h_html_a9d1129916cfa4cbd7489638ce470c3a4"><div class="ttname"><a href="global_8h.html#a9d1129916cfa4cbd7489638ce470c3a4">lcd</a></div><div class="ttdeci">int lcd</div><div class="ttdef"><b>Definition:</b> main.cpp:32</div></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="keywordtype">void</span> <a class="code" href="global_8h.html#ab6e46b0071bb3330546b7f2b601d0a6c">killThread</a>(<span class="keywordtype">int</span> threadid, <span class="keywordtype">int</span> sig);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="global_8h_html_ab6e46b0071bb3330546b7f2b601d0a6c"><div class="ttname"><a href="global_8h.html#ab6e46b0071bb3330546b7f2b601d0a6c">killThread</a></div><div class="ttdeci">void killThread(int threadid, int sig)</div><div class="ttdoc">Sends a signal to a thread. </div><div class="ttdef"><b>Definition:</b> main.cpp:216</div></div>
+<div class="ttc" id="global_8h_html_ae88c926fe2a10f736eb01b1d1e899a1c"><div class="ttname"><a href="global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c">optDate</a></div><div class="ttdeci">bool optDate</div><div class="ttdef"><b>Definition:</b> main.cpp:33</div></div>
+<div class="ttc" id="global_8h_html_a5e61240888e929e526f41e19b6c0bd46"><div class="ttname"><a href="global_8h.html#a5e61240888e929e526f41e19b6c0bd46">thread</a></div><div class="ttdeci">pthread_t thread[]</div><div class="ttdef"><b>Definition:</b> main.cpp:41</div></div>
+<div class="ttc" id="global_8h_html_a4acff8232e4aec9cd5c6dc200ac55ef3"><div class="ttname"><a href="global_8h.html#a4acff8232e4aec9cd5c6dc200ac55ef3">mutex</a></div><div class="ttdeci">pthread_mutex_t mutex</div><div class="ttdef"><b>Definition:</b> main.cpp:42</div></div>
+<div class="ttc" id="global_8h_html_a0b2caeb4b6f130be43e5a2f0267dd453"><div class="ttname"><a href="global_8h.html#a0b2caeb4b6f130be43e5a2f0267dd453">verbose</a></div><div class="ttdeci">int verbose</div><div class="ttdef"><b>Definition:</b> main.cpp:32</div></div>
+<div class="ttc" id="global_8h_html_a2a24ab7c0142e353c9ce9ca1ee1210bb"><div class="ttname"><a href="global_8h.html#a2a24ab7c0142e353c9ce9ca1ee1210bb">optCold</a></div><div class="ttdeci">bool optCold</div><div class="ttdef"><b>Definition:</b> main.cpp:35</div></div>
+<div class="ttc" id="global_8h_html_a7bfeade3d2f19e8baecdcddd7f9162fa"><div class="ttname"><a href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">optPower</a></div><div class="ttdeci">bool optPower</div><div class="ttdef"><b>Definition:</b> main.cpp:34</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 6 - 2
CoffeeCode/html/globals.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -119,8 +120,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
 
 <h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
-<li>AliveCRC
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f">database.h</a>
+<li>AMOUNT_DBLESPRESSO
+: <a class="el" href="coffee_8h.html#a4e3abbeb2301b9265ee297ee63e2f4c8">coffee.h</a>
+</li>
+<li>AMOUNT_PREINFUSION
+: <a class="el" href="coffee_8h.html#ad8bfbae67917bc4a69ae336c65b3aba2">coffee.h</a>
 </li>
 </ul>
 </div><!-- contents -->

+ 11 - 0
CoffeeCode/html/globals_b.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -119,6 +120,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
 
 <h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>beginHeating
+: <a class="el" href="coffee_8cpp.html#a1426cd37aa49a96e7bcf12d26cde1a0d">coffee.cpp</a>
+</li>
+<li>brewTime
+: <a class="el" href="coffee_8cpp.html#a3756d547bc4c41a306650f4f4bbb930c">coffee.cpp</a>
+</li>
+<li>brewTimeHandler()
+: <a class="el" href="coffee_8h.html#a66d75a676639d0f8e56c0efe76547482">coffee.h</a>
+, <a class="el" href="coffee_8cpp.html#a66d75a676639d0f8e56c0efe76547482">coffee.cpp</a>
+</li>
 <li>buildno
 : <a class="el" href="main_8cpp.html#ac70430026dcf56f46e5426e1d01d7e89">main.cpp</a>
 </li>

+ 45 - 7
CoffeeCode/html/globals_c.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -119,6 +120,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
 
 <h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>CFGbrewcounter
+: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e">database.h</a>
+</li>
+<li>CFGdisplaylang
+: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4">database.h</a>
+</li>
+<li>CFGHeatingTime
+: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968">database.h</a>
+</li>
+<li>changeState()
+: <a class="el" href="coffee_8cpp.html#ae4d9681385a3f678dee40458cf55dca0">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#ae4d9681385a3f678dee40458cf55dca0">coffee.h</a>
+</li>
 <li>chartoint()
 : <a class="el" href="database_8cpp.html#ad2d2a73c367513b8b71aff5546276a3c">database.cpp</a>
 , <a class="el" href="database_8h.html#ad2d2a73c367513b8b71aff5546276a3c">database.h</a>
@@ -132,6 +146,33 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>CLOCKID
 : <a class="el" href="timer_8h.html#a2694a39dfd1fa087ca6f9f391c91dae7">timer.h</a>
 </li>
+<li>coffeeBrew()
+: <a class="el" href="coffee_8cpp.html#a343324d9863aa6eb3d7e2a183aec4a09">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a343324d9863aa6eb3d7e2a183aec4a09">coffee.h</a>
+</li>
+<li>coffeeHandler()
+: <a class="el" href="coffee_8cpp.html#a44f0ebaec249d2ce6316c1bddff54d79">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a44f0ebaec249d2ce6316c1bddff54d79">coffee.h</a>
+</li>
+<li>coffeeIncreaseBrewCounter()
+: <a class="el" href="coffee_8h.html#a7c29bb32c4f3971f78dd515e568042c3">coffee.h</a>
+, <a class="el" href="coffee_8cpp.html#a7c29bb32c4f3971f78dd515e568042c3">coffee.cpp</a>
+</li>
+<li>coffeeIncreaseHeatingTime()
+: <a class="el" href="coffee_8cpp.html#a11b81e21f5769fc6b0e55ecbac8d3976">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a11b81e21f5769fc6b0e55ecbac8d3976">coffee.h</a>
+</li>
+<li>coffeeState
+: <a class="el" href="display_8cpp.html#a8f3437c133bc4d1be650cbbc5128f1a8">display.cpp</a>
+</li>
+<li>coffeeTerminate()
+: <a class="el" href="coffee_8cpp.html#a5c611f1d81caf2f51c8b77b307028e4d">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a5c611f1d81caf2f51c8b77b307028e4d">coffee.h</a>
+</li>
+<li>coffeeThread()
+: <a class="el" href="coffee_8h.html#afed8c565650f5808745b6c6c7d45462c">coffee.h</a>
+, <a class="el" href="coffee_8cpp.html#afed8c565650f5808745b6c6c7d45462c">coffee.cpp</a>
+</li>
 <li>config_key_t
 : <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">database.h</a>
 </li>
@@ -141,9 +182,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>crc
 : <a class="el" href="crc_8h.html#a73364f0434186bc77eaa8e3b03a437be">crc.h</a>
 </li>
-<li>CRC
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827">database.h</a>
-</li>
 <li>CRC32
 : <a class="el" href="crc_8h.html#a491e419c18fbc5c7cb4a2cd901e31440">crc.h</a>
 </li>
@@ -151,16 +189,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="crc_8h.html#ad679f457b8d23bfed7ccf1b9584e8514">crc.h</a>
 </li>
 <li>crcFast()
-: <a class="el" href="crc_8cpp.html#a31e9ca3a3979a4c1e5043f5bfa5befaf">crc.cpp</a>
-, <a class="el" href="crc_8h.html#a31e9ca3a3979a4c1e5043f5bfa5befaf">crc.h</a>
+: <a class="el" href="crc_8h.html#a31e9ca3a3979a4c1e5043f5bfa5befaf">crc.h</a>
+, <a class="el" href="crc_8cpp.html#a31e9ca3a3979a4c1e5043f5bfa5befaf">crc.cpp</a>
 </li>
 <li>crcInit()
 : <a class="el" href="crc_8h.html#a5a735798e6972adc694a5428dd7ccaf9">crc.h</a>
 , <a class="el" href="crc_8cpp.html#a5a735798e6972adc694a5428dd7ccaf9">crc.cpp</a>
 </li>
 <li>crcSlow()
-: <a class="el" href="crc_8cpp.html#a027c2916f24b3daaf662408cc72026b1">crc.cpp</a>
-, <a class="el" href="crc_8h.html#a027c2916f24b3daaf662408cc72026b1">crc.h</a>
+: <a class="el" href="crc_8h.html#a027c2916f24b3daaf662408cc72026b1">crc.h</a>
+, <a class="el" href="crc_8cpp.html#a027c2916f24b3daaf662408cc72026b1">crc.cpp</a>
 </li>
 <li>crcTable
 : <a class="el" href="crc_8cpp.html#aa0b98c402a809d26602bb9a693083720">crc.cpp</a>

+ 63 - 0
CoffeeCode/html/globals_d.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li class="current"><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -122,6 +123,68 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>db
 : <a class="el" href="database_8cpp.html#ad6e663497d2c934364b3bcf07496b30b">database.cpp</a>
 </li>
+<li>DEFAULT_LANG
+: <a class="el" href="display_8h.html#aa0b13de112401f9608d402bfc5a14d0d">display.h</a>
+</li>
+<li>DISPLAY_COLS
+: <a class="el" href="display_8h.html#ad01ecf7f4d29cece64f84d890e414570">display.h</a>
+</li>
+<li>display_lang_t
+: <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display.h</a>
+</li>
+<li>DISPLAY_ROWS
+: <a class="el" href="display_8h.html#abdc19d7f30976562c2d3efce365ef8f4">display.h</a>
+</li>
+<li>display_strings_t
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display.h</a>
+</li>
+<li>displayGetString()
+: <a class="el" href="display_8h.html#ab2661cdbd686f7d3389a3d9c2cf98f47">display.h</a>
+, <a class="el" href="display_8cpp.html#ab2661cdbd686f7d3389a3d9c2cf98f47">display.cpp</a>
+</li>
+<li>displayInit()
+: <a class="el" href="display_8cpp.html#a8c548751802c5960b3092be28cc56d9f">display.cpp</a>
+, <a class="el" href="display_8h.html#a8c548751802c5960b3092be28cc56d9f">display.h</a>
+</li>
+<li>displayLang
+: <a class="el" href="display_8cpp.html#ae110c5cc57190b02aaa0d543a80cdc20">display.cpp</a>
+</li>
+<li>displayPrintFlow()
+: <a class="el" href="display_8cpp.html#ae552c34299838e4f57e3516553ed566f">display.cpp</a>
+</li>
+<li>displayPrintLn()
+: <a class="el" href="display_8cpp.html#a2e4f853ea431989d2adc2aeb7a8e46b5">display.cpp</a>
+</li>
+<li>displayPrintTime()
+: <a class="el" href="display_8cpp.html#aad3b4a291f0ad570bb1035a133ec46aa">display.cpp</a>
+</li>
+<li>displayPushState()
+: <a class="el" href="display_8h.html#adf85c9537e38ffe3f1ee356a4638880e">display.h</a>
+, <a class="el" href="display_8cpp.html#adf85c9537e38ffe3f1ee356a4638880e">display.cpp</a>
+</li>
+<li>displayRefresh()
+: <a class="el" href="display_8cpp.html#ac750de2337343c08e5fd88d08316adb2">display.cpp</a>
+, <a class="el" href="display_8h.html#ac750de2337343c08e5fd88d08316adb2">display.h</a>
+</li>
+<li>displaySetLang()
+: <a class="el" href="display_8cpp.html#a9b10d2d49414256ef745f7e910748fee">display.cpp</a>
+, <a class="el" href="display_8h.html#a9b10d2d49414256ef745f7e910748fee">display.h</a>
+</li>
+<li>displayTerminate()
+: <a class="el" href="display_8h.html#abfd367c63541be192cdc63d6e8b38a79">display.h</a>
+, <a class="el" href="display_8cpp.html#abfd367c63541be192cdc63d6e8b38a79">display.cpp</a>
+</li>
+<li>displayThread()
+: <a class="el" href="display_8h.html#ab2db422e214d76776b8a375787d1384c">display.h</a>
+, <a class="el" href="display_8cpp.html#ab2db422e214d76776b8a375787d1384c">display.cpp</a>
+</li>
+<li>displayTimer
+: <a class="el" href="display_8cpp.html#afebf5c16da7043af9cbd74ef9f489ea7">display.cpp</a>
+</li>
+<li>displayTimerHandler()
+: <a class="el" href="display_8cpp.html#ab5eb6b80aca0f751332c47c410d06a2a">display.cpp</a>
+, <a class="el" href="display_8h.html#ab5eb6b80aca0f751332c47c410d06a2a">display.h</a>
+</li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->

+ 77 - 19
CoffeeCode/html/globals_defs.html

@@ -78,7 +78,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   </div>
   <div id="navrow4" class="tabs3">
     <ul class="tablist">
+      <li><a href="#index_a"><span>a</span></a></li>
       <li><a href="#index_c"><span>c</span></a></li>
+      <li><a href="#index_d"><span>d</span></a></li>
       <li><a href="#index_e"><span>e</span></a></li>
       <li><a href="#index_f"><span>f</span></a></li>
       <li><a href="#index_i"><span>i</span></a></li>
@@ -111,6 +113,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="contents">
 &#160;
 
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>AMOUNT_DBLESPRESSO
+: <a class="el" href="coffee_8h.html#a4e3abbeb2301b9265ee297ee63e2f4c8">coffee.h</a>
+</li>
+<li>AMOUNT_PREINFUSION
+: <a class="el" href="coffee_8h.html#ad8bfbae67917bc4a69ae336c65b3aba2">coffee.h</a>
+</li>
+</ul>
+
+
 <h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
 <li>CHECK_VALUE
 : <a class="el" href="crc_8h.html#aee81a10f43f9dc645ba69a7407c151d0">crc.h</a>
@@ -130,6 +142,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </ul>
 
 
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>DEFAULT_LANG
+: <a class="el" href="display_8h.html#aa0b13de112401f9608d402bfc5a14d0d">display.h</a>
+</li>
+<li>DISPLAY_COLS
+: <a class="el" href="display_8h.html#ad01ecf7f4d29cece64f84d890e414570">display.h</a>
+</li>
+<li>DISPLAY_ROWS
+: <a class="el" href="display_8h.html#abdc19d7f30976562c2d3efce365ef8f4">display.h</a>
+</li>
+</ul>
+
+
 <h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
 <li>errExit
 : <a class="el" href="timer_8h.html#af3ec03c16ee82e8578cfd8fd133d7a6f">timer.h</a>
@@ -145,9 +170,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>FINAL_XOR_VALUE
 : <a class="el" href="crc_8h.html#a5e491822bb6a5bf7114dd453ab48891e">crc.h</a>
 </li>
-<li>FLOW
-: <a class="el" href="hal_8h.html#a249f9f89b3a190ddd62999b1afa847c3">hal.h</a>
-</li>
 <li>FLOW_ML_PULSE
 : <a class="el" href="hal_8h.html#a957d80982673bb087a5d29380720f59d">hal.h</a>
 </li>
@@ -161,12 +183,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>INITIAL_REMAINDER
 : <a class="el" href="crc_8h.html#acce5b79e1a8ad8ffe40fb9f7d63b2fdc">crc.h</a>
 </li>
-<li>INT0
-: <a class="el" href="hal_8h.html#a7521122e23c8d5c83b2a033b2505c86c">hal.h</a>
-</li>
-<li>INT1
-: <a class="el" href="hal_8h.html#ae4728496f2ab826d5fc6a63da6cb600b">hal.h</a>
-</li>
 </ul>
 
 
@@ -273,17 +289,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 
 <h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
-<li>POLYNOMIAL
-: <a class="el" href="crc_8h.html#ae13d91fe6e514f0aa1caba701ef1ff92">crc.h</a>
+<li>PIN_FLOW
+: <a class="el" href="hal_8h.html#a1b7f077d2a81a295f0f9b0fbf09356ba">hal.h</a>
 </li>
-<li>PRESSURE_CTRL
-: <a class="el" href="hal_8h.html#af9f618757de2bf9051de55c831802f30">hal.h</a>
+<li>PIN_INT0
+: <a class="el" href="hal_8h.html#acab09879ef6267b9482f7627c82346bc">hal.h</a>
 </li>
-<li>PROX_COVERED
-: <a class="el" href="hal_8h.html#a7c6e51c86f643b69623e53eaa62e6cd4">hal.h</a>
+<li>PIN_INT1
+: <a class="el" href="hal_8h.html#a987362f14d4ff58584140f09c24a4308">hal.h</a>
 </li>
-<li>PROXIMITY_SENSOR
-: <a class="el" href="hal_8h.html#a60cdc9e2a5c04bd14c4c3c6f872ddf29">hal.h</a>
+<li>PIN_PRESSURE_CTRL
+: <a class="el" href="hal_8h.html#a95d660a5e62442d33d7cc9d93ffb57b9">hal.h</a>
+</li>
+<li>PIN_PROXIMITY_SENSOR
+: <a class="el" href="hal_8h.html#a4b6bff93c300c970e912b45284fa1d7d">hal.h</a>
+</li>
+<li>POLYNOMIAL
+: <a class="el" href="crc_8h.html#ae13d91fe6e514f0aa1caba701ef1ff92">crc.h</a>
 </li>
 </ul>
 
@@ -297,6 +319,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="crc_8h.html#a5aa89bef30ad5bd061deda3eef36e327">crc.h</a>
 , <a class="el" href="crc_8cpp.html#a2354513de80cf643198f44d7030b74d7">crc.cpp</a>
 </li>
+<li>REFRESH_RATE
+: <a class="el" href="display_8h.html#abc2b684fcc127e93aee54a3a45e25a7c">display.h</a>
+</li>
 <li>RELAIS_HEAT
 : <a class="el" href="hal_8h.html#a9b57e326c17e793a2c70b909256734ab">hal.h</a>
 </li>
@@ -331,6 +356,30 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>SQL_DATABASE
 : <a class="el" href="global_8h.html#ad55c274bf698014e01dbc9afde3fc610">global.h</a>
 </li>
+<li>STATE_BREW
+: <a class="el" href="coffee_8h.html#a7a56332694aec763a9f8028113a07199">coffee.h</a>
+</li>
+<li>STATE_BREWMANUAL
+: <a class="el" href="coffee_8h.html#af696741daae3faab28c27755188fd828">coffee.h</a>
+</li>
+<li>STATE_CLEANING
+: <a class="el" href="coffee_8h.html#a3a3e5a95a5ba91345c6a1b6f7e06c737">coffee.h</a>
+</li>
+<li>STATE_ERROR
+: <a class="el" href="coffee_8h.html#a7bf0c086c7c41c12cc63324327932d91">coffee.h</a>
+</li>
+<li>STATE_HEATING
+: <a class="el" href="coffee_8h.html#ab87d7787dc7a2c2afc6d7853353d7003">coffee.h</a>
+</li>
+<li>STATE_IDLE
+: <a class="el" href="coffee_8h.html#aafff27c7165f059a969fe60fee51f683">coffee.h</a>
+</li>
+<li>STATE_INITALHEATING
+: <a class="el" href="coffee_8h.html#af74b21e82c0f8fbf7f697db071d420a0">coffee.h</a>
+</li>
+<li>STATE_OFF
+: <a class="el" href="coffee_8h.html#a0cc0d45e13bc83065d45df9d3d1dc887">coffee.h</a>
+</li>
 <li>STRIPE_CMD_FADEOUT
 : <a class="el" href="stripe_8h.html#a14287ccb3789c724603c28910512a0b3">stripe.h</a>
 </li>
@@ -380,6 +429,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>THREAD_STRIPE
 : <a class="el" href="global_8h.html#a77f390a98c0e73ae38abd20f467d6cce">global.h</a>
 </li>
+<li>TIME_BUTTONLONGPRESS
+: <a class="el" href="hal_8h.html#a39a999d4c82a1021ee63072abe804946">hal.h</a>
+</li>
+<li>TIME_INFUSION
+: <a class="el" href="coffee_8h.html#acd34aefc536dfe9b45dbed679cf6afaf">coffee.h</a>
+</li>
+<li>TIME_SOAK
+: <a class="el" href="coffee_8h.html#ad4b00557d847ecf54b790844b3be2eb0">coffee.h</a>
+</li>
 <li>TIMER_DELAY_US
 : <a class="el" href="global_8h.html#a91dee3a4ce745234c8a4998388d6c645">global.h</a>
 </li>
@@ -387,8 +445,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="crc_8cpp.html#a118ad552670dbefa1df0ba72d147f5e1">crc.cpp</a>
 </li>
 <li>TRUE
-: <a class="el" href="lcd_8cpp.html#aa8cecfc5c5c054d2875c03e77b7be15d">lcd.cpp</a>
-, <a class="el" href="crc_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d">crc.h</a>
+: <a class="el" href="crc_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d">crc.h</a>
+, <a class="el" href="lcd_8cpp.html#aa8cecfc5c5c054d2875c03e77b7be15d">lcd.cpp</a>
 </li>
 </ul>
 

+ 7 - 0
CoffeeCode/html/globals_e.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li class="current"><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -122,6 +123,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>effectColor
 : <a class="el" href="stripe_8cpp.html#a8b61b922f1ae5a0c5854e3a318b74421">stripe.cpp</a>
 </li>
+<li>elapsedCnt
+: <a class="el" href="display_8cpp.html#a01cd2b69770b3c4cd7adc6e27d48c28a">display.cpp</a>
+</li>
+<li>endHeating
+: <a class="el" href="coffee_8cpp.html#a1aaa11435974ab87937d68b01ee71074">coffee.cpp</a>
+</li>
 <li>errExit
 : <a class="el" href="timer_8h.html#af3ec03c16ee82e8578cfd8fd133d7a6f">timer.h</a>
 </li>

+ 6 - 0
CoffeeCode/html/globals_enum.html

@@ -96,6 +96,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>config_key_t
 : <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4df">database.h</a>
 </li>
+<li>display_lang_t
+: <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080">display.h</a>
+</li>
+<li>display_strings_t
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907">display.h</a>
+</li>
 <li>HalSig
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">hal.h</a>
 </li>

+ 47 - 22
CoffeeCode/html/globals_eval.html

@@ -78,7 +78,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   </div>
   <div id="navrow4" class="tabs3">
     <ul class="tablist">
-      <li><a href="#index_a"><span>a</span></a></li>
       <li><a href="#index_c"><span>c</span></a></li>
       <li><a href="#index_l"><span>l</span></a></li>
       <li><a href="#index_s"><span>s</span></a></li>
@@ -104,32 +103,28 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="contents">
 &#160;
 
-<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
-<li>AliveCRC
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f">database.h</a>
-</li>
-</ul>
-
-
 <h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
-<li>CRC
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827">database.h</a>
+<li>CFGbrewcounter
+: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e">database.h</a>
+</li>
+<li>CFGdisplaylang
+: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4">database.h</a>
+</li>
+<li>CFGHeatingTime
+: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968">database.h</a>
 </li>
 </ul>
 
 
 <h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
-<li>lastTC1
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424">database.h</a>
-</li>
-<li>lastTC2
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5">database.h</a>
+<li>lang_de
+: <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30">display.h</a>
 </li>
-<li>lastTC3
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848">database.h</a>
+<li>lang_en
+: <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b">display.h</a>
 </li>
-<li>lastTerm
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4">database.h</a>
+<li>lang_last
+: <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644">display.h</a>
 </li>
 <li>LOG_CAN
 : <a class="el" href="logger_8h.html#a60cbc432422370d29ed1b783be884823a854a22c1c382f9b7a93bf8e556191c5f">logger.h</a>
@@ -165,12 +160,18 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>SigInt0Rls
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">hal.h</a>
 </li>
+<li>SigInt0RlsLong
+: <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e">hal.h</a>
+</li>
 <li>SigInt1Psh
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">hal.h</a>
 </li>
 <li>SigInt1Rls
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">hal.h</a>
 </li>
+<li>SigInt1RlsLong
+: <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73">hal.h</a>
+</li>
 <li>SigPressCls
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">hal.h</a>
 </li>
@@ -183,13 +184,37 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>SigProxOpn
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">hal.h</a>
 </li>
+<li>str_brewing
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272">display.h</a>
+</li>
+<li>str_bye
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb">display.h</a>
+</li>
+<li>str_cleaning
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c">display.h</a>
+</li>
+<li>str_error
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890">display.h</a>
+</li>
+<li>str_flow
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572">display.h</a>
+</li>
+<li>str_heating
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624">display.h</a>
+</li>
+<li>str_heatingready
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0">display.h</a>
+</li>
+<li>str_last
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9">display.h</a>
+</li>
+<li>str_ready
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171">display.h</a>
+</li>
 </ul>
 
 
 <h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
-<li>testSlowCnt
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1">database.h</a>
-</li>
 <li>TRANS_DIRECT
 : <a class="el" href="stripe_8h.html#aa761062faf633557e537e07a781965e9ad41450786f0c8b404231dfaff4c14931">stripe.h</a>
 </li>

+ 6 - 2
CoffeeCode/html/globals_f.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li class="current"><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -129,8 +130,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>firstTimer
 : <a class="el" href="timer_8cpp.html#acb6f6b56b317d16d17fd2f6df17547c3">timer.cpp</a>
 </li>
-<li>FLOW
-: <a class="el" href="hal_8h.html#a249f9f89b3a190ddd62999b1afa847c3">hal.h</a>
+<li>flagIgnoreRlsInt0
+: <a class="el" href="hal_8cpp.html#a9f94cedad944b6df4483a76b0a4d2b0a">hal.cpp</a>
+</li>
+<li>flagIgnoreRlsInt1
+: <a class="el" href="hal_8cpp.html#a8980baab65c90a16ef8189ed5b1ab7fe">hal.cpp</a>
 </li>
 <li>FLOW_ML_PULSE
 : <a class="el" href="hal_8h.html#a957d80982673bb087a5d29380720f59d">hal.h</a>

+ 17 - 378
CoffeeCode/html/globals_func.html

@@ -78,16 +78,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   </div>
   <div id="navrow4" class="tabs3">
     <ul class="tablist">
-      <li><a href="#index_c"><span>c</span></a></li>
-      <li><a href="#index_h"><span>h</span></a></li>
-      <li><a href="#index_i"><span>i</span></a></li>
-      <li><a href="#index_k"><span>k</span></a></li>
-      <li><a href="#index_l"><span>l</span></a></li>
-      <li><a href="#index_m"><span>m</span></a></li>
-      <li><a href="#index_n"><span>n</span></a></li>
-      <li><a href="#index_s"><span>s</span></a></li>
-      <li><a href="#index_t"><span>t</span></a></li>
-      <li class="current"><a href="#index_u"><span>u</span></a></li>
+      <li class="current"><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
     </ul>
   </div>
 </div><!-- top -->
@@ -108,374 +111,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="contents">
 &#160;
 
-<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
-<li>chartoint()
-: <a class="el" href="database_8cpp.html#ad2d2a73c367513b8b71aff5546276a3c">database.cpp</a>
-, <a class="el" href="database_8h.html#ad2d2a73c367513b8b71aff5546276a3c">database.h</a>
-</li>
-<li>crcFast()
-: <a class="el" href="crc_8cpp.html#a31e9ca3a3979a4c1e5043f5bfa5befaf">crc.cpp</a>
-, <a class="el" href="crc_8h.html#a31e9ca3a3979a4c1e5043f5bfa5befaf">crc.h</a>
-</li>
-<li>crcInit()
-: <a class="el" href="crc_8cpp.html#a5a735798e6972adc694a5428dd7ccaf9">crc.cpp</a>
-, <a class="el" href="crc_8h.html#a5a735798e6972adc694a5428dd7ccaf9">crc.h</a>
-</li>
-<li>crcSlow()
-: <a class="el" href="crc_8cpp.html#a027c2916f24b3daaf662408cc72026b1">crc.cpp</a>
-, <a class="el" href="crc_8h.html#a027c2916f24b3daaf662408cc72026b1">crc.h</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
-<li>halGetFlow()
-: <a class="el" href="hal_8cpp.html#a1a0d534518ff19bf5b023dfe64d141db">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a1a0d534518ff19bf5b023dfe64d141db">hal.h</a>
-</li>
-<li>halGetInt0()
-: <a class="el" href="hal_8cpp.html#af5609d1b9c9b6bde787cdca47b3b0a4f">hal.cpp</a>
-, <a class="el" href="hal_8h.html#af5609d1b9c9b6bde787cdca47b3b0a4f">hal.h</a>
-</li>
-<li>halGetInt1()
-: <a class="el" href="hal_8cpp.html#afe1e8d0d1237d0f128d50a5b146002a2">hal.cpp</a>
-, <a class="el" href="hal_8h.html#afe1e8d0d1237d0f128d50a5b146002a2">hal.h</a>
-</li>
-<li>halGetRelaisState()
-: <a class="el" href="hal_8cpp.html#a1d22d01f1a6a6789f2816e27bbcb0504">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a1d22d01f1a6a6789f2816e27bbcb0504">hal.h</a>
-</li>
-<li>halInit()
-: <a class="el" href="hal_8cpp.html#afd89c1650df524d95aef39b8bc38170d">hal.cpp</a>
-, <a class="el" href="hal_8h.html#afd89c1650df524d95aef39b8bc38170d">hal.h</a>
-</li>
-<li>halInt0()
-: <a class="el" href="hal_8cpp.html#a597258a80a0bb18db649d01b0893c99f">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a597258a80a0bb18db649d01b0893c99f">hal.h</a>
-</li>
-<li>halInt1()
-: <a class="el" href="hal_8cpp.html#a603aaa9c0c3cfef8b185df5c7f4921c3">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3">hal.h</a>
-</li>
-<li>halIntFlow()
-: <a class="el" href="hal_8cpp.html#ace9ace8c7e0012157569f446d4cb8c52">hal.cpp</a>
-, <a class="el" href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">hal.h</a>
-</li>
-<li>halIntPressure()
-: <a class="el" href="hal_8cpp.html#a73067106de2bbcf98bcc3a06cbf3b000">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a73067106de2bbcf98bcc3a06cbf3b000">hal.h</a>
-</li>
-<li>halIntProximity()
-: <a class="el" href="hal_8cpp.html#a0622583e0c8453a6d6963964ad7e7122">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a0622583e0c8453a6d6963964ad7e7122">hal.h</a>
-</li>
-<li>halIsHeating()
-: <a class="el" href="hal_8cpp.html#a01f43f0666520e8d8af65e94fd82a5eb">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a01f43f0666520e8d8af65e94fd82a5eb">hal.h</a>
-</li>
-<li>halProxSensorCovered()
-: <a class="el" href="hal_8cpp.html#a52c001b5136b02e19bd00282a137631d">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a52c001b5136b02e19bd00282a137631d">hal.h</a>
-</li>
-<li>halRelaisOff()
-: <a class="el" href="hal_8cpp.html#a25c63f62c18555fc1b9b50bcd29f1c7d">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">hal.h</a>
-</li>
-<li>halRelaisOn()
-: <a class="el" href="hal_8cpp.html#a33e09a3806bdcd5c711e557178335763">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a33e09a3806bdcd5c711e557178335763">hal.h</a>
-</li>
-<li>halRelaisSet()
-: <a class="el" href="hal_8cpp.html#a9b67b274703f0c42834f4b447d5c04a2">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">hal.h</a>
-</li>
-<li>halResetFlow()
-: <a class="el" href="hal_8cpp.html#a99d0fb6a80635b679cf4cd1fa90b483d">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a99d0fb6a80635b679cf4cd1fa90b483d">hal.h</a>
-</li>
-<li>halSendSignal()
-: <a class="el" href="hal_8cpp.html#a252f49661ac23a045bb0d9d20997dfa4">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">hal.h</a>
-</li>
-<li>hupHandler()
-: <a class="el" href="main_8cpp.html#aa5f8eab61a77d6d566215bcf12144422">main.cpp</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
-<li>initTimers()
-: <a class="el" href="timer_8cpp.html#a9e737e3249388fb2e50d868bad69c688">timer.cpp</a>
-, <a class="el" href="timer_8h.html#a9e737e3249388fb2e50d868bad69c688">timer.h</a>
-</li>
-<li>int64to8bit()
-: <a class="el" href="database_8cpp.html#a28dbbb9e24e2035535645629105aea46">database.cpp</a>
-, <a class="el" href="database_8h.html#a28dbbb9e24e2035535645629105aea46">database.h</a>
-</li>
-<li>int8to64bit()
-: <a class="el" href="database_8cpp.html#a99cc529fd785c752cd4b73ea7989521d">database.cpp</a>
-, <a class="el" href="database_8h.html#a99cc529fd785c752cd4b73ea7989521d">database.h</a>
-</li>
-<li>inttochar()
-: <a class="el" href="database_8cpp.html#a437086982a7400d7205f3ab6600e6dcf">database.cpp</a>
-, <a class="el" href="database_8h.html#a437086982a7400d7205f3ab6600e6dcf">database.h</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
-<li>killThread()
-: <a class="el" href="global_8h.html#ab6e46b0071bb3330546b7f2b601d0a6c">global.h</a>
-, <a class="el" href="main_8cpp.html#ab6e46b0071bb3330546b7f2b601d0a6c">main.cpp</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
-<li>lcdCharDef()
-: <a class="el" href="lcd_8cpp.html#a74d902393394e4d3cebdcf0d81bbaeeb">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a74d902393394e4d3cebdcf0d81bbaeeb">lcd.h</a>
-</li>
-<li>lcdClear()
-: <a class="el" href="lcd_8cpp.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcd.h</a>
-</li>
-<li>lcdCursor()
-: <a class="el" href="lcd_8cpp.html#a8aa13c894973d52eeed51d10bf869df2">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a8aa13c894973d52eeed51d10bf869df2">lcd.h</a>
-</li>
-<li>lcdCursorBlink()
-: <a class="el" href="lcd_8cpp.html#af39d67df7e36291184f69691bb97285b">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#af39d67df7e36291184f69691bb97285b">lcd.h</a>
-</li>
-<li>lcdDisplay()
-: <a class="el" href="lcd_8cpp.html#af08385cd21eea125d63d6919ecfbea4a">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#af08385cd21eea125d63d6919ecfbea4a">lcd.h</a>
-</li>
-<li>lcdHome()
-: <a class="el" href="lcd_8cpp.html#a688913764edb3a241c26da5e51d70ac2">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a688913764edb3a241c26da5e51d70ac2">lcd.h</a>
-</li>
-<li>lcdInit()
-: <a class="el" href="lcd_8cpp.html#a88d70347308e92cb29eb45b505cad39e">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a88d70347308e92cb29eb45b505cad39e">lcd.h</a>
-</li>
-<li>lcdInitI()
-: <a class="el" href="lcd_8cpp.html#a47f05b4cef2cf066cf1cbb1beb7ceb31">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a47f05b4cef2cf066cf1cbb1beb7ceb31">lcd.h</a>
-</li>
-<li>lcdPosition()
-: <a class="el" href="lcd_8cpp.html#a5d09137f6373e95a692c4b3403729254">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a5d09137f6373e95a692c4b3403729254">lcd.h</a>
-</li>
-<li>lcdPrintf()
-: <a class="el" href="lcd_8cpp.html#a49c322ad29410ea292f8d976baf6deb9">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a49c322ad29410ea292f8d976baf6deb9">lcd.h</a>
-</li>
-<li>lcdPutchar()
-: <a class="el" href="lcd_8cpp.html#a21c60441ee22710add0c9bda1310ed66">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a21c60441ee22710add0c9bda1310ed66">lcd.h</a>
-</li>
-<li>lcdPuts()
-: <a class="el" href="lcd_8cpp.html#a805efc4a96cca29544672151a9594c20">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a805efc4a96cca29544672151a9594c20">lcd.h</a>
-</li>
-<li>lcdSendCommand()
-: <a class="el" href="lcd_8cpp.html#abb6341df42d0e652db66e51fbf0ba486">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#abb6341df42d0e652db66e51fbf0ba486">lcd.h</a>
-</li>
-<li>logger()
-: <a class="el" href="logger_8cpp.html#a1f2dbdf600d66c1c1bcc820d0282d132">logger.cpp</a>
-, <a class="el" href="logger_8h.html#a1f2dbdf600d66c1c1bcc820d0282d132">logger.h</a>
-</li>
-<li>logger_error()
-: <a class="el" href="logger_8cpp.html#ab5a2104bf520b79d590c6ef11cdeeb02">logger.cpp</a>
-, <a class="el" href="logger_8h.html#ab5a2104bf520b79d590c6ef11cdeeb02">logger.h</a>
-</li>
-<li>logger_print_time()
-: <a class="el" href="logger_8cpp.html#aeb33ace0bb24787befc4a34c561634b4">logger.cpp</a>
-</li>
-<li>logger_reset()
-: <a class="el" href="logger_8cpp.html#abd01f221b7a194e67bb39d88822c9772">logger.cpp</a>
-, <a class="el" href="logger_8h.html#abd01f221b7a194e67bb39d88822c9772">logger.h</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
-<li>main()
-: <a class="el" href="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97">main.cpp</a>
-</li>
-<li>mainLoop()
-: <a class="el" href="main_8cpp.html#a9a66b873229b4d46cb9f39dddfc1bddb">main.cpp</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
-<li>nullThread()
-: <a class="el" href="timer_8cpp.html#ae9859727c0e51a70b4ff5f47d2527a77">timer.cpp</a>
-, <a class="el" href="timer_8h.html#ae9859727c0e51a70b4ff5f47d2527a77">timer.h</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
-<li>shift_data()
-: <a class="el" href="spi_8cpp.html#aec7140cda479ce5f88361739e86ccecd">spi.cpp</a>
-, <a class="el" href="spi_8h.html#aec7140cda479ce5f88361739e86ccecd">spi.h</a>
-</li>
-<li>shift_init()
-: <a class="el" href="spi_8cpp.html#ac7600504b8cf1ac90ce331a5ed23c3db">spi.cpp</a>
-, <a class="el" href="spi_8h.html#ac7600504b8cf1ac90ce331a5ed23c3db">spi.h</a>
-</li>
-<li>spi_init()
-: <a class="el" href="spi_8cpp.html#ae909944aa85ae98323073c628be541aa">spi.cpp</a>
-, <a class="el" href="spi_8h.html#ae909944aa85ae98323073c628be541aa">spi.h</a>
-</li>
-<li>spi_readwrite()
-: <a class="el" href="spi_8cpp.html#a7402e4a56146a9e3df480b206a3f7e7e">spi.cpp</a>
-, <a class="el" href="spi_8h.html#a7402e4a56146a9e3df480b206a3f7e7e">spi.h</a>
-</li>
-<li>sqlClose()
-: <a class="el" href="database_8cpp.html#a7264f51f982e908b32635e91e6dc0062">database.cpp</a>
-, <a class="el" href="database_8h.html#a7264f51f982e908b32635e91e6dc0062">database.h</a>
-</li>
-<li>sqlExecute()
-: <a class="el" href="database_8cpp.html#afd88a963f835215b8dad9ee9e49866dc">database.cpp</a>
-, <a class="el" href="database_8h.html#afd88a963f835215b8dad9ee9e49866dc">database.h</a>
-</li>
-<li>sqlExecute2()
-: <a class="el" href="database_8cpp.html#a53458fb936962d23efec505a545a9cb8">database.cpp</a>
-</li>
-<li>sqlGetConf()
-: <a class="el" href="database_8cpp.html#aad0e803eda7a440a6063a447cfeca0cd">database.cpp</a>
-, <a class="el" href="database_8h.html#aad0e803eda7a440a6063a447cfeca0cd">database.h</a>
-</li>
-<li>sqlInsertNode()
-: <a class="el" href="database_8h.html#a6ad9c375b101ce2cb461975eb2748b93">database.h</a>
-</li>
-<li>sqlOpen()
-: <a class="el" href="database_8cpp.html#a1885a74e6af3ee510f30f98e60372e3e">database.cpp</a>
-, <a class="el" href="database_8h.html#a1885a74e6af3ee510f30f98e60372e3e">database.h</a>
-</li>
-<li>sqlReadNodes()
-: <a class="el" href="database_8h.html#ae28580072312f213d923d9b145e3dc90">database.h</a>
-</li>
-<li>sqlSetConf()
-: <a class="el" href="database_8cpp.html#a1ce0ac0c58916c138a92d3282f569784">database.cpp</a>
-, <a class="el" href="database_8h.html#a1ce0ac0c58916c138a92d3282f569784">database.h</a>
-</li>
-<li>sqlSetup()
-: <a class="el" href="database_8cpp.html#aaed3fb776c9dc76d262df026803d3b8c">database.cpp</a>
-, <a class="el" href="database_8h.html#aaed3fb776c9dc76d262df026803d3b8c">database.h</a>
-</li>
-<li>sqltest()
-: <a class="el" href="database_8cpp.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">database.cpp</a>
-, <a class="el" href="database_8h.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">database.h</a>
-</li>
-<li>string_sprintf()
-: <a class="el" href="database_8cpp.html#acd0eb5a18168fa3c37fab8ed0958c043">database.cpp</a>
-, <a class="el" href="database_8h.html#a6c0bc3256310fd400a26243d8a8f1652">database.h</a>
-</li>
-<li>string_vsprintf()
-: <a class="el" href="database_8cpp.html#ac240bb02efe882b4e82da48676301d89">database.cpp</a>
-</li>
-<li>stripeCommand()
-: <a class="el" href="stripe_8cpp.html#ab58f9b853bd6c2deb11f6b64e6275cd7">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#ab58f9b853bd6c2deb11f6b64e6275cd7">stripe.h</a>
-</li>
-<li>stripeEffectDisable()
-: <a class="el" href="stripe_8cpp.html#a40cca6b9cc8aeca2f28442126528163b">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a40cca6b9cc8aeca2f28442126528163b">stripe.h</a>
-</li>
-<li>stripeEffectHeating()
-: <a class="el" href="stripe_8cpp.html#a97c35798100bbf3208fd15cc5615cd97">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a97c35798100bbf3208fd15cc5615cd97">stripe.h</a>
-</li>
-<li>stripeEffectPulse()
-: <a class="el" href="stripe_8cpp.html#aea3ed8a6a2d07ed7f8f2ff59f6fa3a01">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#aea3ed8a6a2d07ed7f8f2ff59f6fa3a01">stripe.h</a>
-</li>
-<li>stripeGetDim()
-: <a class="el" href="stripe_8cpp.html#ab479c1db854476cf80b86d1fe33a908e">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#ab479c1db854476cf80b86d1fe33a908e">stripe.h</a>
-</li>
-<li>stripeGetRGB()
-: <a class="el" href="stripe_8cpp.html#ac5379b3ade62c829d19654c22efd90de">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#ac5379b3ade62c829d19654c22efd90de">stripe.h</a>
-</li>
-<li>stripeGetWhite()
-: <a class="el" href="stripe_8cpp.html#aa67941dfd018cc2e0ba62a76a3d9136d">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#aa67941dfd018cc2e0ba62a76a3d9136d">stripe.h</a>
-</li>
-<li>stripeInit()
-: <a class="el" href="stripe_8cpp.html#a21c653d98b869951f96654ccb3a4b290">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a21c653d98b869951f96654ccb3a4b290">stripe.h</a>
-</li>
-<li>stripeOff()
-: <a class="el" href="stripe_8cpp.html#a40d444a306464fa8547feea96737ae0d">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a40d444a306464fa8547feea96737ae0d">stripe.h</a>
-</li>
-<li>stripeOn()
-: <a class="el" href="stripe_8cpp.html#a9130dbeb208c1b9e5519834f7de6a530">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a9130dbeb208c1b9e5519834f7de6a530">stripe.h</a>
-</li>
-<li>stripeSetColor()
-: <a class="el" href="stripe_8cpp.html#a32197a6a1a75aaf54a2a19dbc31be4e0">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a32197a6a1a75aaf54a2a19dbc31be4e0">stripe.h</a>
-</li>
-<li>stripeSetDim()
-: <a class="el" href="stripe_8cpp.html#ade9bc3e5b3fabc99922d78df6ae96434">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#ade9bc3e5b3fabc99922d78df6ae96434">stripe.h</a>
-</li>
-<li>stripeSetRGB()
-: <a class="el" href="stripe_8cpp.html#a405699059b25eae6001d1e989a1da5d6">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a405699059b25eae6001d1e989a1da5d6">stripe.h</a>
-</li>
-<li>stripeSetTransient()
-: <a class="el" href="stripe_8cpp.html#a26524f75c9d72587489d20bba6c61da6">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a26524f75c9d72587489d20bba6c61da6">stripe.h</a>
-</li>
-<li>stripeSetWhite()
-: <a class="el" href="stripe_8cpp.html#a2ae73653f2098fdae40bb0916949e77e">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a2ae73653f2098fdae40bb0916949e77e">stripe.h</a>
-</li>
-<li>stripeThread()
-: <a class="el" href="stripe_8cpp.html#a914baf734bc672a910769802c1e882c8">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a914baf734bc672a910769802c1e882c8">stripe.h</a>
-</li>
-<li>stripeTimerHandler()
-: <a class="el" href="stripe_8cpp.html#a630b80b8bd1e8a0f535b21a720de76b8">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a630b80b8bd1e8a0f535b21a720de76b8">stripe.h</a>
-</li>
-<li>stripeUpdate()
-: <a class="el" href="stripe_8cpp.html#a79a7d75b45ddbb2b3324ec450658136c">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a79a7d75b45ddbb2b3324ec450658136c">stripe.h</a>
-</li>
-<li>stripeUpdateDim()
-: <a class="el" href="stripe_8cpp.html#a849e5953dbdb82fb8405b1ab43067eed">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a849e5953dbdb82fb8405b1ab43067eed">stripe.h</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
-<li>terminationHandler()
-: <a class="el" href="main_8cpp.html#acd303e48c6d5b8d8bbf55db887f1e7e8">main.cpp</a>
-</li>
-<li>timeHandler()
-: <a class="el" href="main_8cpp.html#a069c1b36dcf7099c23ee7382fd95573b">main.cpp</a>
-</li>
-<li>timer_handler()
-: <a class="el" href="timer_8cpp.html#a69a9ecb245422cbf03f28336a3cde462">timer.cpp</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
-<li>usr1Handler()
-: <a class="el" href="main_8cpp.html#a6b9ec8ce27cbec14222dfd2db55e8bad">main.cpp</a>
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>brewTimeHandler()
+: <a class="el" href="coffee_8cpp.html#a66d75a676639d0f8e56c0efe76547482">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a66d75a676639d0f8e56c0efe76547482">coffee.h</a>
 </li>
 </ul>
 </div><!-- contents -->

+ 168 - 0
CoffeeCode/html/globals_func_c.html

@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li class="current"><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>changeState()
+: <a class="el" href="coffee_8cpp.html#ae4d9681385a3f678dee40458cf55dca0">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#ae4d9681385a3f678dee40458cf55dca0">coffee.h</a>
+</li>
+<li>chartoint()
+: <a class="el" href="database_8h.html#ad2d2a73c367513b8b71aff5546276a3c">database.h</a>
+, <a class="el" href="database_8cpp.html#ad2d2a73c367513b8b71aff5546276a3c">database.cpp</a>
+</li>
+<li>coffeeBrew()
+: <a class="el" href="coffee_8cpp.html#a343324d9863aa6eb3d7e2a183aec4a09">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a343324d9863aa6eb3d7e2a183aec4a09">coffee.h</a>
+</li>
+<li>coffeeHandler()
+: <a class="el" href="coffee_8h.html#a44f0ebaec249d2ce6316c1bddff54d79">coffee.h</a>
+, <a class="el" href="coffee_8cpp.html#a44f0ebaec249d2ce6316c1bddff54d79">coffee.cpp</a>
+</li>
+<li>coffeeIncreaseBrewCounter()
+: <a class="el" href="coffee_8cpp.html#a7c29bb32c4f3971f78dd515e568042c3">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a7c29bb32c4f3971f78dd515e568042c3">coffee.h</a>
+</li>
+<li>coffeeIncreaseHeatingTime()
+: <a class="el" href="coffee_8cpp.html#a11b81e21f5769fc6b0e55ecbac8d3976">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a11b81e21f5769fc6b0e55ecbac8d3976">coffee.h</a>
+</li>
+<li>coffeeTerminate()
+: <a class="el" href="coffee_8cpp.html#a5c611f1d81caf2f51c8b77b307028e4d">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a5c611f1d81caf2f51c8b77b307028e4d">coffee.h</a>
+</li>
+<li>coffeeThread()
+: <a class="el" href="coffee_8h.html#afed8c565650f5808745b6c6c7d45462c">coffee.h</a>
+, <a class="el" href="coffee_8cpp.html#afed8c565650f5808745b6c6c7d45462c">coffee.cpp</a>
+</li>
+<li>crcFast()
+: <a class="el" href="crc_8cpp.html#a31e9ca3a3979a4c1e5043f5bfa5befaf">crc.cpp</a>
+, <a class="el" href="crc_8h.html#a31e9ca3a3979a4c1e5043f5bfa5befaf">crc.h</a>
+</li>
+<li>crcInit()
+: <a class="el" href="crc_8cpp.html#a5a735798e6972adc694a5428dd7ccaf9">crc.cpp</a>
+, <a class="el" href="crc_8h.html#a5a735798e6972adc694a5428dd7ccaf9">crc.h</a>
+</li>
+<li>crcSlow()
+: <a class="el" href="crc_8h.html#a027c2916f24b3daaf662408cc72026b1">crc.h</a>
+, <a class="el" href="crc_8cpp.html#a027c2916f24b3daaf662408cc72026b1">crc.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 165 - 0
CoffeeCode/html/globals_func_d.html

@@ -0,0 +1,165 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li class="current"><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>displayGetString()
+: <a class="el" href="display_8cpp.html#ab2661cdbd686f7d3389a3d9c2cf98f47">display.cpp</a>
+, <a class="el" href="display_8h.html#ab2661cdbd686f7d3389a3d9c2cf98f47">display.h</a>
+</li>
+<li>displayInit()
+: <a class="el" href="display_8h.html#a8c548751802c5960b3092be28cc56d9f">display.h</a>
+, <a class="el" href="display_8cpp.html#a8c548751802c5960b3092be28cc56d9f">display.cpp</a>
+</li>
+<li>displayPrintFlow()
+: <a class="el" href="display_8cpp.html#ae552c34299838e4f57e3516553ed566f">display.cpp</a>
+</li>
+<li>displayPrintLn()
+: <a class="el" href="display_8cpp.html#a2e4f853ea431989d2adc2aeb7a8e46b5">display.cpp</a>
+</li>
+<li>displayPrintTime()
+: <a class="el" href="display_8cpp.html#aad3b4a291f0ad570bb1035a133ec46aa">display.cpp</a>
+</li>
+<li>displayPushState()
+: <a class="el" href="display_8cpp.html#adf85c9537e38ffe3f1ee356a4638880e">display.cpp</a>
+, <a class="el" href="display_8h.html#adf85c9537e38ffe3f1ee356a4638880e">display.h</a>
+</li>
+<li>displayRefresh()
+: <a class="el" href="display_8cpp.html#ac750de2337343c08e5fd88d08316adb2">display.cpp</a>
+, <a class="el" href="display_8h.html#ac750de2337343c08e5fd88d08316adb2">display.h</a>
+</li>
+<li>displaySetLang()
+: <a class="el" href="display_8cpp.html#a9b10d2d49414256ef745f7e910748fee">display.cpp</a>
+, <a class="el" href="display_8h.html#a9b10d2d49414256ef745f7e910748fee">display.h</a>
+</li>
+<li>displayTerminate()
+: <a class="el" href="display_8cpp.html#abfd367c63541be192cdc63d6e8b38a79">display.cpp</a>
+, <a class="el" href="display_8h.html#abfd367c63541be192cdc63d6e8b38a79">display.h</a>
+</li>
+<li>displayThread()
+: <a class="el" href="display_8h.html#ab2db422e214d76776b8a375787d1384c">display.h</a>
+, <a class="el" href="display_8cpp.html#ab2db422e214d76776b8a375787d1384c">display.cpp</a>
+</li>
+<li>displayTimerHandler()
+: <a class="el" href="display_8h.html#ab5eb6b80aca0f751332c47c410d06a2a">display.h</a>
+, <a class="el" href="display_8cpp.html#ab5eb6b80aca0f751332c47c410d06a2a">display.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 132 - 0
CoffeeCode/html/globals_func_g.html

@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li class="current"><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>getSigValue()
+: <a class="el" href="coffee_8cpp.html#a3290268b8fcbba9a6b642b68860a8503">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a3290268b8fcbba9a6b642b68860a8503">coffee.h</a>
+</li>
+<li>getState()
+: <a class="el" href="coffee_8cpp.html#afc0b4325b7cabe49f623d5e44aaa37d7">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#afc0b4325b7cabe49f623d5e44aaa37d7">coffee.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 211 - 0
CoffeeCode/html/globals_func_h.html

@@ -0,0 +1,211 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li class="current"><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>halGetFlow()
+: <a class="el" href="hal_8cpp.html#a1a0d534518ff19bf5b023dfe64d141db">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a1a0d534518ff19bf5b023dfe64d141db">hal.h</a>
+</li>
+<li>halGetInt0()
+: <a class="el" href="hal_8h.html#af5609d1b9c9b6bde787cdca47b3b0a4f">hal.h</a>
+, <a class="el" href="hal_8cpp.html#af5609d1b9c9b6bde787cdca47b3b0a4f">hal.cpp</a>
+</li>
+<li>halGetInt1()
+: <a class="el" href="hal_8cpp.html#afe1e8d0d1237d0f128d50a5b146002a2">hal.cpp</a>
+, <a class="el" href="hal_8h.html#afe1e8d0d1237d0f128d50a5b146002a2">hal.h</a>
+</li>
+<li>halGetRelaisState()
+: <a class="el" href="hal_8h.html#a1d22d01f1a6a6789f2816e27bbcb0504">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a1d22d01f1a6a6789f2816e27bbcb0504">hal.cpp</a>
+</li>
+<li>halInit()
+: <a class="el" href="hal_8cpp.html#afd89c1650df524d95aef39b8bc38170d">hal.cpp</a>
+, <a class="el" href="hal_8h.html#afd89c1650df524d95aef39b8bc38170d">hal.h</a>
+</li>
+<li>halInt0()
+: <a class="el" href="hal_8cpp.html#a597258a80a0bb18db649d01b0893c99f">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a597258a80a0bb18db649d01b0893c99f">hal.h</a>
+</li>
+<li>halInt0TimerHandler()
+: <a class="el" href="hal_8cpp.html#aa52d1bfb2ca68e499ad83d9b0d1ba275">hal.cpp</a>
+, <a class="el" href="hal_8h.html#aa52d1bfb2ca68e499ad83d9b0d1ba275">hal.h</a>
+</li>
+<li>halInt1()
+: <a class="el" href="hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a603aaa9c0c3cfef8b185df5c7f4921c3">hal.cpp</a>
+</li>
+<li>halInt1TimerHandler()
+: <a class="el" href="hal_8cpp.html#ad56f6e1b04c236040717eadfd806c244">hal.cpp</a>
+, <a class="el" href="hal_8h.html#ad56f6e1b04c236040717eadfd806c244">hal.h</a>
+</li>
+<li>halIntFlow()
+: <a class="el" href="hal_8cpp.html#ace9ace8c7e0012157569f446d4cb8c52">hal.cpp</a>
+, <a class="el" href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">hal.h</a>
+</li>
+<li>halIntPressure()
+: <a class="el" href="hal_8cpp.html#a73067106de2bbcf98bcc3a06cbf3b000">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a73067106de2bbcf98bcc3a06cbf3b000">hal.h</a>
+</li>
+<li>halIntProximity()
+: <a class="el" href="hal_8cpp.html#a0622583e0c8453a6d6963964ad7e7122">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a0622583e0c8453a6d6963964ad7e7122">hal.h</a>
+</li>
+<li>halIsHeating()
+: <a class="el" href="hal_8cpp.html#a01f43f0666520e8d8af65e94fd82a5eb">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a01f43f0666520e8d8af65e94fd82a5eb">hal.h</a>
+</li>
+<li>halMachineOff()
+: <a class="el" href="hal_8cpp.html#a8cefe61db8caf1cbdbc35f680744a3eb">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a8cefe61db8caf1cbdbc35f680744a3eb">hal.h</a>
+</li>
+<li>halMachineOn()
+: <a class="el" href="hal_8cpp.html#a80e05d7e336073450da3168992d58754">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a80e05d7e336073450da3168992d58754">hal.h</a>
+</li>
+<li>halProxSensorCovered()
+: <a class="el" href="hal_8h.html#a52c001b5136b02e19bd00282a137631d">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a52c001b5136b02e19bd00282a137631d">hal.cpp</a>
+</li>
+<li>halRelaisOff()
+: <a class="el" href="hal_8cpp.html#a25c63f62c18555fc1b9b50bcd29f1c7d">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">hal.h</a>
+</li>
+<li>halRelaisOn()
+: <a class="el" href="hal_8h.html#a33e09a3806bdcd5c711e557178335763">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a33e09a3806bdcd5c711e557178335763">hal.cpp</a>
+</li>
+<li>halRelaisSet()
+: <a class="el" href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a9b67b274703f0c42834f4b447d5c04a2">hal.cpp</a>
+</li>
+<li>halResetFlow()
+: <a class="el" href="hal_8cpp.html#a99d0fb6a80635b679cf4cd1fa90b483d">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a99d0fb6a80635b679cf4cd1fa90b483d">hal.h</a>
+</li>
+<li>halSendSignal()
+: <a class="el" href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a252f49661ac23a045bb0d9d20997dfa4">hal.cpp</a>
+</li>
+<li>hupHandler()
+: <a class="el" href="main_8cpp.html#aa5f8eab61a77d6d566215bcf12144422">main.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 140 - 0
CoffeeCode/html/globals_func_i.html

@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li class="current"><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>initTimers()
+: <a class="el" href="timer_8cpp.html#a9e737e3249388fb2e50d868bad69c688">timer.cpp</a>
+, <a class="el" href="timer_8h.html#a9e737e3249388fb2e50d868bad69c688">timer.h</a>
+</li>
+<li>int64to8bit()
+: <a class="el" href="database_8h.html#a28dbbb9e24e2035535645629105aea46">database.h</a>
+, <a class="el" href="database_8cpp.html#a28dbbb9e24e2035535645629105aea46">database.cpp</a>
+</li>
+<li>int8to64bit()
+: <a class="el" href="database_8cpp.html#a99cc529fd785c752cd4b73ea7989521d">database.cpp</a>
+, <a class="el" href="database_8h.html#a99cc529fd785c752cd4b73ea7989521d">database.h</a>
+</li>
+<li>inttochar()
+: <a class="el" href="database_8h.html#a437086982a7400d7205f3ab6600e6dcf">database.h</a>
+, <a class="el" href="database_8cpp.html#a437086982a7400d7205f3ab6600e6dcf">database.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 128 - 0
CoffeeCode/html/globals_func_k.html

@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li class="current"><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
+<li>killThread()
+: <a class="el" href="global_8h.html#ab6e46b0071bb3330546b7f2b601d0a6c">global.h</a>
+, <a class="el" href="main_8cpp.html#ab6e46b0071bb3330546b7f2b601d0a6c">main.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 191 - 0
CoffeeCode/html/globals_func_l.html

@@ -0,0 +1,191 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li class="current"><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>lcdCharDef()
+: <a class="el" href="lcd_8cpp.html#a74d902393394e4d3cebdcf0d81bbaeeb">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#a74d902393394e4d3cebdcf0d81bbaeeb">lcd.h</a>
+</li>
+<li>lcdClear()
+: <a class="el" href="lcd_8h.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcd.cpp</a>
+</li>
+<li>lcdCursor()
+: <a class="el" href="lcd_8cpp.html#a8aa13c894973d52eeed51d10bf869df2">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#a8aa13c894973d52eeed51d10bf869df2">lcd.h</a>
+</li>
+<li>lcdCursorBlink()
+: <a class="el" href="lcd_8h.html#af39d67df7e36291184f69691bb97285b">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#af39d67df7e36291184f69691bb97285b">lcd.cpp</a>
+</li>
+<li>lcdDisplay()
+: <a class="el" href="lcd_8cpp.html#af08385cd21eea125d63d6919ecfbea4a">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#af08385cd21eea125d63d6919ecfbea4a">lcd.h</a>
+</li>
+<li>lcdHome()
+: <a class="el" href="lcd_8cpp.html#a688913764edb3a241c26da5e51d70ac2">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#a688913764edb3a241c26da5e51d70ac2">lcd.h</a>
+</li>
+<li>lcdInit()
+: <a class="el" href="lcd_8cpp.html#a88d70347308e92cb29eb45b505cad39e">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#a88d70347308e92cb29eb45b505cad39e">lcd.h</a>
+</li>
+<li>lcdInitI()
+: <a class="el" href="lcd_8h.html#a47f05b4cef2cf066cf1cbb1beb7ceb31">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#a47f05b4cef2cf066cf1cbb1beb7ceb31">lcd.cpp</a>
+</li>
+<li>lcdPosition()
+: <a class="el" href="lcd_8cpp.html#a5d09137f6373e95a692c4b3403729254">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#a5d09137f6373e95a692c4b3403729254">lcd.h</a>
+</li>
+<li>lcdPrintf()
+: <a class="el" href="lcd_8cpp.html#a49c322ad29410ea292f8d976baf6deb9">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#a49c322ad29410ea292f8d976baf6deb9">lcd.h</a>
+</li>
+<li>lcdPutchar()
+: <a class="el" href="lcd_8cpp.html#a21c60441ee22710add0c9bda1310ed66">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#a21c60441ee22710add0c9bda1310ed66">lcd.h</a>
+</li>
+<li>lcdPuts()
+: <a class="el" href="lcd_8h.html#a805efc4a96cca29544672151a9594c20">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#a805efc4a96cca29544672151a9594c20">lcd.cpp</a>
+</li>
+<li>lcdSendCommand()
+: <a class="el" href="lcd_8h.html#abb6341df42d0e652db66e51fbf0ba486">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#abb6341df42d0e652db66e51fbf0ba486">lcd.cpp</a>
+</li>
+<li>logger()
+: <a class="el" href="logger_8h.html#a1f2dbdf600d66c1c1bcc820d0282d132">logger.h</a>
+, <a class="el" href="logger_8cpp.html#a1f2dbdf600d66c1c1bcc820d0282d132">logger.cpp</a>
+</li>
+<li>logger_error()
+: <a class="el" href="logger_8cpp.html#ab5a2104bf520b79d590c6ef11cdeeb02">logger.cpp</a>
+, <a class="el" href="logger_8h.html#ab5a2104bf520b79d590c6ef11cdeeb02">logger.h</a>
+</li>
+<li>logger_print_time()
+: <a class="el" href="logger_8cpp.html#aeb33ace0bb24787befc4a34c561634b4">logger.cpp</a>
+</li>
+<li>logger_reset()
+: <a class="el" href="logger_8h.html#abd01f221b7a194e67bb39d88822c9772">logger.h</a>
+, <a class="el" href="logger_8cpp.html#abd01f221b7a194e67bb39d88822c9772">logger.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 130 - 0
CoffeeCode/html/globals_func_m.html

@@ -0,0 +1,130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li class="current"><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>main()
+: <a class="el" href="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97">main.cpp</a>
+</li>
+<li>mainLoop()
+: <a class="el" href="main_8cpp.html#a9a66b873229b4d46cb9f39dddfc1bddb">main.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 128 - 0
CoffeeCode/html/globals_func_n.html

@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li class="current"><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>nullThread()
+: <a class="el" href="timer_8cpp.html#ae9859727c0e51a70b4ff5f47d2527a77">timer.cpp</a>
+, <a class="el" href="timer_8h.html#ae9859727c0e51a70b4ff5f47d2527a77">timer.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 262 - 0
CoffeeCode/html/globals_func_s.html

@@ -0,0 +1,262 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li class="current"><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>shift_data()
+: <a class="el" href="spi_8cpp.html#aec7140cda479ce5f88361739e86ccecd">spi.cpp</a>
+, <a class="el" href="spi_8h.html#aec7140cda479ce5f88361739e86ccecd">spi.h</a>
+</li>
+<li>shift_init()
+: <a class="el" href="spi_8h.html#ac7600504b8cf1ac90ce331a5ed23c3db">spi.h</a>
+, <a class="el" href="spi_8cpp.html#ac7600504b8cf1ac90ce331a5ed23c3db">spi.cpp</a>
+</li>
+<li>SigValueEmpty()
+: <a class="el" href="coffee_8cpp.html#a63f25020d1567a2d5e03a9a59e75a0fc">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a63f25020d1567a2d5e03a9a59e75a0fc">coffee.h</a>
+</li>
+<li>spi_init()
+: <a class="el" href="spi_8h.html#ae909944aa85ae98323073c628be541aa">spi.h</a>
+, <a class="el" href="spi_8cpp.html#ae909944aa85ae98323073c628be541aa">spi.cpp</a>
+</li>
+<li>spi_readwrite()
+: <a class="el" href="spi_8cpp.html#a7402e4a56146a9e3df480b206a3f7e7e">spi.cpp</a>
+, <a class="el" href="spi_8h.html#a7402e4a56146a9e3df480b206a3f7e7e">spi.h</a>
+</li>
+<li>sqlClose()
+: <a class="el" href="database_8cpp.html#a7264f51f982e908b32635e91e6dc0062">database.cpp</a>
+, <a class="el" href="database_8h.html#a7264f51f982e908b32635e91e6dc0062">database.h</a>
+</li>
+<li>sqlExecute()
+: <a class="el" href="database_8cpp.html#afd88a963f835215b8dad9ee9e49866dc">database.cpp</a>
+, <a class="el" href="database_8h.html#afd88a963f835215b8dad9ee9e49866dc">database.h</a>
+</li>
+<li>sqlExecute2()
+: <a class="el" href="database_8cpp.html#a53458fb936962d23efec505a545a9cb8">database.cpp</a>
+</li>
+<li>sqlGetConf()
+: <a class="el" href="database_8cpp.html#aad0e803eda7a440a6063a447cfeca0cd">database.cpp</a>
+, <a class="el" href="database_8h.html#aad0e803eda7a440a6063a447cfeca0cd">database.h</a>
+</li>
+<li>sqlOpen()
+: <a class="el" href="database_8cpp.html#a1885a74e6af3ee510f30f98e60372e3e">database.cpp</a>
+, <a class="el" href="database_8h.html#a1885a74e6af3ee510f30f98e60372e3e">database.h</a>
+</li>
+<li>sqlSetConf()
+: <a class="el" href="database_8cpp.html#a1ce0ac0c58916c138a92d3282f569784">database.cpp</a>
+, <a class="el" href="database_8h.html#a1ce0ac0c58916c138a92d3282f569784">database.h</a>
+</li>
+<li>sqlSetup()
+: <a class="el" href="database_8cpp.html#aaed3fb776c9dc76d262df026803d3b8c">database.cpp</a>
+, <a class="el" href="database_8h.html#aaed3fb776c9dc76d262df026803d3b8c">database.h</a>
+</li>
+<li>sqltest()
+: <a class="el" href="database_8cpp.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">database.cpp</a>
+, <a class="el" href="database_8h.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">database.h</a>
+</li>
+<li>stopTimers()
+: <a class="el" href="timer_8cpp.html#a43ed436d8c1803ced3029a909320a841">timer.cpp</a>
+, <a class="el" href="timer_8h.html#a43ed436d8c1803ced3029a909320a841">timer.h</a>
+</li>
+<li>string_sprintf()
+: <a class="el" href="database_8cpp.html#acd0eb5a18168fa3c37fab8ed0958c043">database.cpp</a>
+, <a class="el" href="database_8h.html#a6c0bc3256310fd400a26243d8a8f1652">database.h</a>
+</li>
+<li>string_vsprintf()
+: <a class="el" href="database_8cpp.html#ac240bb02efe882b4e82da48676301d89">database.cpp</a>
+</li>
+<li>stripeCommand()
+: <a class="el" href="stripe_8h.html#ab58f9b853bd6c2deb11f6b64e6275cd7">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#ab58f9b853bd6c2deb11f6b64e6275cd7">stripe.cpp</a>
+</li>
+<li>stripeEffectDisable()
+: <a class="el" href="stripe_8cpp.html#a40cca6b9cc8aeca2f28442126528163b">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a40cca6b9cc8aeca2f28442126528163b">stripe.h</a>
+</li>
+<li>stripeEffectHeating()
+: <a class="el" href="stripe_8cpp.html#a97c35798100bbf3208fd15cc5615cd97">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a97c35798100bbf3208fd15cc5615cd97">stripe.h</a>
+</li>
+<li>stripeEffectPulse()
+: <a class="el" href="stripe_8cpp.html#aea3ed8a6a2d07ed7f8f2ff59f6fa3a01">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#aea3ed8a6a2d07ed7f8f2ff59f6fa3a01">stripe.h</a>
+</li>
+<li>stripeGetDim()
+: <a class="el" href="stripe_8cpp.html#ab479c1db854476cf80b86d1fe33a908e">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#ab479c1db854476cf80b86d1fe33a908e">stripe.h</a>
+</li>
+<li>stripeGetRGB()
+: <a class="el" href="stripe_8cpp.html#ac5379b3ade62c829d19654c22efd90de">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#ac5379b3ade62c829d19654c22efd90de">stripe.h</a>
+</li>
+<li>stripeGetWhite()
+: <a class="el" href="stripe_8h.html#aa67941dfd018cc2e0ba62a76a3d9136d">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#aa67941dfd018cc2e0ba62a76a3d9136d">stripe.cpp</a>
+</li>
+<li>stripeInit()
+: <a class="el" href="stripe_8cpp.html#aec214522cff28dc1b0f20c2ec2870189">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#aec214522cff28dc1b0f20c2ec2870189">stripe.h</a>
+</li>
+<li>stripeOff()
+: <a class="el" href="stripe_8cpp.html#a40d444a306464fa8547feea96737ae0d">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a40d444a306464fa8547feea96737ae0d">stripe.h</a>
+</li>
+<li>stripeOn()
+: <a class="el" href="stripe_8cpp.html#a9130dbeb208c1b9e5519834f7de6a530">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a9130dbeb208c1b9e5519834f7de6a530">stripe.h</a>
+</li>
+<li>stripeSetColor()
+: <a class="el" href="stripe_8cpp.html#a32197a6a1a75aaf54a2a19dbc31be4e0">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a32197a6a1a75aaf54a2a19dbc31be4e0">stripe.h</a>
+</li>
+<li>stripeSetDim()
+: <a class="el" href="stripe_8cpp.html#ade9bc3e5b3fabc99922d78df6ae96434">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#ade9bc3e5b3fabc99922d78df6ae96434">stripe.h</a>
+</li>
+<li>stripeSetRGB()
+: <a class="el" href="stripe_8cpp.html#a405699059b25eae6001d1e989a1da5d6">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a405699059b25eae6001d1e989a1da5d6">stripe.h</a>
+</li>
+<li>stripeSetTransient()
+: <a class="el" href="stripe_8h.html#a26524f75c9d72587489d20bba6c61da6">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#a26524f75c9d72587489d20bba6c61da6">stripe.cpp</a>
+</li>
+<li>stripeSetWhite()
+: <a class="el" href="stripe_8cpp.html#a2ae73653f2098fdae40bb0916949e77e">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a2ae73653f2098fdae40bb0916949e77e">stripe.h</a>
+</li>
+<li>stripeThread()
+: <a class="el" href="stripe_8h.html#a914baf734bc672a910769802c1e882c8">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#a914baf734bc672a910769802c1e882c8">stripe.cpp</a>
+</li>
+<li>stripeTimerHandler()
+: <a class="el" href="stripe_8h.html#a630b80b8bd1e8a0f535b21a720de76b8">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#a630b80b8bd1e8a0f535b21a720de76b8">stripe.cpp</a>
+</li>
+<li>stripeUpdate()
+: <a class="el" href="stripe_8cpp.html#a79a7d75b45ddbb2b3324ec450658136c">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a79a7d75b45ddbb2b3324ec450658136c">stripe.h</a>
+</li>
+<li>stripeUpdateDim()
+: <a class="el" href="stripe_8cpp.html#a849e5953dbdb82fb8405b1ab43067eed">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a849e5953dbdb82fb8405b1ab43067eed">stripe.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 130 - 0
CoffeeCode/html/globals_func_t.html

@@ -0,0 +1,130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li class="current"><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>terminationHandler()
+: <a class="el" href="main_8cpp.html#acd303e48c6d5b8d8bbf55db887f1e7e8">main.cpp</a>
+</li>
+<li>timer_handler()
+: <a class="el" href="timer_8cpp.html#a69a9ecb245422cbf03f28336a3cde462">timer.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 127 - 0
CoffeeCode/html/globals_func_u.html

@@ -0,0 +1,127 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals_func.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+      <li class="current"><a href="globals_func_u.html#index_u"><span>u</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>usr1Handler()
+: <a class="el" href="main_8cpp.html#a6b9ec8ce27cbec14222dfd2db55e8bad">main.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 140 - 0
CoffeeCode/html/globals_g.html

@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<title>CoffeePi: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">CoffeePi
+   </div>
+   <div id="projectbrief">Coffee machine control for Raspberry Pi</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="globals.html"><span>All</span></a></li>
+      <li><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_vars.html"><span>Variables</span></a></li>
+      <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+      <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="globals.html#index_a"><span>a</span></a></li>
+      <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+      <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+      <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+      <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+      <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li class="current"><a href="globals_g.html#index_g"><span>g</span></a></li>
+      <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+      <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+      <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+      <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+      <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+      <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+      <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+      <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+      <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+      <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+      <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+      <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+      <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+      <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>getSigValue()
+: <a class="el" href="coffee_8cpp.html#a3290268b8fcbba9a6b642b68860a8503">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a3290268b8fcbba9a6b642b68860a8503">coffee.h</a>
+</li>
+<li>getState()
+: <a class="el" href="coffee_8cpp.html#afc0b4325b7cabe49f623d5e44aaa37d7">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#afc0b4325b7cabe49f623d5e44aaa37d7">coffee.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address>
+</body>
+</html>

+ 28 - 8
CoffeeCode/html/globals_h.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li class="current"><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -143,13 +144,21 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="hal_8cpp.html#a597258a80a0bb18db649d01b0893c99f">hal.cpp</a>
 , <a class="el" href="hal_8h.html#a597258a80a0bb18db649d01b0893c99f">hal.h</a>
 </li>
+<li>halInt0TimerHandler
+: <a class="el" href="hal_8cpp.html#ae52d2e251c46b1fa1f9369cf115dc5b2">hal.cpp</a>
+, <a class="el" href="hal_8h.html#aa52d1bfb2ca68e499ad83d9b0d1ba275">hal.h</a>
+</li>
 <li>halInt1()
 : <a class="el" href="hal_8cpp.html#a603aaa9c0c3cfef8b185df5c7f4921c3">hal.cpp</a>
 , <a class="el" href="hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3">hal.h</a>
 </li>
+<li>halInt1TimerHandler
+: <a class="el" href="hal_8cpp.html#af4bfd5892199d0ffad5ba51c44d4295e">hal.cpp</a>
+, <a class="el" href="hal_8h.html#ad56f6e1b04c236040717eadfd806c244">hal.h</a>
+</li>
 <li>halIntFlow()
-: <a class="el" href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">hal.h</a>
-, <a class="el" href="hal_8cpp.html#ace9ace8c7e0012157569f446d4cb8c52">hal.cpp</a>
+: <a class="el" href="hal_8cpp.html#ace9ace8c7e0012157569f446d4cb8c52">hal.cpp</a>
+, <a class="el" href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">hal.h</a>
 </li>
 <li>halIntPressure()
 : <a class="el" href="hal_8cpp.html#a73067106de2bbcf98bcc3a06cbf3b000">hal.cpp</a>
@@ -163,17 +172,25 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="hal_8cpp.html#a01f43f0666520e8d8af65e94fd82a5eb">hal.cpp</a>
 , <a class="el" href="hal_8h.html#a01f43f0666520e8d8af65e94fd82a5eb">hal.h</a>
 </li>
+<li>halMachineOff()
+: <a class="el" href="hal_8cpp.html#a8cefe61db8caf1cbdbc35f680744a3eb">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a8cefe61db8caf1cbdbc35f680744a3eb">hal.h</a>
+</li>
+<li>halMachineOn()
+: <a class="el" href="hal_8cpp.html#a80e05d7e336073450da3168992d58754">hal.cpp</a>
+, <a class="el" href="hal_8h.html#a80e05d7e336073450da3168992d58754">hal.h</a>
+</li>
 <li>halProxSensorCovered()
 : <a class="el" href="hal_8cpp.html#a52c001b5136b02e19bd00282a137631d">hal.cpp</a>
 , <a class="el" href="hal_8h.html#a52c001b5136b02e19bd00282a137631d">hal.h</a>
 </li>
 <li>halRelaisOff()
-: <a class="el" href="hal_8cpp.html#a25c63f62c18555fc1b9b50bcd29f1c7d">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">hal.h</a>
+: <a class="el" href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a25c63f62c18555fc1b9b50bcd29f1c7d">hal.cpp</a>
 </li>
 <li>halRelaisOn()
-: <a class="el" href="hal_8cpp.html#a33e09a3806bdcd5c711e557178335763">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a33e09a3806bdcd5c711e557178335763">hal.h</a>
+: <a class="el" href="hal_8h.html#a33e09a3806bdcd5c711e557178335763">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a33e09a3806bdcd5c711e557178335763">hal.cpp</a>
 </li>
 <li>halRelaisSet()
 : <a class="el" href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">hal.h</a>
@@ -184,12 +201,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="hal_8cpp.html#a99d0fb6a80635b679cf4cd1fa90b483d">hal.cpp</a>
 </li>
 <li>halSendSignal()
-: <a class="el" href="hal_8cpp.html#a252f49661ac23a045bb0d9d20997dfa4">hal.cpp</a>
-, <a class="el" href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">hal.h</a>
+: <a class="el" href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">hal.h</a>
+, <a class="el" href="hal_8cpp.html#a252f49661ac23a045bb0d9d20997dfa4">hal.cpp</a>
 </li>
 <li>HalSig
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">hal.h</a>
 </li>
+<li>heatingTime
+: <a class="el" href="coffee_8cpp.html#ac88c1bf95effb2aeddc71b1c2cf9034b">coffee.cpp</a>
+</li>
 <li>hupHandler()
 : <a class="el" href="main_8cpp.html#aa5f8eab61a77d6d566215bcf12144422">main.cpp</a>
 </li>

+ 5 - 4
CoffeeCode/html/globals_i.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li class="current"><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -132,11 +133,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="timer_8cpp.html#a9e737e3249388fb2e50d868bad69c688">timer.cpp</a>
 , <a class="el" href="timer_8h.html#a9e737e3249388fb2e50d868bad69c688">timer.h</a>
 </li>
-<li>INT0
-: <a class="el" href="hal_8h.html#a7521122e23c8d5c83b2a033b2505c86c">hal.h</a>
+<li>Int0Time
+: <a class="el" href="hal_8cpp.html#a3aca866b54d36fe04db7c5ab8275de1e">hal.cpp</a>
 </li>
-<li>INT1
-: <a class="el" href="hal_8h.html#ae4728496f2ab826d5fc6a63da6cb600b">hal.h</a>
+<li>Int1Time
+: <a class="el" href="hal_8cpp.html#a343efe067e2fa2affd5f15ef3447aaa1">hal.cpp</a>
 </li>
 <li>int64to8bit()
 : <a class="el" href="database_8cpp.html#a28dbbb9e24e2035535645629105aea46">database.cpp</a>

+ 1 - 0
CoffeeCode/html/globals_k.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li class="current"><a href="globals_k.html#index_k"><span>k</span></a></li>

+ 24 - 27
CoffeeCode/html/globals_l.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -119,27 +120,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
 
 <h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
-<li>lastlog
-: <a class="el" href="logger_8cpp.html#a05db4cbb4a1c322f0adebb466081c99e">logger.cpp</a>
-</li>
-<li>lastTC1
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424">database.h</a>
+<li>lang_de
+: <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30">display.h</a>
 </li>
-<li>lastTC2
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5">database.h</a>
+<li>lang_en
+: <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b">display.h</a>
 </li>
-<li>lastTC3
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848">database.h</a>
+<li>lang_last
+: <a class="el" href="display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644">display.h</a>
 </li>
-<li>lastTerm
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4">database.h</a>
+<li>lastlog
+: <a class="el" href="logger_8cpp.html#a05db4cbb4a1c322f0adebb466081c99e">logger.cpp</a>
 </li>
 <li>lastTimer
 : <a class="el" href="timer_8cpp.html#a16ed619aa4eb3fda56a001d0d7a8975d">timer.cpp</a>
 </li>
 <li>lcd
-: <a class="el" href="main_8cpp.html#a9d1129916cfa4cbd7489638ce470c3a4">main.cpp</a>
-, <a class="el" href="global_8h.html#a9d1129916cfa4cbd7489638ce470c3a4">global.h</a>
+: <a class="el" href="display_8cpp.html#a9d1129916cfa4cbd7489638ce470c3a4">display.cpp</a>
 </li>
 <li>LCD_BLINK_CTRL
 : <a class="el" href="lcd_8cpp.html#aa52bab70fab9c117f20d71442de77452">lcd.cpp</a>
@@ -206,12 +203,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="lcd_8h.html#a74d902393394e4d3cebdcf0d81bbaeeb">lcd.h</a>
 </li>
 <li>lcdClear()
-: <a class="el" href="lcd_8h.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcd.h</a>
-, <a class="el" href="lcd_8cpp.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcd.cpp</a>
+: <a class="el" href="lcd_8cpp.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcd.h</a>
 </li>
 <li>lcdCursor()
-: <a class="el" href="lcd_8cpp.html#a8aa13c894973d52eeed51d10bf869df2">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a8aa13c894973d52eeed51d10bf869df2">lcd.h</a>
+: <a class="el" href="lcd_8h.html#a8aa13c894973d52eeed51d10bf869df2">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#a8aa13c894973d52eeed51d10bf869df2">lcd.cpp</a>
 </li>
 <li>lcdCursorBlink()
 : <a class="el" href="lcd_8cpp.html#af39d67df7e36291184f69691bb97285b">lcd.cpp</a>
@@ -234,20 +231,20 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="lcd_8h.html#a47f05b4cef2cf066cf1cbb1beb7ceb31">lcd.h</a>
 </li>
 <li>lcdPosition()
-: <a class="el" href="lcd_8cpp.html#a5d09137f6373e95a692c4b3403729254">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a5d09137f6373e95a692c4b3403729254">lcd.h</a>
+: <a class="el" href="lcd_8h.html#a5d09137f6373e95a692c4b3403729254">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#a5d09137f6373e95a692c4b3403729254">lcd.cpp</a>
 </li>
 <li>lcdPrintf()
-: <a class="el" href="lcd_8h.html#a49c322ad29410ea292f8d976baf6deb9">lcd.h</a>
-, <a class="el" href="lcd_8cpp.html#a49c322ad29410ea292f8d976baf6deb9">lcd.cpp</a>
+: <a class="el" href="lcd_8cpp.html#a49c322ad29410ea292f8d976baf6deb9">lcd.cpp</a>
+, <a class="el" href="lcd_8h.html#a49c322ad29410ea292f8d976baf6deb9">lcd.h</a>
 </li>
 <li>lcdPutchar()
-: <a class="el" href="lcd_8cpp.html#a21c60441ee22710add0c9bda1310ed66">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a21c60441ee22710add0c9bda1310ed66">lcd.h</a>
+: <a class="el" href="lcd_8h.html#a21c60441ee22710add0c9bda1310ed66">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#a21c60441ee22710add0c9bda1310ed66">lcd.cpp</a>
 </li>
 <li>lcdPuts()
-: <a class="el" href="lcd_8cpp.html#a805efc4a96cca29544672151a9594c20">lcd.cpp</a>
-, <a class="el" href="lcd_8h.html#a805efc4a96cca29544672151a9594c20">lcd.h</a>
+: <a class="el" href="lcd_8h.html#a805efc4a96cca29544672151a9594c20">lcd.h</a>
+, <a class="el" href="lcd_8cpp.html#a805efc4a96cca29544672151a9594c20">lcd.cpp</a>
 </li>
 <li>lcds
 : <a class="el" href="lcd_8cpp.html#a6e3994c5175d8609dee2cc8d3bcd66e9">lcd.cpp</a>
@@ -275,8 +272,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="logger_8h.html#a60cbc432422370d29ed1b783be884823ac8041ffa22bc823d4726701cdb13fc13">logger.h</a>
 </li>
 <li>logger()
-: <a class="el" href="logger_8h.html#a1f2dbdf600d66c1c1bcc820d0282d132">logger.h</a>
-, <a class="el" href="logger_8cpp.html#a1f2dbdf600d66c1c1bcc820d0282d132">logger.cpp</a>
+: <a class="el" href="logger_8cpp.html#a1f2dbdf600d66c1c1bcc820d0282d132">logger.cpp</a>
+, <a class="el" href="logger_8h.html#ad6ed0024f33524ff5e96b473a18b44fd">logger.h</a>
 </li>
 <li>logger_error()
 : <a class="el" href="logger_8cpp.html#ab5a2104bf520b79d590c6ef11cdeeb02">logger.cpp</a>

+ 1 - 0
CoffeeCode/html/globals_m.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>

+ 1 - 0
CoffeeCode/html/globals_n.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>

+ 9 - 4
CoffeeCode/html/globals_o.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -119,13 +120,17 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
 
 <h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>optCold
+: <a class="el" href="global_8h.html#a2a24ab7c0142e353c9ce9ca1ee1210bb">global.h</a>
+, <a class="el" href="main_8cpp.html#a2a24ab7c0142e353c9ce9ca1ee1210bb">main.cpp</a>
+</li>
 <li>optDate
-: <a class="el" href="global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c">global.h</a>
-, <a class="el" href="main_8cpp.html#ae88c926fe2a10f736eb01b1d1e899a1c">main.cpp</a>
+: <a class="el" href="main_8cpp.html#ae88c926fe2a10f736eb01b1d1e899a1c">main.cpp</a>
+, <a class="el" href="global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c">global.h</a>
 </li>
 <li>optPower
-: <a class="el" href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">global.h</a>
-, <a class="el" href="main_8cpp.html#a7bfeade3d2f19e8baecdcddd7f9162fa">main.cpp</a>
+: <a class="el" href="main_8cpp.html#a7bfeade3d2f19e8baecdcddd7f9162fa">main.cpp</a>
+, <a class="el" href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">global.h</a>
 </li>
 </ul>
 </div><!-- contents -->

+ 15 - 8
CoffeeCode/html/globals_p.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -119,17 +120,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
 
 <h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
-<li>POLYNOMIAL
-: <a class="el" href="crc_8h.html#ae13d91fe6e514f0aa1caba701ef1ff92">crc.h</a>
+<li>PIN_FLOW
+: <a class="el" href="hal_8h.html#a1b7f077d2a81a295f0f9b0fbf09356ba">hal.h</a>
+</li>
+<li>PIN_INT0
+: <a class="el" href="hal_8h.html#acab09879ef6267b9482f7627c82346bc">hal.h</a>
 </li>
-<li>PRESSURE_CTRL
-: <a class="el" href="hal_8h.html#af9f618757de2bf9051de55c831802f30">hal.h</a>
+<li>PIN_INT1
+: <a class="el" href="hal_8h.html#a987362f14d4ff58584140f09c24a4308">hal.h</a>
 </li>
-<li>PROX_COVERED
-: <a class="el" href="hal_8h.html#a7c6e51c86f643b69623e53eaa62e6cd4">hal.h</a>
+<li>PIN_PRESSURE_CTRL
+: <a class="el" href="hal_8h.html#a95d660a5e62442d33d7cc9d93ffb57b9">hal.h</a>
 </li>
-<li>PROXIMITY_SENSOR
-: <a class="el" href="hal_8h.html#a60cdc9e2a5c04bd14c4c3c6f872ddf29">hal.h</a>
+<li>PIN_PROXIMITY_SENSOR
+: <a class="el" href="hal_8h.html#a4b6bff93c300c970e912b45284fa1d7d">hal.h</a>
+</li>
+<li>POLYNOMIAL
+: <a class="el" href="crc_8h.html#ae13d91fe6e514f0aa1caba701ef1ff92">crc.h</a>
 </li>
 </ul>
 </div><!-- contents -->

+ 4 - 0
CoffeeCode/html/globals_r.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -127,6 +128,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="crc_8h.html#a5aa89bef30ad5bd061deda3eef36e327">crc.h</a>
 , <a class="el" href="crc_8cpp.html#a2354513de80cf643198f44d7030b74d7">crc.cpp</a>
 </li>
+<li>REFRESH_RATE
+: <a class="el" href="display_8h.html#abc2b684fcc127e93aee54a3a45e25a7c">display.h</a>
+</li>
 <li>RELAIS_HEAT
 : <a class="el" href="hal_8h.html#a9b57e326c17e793a2c70b909256734ab">hal.h</a>
 </li>

+ 98 - 32
CoffeeCode/html/globals_s.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -151,12 +152,18 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>SigInt0Rls
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">hal.h</a>
 </li>
+<li>SigInt0RlsLong
+: <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e">hal.h</a>
+</li>
 <li>SigInt1Psh
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">hal.h</a>
 </li>
 <li>SigInt1Rls
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">hal.h</a>
 </li>
+<li>SigInt1RlsLong
+: <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73">hal.h</a>
+</li>
 <li>SigPressCls
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">hal.h</a>
 </li>
@@ -169,6 +176,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>SigProxOpn
 : <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">hal.h</a>
 </li>
+<li>sigValue
+: <a class="el" href="coffee_8cpp.html#a959eceab8fe67a33076aa42e877441a5">coffee.cpp</a>
+</li>
+<li>SigValueEmpty()
+: <a class="el" href="coffee_8cpp.html#a63f25020d1567a2d5e03a9a59e75a0fc">coffee.cpp</a>
+, <a class="el" href="coffee_8h.html#a63f25020d1567a2d5e03a9a59e75a0fc">coffee.h</a>
+</li>
 <li>SPI_CHANNEL
 : <a class="el" href="global_8h.html#aa8cbb3355883e35c18820bfa63c4ce3a">global.h</a>
 </li>
@@ -187,8 +201,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="global_8h.html#ad55c274bf698014e01dbc9afde3fc610">global.h</a>
 </li>
 <li>sqlClose()
-: <a class="el" href="database_8cpp.html#a7264f51f982e908b32635e91e6dc0062">database.cpp</a>
-, <a class="el" href="database_8h.html#a7264f51f982e908b32635e91e6dc0062">database.h</a>
+: <a class="el" href="database_8h.html#a7264f51f982e908b32635e91e6dc0062">database.h</a>
+, <a class="el" href="database_8cpp.html#a7264f51f982e908b32635e91e6dc0062">database.cpp</a>
 </li>
 <li>sqlExecute()
 : <a class="el" href="database_8cpp.html#afd88a963f835215b8dad9ee9e49866dc">database.cpp</a>
@@ -198,19 +212,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="database_8cpp.html#a53458fb936962d23efec505a545a9cb8">database.cpp</a>
 </li>
 <li>sqlGetConf()
-: <a class="el" href="database_8h.html#aad0e803eda7a440a6063a447cfeca0cd">database.h</a>
-, <a class="el" href="database_8cpp.html#aad0e803eda7a440a6063a447cfeca0cd">database.cpp</a>
-</li>
-<li>sqlInsertNode()
-: <a class="el" href="database_8h.html#a6ad9c375b101ce2cb461975eb2748b93">database.h</a>
+: <a class="el" href="database_8cpp.html#aad0e803eda7a440a6063a447cfeca0cd">database.cpp</a>
+, <a class="el" href="database_8h.html#aad0e803eda7a440a6063a447cfeca0cd">database.h</a>
 </li>
 <li>sqlOpen()
 : <a class="el" href="database_8cpp.html#a1885a74e6af3ee510f30f98e60372e3e">database.cpp</a>
 , <a class="el" href="database_8h.html#a1885a74e6af3ee510f30f98e60372e3e">database.h</a>
 </li>
-<li>sqlReadNodes()
-: <a class="el" href="database_8h.html#ae28580072312f213d923d9b145e3dc90">database.h</a>
-</li>
 <li>sqlSetConf()
 : <a class="el" href="database_8cpp.html#a1ce0ac0c58916c138a92d3282f569784">database.cpp</a>
 , <a class="el" href="database_8h.html#a1ce0ac0c58916c138a92d3282f569784">database.h</a>
@@ -223,6 +231,64 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="database_8cpp.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">database.cpp</a>
 , <a class="el" href="database_8h.html#a5d0363e5d886e2c3e4bb5ca46d265ba7">database.h</a>
 </li>
+<li>state
+: <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">coffee.cpp</a>
+</li>
+<li>STATE_BREW
+: <a class="el" href="coffee_8h.html#a7a56332694aec763a9f8028113a07199">coffee.h</a>
+</li>
+<li>STATE_BREWMANUAL
+: <a class="el" href="coffee_8h.html#af696741daae3faab28c27755188fd828">coffee.h</a>
+</li>
+<li>STATE_CLEANING
+: <a class="el" href="coffee_8h.html#a3a3e5a95a5ba91345c6a1b6f7e06c737">coffee.h</a>
+</li>
+<li>STATE_ERROR
+: <a class="el" href="coffee_8h.html#a7bf0c086c7c41c12cc63324327932d91">coffee.h</a>
+</li>
+<li>STATE_HEATING
+: <a class="el" href="coffee_8h.html#ab87d7787dc7a2c2afc6d7853353d7003">coffee.h</a>
+</li>
+<li>STATE_IDLE
+: <a class="el" href="coffee_8h.html#aafff27c7165f059a969fe60fee51f683">coffee.h</a>
+</li>
+<li>STATE_INITALHEATING
+: <a class="el" href="coffee_8h.html#af74b21e82c0f8fbf7f697db071d420a0">coffee.h</a>
+</li>
+<li>STATE_OFF
+: <a class="el" href="coffee_8h.html#a0cc0d45e13bc83065d45df9d3d1dc887">coffee.h</a>
+</li>
+<li>stopTimers()
+: <a class="el" href="timer_8cpp.html#a43ed436d8c1803ced3029a909320a841">timer.cpp</a>
+, <a class="el" href="timer_8h.html#a43ed436d8c1803ced3029a909320a841">timer.h</a>
+</li>
+<li>str_brewing
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272">display.h</a>
+</li>
+<li>str_bye
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb">display.h</a>
+</li>
+<li>str_cleaning
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c">display.h</a>
+</li>
+<li>str_error
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890">display.h</a>
+</li>
+<li>str_flow
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572">display.h</a>
+</li>
+<li>str_heating
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624">display.h</a>
+</li>
+<li>str_heatingready
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0">display.h</a>
+</li>
+<li>str_last
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9">display.h</a>
+</li>
+<li>str_ready
+: <a class="el" href="display_8h.html#a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171">display.h</a>
+</li>
 <li>string_sprintf()
 : <a class="el" href="database_8cpp.html#acd0eb5a18168fa3c37fab8ed0958c043">database.cpp</a>
 , <a class="el" href="database_8h.html#a6c0bc3256310fd400a26243d8a8f1652">database.h</a>
@@ -267,8 +333,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="stripe_8h.html#aa761062faf633557e537e07a781965e9">stripe.h</a>
 </li>
 <li>stripeCommand()
-: <a class="el" href="stripe_8h.html#ab58f9b853bd6c2deb11f6b64e6275cd7">stripe.h</a>
-, <a class="el" href="stripe_8cpp.html#ab58f9b853bd6c2deb11f6b64e6275cd7">stripe.cpp</a>
+: <a class="el" href="stripe_8cpp.html#ab58f9b853bd6c2deb11f6b64e6275cd7">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#ab58f9b853bd6c2deb11f6b64e6275cd7">stripe.h</a>
 </li>
 <li>stripeEffectDisable()
 : <a class="el" href="stripe_8cpp.html#a40cca6b9cc8aeca2f28442126528163b">stripe.cpp</a>
@@ -283,32 +349,32 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="stripe_8h.html#aea3ed8a6a2d07ed7f8f2ff59f6fa3a01">stripe.h</a>
 </li>
 <li>stripeGetDim()
-: <a class="el" href="stripe_8cpp.html#ab479c1db854476cf80b86d1fe33a908e">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#ab479c1db854476cf80b86d1fe33a908e">stripe.h</a>
+: <a class="el" href="stripe_8h.html#ab479c1db854476cf80b86d1fe33a908e">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#ab479c1db854476cf80b86d1fe33a908e">stripe.cpp</a>
 </li>
 <li>stripeGetRGB()
-: <a class="el" href="stripe_8cpp.html#ac5379b3ade62c829d19654c22efd90de">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#ac5379b3ade62c829d19654c22efd90de">stripe.h</a>
+: <a class="el" href="stripe_8h.html#ac5379b3ade62c829d19654c22efd90de">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#ac5379b3ade62c829d19654c22efd90de">stripe.cpp</a>
 </li>
 <li>stripeGetWhite()
-: <a class="el" href="stripe_8cpp.html#aa67941dfd018cc2e0ba62a76a3d9136d">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#aa67941dfd018cc2e0ba62a76a3d9136d">stripe.h</a>
+: <a class="el" href="stripe_8h.html#aa67941dfd018cc2e0ba62a76a3d9136d">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#aa67941dfd018cc2e0ba62a76a3d9136d">stripe.cpp</a>
 </li>
 <li>stripeInit()
-: <a class="el" href="stripe_8cpp.html#a21c653d98b869951f96654ccb3a4b290">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a21c653d98b869951f96654ccb3a4b290">stripe.h</a>
+: <a class="el" href="stripe_8cpp.html#aec214522cff28dc1b0f20c2ec2870189">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#aec214522cff28dc1b0f20c2ec2870189">stripe.h</a>
 </li>
 <li>stripeOff()
 : <a class="el" href="stripe_8h.html#a40d444a306464fa8547feea96737ae0d">stripe.h</a>
 , <a class="el" href="stripe_8cpp.html#a40d444a306464fa8547feea96737ae0d">stripe.cpp</a>
 </li>
 <li>stripeOn()
-: <a class="el" href="stripe_8h.html#a9130dbeb208c1b9e5519834f7de6a530">stripe.h</a>
-, <a class="el" href="stripe_8cpp.html#a9130dbeb208c1b9e5519834f7de6a530">stripe.cpp</a>
+: <a class="el" href="stripe_8cpp.html#a9130dbeb208c1b9e5519834f7de6a530">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a9130dbeb208c1b9e5519834f7de6a530">stripe.h</a>
 </li>
 <li>stripeSetColor()
-: <a class="el" href="stripe_8h.html#a32197a6a1a75aaf54a2a19dbc31be4e0">stripe.h</a>
-, <a class="el" href="stripe_8cpp.html#a32197a6a1a75aaf54a2a19dbc31be4e0">stripe.cpp</a>
+: <a class="el" href="stripe_8cpp.html#a32197a6a1a75aaf54a2a19dbc31be4e0">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a32197a6a1a75aaf54a2a19dbc31be4e0">stripe.h</a>
 </li>
 <li>stripeSetDim()
 : <a class="el" href="stripe_8cpp.html#ade9bc3e5b3fabc99922d78df6ae96434">stripe.cpp</a>
@@ -319,12 +385,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="stripe_8h.html#a405699059b25eae6001d1e989a1da5d6">stripe.h</a>
 </li>
 <li>stripeSetTransient()
-: <a class="el" href="stripe_8h.html#a26524f75c9d72587489d20bba6c61da6">stripe.h</a>
-, <a class="el" href="stripe_8cpp.html#a26524f75c9d72587489d20bba6c61da6">stripe.cpp</a>
+: <a class="el" href="stripe_8cpp.html#a26524f75c9d72587489d20bba6c61da6">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a26524f75c9d72587489d20bba6c61da6">stripe.h</a>
 </li>
 <li>stripeSetWhite()
-: <a class="el" href="stripe_8h.html#a2ae73653f2098fdae40bb0916949e77e">stripe.h</a>
-, <a class="el" href="stripe_8cpp.html#a2ae73653f2098fdae40bb0916949e77e">stripe.cpp</a>
+: <a class="el" href="stripe_8cpp.html#a2ae73653f2098fdae40bb0916949e77e">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a2ae73653f2098fdae40bb0916949e77e">stripe.h</a>
 </li>
 <li>stripeThread()
 : <a class="el" href="stripe_8cpp.html#a914baf734bc672a910769802c1e882c8">stripe.cpp</a>
@@ -334,12 +400,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="stripe_8cpp.html#abfdd13da6d6e41a44deb095184750c8e">stripe.cpp</a>
 </li>
 <li>stripeTimerHandler()
-: <a class="el" href="stripe_8h.html#a630b80b8bd1e8a0f535b21a720de76b8">stripe.h</a>
-, <a class="el" href="stripe_8cpp.html#a630b80b8bd1e8a0f535b21a720de76b8">stripe.cpp</a>
+: <a class="el" href="stripe_8cpp.html#a630b80b8bd1e8a0f535b21a720de76b8">stripe.cpp</a>
+, <a class="el" href="stripe_8h.html#a630b80b8bd1e8a0f535b21a720de76b8">stripe.h</a>
 </li>
 <li>stripeUpdate()
-: <a class="el" href="stripe_8cpp.html#a79a7d75b45ddbb2b3324ec450658136c">stripe.cpp</a>
-, <a class="el" href="stripe_8h.html#a79a7d75b45ddbb2b3324ec450658136c">stripe.h</a>
+: <a class="el" href="stripe_8h.html#a79a7d75b45ddbb2b3324ec450658136c">stripe.h</a>
+, <a class="el" href="stripe_8cpp.html#a79a7d75b45ddbb2b3324ec450658136c">stripe.cpp</a>
 </li>
 <li>stripeUpdateDim()
 : <a class="el" href="stripe_8h.html#a849e5953dbdb82fb8405b1ab43067eed">stripe.h</a>

+ 16 - 9
CoffeeCode/html/globals_t.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>
@@ -122,12 +123,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>terminationHandler()
 : <a class="el" href="main_8cpp.html#acd303e48c6d5b8d8bbf55db887f1e7e8">main.cpp</a>
 </li>
-<li>testSlowCnt
-: <a class="el" href="database_8h.html#ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1">database.h</a>
-</li>
 <li>thread
-: <a class="el" href="main_8cpp.html#ad1c21fd320f05c652f120ad167628c14">main.cpp</a>
-, <a class="el" href="global_8h.html#a5e61240888e929e526f41e19b6c0bd46">global.h</a>
+: <a class="el" href="global_8h.html#a5e61240888e929e526f41e19b6c0bd46">global.h</a>
+, <a class="el" href="main_8cpp.html#ad1c21fd320f05c652f120ad167628c14">main.cpp</a>
 </li>
 <li>THREAD_COFFEE
 : <a class="el" href="global_8h.html#a5f697926bb7bcc4722a9e650a1acdb6a">global.h</a>
@@ -141,8 +139,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>THREAD_STRIPE
 : <a class="el" href="global_8h.html#a77f390a98c0e73ae38abd20f467d6cce">global.h</a>
 </li>
-<li>timeHandler
-: <a class="el" href="main_8cpp.html#a00359617f7973ce34d269f7dfd41c11b">main.cpp</a>
+<li>TIME_BUTTONLONGPRESS
+: <a class="el" href="hal_8h.html#a39a999d4c82a1021ee63072abe804946">hal.h</a>
+</li>
+<li>TIME_INFUSION
+: <a class="el" href="coffee_8h.html#acd34aefc536dfe9b45dbed679cf6afaf">coffee.h</a>
+</li>
+<li>TIME_SOAK
+: <a class="el" href="coffee_8h.html#ad4b00557d847ecf54b790844b3be2eb0">coffee.h</a>
 </li>
 <li>TIMER_DELAY_US
 : <a class="el" href="global_8h.html#a91dee3a4ce745234c8a4998388d6c645">global.h</a>
@@ -153,6 +157,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>timercnt
 : <a class="el" href="timer_8cpp.html#a0f94d5829b547df53531ff4c3ec325c0">timer.cpp</a>
 </li>
+<li>timerScaler
+: <a class="el" href="display_8cpp.html#adf977b563dc485f1d1c4e601a9b31b68">display.cpp</a>
+</li>
 <li>TOPBIT
 : <a class="el" href="crc_8cpp.html#a118ad552670dbefa1df0ba72d147f5e1">crc.cpp</a>
 </li>
@@ -169,8 +176,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="stripe_8h.html#aa761062faf633557e537e07a781965e9ad1105b7089df16f505a8c28ef4e31f04">stripe.h</a>
 </li>
 <li>TRUE
-: <a class="el" href="crc_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d">crc.h</a>
-, <a class="el" href="lcd_8cpp.html#aa8cecfc5c5c054d2875c03e77b7be15d">lcd.cpp</a>
+: <a class="el" href="lcd_8cpp.html#aa8cecfc5c5c054d2875c03e77b7be15d">lcd.cpp</a>
+, <a class="el" href="crc_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d">crc.h</a>
 </li>
 </ul>
 </div><!-- contents -->

+ 1 - 0
CoffeeCode/html/globals_u.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>

+ 1 - 0
CoffeeCode/html/globals_v.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>

+ 131 - 10
CoffeeCode/html/globals_vars.html

@@ -76,6 +76,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_defs.html"><span>Macros</span></a></li>
     </ul>
   </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="#index_b"><span>b</span></a></li>
+      <li><a href="#index_c"><span>c</span></a></li>
+      <li><a href="#index_d"><span>d</span></a></li>
+      <li><a href="#index_e"><span>e</span></a></li>
+      <li><a href="#index_f"><span>f</span></a></li>
+      <li><a href="#index_h"><span>h</span></a></li>
+      <li><a href="#index_i"><span>i</span></a></li>
+      <li><a href="#index_l"><span>l</span></a></li>
+      <li><a href="#index_m"><span>m</span></a></li>
+      <li><a href="#index_o"><span>o</span></a></li>
+      <li><a href="#index_s"><span>s</span></a></li>
+      <li><a href="#index_t"><span>t</span></a></li>
+      <li class="current"><a href="#index_v"><span>v</span></a></li>
+    </ul>
+  </div>
 </div><!-- top -->
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
@@ -92,10 +109,28 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div>
 
 <div class="contents">
-&#160;<ul>
+&#160;
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>beginHeating
+: <a class="el" href="coffee_8cpp.html#a1426cd37aa49a96e7bcf12d26cde1a0d">coffee.cpp</a>
+</li>
+<li>brewTime
+: <a class="el" href="coffee_8cpp.html#a3756d547bc4c41a306650f4f4bbb930c">coffee.cpp</a>
+</li>
+<li>brewTimeHandler
+: <a class="el" href="coffee_8cpp.html#a25ddb2af4585729d37dab1e1b5bb0b06">coffee.cpp</a>
+</li>
 <li>buildno
 : <a class="el" href="main_8cpp.html#ac70430026dcf56f46e5426e1d01d7e89">main.cpp</a>
 </li>
+</ul>
+
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>coffeeState
+: <a class="el" href="display_8cpp.html#a8f3437c133bc4d1be650cbbc5128f1a8">display.cpp</a>
+</li>
 <li>counter
 : <a class="el" href="timer_8cpp.html#a617a47c70795bcff659815ad0efd2266">timer.cpp</a>
 </li>
@@ -114,21 +149,78 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>currentWhite
 : <a class="el" href="stripe_8cpp.html#aeb79ac3025329db68dba76aa2e830532">stripe.cpp</a>
 </li>
+</ul>
+
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
 <li>db
 : <a class="el" href="database_8cpp.html#ad6e663497d2c934364b3bcf07496b30b">database.cpp</a>
 </li>
+<li>displayLang
+: <a class="el" href="display_8cpp.html#ae110c5cc57190b02aaa0d543a80cdc20">display.cpp</a>
+</li>
+<li>displayTimer
+: <a class="el" href="display_8cpp.html#afebf5c16da7043af9cbd74ef9f489ea7">display.cpp</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
 <li>effectColor
 : <a class="el" href="stripe_8cpp.html#a8b61b922f1ae5a0c5854e3a318b74421">stripe.cpp</a>
 </li>
+<li>elapsedCnt
+: <a class="el" href="display_8cpp.html#a01cd2b69770b3c4cd7adc6e27d48c28a">display.cpp</a>
+</li>
+<li>endHeating
+: <a class="el" href="coffee_8cpp.html#a1aaa11435974ab87937d68b01ee71074">coffee.cpp</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
 <li>firstTimer
 : <a class="el" href="timer_8cpp.html#acb6f6b56b317d16d17fd2f6df17547c3">timer.cpp</a>
 </li>
+<li>flagIgnoreRlsInt0
+: <a class="el" href="hal_8cpp.html#a9f94cedad944b6df4483a76b0a4d2b0a">hal.cpp</a>
+</li>
+<li>flagIgnoreRlsInt1
+: <a class="el" href="hal_8cpp.html#a8980baab65c90a16ef8189ed5b1ab7fe">hal.cpp</a>
+</li>
 <li>flowcnt
 : <a class="el" href="hal_8cpp.html#ae5ae572f06dd4838027976f9ab3fdc62">hal.cpp</a>
 </li>
+</ul>
+
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>halInt0TimerHandler
+: <a class="el" href="hal_8cpp.html#ae52d2e251c46b1fa1f9369cf115dc5b2">hal.cpp</a>
+</li>
+<li>halInt1TimerHandler
+: <a class="el" href="hal_8cpp.html#af4bfd5892199d0ffad5ba51c44d4295e">hal.cpp</a>
+</li>
+<li>heatingTime
+: <a class="el" href="coffee_8cpp.html#ac88c1bf95effb2aeddc71b1c2cf9034b">coffee.cpp</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
 <li>i2cfd
 : <a class="el" href="stripe_8cpp.html#ad82fe3818283681900e35187390d4b84">stripe.cpp</a>
 </li>
+<li>Int0Time
+: <a class="el" href="hal_8cpp.html#a3aca866b54d36fe04db7c5ab8275de1e">hal.cpp</a>
+</li>
+<li>Int1Time
+: <a class="el" href="hal_8cpp.html#a343efe067e2fa2affd5f15ef3447aaa1">hal.cpp</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
 <li>lastlog
 : <a class="el" href="logger_8cpp.html#a05db4cbb4a1c322f0adebb466081c99e">logger.cpp</a>
 </li>
@@ -136,37 +228,66 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="timer_8cpp.html#a16ed619aa4eb3fda56a001d0d7a8975d">timer.cpp</a>
 </li>
 <li>lcd
-: <a class="el" href="global_8h.html#a9d1129916cfa4cbd7489638ce470c3a4">global.h</a>
-, <a class="el" href="main_8cpp.html#a9d1129916cfa4cbd7489638ce470c3a4">main.cpp</a>
+: <a class="el" href="display_8cpp.html#a9d1129916cfa4cbd7489638ce470c3a4">display.cpp</a>
 </li>
 <li>lcds
 : <a class="el" href="lcd_8cpp.html#a6e3994c5175d8609dee2cc8d3bcd66e9">lcd.cpp</a>
 </li>
+</ul>
+
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
 <li>mutex
 : <a class="el" href="global_8h.html#a4acff8232e4aec9cd5c6dc200ac55ef3">global.h</a>
 , <a class="el" href="main_8cpp.html#a4acff8232e4aec9cd5c6dc200ac55ef3">main.cpp</a>
 </li>
+</ul>
+
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>optCold
+: <a class="el" href="global_8h.html#a2a24ab7c0142e353c9ce9ca1ee1210bb">global.h</a>
+, <a class="el" href="main_8cpp.html#a2a24ab7c0142e353c9ce9ca1ee1210bb">main.cpp</a>
+</li>
 <li>optDate
-: <a class="el" href="global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c">global.h</a>
-, <a class="el" href="main_8cpp.html#ae88c926fe2a10f736eb01b1d1e899a1c">main.cpp</a>
+: <a class="el" href="main_8cpp.html#ae88c926fe2a10f736eb01b1d1e899a1c">main.cpp</a>
+, <a class="el" href="global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c">global.h</a>
 </li>
 <li>optPower
-: <a class="el" href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">global.h</a>
-, <a class="el" href="main_8cpp.html#a7bfeade3d2f19e8baecdcddd7f9162fa">main.cpp</a>
+: <a class="el" href="main_8cpp.html#a7bfeade3d2f19e8baecdcddd7f9162fa">main.cpp</a>
+, <a class="el" href="global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa">global.h</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>sigValue
+: <a class="el" href="coffee_8cpp.html#a959eceab8fe67a33076aa42e877441a5">coffee.cpp</a>
+</li>
+<li>state
+: <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">coffee.cpp</a>
 </li>
 <li>stripeTimer
 : <a class="el" href="stripe_8cpp.html#abfdd13da6d6e41a44deb095184750c8e">stripe.cpp</a>
 </li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
 <li>thread
 : <a class="el" href="global_8h.html#a5e61240888e929e526f41e19b6c0bd46">global.h</a>
 , <a class="el" href="main_8cpp.html#ad1c21fd320f05c652f120ad167628c14">main.cpp</a>
 </li>
-<li>timeHandler
-: <a class="el" href="main_8cpp.html#a00359617f7973ce34d269f7dfd41c11b">main.cpp</a>
-</li>
 <li>timercnt
 : <a class="el" href="timer_8cpp.html#a0f94d5829b547df53531ff4c3ec325c0">timer.cpp</a>
 </li>
+<li>timerScaler
+: <a class="el" href="display_8cpp.html#adf977b563dc485f1d1c4e601a9b31b68">display.cpp</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
 <li>verbose
 : <a class="el" href="global_8h.html#a0b2caeb4b6f130be43e5a2f0267dd453">global.h</a>
 , <a class="el" href="main_8cpp.html#a0b2caeb4b6f130be43e5a2f0267dd453">main.cpp</a>

+ 1 - 0
CoffeeCode/html/globals_w.html

@@ -84,6 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
       <li><a href="globals_d.html#index_d"><span>d</span></a></li>
       <li><a href="globals_e.html#index_e"><span>e</span></a></li>
       <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+      <li><a href="globals_g.html#index_g"><span>g</span></a></li>
       <li><a href="globals_h.html#index_h"><span>h</span></a></li>
       <li><a href="globals_i.html#index_i"><span>i</span></a></li>
       <li><a href="globals_k.html#index_k"><span>k</span></a></li>

+ 175 - 4
CoffeeCode/html/hal_8cpp.html

@@ -93,10 +93,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <code>#include &lt;errno.h&gt;</code><br />
 <code>#include &lt;string.h&gt;</code><br />
 <code>#include &lt;signal.h&gt;</code><br />
-<code>#include &quot;<a class="el" href="lcd_8h_source.html">lcd.h</a>&quot;</code><br />
 <code>#include &quot;<a class="el" href="hal_8h_source.html">hal.h</a>&quot;</code><br />
 <code>#include &quot;<a class="el" href="global_8h_source.html">global.h</a>&quot;</code><br />
 <code>#include &quot;<a class="el" href="logger_8h_source.html">logger.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="timer_8h_source.html">timer.h</a>&quot;</code><br />
 </div><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
 Functions</h2></td></tr>
@@ -109,20 +109,27 @@ Functions</h2></td></tr>
 <tr class="memitem:a25c63f62c18555fc1b9b50bcd29f1c7d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a25c63f62c18555fc1b9b50bcd29f1c7d">halRelaisOff</a> (int relais)</td></tr>
 <tr class="memdesc:a25c63f62c18555fc1b9b50bcd29f1c7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Switches relais off.  <a href="#a25c63f62c18555fc1b9b50bcd29f1c7d">More...</a><br /></td></tr>
 <tr class="separator:a25c63f62c18555fc1b9b50bcd29f1c7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9b67b274703f0c42834f4b447d5c04a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a9b67b274703f0c42834f4b447d5c04a2">halRelaisSet</a> (int relais, int state)</td></tr>
+<tr class="memitem:a9b67b274703f0c42834f4b447d5c04a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a9b67b274703f0c42834f4b447d5c04a2">halRelaisSet</a> (int relais, int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
 <tr class="memdesc:a9b67b274703f0c42834f4b447d5c04a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Switches relais to state.  <a href="#a9b67b274703f0c42834f4b447d5c04a2">More...</a><br /></td></tr>
 <tr class="separator:a9b67b274703f0c42834f4b447d5c04a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a1d22d01f1a6a6789f2816e27bbcb0504"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a1d22d01f1a6a6789f2816e27bbcb0504">halGetRelaisState</a> (int relais)</td></tr>
 <tr class="memdesc:a1d22d01f1a6a6789f2816e27bbcb0504"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the state of the relais relais Returns HIGH when Relais is ON.  <a href="#a1d22d01f1a6a6789f2816e27bbcb0504">More...</a><br /></td></tr>
 <tr class="separator:a1d22d01f1a6a6789f2816e27bbcb0504"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a597258a80a0bb18db649d01b0893c99f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a597258a80a0bb18db649d01b0893c99f">halInt0</a> (void)</td></tr>
+<tr class="memdesc:a597258a80a0bb18db649d01b0893c99f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt routine for Int0 (Top button)  <a href="#a597258a80a0bb18db649d01b0893c99f">More...</a><br /></td></tr>
 <tr class="separator:a597258a80a0bb18db649d01b0893c99f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa52d1bfb2ca68e499ad83d9b0d1ba275"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#aa52d1bfb2ca68e499ad83d9b0d1ba275">halInt0TimerHandler</a> (void)</td></tr>
+<tr class="separator:aa52d1bfb2ca68e499ad83d9b0d1ba275"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a603aaa9c0c3cfef8b185df5c7f4921c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a603aaa9c0c3cfef8b185df5c7f4921c3">halInt1</a> (void)</td></tr>
+<tr class="memdesc:a603aaa9c0c3cfef8b185df5c7f4921c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt routine for Int1 (Bottom button)  <a href="#a603aaa9c0c3cfef8b185df5c7f4921c3">More...</a><br /></td></tr>
 <tr class="separator:a603aaa9c0c3cfef8b185df5c7f4921c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad56f6e1b04c236040717eadfd806c244"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#ad56f6e1b04c236040717eadfd806c244">halInt1TimerHandler</a> (void)</td></tr>
+<tr class="separator:ad56f6e1b04c236040717eadfd806c244"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ace9ace8c7e0012157569f446d4cb8c52"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#ace9ace8c7e0012157569f446d4cb8c52">halIntFlow</a> (void)</td></tr>
+<tr class="memdesc:ace9ace8c7e0012157569f446d4cb8c52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt routine for the flow sensor It counts the edgdes and stores the value in flowcnt.  <a href="#ace9ace8c7e0012157569f446d4cb8c52">More...</a><br /></td></tr>
 <tr class="separator:ace9ace8c7e0012157569f446d4cb8c52"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a73067106de2bbcf98bcc3a06cbf3b000"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a73067106de2bbcf98bcc3a06cbf3b000">halIntPressure</a> (void)</td></tr>
-<tr class="memdesc:a73067106de2bbcf98bcc3a06cbf3b000"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method to handle toggle of the pressure control.  <a href="#a73067106de2bbcf98bcc3a06cbf3b000">More...</a><br /></td></tr>
+<tr class="memdesc:a73067106de2bbcf98bcc3a06cbf3b000"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt routine for the pressure control.  <a href="#a73067106de2bbcf98bcc3a06cbf3b000">More...</a><br /></td></tr>
 <tr class="separator:a73067106de2bbcf98bcc3a06cbf3b000"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a0622583e0c8453a6d6963964ad7e7122"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a0622583e0c8453a6d6963964ad7e7122">halIntProximity</a> (void)</td></tr>
 <tr class="memdesc:a0622583e0c8453a6d6963964ad7e7122"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method to handle toggle of the proximity sensor.  <a href="#a0622583e0c8453a6d6963964ad7e7122">More...</a><br /></td></tr>
@@ -148,11 +155,29 @@ Functions</h2></td></tr>
 <tr class="memitem:a252f49661ac23a045bb0d9d20997dfa4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a252f49661ac23a045bb0d9d20997dfa4">halSendSignal</a> (int val)</td></tr>
 <tr class="memdesc:a252f49661ac23a045bb0d9d20997dfa4"><td class="mdescLeft">&#160;</td><td class="mdescRight">send Signal to coffee thread  <a href="#a252f49661ac23a045bb0d9d20997dfa4">More...</a><br /></td></tr>
 <tr class="separator:a252f49661ac23a045bb0d9d20997dfa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80e05d7e336073450da3168992d58754"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a80e05d7e336073450da3168992d58754">halMachineOn</a> (void)</td></tr>
+<tr class="memdesc:a80e05d7e336073450da3168992d58754"><td class="mdescLeft">&#160;</td><td class="mdescRight">Turn machine on.  <a href="#a80e05d7e336073450da3168992d58754">More...</a><br /></td></tr>
+<tr class="separator:a80e05d7e336073450da3168992d58754"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cefe61db8caf1cbdbc35f680744a3eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a8cefe61db8caf1cbdbc35f680744a3eb">halMachineOff</a> (void)</td></tr>
+<tr class="memdesc:a8cefe61db8caf1cbdbc35f680744a3eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Turn machine off.  <a href="#a8cefe61db8caf1cbdbc35f680744a3eb">More...</a><br /></td></tr>
+<tr class="separator:a8cefe61db8caf1cbdbc35f680744a3eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
 Variables</h2></td></tr>
 <tr class="memitem:ae5ae572f06dd4838027976f9ab3fdc62"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#ae5ae572f06dd4838027976f9ab3fdc62">flowcnt</a> = 0</td></tr>
 <tr class="separator:ae5ae572f06dd4838027976f9ab3fdc62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3aca866b54d36fe04db7c5ab8275de1e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a3aca866b54d36fe04db7c5ab8275de1e">Int0Time</a></td></tr>
+<tr class="separator:a3aca866b54d36fe04db7c5ab8275de1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a343efe067e2fa2affd5f15ef3447aaa1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a343efe067e2fa2affd5f15ef3447aaa1">Int1Time</a></td></tr>
+<tr class="separator:a343efe067e2fa2affd5f15ef3447aaa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f94cedad944b6df4483a76b0a4d2b0a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a9f94cedad944b6df4483a76b0a4d2b0a">flagIgnoreRlsInt0</a></td></tr>
+<tr class="separator:a9f94cedad944b6df4483a76b0a4d2b0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8980baab65c90a16ef8189ed5b1ab7fe"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#a8980baab65c90a16ef8189ed5b1ab7fe">flagIgnoreRlsInt1</a></td></tr>
+<tr class="separator:a8980baab65c90a16ef8189ed5b1ab7fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae52d2e251c46b1fa1f9369cf115dc5b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classtimer.html">timer</a> Int0Timer &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#ae52d2e251c46b1fa1f9369cf115dc5b2">halInt0TimerHandler</a></td></tr>
+<tr class="separator:ae52d2e251c46b1fa1f9369cf115dc5b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4bfd5892199d0ffad5ba51c44d4295e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classtimer.html">timer</a> Int1Timer &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8cpp.html#af4bfd5892199d0ffad5ba51c44d4295e">halInt1TimerHandler</a></td></tr>
+<tr class="separator:af4bfd5892199d0ffad5ba51c44d4295e"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <h2 class="groupheader">Function Documentation</h2>
 <a class="anchor" id="a1a0d534518ff19bf5b023dfe64d141db"></a>
@@ -267,6 +292,24 @@ Variables</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
+<p>Interrupt routine for Int0 (Top button) </p>
+
+</div>
+</div>
+<a class="anchor" id="aa52d1bfb2ca68e499ad83d9b0d1ba275"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void halInt0TimerHandler </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
 </div>
 </div>
 <a class="anchor" id="a603aaa9c0c3cfef8b185df5c7f4921c3"></a>
@@ -283,6 +326,24 @@ Variables</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
+<p>Interrupt routine for Int1 (Bottom button) </p>
+
+</div>
+</div>
+<a class="anchor" id="ad56f6e1b04c236040717eadfd806c244"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void halInt1TimerHandler </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
 </div>
 </div>
 <a class="anchor" id="ace9ace8c7e0012157569f446d4cb8c52"></a>
@@ -299,6 +360,8 @@ Variables</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
+<p>Interrupt routine for the flow sensor It counts the edgdes and stores the value in flowcnt. </p>
+
 </div>
 </div>
 <a class="anchor" id="a73067106de2bbcf98bcc3a06cbf3b000"></a>
@@ -315,7 +378,7 @@ Variables</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
-<p>Method to handle toggle of the pressure control. </p>
+<p>Interrupt routine for the pressure control. </p>
 
 </div>
 </div>
@@ -354,6 +417,42 @@ Variables</h2></td></tr>
 <p>Reads the status of the Pressure Control. </p>
 <dl class="section return"><dt>Returns</dt><dd>0 for closed Pressure Control(heating) and 1 for open </dd></dl>
 
+</div>
+</div>
+<a class="anchor" id="a8cefe61db8caf1cbdbc35f680744a3eb"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void halMachineOff </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Turn machine off. </p>
+
+</div>
+</div>
+<a class="anchor" id="a80e05d7e336073450da3168992d58754"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void halMachineOn </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Turn machine on. </p>
+
 </div>
 </div>
 <a class="anchor" id="a52c001b5136b02e19bd00282a137631d"></a>
@@ -501,6 +600,30 @@ Variables</h2></td></tr>
 </div>
 </div>
 <h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a9f94cedad944b6df4483a76b0a4d2b0a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool flagIgnoreRlsInt0</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8980baab65c90a16ef8189ed5b1ab7fe"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool flagIgnoreRlsInt1</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
 <a class="anchor" id="ae5ae572f06dd4838027976f9ab3fdc62"></a>
 <div class="memitem">
 <div class="memproto">
@@ -511,6 +634,54 @@ Variables</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
+</div>
+</div>
+<a class="anchor" id="ae52d2e251c46b1fa1f9369cf115dc5b2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classtimer.html">timer</a> Int0Timer&amp; halInt0TimerHandler</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af4bfd5892199d0ffad5ba51c44d4295e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classtimer.html">timer</a> Int1Timer&amp; halInt1TimerHandler</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3aca866b54d36fe04db7c5ab8275de1e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int Int0Time</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a343efe067e2fa2affd5f15ef3447aaa1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int Int1Time</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
 </div>
 </div>
 </div><!-- contents -->

+ 136 - 43
CoffeeCode/html/hal_8h.html

@@ -100,36 +100,38 @@ Macros</h2></td></tr>
 <tr class="separator:a9723c5da9e57e2b3a1c3ec7b635cee53"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a56489df9a2d1844419f2b0c104516657"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a56489df9a2d1844419f2b0c104516657">RELAIS_POWER</a>&#160;&#160;&#160;28</td></tr>
 <tr class="separator:a56489df9a2d1844419f2b0c104516657"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af9f618757de2bf9051de55c831802f30"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#af9f618757de2bf9051de55c831802f30">PRESSURE_CTRL</a>&#160;&#160;&#160;7</td></tr>
-<tr class="separator:af9f618757de2bf9051de55c831802f30"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a60cdc9e2a5c04bd14c4c3c6f872ddf29"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a60cdc9e2a5c04bd14c4c3c6f872ddf29">PROXIMITY_SENSOR</a>&#160;&#160;&#160;6</td></tr>
-<tr class="separator:a60cdc9e2a5c04bd14c4c3c6f872ddf29"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7521122e23c8d5c83b2a033b2505c86c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a7521122e23c8d5c83b2a033b2505c86c">INT0</a>&#160;&#160;&#160;0</td></tr>
-<tr class="separator:a7521122e23c8d5c83b2a033b2505c86c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae4728496f2ab826d5fc6a63da6cb600b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#ae4728496f2ab826d5fc6a63da6cb600b">INT1</a>&#160;&#160;&#160;2</td></tr>
-<tr class="separator:ae4728496f2ab826d5fc6a63da6cb600b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a249f9f89b3a190ddd62999b1afa847c3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a249f9f89b3a190ddd62999b1afa847c3">FLOW</a>&#160;&#160;&#160;3</td></tr>
-<tr class="separator:a249f9f89b3a190ddd62999b1afa847c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7c6e51c86f643b69623e53eaa62e6cd4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a7c6e51c86f643b69623e53eaa62e6cd4">PROX_COVERED</a>&#160;&#160;&#160;1</td></tr>
-<tr class="separator:a7c6e51c86f643b69623e53eaa62e6cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95d660a5e62442d33d7cc9d93ffb57b9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a95d660a5e62442d33d7cc9d93ffb57b9">PIN_PRESSURE_CTRL</a>&#160;&#160;&#160;7</td></tr>
+<tr class="separator:a95d660a5e62442d33d7cc9d93ffb57b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b6bff93c300c970e912b45284fa1d7d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a4b6bff93c300c970e912b45284fa1d7d">PIN_PROXIMITY_SENSOR</a>&#160;&#160;&#160;6</td></tr>
+<tr class="separator:a4b6bff93c300c970e912b45284fa1d7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acab09879ef6267b9482f7627c82346bc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#acab09879ef6267b9482f7627c82346bc">PIN_INT0</a>&#160;&#160;&#160;2</td></tr>
+<tr class="separator:acab09879ef6267b9482f7627c82346bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a987362f14d4ff58584140f09c24a4308"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a987362f14d4ff58584140f09c24a4308">PIN_INT1</a>&#160;&#160;&#160;0</td></tr>
+<tr class="separator:a987362f14d4ff58584140f09c24a4308"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b7f077d2a81a295f0f9b0fbf09356ba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a1b7f077d2a81a295f0f9b0fbf09356ba">PIN_FLOW</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:a1b7f077d2a81a295f0f9b0fbf09356ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a957d80982673bb087a5d29380720f59d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a957d80982673bb087a5d29380720f59d">FLOW_ML_PULSE</a>&#160;&#160;&#160;(1000.0/990)</td></tr>
 <tr class="separator:a957d80982673bb087a5d29380720f59d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39a999d4c82a1021ee63072abe804946"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a39a999d4c82a1021ee63072abe804946">TIME_BUTTONLONGPRESS</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:a39a999d4c82a1021ee63072abe804946"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
 Enumerations</h2></td></tr>
 <tr class="memitem:aa51a8c9f6b926aa9e9c5dd38249d3f68"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">HalSig</a> { <br />
 &#160;&#160;<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751">SigInt0Psh</a> = 1, 
 <a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">SigInt0Rls</a> = 2, 
-<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">SigInt1Psh</a> = 3, 
-<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">SigInt1Rls</a> = 4, 
+<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e">SigInt0RlsLong</a> = 3, 
+<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">SigInt1Psh</a> = 4, 
 <br />
-&#160;&#160;<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">SigPressCls</a> = 5, 
-<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4">SigPressOpn</a> = 6, 
-<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">SigProxOpn</a> = 7, 
-<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d">SigProxCvrd</a> = 8, 
+&#160;&#160;<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">SigInt1Rls</a> = 5, 
+<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73">SigInt1RlsLong</a> = 6, 
+<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">SigPressCls</a> = 7, 
+<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4">SigPressOpn</a> = 8, 
 <br />
-&#160;&#160;<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857">SigBrewOn</a> = 9, 
-<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382">SigBrewOff</a> = 10
+&#160;&#160;<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">SigProxOpn</a> = 9, 
+<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d">SigProxCvrd</a> = 10, 
+<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857">SigBrewOn</a> = 11, 
+<a class="el" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382">SigBrewOff</a> = 12
 <br />
  }<tr class="separator:aa51a8c9f6b926aa9e9c5dd38249d3f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </td></tr>
@@ -145,20 +147,23 @@ Functions</h2></td></tr>
 <tr class="memitem:a25c63f62c18555fc1b9b50bcd29f1c7d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">halRelaisOff</a> (int relais)</td></tr>
 <tr class="memdesc:a25c63f62c18555fc1b9b50bcd29f1c7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Switches relais off.  <a href="#a25c63f62c18555fc1b9b50bcd29f1c7d">More...</a><br /></td></tr>
 <tr class="separator:a25c63f62c18555fc1b9b50bcd29f1c7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9b67b274703f0c42834f4b447d5c04a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">halRelaisSet</a> (int relais, int state)</td></tr>
+<tr class="memitem:a9b67b274703f0c42834f4b447d5c04a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">halRelaisSet</a> (int relais, int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
 <tr class="memdesc:a9b67b274703f0c42834f4b447d5c04a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Switches relais to state.  <a href="#a9b67b274703f0c42834f4b447d5c04a2">More...</a><br /></td></tr>
 <tr class="separator:a9b67b274703f0c42834f4b447d5c04a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a1d22d01f1a6a6789f2816e27bbcb0504"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a1d22d01f1a6a6789f2816e27bbcb0504">halGetRelaisState</a> (int relais)</td></tr>
 <tr class="memdesc:a1d22d01f1a6a6789f2816e27bbcb0504"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the state of the relais relais Returns HIGH when Relais is ON.  <a href="#a1d22d01f1a6a6789f2816e27bbcb0504">More...</a><br /></td></tr>
 <tr class="separator:a1d22d01f1a6a6789f2816e27bbcb0504"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a597258a80a0bb18db649d01b0893c99f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a597258a80a0bb18db649d01b0893c99f">halInt0</a> (void)</td></tr>
+<tr class="memdesc:a597258a80a0bb18db649d01b0893c99f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt routine for Int0 (Top button)  <a href="#a597258a80a0bb18db649d01b0893c99f">More...</a><br /></td></tr>
 <tr class="separator:a597258a80a0bb18db649d01b0893c99f"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a603aaa9c0c3cfef8b185df5c7f4921c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3">halInt1</a> (void)</td></tr>
+<tr class="memdesc:a603aaa9c0c3cfef8b185df5c7f4921c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt routine for Int1 (Bottom button)  <a href="#a603aaa9c0c3cfef8b185df5c7f4921c3">More...</a><br /></td></tr>
 <tr class="separator:a603aaa9c0c3cfef8b185df5c7f4921c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ace9ace8c7e0012157569f446d4cb8c52"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">halIntFlow</a> (void)</td></tr>
+<tr class="memdesc:ace9ace8c7e0012157569f446d4cb8c52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt routine for the flow sensor It counts the edgdes and stores the value in flowcnt.  <a href="#ace9ace8c7e0012157569f446d4cb8c52">More...</a><br /></td></tr>
 <tr class="separator:ace9ace8c7e0012157569f446d4cb8c52"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a73067106de2bbcf98bcc3a06cbf3b000"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a73067106de2bbcf98bcc3a06cbf3b000">halIntPressure</a> (void)</td></tr>
-<tr class="memdesc:a73067106de2bbcf98bcc3a06cbf3b000"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method to handle toggle of the pressure control.  <a href="#a73067106de2bbcf98bcc3a06cbf3b000">More...</a><br /></td></tr>
+<tr class="memdesc:a73067106de2bbcf98bcc3a06cbf3b000"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt routine for the pressure control.  <a href="#a73067106de2bbcf98bcc3a06cbf3b000">More...</a><br /></td></tr>
 <tr class="separator:a73067106de2bbcf98bcc3a06cbf3b000"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a0622583e0c8453a6d6963964ad7e7122"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a0622583e0c8453a6d6963964ad7e7122">halIntProximity</a> (void)</td></tr>
 <tr class="memdesc:a0622583e0c8453a6d6963964ad7e7122"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method to handle toggle of the proximity sensor.  <a href="#a0622583e0c8453a6d6963964ad7e7122">More...</a><br /></td></tr>
@@ -184,122 +189,132 @@ Functions</h2></td></tr>
 <tr class="memitem:a4fa1c41f2dd3c24e13feaa6be70ad426"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">halSendSignal</a> (int value)</td></tr>
 <tr class="memdesc:a4fa1c41f2dd3c24e13feaa6be70ad426"><td class="mdescLeft">&#160;</td><td class="mdescRight">send Signal to coffee thread  <a href="#a4fa1c41f2dd3c24e13feaa6be70ad426">More...</a><br /></td></tr>
 <tr class="separator:a4fa1c41f2dd3c24e13feaa6be70ad426"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80e05d7e336073450da3168992d58754"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a80e05d7e336073450da3168992d58754">halMachineOn</a> (void)</td></tr>
+<tr class="memdesc:a80e05d7e336073450da3168992d58754"><td class="mdescLeft">&#160;</td><td class="mdescRight">Turn machine on.  <a href="#a80e05d7e336073450da3168992d58754">More...</a><br /></td></tr>
+<tr class="separator:a80e05d7e336073450da3168992d58754"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cefe61db8caf1cbdbc35f680744a3eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#a8cefe61db8caf1cbdbc35f680744a3eb">halMachineOff</a> (void)</td></tr>
+<tr class="memdesc:a8cefe61db8caf1cbdbc35f680744a3eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Turn machine off.  <a href="#a8cefe61db8caf1cbdbc35f680744a3eb">More...</a><br /></td></tr>
+<tr class="separator:a8cefe61db8caf1cbdbc35f680744a3eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa52d1bfb2ca68e499ad83d9b0d1ba275"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#aa52d1bfb2ca68e499ad83d9b0d1ba275">halInt0TimerHandler</a> (void)</td></tr>
+<tr class="separator:aa52d1bfb2ca68e499ad83d9b0d1ba275"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad56f6e1b04c236040717eadfd806c244"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hal_8h.html#ad56f6e1b04c236040717eadfd806c244">halInt1TimerHandler</a> (void)</td></tr>
+<tr class="separator:ad56f6e1b04c236040717eadfd806c244"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <h2 class="groupheader">Macro Definition Documentation</h2>
-<a class="anchor" id="a249f9f89b3a190ddd62999b1afa847c3"></a>
+<a class="anchor" id="a957d80982673bb087a5d29380720f59d"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define FLOW&#160;&#160;&#160;3</td>
+          <td class="memname">#define FLOW_ML_PULSE&#160;&#160;&#160;(1000.0/990)</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a957d80982673bb087a5d29380720f59d"></a>
+<a class="anchor" id="a1b7f077d2a81a295f0f9b0fbf09356ba"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define FLOW_ML_PULSE&#160;&#160;&#160;(1000.0/990)</td>
+          <td class="memname">#define PIN_FLOW&#160;&#160;&#160;3</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a7521122e23c8d5c83b2a033b2505c86c"></a>
+<a class="anchor" id="acab09879ef6267b9482f7627c82346bc"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define INT0&#160;&#160;&#160;0</td>
+          <td class="memname">#define PIN_INT0&#160;&#160;&#160;2</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="ae4728496f2ab826d5fc6a63da6cb600b"></a>
+<a class="anchor" id="a987362f14d4ff58584140f09c24a4308"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define INT1&#160;&#160;&#160;2</td>
+          <td class="memname">#define PIN_INT1&#160;&#160;&#160;0</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="af9f618757de2bf9051de55c831802f30"></a>
+<a class="anchor" id="a95d660a5e62442d33d7cc9d93ffb57b9"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define PRESSURE_CTRL&#160;&#160;&#160;7</td>
+          <td class="memname">#define PIN_PRESSURE_CTRL&#160;&#160;&#160;7</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a7c6e51c86f643b69623e53eaa62e6cd4"></a>
+<a class="anchor" id="a4b6bff93c300c970e912b45284fa1d7d"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define PROX_COVERED&#160;&#160;&#160;1</td>
+          <td class="memname">#define PIN_PROXIMITY_SENSOR&#160;&#160;&#160;6</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a60cdc9e2a5c04bd14c4c3c6f872ddf29"></a>
+<a class="anchor" id="a9b57e326c17e793a2c70b909256734ab"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define PROXIMITY_SENSOR&#160;&#160;&#160;6</td>
+          <td class="memname">#define RELAIS_HEAT&#160;&#160;&#160;29</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a9b57e326c17e793a2c70b909256734ab"></a>
+<a class="anchor" id="a56489df9a2d1844419f2b0c104516657"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define RELAIS_HEAT&#160;&#160;&#160;29</td>
+          <td class="memname">#define RELAIS_POWER&#160;&#160;&#160;28</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a56489df9a2d1844419f2b0c104516657"></a>
+<a class="anchor" id="a9723c5da9e57e2b3a1c3ec7b635cee53"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define RELAIS_POWER&#160;&#160;&#160;28</td>
+          <td class="memname">#define RELAIS_PUMP&#160;&#160;&#160;25</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a9723c5da9e57e2b3a1c3ec7b635cee53"></a>
+<a class="anchor" id="a39a999d4c82a1021ee63072abe804946"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define RELAIS_PUMP&#160;&#160;&#160;25</td>
+          <td class="memname">#define TIME_BUTTONLONGPRESS&#160;&#160;&#160;3</td>
         </tr>
       </table>
 </div><div class="memdoc">
@@ -321,10 +336,14 @@ Functions</h2></td></tr>
 </td></tr>
 <tr><td class="fieldname"><a class="anchor" id="aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3"></a>SigInt0Rls&#160;</td><td class="fielddoc">
 </td></tr>
+<tr><td class="fieldname"><a class="anchor" id="aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e"></a>SigInt0RlsLong&#160;</td><td class="fielddoc">
+</td></tr>
 <tr><td class="fieldname"><a class="anchor" id="aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2"></a>SigInt1Psh&#160;</td><td class="fielddoc">
 </td></tr>
 <tr><td class="fieldname"><a class="anchor" id="aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae"></a>SigInt1Rls&#160;</td><td class="fielddoc">
 </td></tr>
+<tr><td class="fieldname"><a class="anchor" id="aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73"></a>SigInt1RlsLong&#160;</td><td class="fielddoc">
+</td></tr>
 <tr><td class="fieldname"><a class="anchor" id="aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9"></a>SigPressCls&#160;</td><td class="fielddoc">
 </td></tr>
 <tr><td class="fieldname"><a class="anchor" id="aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4"></a>SigPressOpn&#160;</td><td class="fielddoc">
@@ -454,6 +473,24 @@ Functions</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
+<p>Interrupt routine for Int0 (Top button) </p>
+
+</div>
+</div>
+<a class="anchor" id="aa52d1bfb2ca68e499ad83d9b0d1ba275"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void halInt0TimerHandler </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
 </div>
 </div>
 <a class="anchor" id="a603aaa9c0c3cfef8b185df5c7f4921c3"></a>
@@ -470,6 +507,24 @@ Functions</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
+<p>Interrupt routine for Int1 (Bottom button) </p>
+
+</div>
+</div>
+<a class="anchor" id="ad56f6e1b04c236040717eadfd806c244"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void halInt1TimerHandler </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
 </div>
 </div>
 <a class="anchor" id="ace9ace8c7e0012157569f446d4cb8c52"></a>
@@ -486,6 +541,8 @@ Functions</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
+<p>Interrupt routine for the flow sensor It counts the edgdes and stores the value in flowcnt. </p>
+
 </div>
 </div>
 <a class="anchor" id="a73067106de2bbcf98bcc3a06cbf3b000"></a>
@@ -502,7 +559,7 @@ Functions</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
-<p>Method to handle toggle of the pressure control. </p>
+<p>Interrupt routine for the pressure control. </p>
 
 </div>
 </div>
@@ -541,6 +598,42 @@ Functions</h2></td></tr>
 <p>Reads the status of the Pressure Control. </p>
 <dl class="section return"><dt>Returns</dt><dd>0 for closed Pressure Control(heating) and 1 for open </dd></dl>
 
+</div>
+</div>
+<a class="anchor" id="a8cefe61db8caf1cbdbc35f680744a3eb"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void halMachineOff </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Turn machine off. </p>
+
+</div>
+</div>
+<a class="anchor" id="a80e05d7e336073450da3168992d58754"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void halMachineOn </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Turn machine on. </p>
+
 </div>
 </div>
 <a class="anchor" id="a52c001b5136b02e19bd00282a137631d"></a>

+ 95 - 73
CoffeeCode/html/hal_8h_source.html

@@ -98,83 +98,105 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="hal_8h.html#a9b57e326c17e793a2c70b909256734ab">   11</a></span>&#160;<span class="preprocessor">#define RELAIS_HEAT     29</span></div>
 <div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="hal_8h.html#a9723c5da9e57e2b3a1c3ec7b635cee53">   12</a></span>&#160;<span class="preprocessor">#define RELAIS_PUMP     25</span></div>
 <div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="hal_8h.html#a56489df9a2d1844419f2b0c104516657">   13</a></span>&#160;<span class="preprocessor">#define RELAIS_POWER    28</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="hal_8h.html#af9f618757de2bf9051de55c831802f30">   14</a></span>&#160;<span class="preprocessor">#define PRESSURE_CTRL   7</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="hal_8h.html#a60cdc9e2a5c04bd14c4c3c6f872ddf29">   15</a></span>&#160;<span class="preprocessor">#define PROXIMITY_SENSOR    6</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="hal_8h.html#a7521122e23c8d5c83b2a033b2505c86c">   17</a></span>&#160;<span class="preprocessor">#define INT0        0 // bottom button</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="hal_8h.html#ae4728496f2ab826d5fc6a63da6cb600b">   18</a></span>&#160;<span class="preprocessor">#define INT1        2 // top button</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="hal_8h.html#a249f9f89b3a190ddd62999b1afa847c3">   19</a></span>&#160;<span class="preprocessor">#define FLOW        3 // flow sensor</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="hal_8h.html#a7c6e51c86f643b69623e53eaa62e6cd4">   20</a></span>&#160;<span class="preprocessor">#define PROX_COVERED    1 //proximity sensor</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="hal_8h.html#a957d80982673bb087a5d29380720f59d">   21</a></span>&#160;<span class="preprocessor">#define FLOW_ML_PULSE   (1000.0/990) // Flow sensor: volume (ml) per pulse</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="hal_8h.html#a95d660a5e62442d33d7cc9d93ffb57b9">   14</a></span>&#160;<span class="preprocessor">#define PIN_PRESSURE_CTRL   7</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="hal_8h.html#a4b6bff93c300c970e912b45284fa1d7d">   15</a></span>&#160;<span class="preprocessor">#define PIN_PROXIMITY_SENSOR    6</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="hal_8h.html#acab09879ef6267b9482f7627c82346bc">   16</a></span>&#160;<span class="preprocessor">#define PIN_INT0        2 // Top button</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="hal_8h.html#a987362f14d4ff58584140f09c24a4308">   17</a></span>&#160;<span class="preprocessor">#define PIN_INT1        0 // Bottom button</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="hal_8h.html#a1b7f077d2a81a295f0f9b0fbf09356ba">   18</a></span>&#160;<span class="preprocessor">#define PIN_FLOW        3 // Flow sensor</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="hal_8h.html#a957d80982673bb087a5d29380720f59d">   19</a></span>&#160;<span class="preprocessor">#define FLOW_ML_PULSE   (1000.0/990) // Flow sensor: volume (ml) per pulse</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="hal_8h.html#a39a999d4c82a1021ee63072abe804946">   21</a></span>&#160;<span class="preprocessor">#define TIME_BUTTONLONGPRESS    3   //Time in s until a Signal for a long pressed button is sent</span></div>
 <div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">/*</span></div>
 <div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment"> * Explanation for the signal levels</span></div>
 <div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment"> * SigInt_Psh           Button is pushed</span></div>
 <div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment"> * SigInt_Rls       Button is released</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment"> * SigPressCls      Pressure control is closed, System is heating</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment"> * SigPressOpn      Pressure control is open, heating is off</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment"> * SigProxOpn       Proximity Sensor is uncovered</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment"> * SigProxCvrd  Proximity Sensor is covered</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">   31</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">HalSig</a> {</div>
-<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751">   32</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751">SigInt0Psh</a> = 1,</div>
-<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">   33</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">SigInt0Rls</a> = 2,</div>
-<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">   34</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">SigInt1Psh</a> = 3,</div>
-<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">   35</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">SigInt1Rls</a> = 4,</div>
-<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">   36</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">SigPressCls</a> = 5,</div>
-<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4">   37</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4">SigPressOpn</a> = 6,</div>
-<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">   38</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">SigProxOpn</a> = 7,</div>
-<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d">   39</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d">SigProxCvrd</a> = 8,</div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857">   40</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857">SigBrewOn</a> = 9,</div>
-<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382">   41</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382">SigBrewOff</a> = 10</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;};</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#afd89c1650df524d95aef39b8bc38170d">halInit</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a33e09a3806bdcd5c711e557178335763">halRelaisOn</a>(<span class="keywordtype">int</span> relais);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">halRelaisOff</a>(<span class="keywordtype">int</span> relais);</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">halRelaisSet</a>(<span class="keywordtype">int</span> relais, <span class="keywordtype">int</span> state);</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="keywordtype">int</span> <a class="code" href="hal_8h.html#a1d22d01f1a6a6789f2816e27bbcb0504">halGetRelaisState</a>(<span class="keywordtype">int</span> relais);</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a597258a80a0bb18db649d01b0893c99f">halInt0</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3">halInt1</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">halIntFlow</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a73067106de2bbcf98bcc3a06cbf3b000">halIntPressure</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a0622583e0c8453a6d6963964ad7e7122">halIntProximity</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="keywordtype">float</span> <a class="code" href="hal_8h.html#a1a0d534518ff19bf5b023dfe64d141db">halGetFlow</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a99d0fb6a80635b679cf4cd1fa90b483d">halResetFlow</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="hal_8h.html#a01f43f0666520e8d8af65e94fd82a5eb">halIsHeating</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="hal_8h.html#a52c001b5136b02e19bd00282a137631d">halProxSensorCovered</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keywordtype">int</span> <a class="code" href="hal_8h.html#af5609d1b9c9b6bde787cdca47b3b0a4f">halGetInt0</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keywordtype">int</span> <a class="code" href="hal_8h.html#afe1e8d0d1237d0f128d50a5b146002a2">halGetInt1</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">halSendSignal</a>(<span class="keywordtype">int</span> value);</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* HAL_H_ */</span><span class="preprocessor"></span></div>
-<div class="ttc" id="hal_8h_html_a33e09a3806bdcd5c711e557178335763"><div class="ttname"><a href="hal_8h.html#a33e09a3806bdcd5c711e557178335763">halRelaisOn</a></div><div class="ttdeci">void halRelaisOn(int relais)</div><div class="ttdoc">Switches relais on. </div><div class="ttdef"><b>Definition:</b> hal.cpp:66</div></div>
-<div class="ttc" id="hal_8h_html_a99d0fb6a80635b679cf4cd1fa90b483d"><div class="ttname"><a href="hal_8h.html#a99d0fb6a80635b679cf4cd1fa90b483d">halResetFlow</a></div><div class="ttdeci">void halResetFlow(void)</div><div class="ttdoc">Resets the Flow counter. </div><div class="ttdef"><b>Definition:</b> hal.cpp:174</div></div>
-<div class="ttc" id="hal_8h_html_a9b67b274703f0c42834f4b447d5c04a2"><div class="ttname"><a href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">halRelaisSet</a></div><div class="ttdeci">void halRelaisSet(int relais, int state)</div><div class="ttdoc">Switches relais to state. </div><div class="ttdef"><b>Definition:</b> hal.cpp:83</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">SigInt1Psh</a></div><div class="ttdef"><b>Definition:</b> hal.h:34</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">SigInt1Rls</a></div><div class="ttdef"><b>Definition:</b> hal.h:35</div></div>
-<div class="ttc" id="hal_8h_html_a52c001b5136b02e19bd00282a137631d"><div class="ttname"><a href="hal_8h.html#a52c001b5136b02e19bd00282a137631d">halProxSensorCovered</a></div><div class="ttdeci">bool halProxSensorCovered(void)</div><div class="ttdoc">Returns status of the proximity switch. </div><div class="ttdef"><b>Definition:</b> hal.cpp:194</div></div>
-<div class="ttc" id="hal_8h_html_a25c63f62c18555fc1b9b50bcd29f1c7d"><div class="ttname"><a href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">halRelaisOff</a></div><div class="ttdeci">void halRelaisOff(int relais)</div><div class="ttdoc">Switches relais off. </div><div class="ttdef"><b>Definition:</b> hal.cpp:74</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">HalSig</a></div><div class="ttdeci">HalSig</div><div class="ttdef"><b>Definition:</b> hal.h:31</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382">SigBrewOff</a></div><div class="ttdef"><b>Definition:</b> hal.h:41</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751">SigInt0Psh</a></div><div class="ttdef"><b>Definition:</b> hal.h:32</div></div>
-<div class="ttc" id="hal_8h_html_a1a0d534518ff19bf5b023dfe64d141db"><div class="ttname"><a href="hal_8h.html#a1a0d534518ff19bf5b023dfe64d141db">halGetFlow</a></div><div class="ttdeci">float halGetFlow(void)</div><div class="ttdoc">Returns total flow trough sensor in ml. </div><div class="ttdef"><b>Definition:</b> hal.cpp:167</div></div>
-<div class="ttc" id="hal_8h_html_a597258a80a0bb18db649d01b0893c99f"><div class="ttname"><a href="hal_8h.html#a597258a80a0bb18db649d01b0893c99f">halInt0</a></div><div class="ttdeci">void halInt0(void)</div><div class="ttdef"><b>Definition:</b> hal.cpp:111</div></div>
-<div class="ttc" id="hal_8h_html_a1d22d01f1a6a6789f2816e27bbcb0504"><div class="ttname"><a href="hal_8h.html#a1d22d01f1a6a6789f2816e27bbcb0504">halGetRelaisState</a></div><div class="ttdeci">int halGetRelaisState(int relais)</div><div class="ttdoc">Returns the state of the relais relais Returns HIGH when Relais is ON. </div><div class="ttdef"><b>Definition:</b> hal.cpp:100</div></div>
-<div class="ttc" id="hal_8h_html_af5609d1b9c9b6bde787cdca47b3b0a4f"><div class="ttname"><a href="hal_8h.html#af5609d1b9c9b6bde787cdca47b3b0a4f">halGetInt0</a></div><div class="ttdeci">int halGetInt0(void)</div><div class="ttdoc">Returns the value of the top button Int0 (low active) </div><div class="ttdef"><b>Definition:</b> hal.cpp:207</div></div>
-<div class="ttc" id="hal_8h_html_a01f43f0666520e8d8af65e94fd82a5eb"><div class="ttname"><a href="hal_8h.html#a01f43f0666520e8d8af65e94fd82a5eb">halIsHeating</a></div><div class="ttdeci">bool halIsHeating(void)</div><div class="ttdoc">Reads the status of the Pressure Control. </div><div class="ttdef"><b>Definition:</b> hal.cpp:182</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">SigPressCls</a></div><div class="ttdef"><b>Definition:</b> hal.h:36</div></div>
-<div class="ttc" id="hal_8h_html_a603aaa9c0c3cfef8b185df5c7f4921c3"><div class="ttname"><a href="hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3">halInt1</a></div><div class="ttdeci">void halInt1(void)</div><div class="ttdef"><b>Definition:</b> hal.cpp:120</div></div>
-<div class="ttc" id="hal_8h_html_ace9ace8c7e0012157569f446d4cb8c52"><div class="ttname"><a href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">halIntFlow</a></div><div class="ttdeci">void halIntFlow(void)</div><div class="ttdef"><b>Definition:</b> hal.cpp:129</div></div>
-<div class="ttc" id="hal_8h_html_afe1e8d0d1237d0f128d50a5b146002a2"><div class="ttname"><a href="hal_8h.html#afe1e8d0d1237d0f128d50a5b146002a2">halGetInt1</a></div><div class="ttdeci">int halGetInt1(void)</div><div class="ttdoc">Returns the value of the bottom button Int1 (low active) </div><div class="ttdef"><b>Definition:</b> hal.cpp:215</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">SigInt0Rls</a></div><div class="ttdef"><b>Definition:</b> hal.h:33</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4">SigPressOpn</a></div><div class="ttdef"><b>Definition:</b> hal.h:37</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">SigProxOpn</a></div><div class="ttdef"><b>Definition:</b> hal.h:38</div></div>
-<div class="ttc" id="hal_8h_html_afd89c1650df524d95aef39b8bc38170d"><div class="ttname"><a href="hal_8h.html#afd89c1650df524d95aef39b8bc38170d">halInit</a></div><div class="ttdeci">void halInit(void)</div><div class="ttdoc">Initializes HAL. </div><div class="ttdef"><b>Definition:</b> hal.cpp:22</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d">SigProxCvrd</a></div><div class="ttdef"><b>Definition:</b> hal.h:39</div></div>
-<div class="ttc" id="hal_8h_html_a0622583e0c8453a6d6963964ad7e7122"><div class="ttname"><a href="hal_8h.html#a0622583e0c8453a6d6963964ad7e7122">halIntProximity</a></div><div class="ttdeci">void halIntProximity(void)</div><div class="ttdoc">Method to handle toggle of the proximity sensor. </div><div class="ttdef"><b>Definition:</b> hal.cpp:155</div></div>
-<div class="ttc" id="hal_8h_html_a4fa1c41f2dd3c24e13feaa6be70ad426"><div class="ttname"><a href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">halSendSignal</a></div><div class="ttdeci">void halSendSignal(int value)</div><div class="ttdoc">send Signal to coffee thread </div><div class="ttdef"><b>Definition:</b> hal.cpp:223</div></div>
-<div class="ttc" id="hal_8h_html_a73067106de2bbcf98bcc3a06cbf3b000"><div class="ttname"><a href="hal_8h.html#a73067106de2bbcf98bcc3a06cbf3b000">halIntPressure</a></div><div class="ttdeci">void halIntPressure(void)</div><div class="ttdoc">Method to handle toggle of the pressure control. </div><div class="ttdef"><b>Definition:</b> hal.cpp:143</div></div>
-<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857">SigBrewOn</a></div><div class="ttdef"><b>Definition:</b> hal.h:40</div></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment"> * SigInt_RlsLong   Button is pressed for more than TIME_BUTTONLONGPRESS seconds</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment"> * SigPressCls      Pressure control is closed, System is heating</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment"> * SigPressOpn      Pressure control is open, heating is off</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment"> * SigProxOpn       Proximity Sensor is uncovered</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="comment"> * SigProxCvrd  Proximity Sensor is covered</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment"> * Functions of the buttons, the letter in brackets defines if the event is triggered</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment"> * on push(P), release(R) or long pressing(RLong) of the button</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment"> * TOP Button: Turn machine on(R), start brewing(P),</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment"> * BOTTOM button: Stop brewing immediately(P), Turn machine off(RLong),</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">   40</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">HalSig</a> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751">   41</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751">SigInt0Psh</a> = 1,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">   42</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">SigInt0Rls</a> = 2,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e">   43</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e">SigInt0RlsLong</a> = 3,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">   44</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">SigInt1Psh</a> = 4,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">   45</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">SigInt1Rls</a> = 5,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73">   46</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73">SigInt1RlsLong</a> = 6,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">   47</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">SigPressCls</a> = 7,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4">   48</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4">SigPressOpn</a> = 8,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">   49</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">SigProxOpn</a> = 9,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d">   50</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d">SigProxCvrd</a> = 10,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857">   51</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857">SigBrewOn</a> = 11,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382">   52</a></span>&#160;    <a class="code" href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382">SigBrewOff</a> = 12</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;};</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#afd89c1650df524d95aef39b8bc38170d">halInit</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a33e09a3806bdcd5c711e557178335763">halRelaisOn</a>(<span class="keywordtype">int</span> relais);</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">halRelaisOff</a>(<span class="keywordtype">int</span> relais);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">halRelaisSet</a>(<span class="keywordtype">int</span> relais, <span class="keywordtype">int</span> <a class="code" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keywordtype">int</span> <a class="code" href="hal_8h.html#a1d22d01f1a6a6789f2816e27bbcb0504">halGetRelaisState</a>(<span class="keywordtype">int</span> relais);</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a597258a80a0bb18db649d01b0893c99f">halInt0</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3">halInt1</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">halIntFlow</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a73067106de2bbcf98bcc3a06cbf3b000">halIntPressure</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a0622583e0c8453a6d6963964ad7e7122">halIntProximity</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="keywordtype">float</span> <a class="code" href="hal_8h.html#a1a0d534518ff19bf5b023dfe64d141db">halGetFlow</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a99d0fb6a80635b679cf4cd1fa90b483d">halResetFlow</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="hal_8h.html#a01f43f0666520e8d8af65e94fd82a5eb">halIsHeating</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="hal_8h.html#a52c001b5136b02e19bd00282a137631d">halProxSensorCovered</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="keywordtype">int</span> <a class="code" href="hal_8h.html#af5609d1b9c9b6bde787cdca47b3b0a4f">halGetInt0</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="keywordtype">int</span> <a class="code" href="hal_8h.html#afe1e8d0d1237d0f128d50a5b146002a2">halGetInt1</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">halSendSignal</a>(<span class="keywordtype">int</span> value);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a80e05d7e336073450da3168992d58754">halMachineOn</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#a8cefe61db8caf1cbdbc35f680744a3eb">halMachineOff</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#aa52d1bfb2ca68e499ad83d9b0d1ba275">halInt0TimerHandler</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hal_8h.html#ad56f6e1b04c236040717eadfd806c244">halInt1TimerHandler</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* HAL_H_ */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hal_8h_html_a33e09a3806bdcd5c711e557178335763"><div class="ttname"><a href="hal_8h.html#a33e09a3806bdcd5c711e557178335763">halRelaisOn</a></div><div class="ttdeci">void halRelaisOn(int relais)</div><div class="ttdoc">Switches relais on. </div><div class="ttdef"><b>Definition:</b> hal.cpp:80</div></div>
+<div class="ttc" id="hal_8h_html_a99d0fb6a80635b679cf4cd1fa90b483d"><div class="ttname"><a href="hal_8h.html#a99d0fb6a80635b679cf4cd1fa90b483d">halResetFlow</a></div><div class="ttdeci">void halResetFlow(void)</div><div class="ttdoc">Resets the Flow counter. </div><div class="ttdef"><b>Definition:</b> hal.cpp:240</div></div>
+<div class="ttc" id="hal_8h_html_a9b67b274703f0c42834f4b447d5c04a2"><div class="ttname"><a href="hal_8h.html#a9b67b274703f0c42834f4b447d5c04a2">halRelaisSet</a></div><div class="ttdeci">void halRelaisSet(int relais, int state)</div><div class="ttdoc">Switches relais to state. </div><div class="ttdef"><b>Definition:</b> hal.cpp:97</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e">SigInt0RlsLong</a></div><div class="ttdef"><b>Definition:</b> hal.h:43</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73">SigInt1RlsLong</a></div><div class="ttdef"><b>Definition:</b> hal.h:46</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2">SigInt1Psh</a></div><div class="ttdef"><b>Definition:</b> hal.h:44</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae">SigInt1Rls</a></div><div class="ttdef"><b>Definition:</b> hal.h:45</div></div>
+<div class="ttc" id="hal_8h_html_a52c001b5136b02e19bd00282a137631d"><div class="ttname"><a href="hal_8h.html#a52c001b5136b02e19bd00282a137631d">halProxSensorCovered</a></div><div class="ttdeci">bool halProxSensorCovered(void)</div><div class="ttdoc">Returns status of the proximity switch. </div><div class="ttdef"><b>Definition:</b> hal.cpp:260</div></div>
+<div class="ttc" id="hal_8h_html_a8cefe61db8caf1cbdbc35f680744a3eb"><div class="ttname"><a href="hal_8h.html#a8cefe61db8caf1cbdbc35f680744a3eb">halMachineOff</a></div><div class="ttdeci">void halMachineOff(void)</div><div class="ttdoc">Turn machine off. </div><div class="ttdef"><b>Definition:</b> hal.cpp:314</div></div>
+<div class="ttc" id="hal_8h_html_a25c63f62c18555fc1b9b50bcd29f1c7d"><div class="ttname"><a href="hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d">halRelaisOff</a></div><div class="ttdeci">void halRelaisOff(int relais)</div><div class="ttdoc">Switches relais off. </div><div class="ttdef"><b>Definition:</b> hal.cpp:88</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68">HalSig</a></div><div class="ttdeci">HalSig</div><div class="ttdef"><b>Definition:</b> hal.h:40</div></div>
+<div class="ttc" id="hal_8h_html_a80e05d7e336073450da3168992d58754"><div class="ttname"><a href="hal_8h.html#a80e05d7e336073450da3168992d58754">halMachineOn</a></div><div class="ttdeci">void halMachineOn(void)</div><div class="ttdoc">Turn machine on. </div><div class="ttdef"><b>Definition:</b> hal.cpp:304</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a6d3fe49429343ea09a007c2236db9382">SigBrewOff</a></div><div class="ttdef"><b>Definition:</b> hal.h:52</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751">SigInt0Psh</a></div><div class="ttdef"><b>Definition:</b> hal.h:41</div></div>
+<div class="ttc" id="hal_8h_html_a1a0d534518ff19bf5b023dfe64d141db"><div class="ttname"><a href="hal_8h.html#a1a0d534518ff19bf5b023dfe64d141db">halGetFlow</a></div><div class="ttdeci">float halGetFlow(void)</div><div class="ttdoc">Returns total flow trough sensor in ml. </div><div class="ttdef"><b>Definition:</b> hal.cpp:233</div></div>
+<div class="ttc" id="hal_8h_html_a597258a80a0bb18db649d01b0893c99f"><div class="ttname"><a href="hal_8h.html#a597258a80a0bb18db649d01b0893c99f">halInt0</a></div><div class="ttdeci">void halInt0(void)</div><div class="ttdoc">Interrupt routine for Int0 (Top button) </div><div class="ttdef"><b>Definition:</b> hal.cpp:133</div></div>
+<div class="ttc" id="hal_8h_html_a1d22d01f1a6a6789f2816e27bbcb0504"><div class="ttname"><a href="hal_8h.html#a1d22d01f1a6a6789f2816e27bbcb0504">halGetRelaisState</a></div><div class="ttdeci">int halGetRelaisState(int relais)</div><div class="ttdoc">Returns the state of the relais relais Returns HIGH when Relais is ON. </div><div class="ttdef"><b>Definition:</b> hal.cpp:119</div></div>
+<div class="ttc" id="hal_8h_html_af5609d1b9c9b6bde787cdca47b3b0a4f"><div class="ttname"><a href="hal_8h.html#af5609d1b9c9b6bde787cdca47b3b0a4f">halGetInt0</a></div><div class="ttdeci">int halGetInt0(void)</div><div class="ttdoc">Returns the value of the top button Int0 (low active) </div><div class="ttdef"><b>Definition:</b> hal.cpp:274</div></div>
+<div class="ttc" id="hal_8h_html_a01f43f0666520e8d8af65e94fd82a5eb"><div class="ttname"><a href="hal_8h.html#a01f43f0666520e8d8af65e94fd82a5eb">halIsHeating</a></div><div class="ttdeci">bool halIsHeating(void)</div><div class="ttdoc">Reads the status of the Pressure Control. </div><div class="ttdef"><b>Definition:</b> hal.cpp:248</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9">SigPressCls</a></div><div class="ttdef"><b>Definition:</b> hal.h:47</div></div>
+<div class="ttc" id="hal_8h_html_a603aaa9c0c3cfef8b185df5c7f4921c3"><div class="ttname"><a href="hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3">halInt1</a></div><div class="ttdeci">void halInt1(void)</div><div class="ttdoc">Interrupt routine for Int1 (Bottom button) </div><div class="ttdef"><b>Definition:</b> hal.cpp:164</div></div>
+<div class="ttc" id="hal_8h_html_ace9ace8c7e0012157569f446d4cb8c52"><div class="ttname"><a href="hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52">halIntFlow</a></div><div class="ttdeci">void halIntFlow(void)</div><div class="ttdoc">Interrupt routine for the flow sensor It counts the edgdes and stores the value in flowcnt...</div><div class="ttdef"><b>Definition:</b> hal.cpp:196</div></div>
+<div class="ttc" id="hal_8h_html_afe1e8d0d1237d0f128d50a5b146002a2"><div class="ttname"><a href="hal_8h.html#afe1e8d0d1237d0f128d50a5b146002a2">halGetInt1</a></div><div class="ttdeci">int halGetInt1(void)</div><div class="ttdoc">Returns the value of the bottom button Int1 (low active) </div><div class="ttdef"><b>Definition:</b> hal.cpp:282</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3">SigInt0Rls</a></div><div class="ttdef"><b>Definition:</b> hal.h:42</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4">SigPressOpn</a></div><div class="ttdef"><b>Definition:</b> hal.h:48</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3">SigProxOpn</a></div><div class="ttdef"><b>Definition:</b> hal.h:49</div></div>
+<div class="ttc" id="hal_8h_html_ad56f6e1b04c236040717eadfd806c244"><div class="ttname"><a href="hal_8h.html#ad56f6e1b04c236040717eadfd806c244">halInt1TimerHandler</a></div><div class="ttdeci">void halInt1TimerHandler(void)</div><div class="ttdef"><b>Definition:</b> hal.cpp:182</div></div>
+<div class="ttc" id="hal_8h_html_afd89c1650df524d95aef39b8bc38170d"><div class="ttname"><a href="hal_8h.html#afd89c1650df524d95aef39b8bc38170d">halInit</a></div><div class="ttdeci">void halInit(void)</div><div class="ttdoc">Initializes HAL. </div><div class="ttdef"><b>Definition:</b> hal.cpp:30</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d">SigProxCvrd</a></div><div class="ttdef"><b>Definition:</b> hal.h:50</div></div>
+<div class="ttc" id="hal_8h_html_a0622583e0c8453a6d6963964ad7e7122"><div class="ttname"><a href="hal_8h.html#a0622583e0c8453a6d6963964ad7e7122">halIntProximity</a></div><div class="ttdeci">void halIntProximity(void)</div><div class="ttdoc">Method to handle toggle of the proximity sensor. </div><div class="ttdef"><b>Definition:</b> hal.cpp:221</div></div>
+<div class="ttc" id="coffee_8cpp_html_a89f234133d3efe315836311cbf21c64b"><div class="ttname"><a href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a></div><div class="ttdeci">int state</div><div class="ttdef"><b>Definition:</b> coffee.cpp:27</div></div>
+<div class="ttc" id="hal_8h_html_a4fa1c41f2dd3c24e13feaa6be70ad426"><div class="ttname"><a href="hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426">halSendSignal</a></div><div class="ttdeci">void halSendSignal(int value)</div><div class="ttdoc">send Signal to coffee thread </div><div class="ttdef"><b>Definition:</b> hal.cpp:290</div></div>
+<div class="ttc" id="hal_8h_html_a73067106de2bbcf98bcc3a06cbf3b000"><div class="ttname"><a href="hal_8h.html#a73067106de2bbcf98bcc3a06cbf3b000">halIntPressure</a></div><div class="ttdeci">void halIntPressure(void)</div><div class="ttdoc">Interrupt routine for the pressure control. </div><div class="ttdef"><b>Definition:</b> hal.cpp:209</div></div>
+<div class="ttc" id="hal_8h_html_aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857"><div class="ttname"><a href="hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857">SigBrewOn</a></div><div class="ttdef"><b>Definition:</b> hal.h:51</div></div>
+<div class="ttc" id="hal_8h_html_aa52d1bfb2ca68e499ad83d9b0d1ba275"><div class="ttname"><a href="hal_8h.html#aa52d1bfb2ca68e499ad83d9b0d1ba275">halInt0TimerHandler</a></div><div class="ttdeci">void halInt0TimerHandler(void)</div><div class="ttdef"><b>Definition:</b> hal.cpp:151</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 3 - 3
CoffeeCode/html/lcd_8cpp.html

@@ -144,11 +144,11 @@ Functions</h2></td></tr>
 <tr class="separator:a688913764edb3a241c26da5e51d70ac2"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ae1b4dfd9571742b5ca0aba92882b57a6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8cpp.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcdClear</a> (const int fd)</td></tr>
 <tr class="separator:ae1b4dfd9571742b5ca0aba92882b57a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af08385cd21eea125d63d6919ecfbea4a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8cpp.html#af08385cd21eea125d63d6919ecfbea4a">lcdDisplay</a> (const int fd, int state)</td></tr>
+<tr class="memitem:af08385cd21eea125d63d6919ecfbea4a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8cpp.html#af08385cd21eea125d63d6919ecfbea4a">lcdDisplay</a> (const int fd, int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
 <tr class="separator:af08385cd21eea125d63d6919ecfbea4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8aa13c894973d52eeed51d10bf869df2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8cpp.html#a8aa13c894973d52eeed51d10bf869df2">lcdCursor</a> (const int fd, int state)</td></tr>
+<tr class="memitem:a8aa13c894973d52eeed51d10bf869df2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8cpp.html#a8aa13c894973d52eeed51d10bf869df2">lcdCursor</a> (const int fd, int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
 <tr class="separator:a8aa13c894973d52eeed51d10bf869df2"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af39d67df7e36291184f69691bb97285b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8cpp.html#af39d67df7e36291184f69691bb97285b">lcdCursorBlink</a> (const int fd, int state)</td></tr>
+<tr class="memitem:af39d67df7e36291184f69691bb97285b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8cpp.html#af39d67df7e36291184f69691bb97285b">lcdCursorBlink</a> (const int fd, int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
 <tr class="separator:af39d67df7e36291184f69691bb97285b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:abb6341df42d0e652db66e51fbf0ba486"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8cpp.html#abb6341df42d0e652db66e51fbf0ba486">lcdSendCommand</a> (const int fd, unsigned char command)</td></tr>
 <tr class="separator:abb6341df42d0e652db66e51fbf0ba486"><td class="memSeparator" colspan="2">&#160;</td></tr>

+ 3 - 3
CoffeeCode/html/lcd_8h.html

@@ -108,11 +108,11 @@ Functions</h2></td></tr>
 <tr class="separator:a688913764edb3a241c26da5e51d70ac2"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ae1b4dfd9571742b5ca0aba92882b57a6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8h.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcdClear</a> (const int fd)</td></tr>
 <tr class="separator:ae1b4dfd9571742b5ca0aba92882b57a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af08385cd21eea125d63d6919ecfbea4a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8h.html#af08385cd21eea125d63d6919ecfbea4a">lcdDisplay</a> (const int fd, int state)</td></tr>
+<tr class="memitem:af08385cd21eea125d63d6919ecfbea4a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8h.html#af08385cd21eea125d63d6919ecfbea4a">lcdDisplay</a> (const int fd, int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
 <tr class="separator:af08385cd21eea125d63d6919ecfbea4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8aa13c894973d52eeed51d10bf869df2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8h.html#a8aa13c894973d52eeed51d10bf869df2">lcdCursor</a> (const int fd, int state)</td></tr>
+<tr class="memitem:a8aa13c894973d52eeed51d10bf869df2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8h.html#a8aa13c894973d52eeed51d10bf869df2">lcdCursor</a> (const int fd, int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
 <tr class="separator:a8aa13c894973d52eeed51d10bf869df2"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af39d67df7e36291184f69691bb97285b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8h.html#af39d67df7e36291184f69691bb97285b">lcdCursorBlink</a> (const int fd, int state)</td></tr>
+<tr class="memitem:af39d67df7e36291184f69691bb97285b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8h.html#af39d67df7e36291184f69691bb97285b">lcdCursorBlink</a> (const int fd, int <a class="el" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>)</td></tr>
 <tr class="separator:af39d67df7e36291184f69691bb97285b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:abb6341df42d0e652db66e51fbf0ba486"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lcd_8h.html#abb6341df42d0e652db66e51fbf0ba486">lcdSendCommand</a> (const int fd, unsigned char command)</td></tr>
 <tr class="separator:abb6341df42d0e652db66e51fbf0ba486"><td class="memSeparator" colspan="2">&#160;</td></tr>

+ 2 - 1
CoffeeCode/html/lcd_8h_source.html

@@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
 <div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#a688913764edb3a241c26da5e51d70ac2">lcdHome</a>        (<span class="keyword">const</span> <span class="keywordtype">int</span> fd) ;</div>
 <div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#ae1b4dfd9571742b5ca0aba92882b57a6">lcdClear</a>       (<span class="keyword">const</span> <span class="keywordtype">int</span> fd) ;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#af08385cd21eea125d63d6919ecfbea4a">lcdDisplay</a>     (<span class="keyword">const</span> <span class="keywordtype">int</span> fd, <span class="keywordtype">int</span> state) ;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#af08385cd21eea125d63d6919ecfbea4a">lcdDisplay</a>     (<span class="keyword">const</span> <span class="keywordtype">int</span> fd, <span class="keywordtype">int</span> <a class="code" href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a>) ;</div>
 <div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#a8aa13c894973d52eeed51d10bf869df2">lcdCursor</a>      (<span class="keyword">const</span> <span class="keywordtype">int</span> fd, <span class="keywordtype">int</span> state) ;</div>
 <div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#af39d67df7e36291184f69691bb97285b">lcdCursorBlink</a> (<span class="keyword">const</span> <span class="keywordtype">int</span> fd, <span class="keywordtype">int</span> state) ;</div>
 <div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="lcd_8h.html#abb6341df42d0e652db66e51fbf0ba486">lcdSendCommand</a> (<span class="keyword">const</span> <span class="keywordtype">int</span> fd, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> command) ;</div>
@@ -145,6 +145,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="ttc" id="lcd_8h_html_abb6341df42d0e652db66e51fbf0ba486"><div class="ttname"><a href="lcd_8h.html#abb6341df42d0e652db66e51fbf0ba486">lcdSendCommand</a></div><div class="ttdeci">void lcdSendCommand(const int fd, unsigned char command)</div><div class="ttdef"><b>Definition:</b> lcd.cpp:221</div></div>
 <div class="ttc" id="lcd_8h_html_a47f05b4cef2cf066cf1cbb1beb7ceb31"><div class="ttname"><a href="lcd_8h.html#a47f05b4cef2cf066cf1cbb1beb7ceb31">lcdInitI</a></div><div class="ttdeci">int lcdInitI(const int rows, const int cols, const int bits, const int rs, const int strb)</div><div class="ttdef"><b>Definition:</b> lcd.cpp:339</div></div>
 <div class="ttc" id="lcd_8h_html_a21c60441ee22710add0c9bda1310ed66"><div class="ttname"><a href="lcd_8h.html#a21c60441ee22710add0c9bda1310ed66">lcdPutchar</a></div><div class="ttdeci">void lcdPutchar(const int fd, unsigned char data)</div><div class="ttdef"><b>Definition:</b> lcd.cpp:273</div></div>
+<div class="ttc" id="coffee_8cpp_html_a89f234133d3efe315836311cbf21c64b"><div class="ttname"><a href="coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b">state</a></div><div class="ttdeci">int state</div><div class="ttdef"><b>Definition:</b> coffee.cpp:27</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 8 - 46
CoffeeCode/html/main_8cpp.html

@@ -98,7 +98,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <code>#include &lt;unistd.h&gt;</code><br />
 <code>#include &lt;iostream&gt;</code><br />
 <code>#include &lt;csignal&gt;</code><br />
-<code>#include &lt;time.h&gt;</code><br />
 <code>#include &quot;<a class="el" href="global_8h_source.html">global.h</a>&quot;</code><br />
 <code>#include &quot;<a class="el" href="timer_8h_source.html">timer.h</a>&quot;</code><br />
 <code>#include &quot;<a class="el" href="database_8h_source.html">database.h</a>&quot;</code><br />
@@ -106,7 +105,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <code>#include &quot;<a class="el" href="lcd_8h_source.html">lcd.h</a>&quot;</code><br />
 <code>#include &quot;<a class="el" href="hal_8h_source.html">hal.h</a>&quot;</code><br />
 <code>#include &quot;<a class="el" href="stripe_8h_source.html">stripe.h</a>&quot;</code><br />
-<code>#include &quot;coffee.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="coffee_8h_source.html">coffee.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="display_8h_source.html">display.h</a>&quot;</code><br />
 <code>#include &quot;buildno&quot;</code><br />
 </div><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
@@ -123,9 +123,6 @@ Functions</h2></td></tr>
 <tr class="memitem:aa5f8eab61a77d6d566215bcf12144422"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#aa5f8eab61a77d6d566215bcf12144422">hupHandler</a> (int signum)</td></tr>
 <tr class="memdesc:aa5f8eab61a77d6d566215bcf12144422"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handles the signal HUP and starts a speed test.  <a href="#aa5f8eab61a77d6d566215bcf12144422">More...</a><br /></td></tr>
 <tr class="separator:aa5f8eab61a77d6d566215bcf12144422"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a069c1b36dcf7099c23ee7382fd95573b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a069c1b36dcf7099c23ee7382fd95573b">timeHandler</a> (void)</td></tr>
-<tr class="memdesc:a069c1b36dcf7099c23ee7382fd95573b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Temporary timer for displaying the current time.  <a href="#a069c1b36dcf7099c23ee7382fd95573b">More...</a><br /></td></tr>
-<tr class="separator:a069c1b36dcf7099c23ee7382fd95573b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a0ddf1224851353fc92bfbff6f499fa97"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97">main</a> (int argc, char *argv[])</td></tr>
 <tr class="separator:a0ddf1224851353fc92bfbff6f499fa97"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ab6e46b0071bb3330546b7f2b601d0a6c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#ab6e46b0071bb3330546b7f2b601d0a6c">killThread</a> (int threadid, int sig)</td></tr>
@@ -136,17 +133,14 @@ Functions</h2></td></tr>
 Variables</h2></td></tr>
 <tr class="memitem:ac70430026dcf56f46e5426e1d01d7e89"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#ac70430026dcf56f46e5426e1d01d7e89">buildno</a></td></tr>
 <tr class="separator:ac70430026dcf56f46e5426e1d01d7e89"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9d1129916cfa4cbd7489638ce470c3a4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a9d1129916cfa4cbd7489638ce470c3a4">lcd</a> = 0</td></tr>
-<tr class="separator:a9d1129916cfa4cbd7489638ce470c3a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a0b2caeb4b6f130be43e5a2f0267dd453"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a0b2caeb4b6f130be43e5a2f0267dd453">verbose</a> = 0</td></tr>
 <tr class="separator:a0b2caeb4b6f130be43e5a2f0267dd453"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ae88c926fe2a10f736eb01b1d1e899a1c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#ae88c926fe2a10f736eb01b1d1e899a1c">optDate</a> = false</td></tr>
 <tr class="separator:ae88c926fe2a10f736eb01b1d1e899a1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a7bfeade3d2f19e8baecdcddd7f9162fa"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a7bfeade3d2f19e8baecdcddd7f9162fa">optPower</a> = false</td></tr>
 <tr class="separator:a7bfeade3d2f19e8baecdcddd7f9162fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a00359617f7973ce34d269f7dfd41c11b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classtimer.html">timer</a> timeTimer &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a00359617f7973ce34d269f7dfd41c11b">timeHandler</a></td></tr>
-<tr class="memdesc:a00359617f7973ce34d269f7dfd41c11b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Temporary timer for displaying the current time.  <a href="#a00359617f7973ce34d269f7dfd41c11b">More...</a><br /></td></tr>
-<tr class="separator:a00359617f7973ce34d269f7dfd41c11b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a24ab7c0142e353c9ce9ca1ee1210bb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a2a24ab7c0142e353c9ce9ca1ee1210bb">optCold</a> = false</td></tr>
+<tr class="separator:a2a24ab7c0142e353c9ce9ca1ee1210bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ad1c21fd320f05c652f120ad167628c14"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#ad1c21fd320f05c652f120ad167628c14">thread</a> [4]</td></tr>
 <tr class="separator:ad1c21fd320f05c652f120ad167628c14"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a4acff8232e4aec9cd5c6dc200ac55ef3"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a4acff8232e4aec9cd5c6dc200ac55ef3">mutex</a></td></tr>
@@ -272,24 +266,6 @@ Variables</h2></td></tr>
 
 <p>Handler for program termination caught via signal. </p>
 
-</div>
-</div>
-<a class="anchor" id="a069c1b36dcf7099c23ee7382fd95573b"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void timeHandler </td>
-          <td>(</td>
-          <td class="paramtype">void&#160;</td>
-          <td class="paramname"></td><td>)</td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-
-<p>Temporary timer for displaying the current time. </p>
-
 </div>
 </div>
 <a class="anchor" id="a6b9ec8ce27cbec14222dfd2db55e8bad"></a>
@@ -326,24 +302,24 @@ Variables</h2></td></tr>
 </div><!-- fragment -->
 </div>
 </div>
-<a class="anchor" id="a9d1129916cfa4cbd7489638ce470c3a4"></a>
+<a class="anchor" id="a4acff8232e4aec9cd5c6dc200ac55ef3"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">int lcd = 0</td>
+          <td class="memname">pthread_mutex_t mutex</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="a4acff8232e4aec9cd5c6dc200ac55ef3"></a>
+<a class="anchor" id="a2a24ab7c0142e353c9ce9ca1ee1210bb"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">pthread_mutex_t mutex</td>
+          <td class="memname">bool optCold = false</td>
         </tr>
       </table>
 </div><div class="memdoc">
@@ -384,20 +360,6 @@ Variables</h2></td></tr>
       </table>
 </div><div class="memdoc">
 
-</div>
-</div>
-<a class="anchor" id="a00359617f7973ce34d269f7dfd41c11b"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void timeHandler</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-
-<p>Temporary timer for displaying the current time. </p>
-
 </div>
 </div>
 <a class="anchor" id="a0b2caeb4b6f130be43e5a2f0267dd453"></a>

+ 2 - 1
CoffeeCode/html/search/all_0.js

@@ -1,4 +1,5 @@
 var searchData=
 [
-  ['alivecrc',['AliveCRC',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfababedca157bd5e1f8c299e61c197f62f',1,'database.h']]]
+  ['amount_5fdblespresso',['AMOUNT_DBLESPRESSO',['../coffee_8h.html#a4e3abbeb2301b9265ee297ee63e2f4c8',1,'coffee.h']]],
+  ['amount_5fpreinfusion',['AMOUNT_PREINFUSION',['../coffee_8h.html#ad8bfbae67917bc4a69ae336c65b3aba2',1,'coffee.h']]]
 ];

+ 3 - 0
CoffeeCode/html/search/all_1.js

@@ -1,5 +1,8 @@
 var searchData=
 [
+  ['beginheating',['beginHeating',['../coffee_8cpp.html#a1426cd37aa49a96e7bcf12d26cde1a0d',1,'coffee.cpp']]],
   ['blue',['blue',['../structstripe__color.html#a2de85b974fc4ec0bcea12d6a270e53a9',1,'stripe_color']]],
+  ['brewtime',['brewTime',['../coffee_8cpp.html#a3756d547bc4c41a306650f4f4bbb930c',1,'coffee.cpp']]],
+  ['brewtimehandler',['brewTimeHandler',['../coffee_8cpp.html#a25ddb2af4585729d37dab1e1b5bb0b06',1,'brewTimeHandler():&#160;coffee.cpp'],['../coffee_8cpp.html#a66d75a676639d0f8e56c0efe76547482',1,'brewTimeHandler(void):&#160;coffee.cpp'],['../coffee_8h.html#a66d75a676639d0f8e56c0efe76547482',1,'brewTimeHandler(void):&#160;coffee.cpp']]],
   ['buildno',['buildno',['../main_8cpp.html#ac70430026dcf56f46e5426e1d01d7e89',1,'main.cpp']]]
 ];

+ 24 - 3
CoffeeCode/html/search/all_10.js

@@ -11,12 +11,16 @@ var searchData=
   ['sigbrewon',['SigBrewOn',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f8316fcd4daf8fdee99ad3414c00857',1,'hal.h']]],
   ['sigint0psh',['SigInt0Psh',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a4f6585385aaee8e6a336fb31e8713751',1,'hal.h']]],
   ['sigint0rls',['SigInt0Rls',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae70d75d9c016f72d315ce0f375425ae3',1,'hal.h']]],
+  ['sigint0rlslong',['SigInt0RlsLong',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ae12ff99a3219da47e0c3c2ebb690906e',1,'hal.h']]],
   ['sigint1psh',['SigInt1Psh',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a5fd8970919f375d9f3baaaa053865ce2',1,'hal.h']]],
   ['sigint1rls',['SigInt1Rls',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68aa85940fc659570c5b7ec2d8e0ed3eeae',1,'hal.h']]],
+  ['sigint1rlslong',['SigInt1RlsLong',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a1a7c6bd95f0ccdf91bc363cc8a638b73',1,'hal.h']]],
   ['sigpresscls',['SigPressCls',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68abdd48e173224114754f253d764540ec9',1,'hal.h']]],
   ['sigpressopn',['SigPressOpn',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a683f7a77d5c63e835b2a72ab1c540fe4',1,'hal.h']]],
   ['sigproxcvrd',['SigProxCvrd',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68ac53b2d92b9e3b1652f173e29db5b523d',1,'hal.h']]],
   ['sigproxopn',['SigProxOpn',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68a7f18f13ecf372adaf681e706ad051fd3',1,'hal.h']]],
+  ['sigvalue',['sigValue',['../coffee_8cpp.html#a959eceab8fe67a33076aa42e877441a5',1,'coffee.cpp']]],
+  ['sigvalueempty',['SigValueEmpty',['../coffee_8cpp.html#a63f25020d1567a2d5e03a9a59e75a0fc',1,'SigValueEmpty(void):&#160;coffee.cpp'],['../coffee_8h.html#a63f25020d1567a2d5e03a9a59e75a0fc',1,'SigValueEmpty(void):&#160;coffee.cpp']]],
   ['spi_2ecpp',['spi.cpp',['../spi_8cpp.html',1,'']]],
   ['spi_2eh',['spi.h',['../spi_8h.html',1,'']]],
   ['spi_5fchannel',['SPI_CHANNEL',['../global_8h.html#aa8cbb3355883e35c18820bfa63c4ce3a',1,'global.h']]],
@@ -28,14 +32,31 @@ var searchData=
   ['sqlexecute',['sqlExecute',['../database_8cpp.html#afd88a963f835215b8dad9ee9e49866dc',1,'sqlExecute(string query):&#160;database.cpp'],['../database_8h.html#afd88a963f835215b8dad9ee9e49866dc',1,'sqlExecute(string query):&#160;database.cpp']]],
   ['sqlexecute2',['sqlExecute2',['../database_8cpp.html#a53458fb936962d23efec505a545a9cb8',1,'database.cpp']]],
   ['sqlgetconf',['sqlGetConf',['../database_8cpp.html#aad0e803eda7a440a6063a447cfeca0cd',1,'sqlGetConf(config_key_t id):&#160;database.cpp'],['../database_8h.html#aad0e803eda7a440a6063a447cfeca0cd',1,'sqlGetConf(config_key_t id):&#160;database.cpp']]],
-  ['sqlinsertnode',['sqlInsertNode',['../database_8h.html#a6ad9c375b101ce2cb461975eb2748b93',1,'database.h']]],
   ['sqlopen',['sqlOpen',['../database_8cpp.html#a1885a74e6af3ee510f30f98e60372e3e',1,'sqlOpen():&#160;database.cpp'],['../database_8h.html#a1885a74e6af3ee510f30f98e60372e3e',1,'sqlOpen():&#160;database.cpp']]],
-  ['sqlreadnodes',['sqlReadNodes',['../database_8h.html#ae28580072312f213d923d9b145e3dc90',1,'database.h']]],
   ['sqlsetconf',['sqlSetConf',['../database_8cpp.html#a1ce0ac0c58916c138a92d3282f569784',1,'sqlSetConf(config_key_t id, uint64_t value):&#160;database.cpp'],['../database_8h.html#a1ce0ac0c58916c138a92d3282f569784',1,'sqlSetConf(config_key_t id, uint64_t value):&#160;database.cpp']]],
   ['sqlsetup',['sqlSetup',['../database_8cpp.html#aaed3fb776c9dc76d262df026803d3b8c',1,'sqlSetup():&#160;database.cpp'],['../database_8h.html#aaed3fb776c9dc76d262df026803d3b8c',1,'sqlSetup():&#160;database.cpp']]],
   ['sqltest',['sqltest',['../database_8cpp.html#a5d0363e5d886e2c3e4bb5ca46d265ba7',1,'sqltest():&#160;database.cpp'],['../database_8h.html#a5d0363e5d886e2c3e4bb5ca46d265ba7',1,'sqltest():&#160;database.cpp']]],
   ['start',['start',['../classtimer.html#a9aa894a57748b2bdf3adce46f5736794',1,'timer']]],
+  ['state',['state',['../coffee_8cpp.html#a89f234133d3efe315836311cbf21c64b',1,'coffee.cpp']]],
+  ['state_5fbrew',['STATE_BREW',['../coffee_8h.html#a7a56332694aec763a9f8028113a07199',1,'coffee.h']]],
+  ['state_5fbrewmanual',['STATE_BREWMANUAL',['../coffee_8h.html#af696741daae3faab28c27755188fd828',1,'coffee.h']]],
+  ['state_5fcleaning',['STATE_CLEANING',['../coffee_8h.html#a3a3e5a95a5ba91345c6a1b6f7e06c737',1,'coffee.h']]],
+  ['state_5ferror',['STATE_ERROR',['../coffee_8h.html#a7bf0c086c7c41c12cc63324327932d91',1,'coffee.h']]],
+  ['state_5fheating',['STATE_HEATING',['../coffee_8h.html#ab87d7787dc7a2c2afc6d7853353d7003',1,'coffee.h']]],
+  ['state_5fidle',['STATE_IDLE',['../coffee_8h.html#aafff27c7165f059a969fe60fee51f683',1,'coffee.h']]],
+  ['state_5finitalheating',['STATE_INITALHEATING',['../coffee_8h.html#af74b21e82c0f8fbf7f697db071d420a0',1,'coffee.h']]],
+  ['state_5foff',['STATE_OFF',['../coffee_8h.html#a0cc0d45e13bc83065d45df9d3d1dc887',1,'coffee.h']]],
   ['stop',['stop',['../classtimer.html#a3218d61649e284071544b17c8c915ecc',1,'timer']]],
+  ['stoptimers',['stopTimers',['../timer_8cpp.html#a43ed436d8c1803ced3029a909320a841',1,'stopTimers(void):&#160;timer.cpp'],['../timer_8h.html#a43ed436d8c1803ced3029a909320a841',1,'stopTimers(void):&#160;timer.cpp']]],
+  ['str_5fbrewing',['str_brewing',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8e3b0fbb0f42de5df8434e44e0b85272',1,'display.h']]],
+  ['str_5fbye',['str_bye',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907ab88ed9e2db4f34884981000ac617defb',1,'display.h']]],
+  ['str_5fcleaning',['str_cleaning',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907a2bb69120919321c90fe0862abc8a247c',1,'display.h']]],
+  ['str_5ferror',['str_error',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907aeaed0d27362049f28692626f30566890',1,'display.h']]],
+  ['str_5fflow',['str_flow',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907aadf50a104ff26cf8b575c0b68e52a572',1,'display.h']]],
+  ['str_5fheating',['str_heating',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907a9eb4c3532bbada27013a4cff3dc8a624',1,'display.h']]],
+  ['str_5fheatingready',['str_heatingready',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907a8aaa4383254e4327e846e45befac54d0',1,'display.h']]],
+  ['str_5flast',['str_last',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907aa22549c4ff533e248b5fad404f80c6d9',1,'display.h']]],
+  ['str_5fready',['str_ready',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907af200a74535586cc849fc6f5f38c85171',1,'display.h']]],
   ['string_5fsprintf',['string_sprintf',['../database_8cpp.html#acd0eb5a18168fa3c37fab8ed0958c043',1,'string_sprintf(const char *format,...) __attribute__((format(printf:&#160;database.cpp'],['../database_8h.html#a6c0bc3256310fd400a26243d8a8f1652',1,'string_sprintf(const char *format,...):&#160;database.cpp']]],
   ['string_5fvsprintf',['string_vsprintf',['../database_8cpp.html#ac240bb02efe882b4e82da48676301d89',1,'database.cpp']]],
   ['stripe_2ecpp',['stripe.cpp',['../stripe_8cpp.html',1,'']]],
@@ -60,7 +81,7 @@ var searchData=
   ['stripegetdim',['stripeGetDim',['../stripe_8cpp.html#ab479c1db854476cf80b86d1fe33a908e',1,'stripeGetDim(int *dim):&#160;stripe.cpp'],['../stripe_8h.html#ab479c1db854476cf80b86d1fe33a908e',1,'stripeGetDim(int *dim):&#160;stripe.cpp']]],
   ['stripegetrgb',['stripeGetRGB',['../stripe_8cpp.html#ac5379b3ade62c829d19654c22efd90de',1,'stripeGetRGB(int *red, int *green, int *blue):&#160;stripe.cpp'],['../stripe_8h.html#ac5379b3ade62c829d19654c22efd90de',1,'stripeGetRGB(int *red, int *green, int *blue):&#160;stripe.cpp']]],
   ['stripegetwhite',['stripeGetWhite',['../stripe_8cpp.html#aa67941dfd018cc2e0ba62a76a3d9136d',1,'stripeGetWhite(int *white):&#160;stripe.cpp'],['../stripe_8h.html#aa67941dfd018cc2e0ba62a76a3d9136d',1,'stripeGetWhite(int *white):&#160;stripe.cpp']]],
-  ['stripeinit',['stripeInit',['../stripe_8cpp.html#a21c653d98b869951f96654ccb3a4b290',1,'stripeInit():&#160;stripe.cpp'],['../stripe_8h.html#a21c653d98b869951f96654ccb3a4b290',1,'stripeInit():&#160;stripe.cpp']]],
+  ['stripeinit',['stripeInit',['../stripe_8cpp.html#aec214522cff28dc1b0f20c2ec2870189',1,'stripeInit(void):&#160;stripe.cpp'],['../stripe_8h.html#aec214522cff28dc1b0f20c2ec2870189',1,'stripeInit(void):&#160;stripe.cpp']]],
   ['stripeoff',['stripeOff',['../stripe_8cpp.html#a40d444a306464fa8547feea96737ae0d',1,'stripeOff(void):&#160;stripe.cpp'],['../stripe_8h.html#a40d444a306464fa8547feea96737ae0d',1,'stripeOff(void):&#160;stripe.cpp']]],
   ['stripeon',['stripeOn',['../stripe_8cpp.html#a9130dbeb208c1b9e5519834f7de6a530',1,'stripeOn(void):&#160;stripe.cpp'],['../stripe_8h.html#a9130dbeb208c1b9e5519834f7de6a530',1,'stripeOn(void):&#160;stripe.cpp']]],
   ['stripesetcolor',['stripeSetColor',['../stripe_8cpp.html#a32197a6a1a75aaf54a2a19dbc31be4e0',1,'stripeSetColor(stripe_color color):&#160;stripe.cpp'],['../stripe_8h.html#a32197a6a1a75aaf54a2a19dbc31be4e0',1,'stripeSetColor(stripe_color color):&#160;stripe.cpp']]],

+ 5 - 2
CoffeeCode/html/search/all_11.js

@@ -1,19 +1,22 @@
 var searchData=
 [
   ['terminationhandler',['terminationHandler',['../main_8cpp.html#acd303e48c6d5b8d8bbf55db887f1e7e8',1,'main.cpp']]],
-  ['testslowcnt',['testSlowCnt',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfa221e2bd4755481003e8fe6ca37c66eb1',1,'database.h']]],
+  ['text',['text',['../structdisplay__string__t.html#ab9601397e04cf6055529648402146924',1,'display_string_t']]],
   ['thread',['thread',['../global_8h.html#a5e61240888e929e526f41e19b6c0bd46',1,'thread():&#160;main.cpp'],['../main_8cpp.html#ad1c21fd320f05c652f120ad167628c14',1,'thread():&#160;main.cpp']]],
   ['thread_5fcoffee',['THREAD_COFFEE',['../global_8h.html#a5f697926bb7bcc4722a9e650a1acdb6a',1,'global.h']]],
   ['thread_5fdisplay',['THREAD_DISPLAY',['../global_8h.html#a843e1fa4b4de70b9f31d42a41a896c1c',1,'global.h']]],
   ['thread_5fmain',['THREAD_MAIN',['../global_8h.html#a67a7c5f1e4a75f1508395d450895990d',1,'global.h']]],
   ['thread_5fstripe',['THREAD_STRIPE',['../global_8h.html#a77f390a98c0e73ae38abd20f467d6cce',1,'global.h']]],
-  ['timehandler',['timeHandler',['../main_8cpp.html#a00359617f7973ce34d269f7dfd41c11b',1,'timeHandler():&#160;main.cpp'],['../main_8cpp.html#a069c1b36dcf7099c23ee7382fd95573b',1,'timeHandler(void):&#160;main.cpp']]],
+  ['time_5fbuttonlongpress',['TIME_BUTTONLONGPRESS',['../hal_8h.html#a39a999d4c82a1021ee63072abe804946',1,'hal.h']]],
+  ['time_5finfusion',['TIME_INFUSION',['../coffee_8h.html#acd34aefc536dfe9b45dbed679cf6afaf',1,'coffee.h']]],
+  ['time_5fsoak',['TIME_SOAK',['../coffee_8h.html#ad4b00557d847ecf54b790844b3be2eb0',1,'coffee.h']]],
   ['timer',['timer',['../classtimer.html',1,'timer'],['../classtimer.html#a863dd9a194499a5ebbaf6937969916f2',1,'timer::timer(void(*handler)(void))'],['../classtimer.html#a36730b19460d9576fe6d7535f969105a',1,'timer::timer(void *(*handler)(void *))']]],
   ['timer_2ecpp',['timer.cpp',['../timer_8cpp.html',1,'']]],
   ['timer_2eh',['timer.h',['../timer_8h.html',1,'']]],
   ['timer_5fdelay_5fus',['TIMER_DELAY_US',['../global_8h.html#a91dee3a4ce745234c8a4998388d6c645',1,'global.h']]],
   ['timer_5fhandler',['timer_handler',['../timer_8cpp.html#a69a9ecb245422cbf03f28336a3cde462',1,'timer.cpp']]],
   ['timercnt',['timercnt',['../timer_8cpp.html#a0f94d5829b547df53531ff4c3ec325c0',1,'timer.cpp']]],
+  ['timerscaler',['timerScaler',['../display_8cpp.html#adf977b563dc485f1d1c4e601a9b31b68',1,'display.cpp']]],
   ['topbit',['TOPBIT',['../crc_8cpp.html#a118ad552670dbefa1df0ba72d147f5e1',1,'crc.cpp']]],
   ['trans_5fdirect',['TRANS_DIRECT',['../stripe_8h.html#aa761062faf633557e537e07a781965e9ad41450786f0c8b404231dfaff4c14931',1,'stripe.h']]],
   ['trans_5ffast',['TRANS_FAST',['../stripe_8h.html#aa761062faf633557e537e07a781965e9a37991877080c17224eaa0268947a545c',1,'stripe.h']]],

+ 14 - 1
CoffeeCode/html/search/all_2.js

@@ -1,13 +1,26 @@
 var searchData=
 [
   ['call',['call',['../classtimer.html#a7d9f6d9f98d51534be127d57f497b345',1,'timer']]],
+  ['cfgbrewcounter',['CFGbrewcounter',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfa4be4c7f723934d3333a26575662e916e',1,'database.h']]],
+  ['cfgdisplaylang',['CFGdisplaylang',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfab9f0f19359d390e5602d46e39949ede4',1,'database.h']]],
+  ['cfgheatingtime',['CFGHeatingTime',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3c1d629019edc36dce2a7852d3d65968',1,'database.h']]],
+  ['changestate',['changeState',['../coffee_8cpp.html#ae4d9681385a3f678dee40458cf55dca0',1,'changeState(int newState):&#160;coffee.cpp'],['../coffee_8h.html#ae4d9681385a3f678dee40458cf55dca0',1,'changeState(int newState):&#160;coffee.cpp']]],
   ['chartoint',['chartoint',['../database_8cpp.html#ad2d2a73c367513b8b71aff5546276a3c',1,'chartoint(const unsigned char *guid):&#160;database.cpp'],['../database_8h.html#ad2d2a73c367513b8b71aff5546276a3c',1,'chartoint(const unsigned char *guid):&#160;database.cpp']]],
   ['check_5fvalue',['CHECK_VALUE',['../crc_8h.html#aee81a10f43f9dc645ba69a7407c151d0',1,'crc.h']]],
   ['clearline',['CLEARLINE',['../logger_8h.html#ae39a97a19b2e372929dabdc0e3822910',1,'logger.h']]],
   ['clockid',['CLOCKID',['../timer_8h.html#a2694a39dfd1fa087ca6f9f391c91dae7',1,'timer.h']]],
+  ['coffee_2ecpp',['coffee.cpp',['../coffee_8cpp.html',1,'']]],
+  ['coffee_2eh',['coffee.h',['../coffee_8h.html',1,'']]],
+  ['coffeebrew',['coffeeBrew',['../coffee_8cpp.html#a343324d9863aa6eb3d7e2a183aec4a09',1,'coffeeBrew(void):&#160;coffee.cpp'],['../coffee_8h.html#a343324d9863aa6eb3d7e2a183aec4a09',1,'coffeeBrew(void):&#160;coffee.cpp']]],
+  ['coffeehandler',['coffeeHandler',['../coffee_8cpp.html#a44f0ebaec249d2ce6316c1bddff54d79',1,'coffeeHandler(int signum, siginfo_t *siginfo, void *context):&#160;coffee.cpp'],['../coffee_8h.html#a44f0ebaec249d2ce6316c1bddff54d79',1,'coffeeHandler(int signum, siginfo_t *siginfo, void *context):&#160;coffee.cpp']]],
+  ['coffeeincreasebrewcounter',['coffeeIncreaseBrewCounter',['../coffee_8cpp.html#a7c29bb32c4f3971f78dd515e568042c3',1,'coffeeIncreaseBrewCounter(void):&#160;coffee.cpp'],['../coffee_8h.html#a7c29bb32c4f3971f78dd515e568042c3',1,'coffeeIncreaseBrewCounter(void):&#160;coffee.cpp']]],
+  ['coffeeincreaseheatingtime',['coffeeIncreaseHeatingTime',['../coffee_8cpp.html#a11b81e21f5769fc6b0e55ecbac8d3976',1,'coffeeIncreaseHeatingTime(uint64_t heatingTime):&#160;coffee.cpp'],['../coffee_8h.html#a11b81e21f5769fc6b0e55ecbac8d3976',1,'coffeeIncreaseHeatingTime(uint64_t heatingTime):&#160;coffee.cpp']]],
+  ['coffeestate',['coffeeState',['../display_8cpp.html#a8f3437c133bc4d1be650cbbc5128f1a8',1,'display.cpp']]],
+  ['coffeeterminate',['coffeeTerminate',['../coffee_8cpp.html#a5c611f1d81caf2f51c8b77b307028e4d',1,'coffeeTerminate(void):&#160;coffee.cpp'],['../coffee_8h.html#a5c611f1d81caf2f51c8b77b307028e4d',1,'coffeeTerminate(void):&#160;coffee.cpp']]],
+  ['coffeethread',['coffeeThread',['../coffee_8cpp.html#afed8c565650f5808745b6c6c7d45462c',1,'coffeeThread(void *threadid):&#160;coffee.cpp'],['../coffee_8h.html#afed8c565650f5808745b6c6c7d45462c',1,'coffeeThread(void *threadid):&#160;coffee.cpp']]],
   ['config_5fkey_5ft',['config_key_t',['../database_8h.html#ae1822373f950fb4881633b7ec843f4df',1,'database.h']]],
   ['counter',['counter',['../timer_8cpp.html#a617a47c70795bcff659815ad0efd2266',1,'timer.cpp']]],
-  ['crc',['crc',['../crc_8h.html#a73364f0434186bc77eaa8e3b03a437be',1,'crc():&#160;crc.h'],['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfaadc75f07a97300078de1c92bf6414827',1,'CRC():&#160;database.h']]],
+  ['crc',['crc',['../crc_8h.html#a73364f0434186bc77eaa8e3b03a437be',1,'crc.h']]],
   ['crc_2ecpp',['crc.cpp',['../crc_8cpp.html',1,'']]],
   ['crc_2eh',['crc.h',['../crc_8h.html',1,'']]],
   ['crc32',['CRC32',['../crc_8h.html#a491e419c18fbc5c7cb4a2cd901e31440',1,'crc.h']]],

+ 22 - 1
CoffeeCode/html/search/all_3.js

@@ -2,5 +2,26 @@ var searchData=
 [
   ['database_2ecpp',['database.cpp',['../database_8cpp.html',1,'']]],
   ['database_2eh',['database.h',['../database_8h.html',1,'']]],
-  ['db',['db',['../database_8cpp.html#ad6e663497d2c934364b3bcf07496b30b',1,'database.cpp']]]
+  ['db',['db',['../database_8cpp.html#ad6e663497d2c934364b3bcf07496b30b',1,'database.cpp']]],
+  ['default_5flang',['DEFAULT_LANG',['../display_8h.html#aa0b13de112401f9608d402bfc5a14d0d',1,'display.h']]],
+  ['display_2ecpp',['display.cpp',['../display_8cpp.html',1,'']]],
+  ['display_2eh',['display.h',['../display_8h.html',1,'']]],
+  ['display_5fcols',['DISPLAY_COLS',['../display_8h.html#ad01ecf7f4d29cece64f84d890e414570',1,'display.h']]],
+  ['display_5flang_5ft',['display_lang_t',['../display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080',1,'display.h']]],
+  ['display_5frows',['DISPLAY_ROWS',['../display_8h.html#abdc19d7f30976562c2d3efce365ef8f4',1,'display.h']]],
+  ['display_5fstring_5ft',['display_string_t',['../structdisplay__string__t.html',1,'']]],
+  ['display_5fstrings_5ft',['display_strings_t',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907',1,'display.h']]],
+  ['displaygetstring',['displayGetString',['../display_8cpp.html#ab2661cdbd686f7d3389a3d9c2cf98f47',1,'displayGetString(display_strings_t string):&#160;display.cpp'],['../display_8h.html#ab2661cdbd686f7d3389a3d9c2cf98f47',1,'displayGetString(display_strings_t string):&#160;display.cpp']]],
+  ['displayinit',['displayInit',['../display_8cpp.html#a8c548751802c5960b3092be28cc56d9f',1,'displayInit(void):&#160;display.cpp'],['../display_8h.html#a8c548751802c5960b3092be28cc56d9f',1,'displayInit(void):&#160;display.cpp']]],
+  ['displaylang',['displayLang',['../display_8cpp.html#ae110c5cc57190b02aaa0d543a80cdc20',1,'display.cpp']]],
+  ['displayprintflow',['displayPrintFlow',['../display_8cpp.html#ae552c34299838e4f57e3516553ed566f',1,'display.cpp']]],
+  ['displayprintln',['displayPrintLn',['../display_8cpp.html#a2e4f853ea431989d2adc2aeb7a8e46b5',1,'display.cpp']]],
+  ['displayprinttime',['displayPrintTime',['../display_8cpp.html#aad3b4a291f0ad570bb1035a133ec46aa',1,'display.cpp']]],
+  ['displaypushstate',['displayPushState',['../display_8cpp.html#adf85c9537e38ffe3f1ee356a4638880e',1,'displayPushState(int state):&#160;display.cpp'],['../display_8h.html#adf85c9537e38ffe3f1ee356a4638880e',1,'displayPushState(int state):&#160;display.cpp']]],
+  ['displayrefresh',['displayRefresh',['../display_8cpp.html#ac750de2337343c08e5fd88d08316adb2',1,'displayRefresh(void):&#160;display.cpp'],['../display_8h.html#ac750de2337343c08e5fd88d08316adb2',1,'displayRefresh(void):&#160;display.cpp']]],
+  ['displaysetlang',['displaySetLang',['../display_8cpp.html#a9b10d2d49414256ef745f7e910748fee',1,'displaySetLang(display_lang_t lang):&#160;display.cpp'],['../display_8h.html#a9b10d2d49414256ef745f7e910748fee',1,'displaySetLang(display_lang_t lang):&#160;display.cpp']]],
+  ['displayterminate',['displayTerminate',['../display_8cpp.html#abfd367c63541be192cdc63d6e8b38a79',1,'displayTerminate(void):&#160;display.cpp'],['../display_8h.html#abfd367c63541be192cdc63d6e8b38a79',1,'displayTerminate(void):&#160;display.cpp']]],
+  ['displaythread',['displayThread',['../display_8cpp.html#ab2db422e214d76776b8a375787d1384c',1,'displayThread(void *threadid):&#160;display.cpp'],['../display_8h.html#ab2db422e214d76776b8a375787d1384c',1,'displayThread(void *threadid):&#160;display.cpp']]],
+  ['displaytimer',['displayTimer',['../display_8cpp.html#afebf5c16da7043af9cbd74ef9f489ea7',1,'display.cpp']]],
+  ['displaytimerhandler',['displayTimerHandler',['../display_8cpp.html#ab5eb6b80aca0f751332c47c410d06a2a',1,'displayTimerHandler(void *threadid):&#160;display.cpp'],['../display_8h.html#ab5eb6b80aca0f751332c47c410d06a2a',1,'displayTimerHandler(void *threadid):&#160;display.cpp']]]
 ];

+ 2 - 0
CoffeeCode/html/search/all_4.js

@@ -1,5 +1,7 @@
 var searchData=
 [
   ['effectcolor',['effectColor',['../stripe_8cpp.html#a8b61b922f1ae5a0c5854e3a318b74421',1,'stripe.cpp']]],
+  ['elapsedcnt',['elapsedCnt',['../display_8cpp.html#a01cd2b69770b3c4cd7adc6e27d48c28a',1,'display.cpp']]],
+  ['endheating',['endHeating',['../coffee_8cpp.html#a1aaa11435974ab87937d68b01ee71074',1,'coffee.cpp']]],
   ['errexit',['errExit',['../timer_8h.html#af3ec03c16ee82e8578cfd8fd133d7a6f',1,'timer.h']]]
 ];

+ 2 - 1
CoffeeCode/html/search/all_5.js

@@ -3,7 +3,8 @@ var searchData=
   ['false',['FALSE',['../crc_8h.html#aa93f0eb578d23995850d61f7d61c55c1',1,'FALSE():&#160;crc.h'],['../lcd_8cpp.html#aa93f0eb578d23995850d61f7d61c55c1',1,'FALSE():&#160;lcd.cpp']]],
   ['final_5fxor_5fvalue',['FINAL_XOR_VALUE',['../crc_8h.html#a5e491822bb6a5bf7114dd453ab48891e',1,'crc.h']]],
   ['firsttimer',['firstTimer',['../timer_8cpp.html#acb6f6b56b317d16d17fd2f6df17547c3',1,'timer.cpp']]],
-  ['flow',['FLOW',['../hal_8h.html#a249f9f89b3a190ddd62999b1afa847c3',1,'hal.h']]],
+  ['flagignorerlsint0',['flagIgnoreRlsInt0',['../hal_8cpp.html#a9f94cedad944b6df4483a76b0a4d2b0a',1,'hal.cpp']]],
+  ['flagignorerlsint1',['flagIgnoreRlsInt1',['../hal_8cpp.html#a8980baab65c90a16ef8189ed5b1ab7fe',1,'hal.cpp']]],
   ['flow_5fml_5fpulse',['FLOW_ML_PULSE',['../hal_8h.html#a957d80982673bb087a5d29380720f59d',1,'hal.h']]],
   ['flowcnt',['flowcnt',['../hal_8cpp.html#ae5ae572f06dd4838027976f9ab3fdc62',1,'hal.cpp']]]
 ];

+ 2 - 0
CoffeeCode/html/search/all_6.js

@@ -1,6 +1,8 @@
 var searchData=
 [
   ['getdivider',['getDivider',['../classtimer.html#a3d5386a682a23df5c6a841ce8fc55bd4',1,'timer']]],
+  ['getsigvalue',['getSigValue',['../coffee_8cpp.html#a3290268b8fcbba9a6b642b68860a8503',1,'getSigValue(void):&#160;coffee.cpp'],['../coffee_8h.html#a3290268b8fcbba9a6b642b68860a8503',1,'getSigValue(void):&#160;coffee.cpp']]],
+  ['getstate',['getState',['../coffee_8cpp.html#afc0b4325b7cabe49f623d5e44aaa37d7',1,'getState(void):&#160;coffee.cpp'],['../coffee_8h.html#afc0b4325b7cabe49f623d5e44aaa37d7',1,'getState(void):&#160;coffee.cpp']]],
   ['global_2eh',['global.h',['../global_8h.html',1,'']]],
   ['green',['green',['../structstripe__color.html#ab650b31353bfddd30e9ea11f8adb870f',1,'stripe_color']]]
 ];

+ 5 - 0
CoffeeCode/html/search/all_7.js

@@ -8,11 +8,15 @@ var searchData=
   ['halgetrelaisstate',['halGetRelaisState',['../hal_8cpp.html#a1d22d01f1a6a6789f2816e27bbcb0504',1,'halGetRelaisState(int relais):&#160;hal.cpp'],['../hal_8h.html#a1d22d01f1a6a6789f2816e27bbcb0504',1,'halGetRelaisState(int relais):&#160;hal.cpp']]],
   ['halinit',['halInit',['../hal_8cpp.html#afd89c1650df524d95aef39b8bc38170d',1,'halInit(void):&#160;hal.cpp'],['../hal_8h.html#afd89c1650df524d95aef39b8bc38170d',1,'halInit(void):&#160;hal.cpp']]],
   ['halint0',['halInt0',['../hal_8cpp.html#a597258a80a0bb18db649d01b0893c99f',1,'halInt0(void):&#160;hal.cpp'],['../hal_8h.html#a597258a80a0bb18db649d01b0893c99f',1,'halInt0(void):&#160;hal.cpp']]],
+  ['halint0timerhandler',['halInt0TimerHandler',['../hal_8cpp.html#ae52d2e251c46b1fa1f9369cf115dc5b2',1,'halInt0TimerHandler():&#160;hal.cpp'],['../hal_8cpp.html#aa52d1bfb2ca68e499ad83d9b0d1ba275',1,'halInt0TimerHandler(void):&#160;hal.cpp'],['../hal_8h.html#aa52d1bfb2ca68e499ad83d9b0d1ba275',1,'halInt0TimerHandler(void):&#160;hal.cpp']]],
   ['halint1',['halInt1',['../hal_8cpp.html#a603aaa9c0c3cfef8b185df5c7f4921c3',1,'halInt1(void):&#160;hal.cpp'],['../hal_8h.html#a603aaa9c0c3cfef8b185df5c7f4921c3',1,'halInt1(void):&#160;hal.cpp']]],
+  ['halint1timerhandler',['halInt1TimerHandler',['../hal_8cpp.html#af4bfd5892199d0ffad5ba51c44d4295e',1,'halInt1TimerHandler():&#160;hal.cpp'],['../hal_8cpp.html#ad56f6e1b04c236040717eadfd806c244',1,'halInt1TimerHandler(void):&#160;hal.cpp'],['../hal_8h.html#ad56f6e1b04c236040717eadfd806c244',1,'halInt1TimerHandler(void):&#160;hal.cpp']]],
   ['halintflow',['halIntFlow',['../hal_8cpp.html#ace9ace8c7e0012157569f446d4cb8c52',1,'halIntFlow(void):&#160;hal.cpp'],['../hal_8h.html#ace9ace8c7e0012157569f446d4cb8c52',1,'halIntFlow(void):&#160;hal.cpp']]],
   ['halintpressure',['halIntPressure',['../hal_8cpp.html#a73067106de2bbcf98bcc3a06cbf3b000',1,'halIntPressure(void):&#160;hal.cpp'],['../hal_8h.html#a73067106de2bbcf98bcc3a06cbf3b000',1,'halIntPressure(void):&#160;hal.cpp']]],
   ['halintproximity',['halIntProximity',['../hal_8cpp.html#a0622583e0c8453a6d6963964ad7e7122',1,'halIntProximity(void):&#160;hal.cpp'],['../hal_8h.html#a0622583e0c8453a6d6963964ad7e7122',1,'halIntProximity(void):&#160;hal.cpp']]],
   ['halisheating',['halIsHeating',['../hal_8cpp.html#a01f43f0666520e8d8af65e94fd82a5eb',1,'halIsHeating(void):&#160;hal.cpp'],['../hal_8h.html#a01f43f0666520e8d8af65e94fd82a5eb',1,'halIsHeating(void):&#160;hal.cpp']]],
+  ['halmachineoff',['halMachineOff',['../hal_8cpp.html#a8cefe61db8caf1cbdbc35f680744a3eb',1,'halMachineOff(void):&#160;hal.cpp'],['../hal_8h.html#a8cefe61db8caf1cbdbc35f680744a3eb',1,'halMachineOff(void):&#160;hal.cpp']]],
+  ['halmachineon',['halMachineOn',['../hal_8cpp.html#a80e05d7e336073450da3168992d58754',1,'halMachineOn(void):&#160;hal.cpp'],['../hal_8h.html#a80e05d7e336073450da3168992d58754',1,'halMachineOn(void):&#160;hal.cpp']]],
   ['halproxsensorcovered',['halProxSensorCovered',['../hal_8cpp.html#a52c001b5136b02e19bd00282a137631d',1,'halProxSensorCovered(void):&#160;hal.cpp'],['../hal_8h.html#a52c001b5136b02e19bd00282a137631d',1,'halProxSensorCovered(void):&#160;hal.cpp']]],
   ['halrelaisoff',['halRelaisOff',['../hal_8cpp.html#a25c63f62c18555fc1b9b50bcd29f1c7d',1,'halRelaisOff(int relais):&#160;hal.cpp'],['../hal_8h.html#a25c63f62c18555fc1b9b50bcd29f1c7d',1,'halRelaisOff(int relais):&#160;hal.cpp']]],
   ['halrelaison',['halRelaisOn',['../hal_8cpp.html#a33e09a3806bdcd5c711e557178335763',1,'halRelaisOn(int relais):&#160;hal.cpp'],['../hal_8h.html#a33e09a3806bdcd5c711e557178335763',1,'halRelaisOn(int relais):&#160;hal.cpp']]],
@@ -20,5 +24,6 @@ var searchData=
   ['halresetflow',['halResetFlow',['../hal_8cpp.html#a99d0fb6a80635b679cf4cd1fa90b483d',1,'halResetFlow(void):&#160;hal.cpp'],['../hal_8h.html#a99d0fb6a80635b679cf4cd1fa90b483d',1,'halResetFlow(void):&#160;hal.cpp']]],
   ['halsendsignal',['halSendSignal',['../hal_8cpp.html#a252f49661ac23a045bb0d9d20997dfa4',1,'halSendSignal(int val):&#160;hal.cpp'],['../hal_8h.html#a4fa1c41f2dd3c24e13feaa6be70ad426',1,'halSendSignal(int value):&#160;hal.cpp']]],
   ['halsig',['HalSig',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68',1,'hal.h']]],
+  ['heatingtime',['heatingTime',['../coffee_8cpp.html#ac88c1bf95effb2aeddc71b1c2cf9034b',1,'coffee.cpp']]],
   ['huphandler',['hupHandler',['../main_8cpp.html#aa5f8eab61a77d6d566215bcf12144422',1,'main.cpp']]]
 ];

+ 2 - 2
CoffeeCode/html/search/all_8.js

@@ -4,8 +4,8 @@ var searchData=
   ['i2cfd',['i2cfd',['../stripe_8cpp.html#ad82fe3818283681900e35187390d4b84',1,'stripe.cpp']]],
   ['initial_5fremainder',['INITIAL_REMAINDER',['../crc_8h.html#acce5b79e1a8ad8ffe40fb9f7d63b2fdc',1,'crc.h']]],
   ['inittimers',['initTimers',['../timer_8cpp.html#a9e737e3249388fb2e50d868bad69c688',1,'initTimers(void):&#160;timer.cpp'],['../timer_8h.html#a9e737e3249388fb2e50d868bad69c688',1,'initTimers(void):&#160;timer.cpp']]],
-  ['int0',['INT0',['../hal_8h.html#a7521122e23c8d5c83b2a033b2505c86c',1,'hal.h']]],
-  ['int1',['INT1',['../hal_8h.html#ae4728496f2ab826d5fc6a63da6cb600b',1,'hal.h']]],
+  ['int0time',['Int0Time',['../hal_8cpp.html#a3aca866b54d36fe04db7c5ab8275de1e',1,'hal.cpp']]],
+  ['int1time',['Int1Time',['../hal_8cpp.html#a343efe067e2fa2affd5f15ef3447aaa1',1,'hal.cpp']]],
   ['int64to8bit',['int64to8bit',['../database_8cpp.html#a28dbbb9e24e2035535645629105aea46',1,'int64to8bit(sqlite_int64 guid):&#160;database.cpp'],['../database_8h.html#a28dbbb9e24e2035535645629105aea46',1,'int64to8bit(sqlite_int64 guid):&#160;database.cpp']]],
   ['int8to64bit',['int8to64bit',['../database_8cpp.html#a99cc529fd785c752cd4b73ea7989521d',1,'int8to64bit(uint8_t *guid):&#160;database.cpp'],['../database_8h.html#a99cc529fd785c752cd4b73ea7989521d',1,'int8to64bit(uint8_t *guid):&#160;database.cpp']]],
   ['inttochar',['inttochar',['../database_8cpp.html#a437086982a7400d7205f3ab6600e6dcf',1,'inttochar(uint8_t *guid):&#160;database.cpp'],['../database_8h.html#a437086982a7400d7205f3ab6600e6dcf',1,'inttochar(uint8_t *guid):&#160;database.cpp']]],

+ 4 - 5
CoffeeCode/html/search/all_a.js

@@ -1,12 +1,11 @@
 var searchData=
 [
+  ['lang_5fde',['lang_de',['../display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080ae89ac8a244131d461364a7638daf0a30',1,'display.h']]],
+  ['lang_5fen',['lang_en',['../display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080af59ab6af8bf5947a70c77afafccac15b',1,'display.h']]],
+  ['lang_5flast',['lang_last',['../display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080a8222fe4f6d1104084bbf5a691f4ce644',1,'display.h']]],
   ['lastlog',['lastlog',['../logger_8cpp.html#a05db4cbb4a1c322f0adebb466081c99e',1,'logger.cpp']]],
-  ['lasttc1',['lastTC1',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfa8408e147e8a938136f8a861d49dc9424',1,'database.h']]],
-  ['lasttc2',['lastTC2',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfa59e22dd6cca23a1fc16c27b051e515b5',1,'database.h']]],
-  ['lasttc3',['lastTC3',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfa3e3cdc9f9da298c1b6d46c49b1421848',1,'database.h']]],
-  ['lastterm',['lastTerm',['../database_8h.html#ae1822373f950fb4881633b7ec843f4dfa6e580e65e5c126a239a8e27157ec96a4',1,'database.h']]],
   ['lasttimer',['lastTimer',['../timer_8cpp.html#a16ed619aa4eb3fda56a001d0d7a8975d',1,'timer.cpp']]],
-  ['lcd',['lcd',['../global_8h.html#a9d1129916cfa4cbd7489638ce470c3a4',1,'lcd():&#160;main.cpp'],['../main_8cpp.html#a9d1129916cfa4cbd7489638ce470c3a4',1,'lcd():&#160;main.cpp']]],
+  ['lcd',['lcd',['../display_8cpp.html#a9d1129916cfa4cbd7489638ce470c3a4',1,'display.cpp']]],
   ['lcd_2ecpp',['lcd.cpp',['../lcd_8cpp.html',1,'']]],
   ['lcd_2eh',['lcd.h',['../lcd_8h.html',1,'']]],
   ['lcd_5fblink_5fctrl',['LCD_BLINK_CTRL',['../lcd_8cpp.html#aa52bab70fab9c117f20d71442de77452',1,'lcd.cpp']]],

+ 1 - 0
CoffeeCode/html/search/all_d.js

@@ -1,5 +1,6 @@
 var searchData=
 [
+  ['optcold',['optCold',['../global_8h.html#a2a24ab7c0142e353c9ce9ca1ee1210bb',1,'optCold():&#160;main.cpp'],['../main_8cpp.html#a2a24ab7c0142e353c9ce9ca1ee1210bb',1,'optCold():&#160;main.cpp']]],
   ['optdate',['optDate',['../global_8h.html#ae88c926fe2a10f736eb01b1d1e899a1c',1,'optDate():&#160;main.cpp'],['../main_8cpp.html#ae88c926fe2a10f736eb01b1d1e899a1c',1,'optDate():&#160;main.cpp']]],
   ['optpower',['optPower',['../global_8h.html#a7bfeade3d2f19e8baecdcddd7f9162fa',1,'optPower():&#160;main.cpp'],['../main_8cpp.html#a7bfeade3d2f19e8baecdcddd7f9162fa',1,'optPower():&#160;main.cpp']]]
 ];

+ 6 - 4
CoffeeCode/html/search/all_e.js

@@ -1,7 +1,9 @@
 var searchData=
 [
-  ['polynomial',['POLYNOMIAL',['../crc_8h.html#ae13d91fe6e514f0aa1caba701ef1ff92',1,'crc.h']]],
-  ['pressure_5fctrl',['PRESSURE_CTRL',['../hal_8h.html#af9f618757de2bf9051de55c831802f30',1,'hal.h']]],
-  ['prox_5fcovered',['PROX_COVERED',['../hal_8h.html#a7c6e51c86f643b69623e53eaa62e6cd4',1,'hal.h']]],
-  ['proximity_5fsensor',['PROXIMITY_SENSOR',['../hal_8h.html#a60cdc9e2a5c04bd14c4c3c6f872ddf29',1,'hal.h']]]
+  ['pin_5fflow',['PIN_FLOW',['../hal_8h.html#a1b7f077d2a81a295f0f9b0fbf09356ba',1,'hal.h']]],
+  ['pin_5fint0',['PIN_INT0',['../hal_8h.html#acab09879ef6267b9482f7627c82346bc',1,'hal.h']]],
+  ['pin_5fint1',['PIN_INT1',['../hal_8h.html#a987362f14d4ff58584140f09c24a4308',1,'hal.h']]],
+  ['pin_5fpressure_5fctrl',['PIN_PRESSURE_CTRL',['../hal_8h.html#a95d660a5e62442d33d7cc9d93ffb57b9',1,'hal.h']]],
+  ['pin_5fproximity_5fsensor',['PIN_PROXIMITY_SENSOR',['../hal_8h.html#a4b6bff93c300c970e912b45284fa1d7d',1,'hal.h']]],
+  ['polynomial',['POLYNOMIAL',['../crc_8h.html#ae13d91fe6e514f0aa1caba701ef1ff92',1,'crc.h']]]
 ];

+ 1 - 0
CoffeeCode/html/search/all_f.js

@@ -4,6 +4,7 @@ var searchData=
   ['red',['red',['../structstripe__color.html#a784aa14cb8856664e9533883d8add33b',1,'stripe_color']]],
   ['reflect_5fdata',['REFLECT_DATA',['../crc_8cpp.html#ac5944d40ab44731450a57acd7f027f6a',1,'REFLECT_DATA():&#160;crc.cpp'],['../crc_8h.html#af6653e78d37b912d592ffc6e96eb7abb',1,'REFLECT_DATA():&#160;crc.h']]],
   ['reflect_5fremainder',['REFLECT_REMAINDER',['../crc_8cpp.html#a2354513de80cf643198f44d7030b74d7',1,'REFLECT_REMAINDER():&#160;crc.cpp'],['../crc_8h.html#a5aa89bef30ad5bd061deda3eef36e327',1,'REFLECT_REMAINDER():&#160;crc.h']]],
+  ['refresh_5frate',['REFRESH_RATE',['../display_8h.html#abc2b684fcc127e93aee54a3a45e25a7c',1,'display.h']]],
   ['relais_5fheat',['RELAIS_HEAT',['../hal_8h.html#a9b57e326c17e793a2c70b909256734ab',1,'hal.h']]],
   ['relais_5fpower',['RELAIS_POWER',['../hal_8h.html#a56489df9a2d1844419f2b0c104516657',1,'hal.h']]],
   ['relais_5fpump',['RELAIS_PUMP',['../hal_8h.html#a9723c5da9e57e2b3a1c3ec7b635cee53',1,'hal.h']]]

+ 1 - 1
CoffeeCode/html/search/classes_0.js

@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['stripe_5fcolor',['stripe_color',['../structstripe__color.html',1,'']]]
+  ['display_5fstring_5ft',['display_string_t',['../structdisplay__string__t.html',1,'']]]
 ];

+ 1 - 1
CoffeeCode/html/search/classes_1.js

@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['timer',['timer',['../classtimer.html',1,'']]]
+  ['stripe_5fcolor',['stripe_color',['../structstripe__color.html',1,'']]]
 ];

+ 26 - 0
CoffeeCode/html/search/classes_2.html

@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>

+ 4 - 0
CoffeeCode/html/search/classes_2.js

@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['timer',['timer',['../classtimer.html',1,'']]]
+];

+ 2 - 5
CoffeeCode/html/search/defines_0.js

@@ -1,8 +1,5 @@
 var searchData=
 [
-  ['check_5fvalue',['CHECK_VALUE',['../crc_8h.html#aee81a10f43f9dc645ba69a7407c151d0',1,'crc.h']]],
-  ['clearline',['CLEARLINE',['../logger_8h.html#ae39a97a19b2e372929dabdc0e3822910',1,'logger.h']]],
-  ['clockid',['CLOCKID',['../timer_8h.html#a2694a39dfd1fa087ca6f9f391c91dae7',1,'timer.h']]],
-  ['crc32',['CRC32',['../crc_8h.html#a491e419c18fbc5c7cb4a2cd901e31440',1,'crc.h']]],
-  ['crc_5fname',['CRC_NAME',['../crc_8h.html#ad679f457b8d23bfed7ccf1b9584e8514',1,'crc.h']]]
+  ['amount_5fdblespresso',['AMOUNT_DBLESPRESSO',['../coffee_8h.html#a4e3abbeb2301b9265ee297ee63e2f4c8',1,'coffee.h']]],
+  ['amount_5fpreinfusion',['AMOUNT_PREINFUSION',['../coffee_8h.html#ad8bfbae67917bc4a69ae336c65b3aba2',1,'coffee.h']]]
 ];

+ 5 - 1
CoffeeCode/html/search/defines_1.js

@@ -1,4 +1,8 @@
 var searchData=
 [
-  ['errexit',['errExit',['../timer_8h.html#af3ec03c16ee82e8578cfd8fd133d7a6f',1,'timer.h']]]
+  ['check_5fvalue',['CHECK_VALUE',['../crc_8h.html#aee81a10f43f9dc645ba69a7407c151d0',1,'crc.h']]],
+  ['clearline',['CLEARLINE',['../logger_8h.html#ae39a97a19b2e372929dabdc0e3822910',1,'logger.h']]],
+  ['clockid',['CLOCKID',['../timer_8h.html#a2694a39dfd1fa087ca6f9f391c91dae7',1,'timer.h']]],
+  ['crc32',['CRC32',['../crc_8h.html#a491e419c18fbc5c7cb4a2cd901e31440',1,'crc.h']]],
+  ['crc_5fname',['CRC_NAME',['../crc_8h.html#ad679f457b8d23bfed7ccf1b9584e8514',1,'crc.h']]]
 ];

+ 3 - 4
CoffeeCode/html/search/defines_2.js

@@ -1,7 +1,6 @@
 var searchData=
 [
-  ['false',['FALSE',['../crc_8h.html#aa93f0eb578d23995850d61f7d61c55c1',1,'FALSE():&#160;crc.h'],['../lcd_8cpp.html#aa93f0eb578d23995850d61f7d61c55c1',1,'FALSE():&#160;lcd.cpp']]],
-  ['final_5fxor_5fvalue',['FINAL_XOR_VALUE',['../crc_8h.html#a5e491822bb6a5bf7114dd453ab48891e',1,'crc.h']]],
-  ['flow',['FLOW',['../hal_8h.html#a249f9f89b3a190ddd62999b1afa847c3',1,'hal.h']]],
-  ['flow_5fml_5fpulse',['FLOW_ML_PULSE',['../hal_8h.html#a957d80982673bb087a5d29380720f59d',1,'hal.h']]]
+  ['default_5flang',['DEFAULT_LANG',['../display_8h.html#aa0b13de112401f9608d402bfc5a14d0d',1,'display.h']]],
+  ['display_5fcols',['DISPLAY_COLS',['../display_8h.html#ad01ecf7f4d29cece64f84d890e414570',1,'display.h']]],
+  ['display_5frows',['DISPLAY_ROWS',['../display_8h.html#abdc19d7f30976562c2d3efce365ef8f4',1,'display.h']]]
 ];

+ 1 - 4
CoffeeCode/html/search/defines_3.js

@@ -1,7 +1,4 @@
 var searchData=
 [
-  ['i2c_5faddress_5fstripe',['I2C_ADDRESS_STRIPE',['../stripe_8h.html#a52f9fc93ce25c487d4f72b9f2f400545',1,'stripe.h']]],
-  ['initial_5fremainder',['INITIAL_REMAINDER',['../crc_8h.html#acce5b79e1a8ad8ffe40fb9f7d63b2fdc',1,'crc.h']]],
-  ['int0',['INT0',['../hal_8h.html#a7521122e23c8d5c83b2a033b2505c86c',1,'hal.h']]],
-  ['int1',['INT1',['../hal_8h.html#ae4728496f2ab826d5fc6a63da6cb600b',1,'hal.h']]]
+  ['errexit',['errExit',['../timer_8h.html#af3ec03c16ee82e8578cfd8fd133d7a6f',1,'timer.h']]]
 ];

+ 3 - 9
CoffeeCode/html/search/defines_4.js

@@ -1,12 +1,6 @@
 var searchData=
 [
-  ['kblu',['KBLU',['../logger_8h.html#a3f838f2fc3a9a3b434be606fc908964b',1,'logger.h']]],
-  ['kbold',['KBOLD',['../logger_8h.html#a815022697da1d2d7744ff178e940078c',1,'logger.h']]],
-  ['kcyn',['KCYN',['../logger_8h.html#a32036c94dbb166a3f874b7efc169841f',1,'logger.h']]],
-  ['kgrn',['KGRN',['../logger_8h.html#ac081c83b067273757f7a2e54a5957d41',1,'logger.h']]],
-  ['kmag',['KMAG',['../logger_8h.html#a6825f05d3b9d619d91d79d0ef18bb8b2',1,'logger.h']]],
-  ['knrm',['KNRM',['../logger_8h.html#a137aa83ec74421d226a90c92ec032ac9',1,'logger.h']]],
-  ['kred',['KRED',['../logger_8h.html#a66290957baed5df3930ada4cb8caccf1',1,'logger.h']]],
-  ['kwht',['KWHT',['../logger_8h.html#af0036c8022c9980079ab17e5c87fd478',1,'logger.h']]],
-  ['kyel',['KYEL',['../logger_8h.html#a897b10d246533c95ba86cb79f92e465a',1,'logger.h']]]
+  ['false',['FALSE',['../crc_8h.html#aa93f0eb578d23995850d61f7d61c55c1',1,'FALSE():&#160;crc.h'],['../lcd_8cpp.html#aa93f0eb578d23995850d61f7d61c55c1',1,'FALSE():&#160;lcd.cpp']]],
+  ['final_5fxor_5fvalue',['FINAL_XOR_VALUE',['../crc_8h.html#a5e491822bb6a5bf7114dd453ab48891e',1,'crc.h']]],
+  ['flow_5fml_5fpulse',['FLOW_ML_PULSE',['../hal_8h.html#a957d80982673bb087a5d29380720f59d',1,'hal.h']]]
 ];

+ 2 - 20
CoffeeCode/html/search/defines_5.js

@@ -1,23 +1,5 @@
 var searchData=
 [
-  ['lcd_5fblink_5fctrl',['LCD_BLINK_CTRL',['../lcd_8cpp.html#aa52bab70fab9c117f20d71442de77452',1,'lcd.cpp']]],
-  ['lcd_5fcdshift',['LCD_CDSHIFT',['../lcd_8cpp.html#a93e4bb4b824f5b8f5d572d9b4a943ad2',1,'lcd.cpp']]],
-  ['lcd_5fcdshift_5frl',['LCD_CDSHIFT_RL',['../lcd_8cpp.html#afb0c5015365d7e200edec8967d32195c',1,'lcd.cpp']]],
-  ['lcd_5fcgram',['LCD_CGRAM',['../lcd_8cpp.html#a3b38de74c362be1781fef1136aa9684c',1,'lcd.cpp']]],
-  ['lcd_5fclear',['LCD_CLEAR',['../lcd_8cpp.html#a6aa8aa2057294b7d06088e834299b369',1,'lcd.cpp']]],
-  ['lcd_5fctrl',['LCD_CTRL',['../lcd_8cpp.html#a8e945df7ca614325cafa08258e82a63c',1,'lcd.cpp']]],
-  ['lcd_5fcursor_5fctrl',['LCD_CURSOR_CTRL',['../lcd_8cpp.html#a3da48db16c1e7844567542273a5578c7',1,'lcd.cpp']]],
-  ['lcd_5fdgram',['LCD_DGRAM',['../lcd_8cpp.html#a9f40873eaf6a8f0a93971b3e0ab3fd12',1,'lcd.cpp']]],
-  ['lcd_5fdisplay_5fctrl',['LCD_DISPLAY_CTRL',['../lcd_8cpp.html#a1a166a796cbaf4cdd6a3af584ec067d5',1,'lcd.cpp']]],
-  ['lcd_5fen',['LCD_EN',['../lcd_8h.html#a1640ffbc0d8ec0f7edb04a2b93918072',1,'lcd.h']]],
-  ['lcd_5fentry',['LCD_ENTRY',['../lcd_8cpp.html#a28d2c8d621da114a0fe438db2e58507a',1,'lcd.cpp']]],
-  ['lcd_5fentry_5fid',['LCD_ENTRY_ID',['../lcd_8cpp.html#a58e84458e964afcac51877bd13e7703f',1,'lcd.cpp']]],
-  ['lcd_5fentry_5fsh',['LCD_ENTRY_SH',['../lcd_8cpp.html#aff5b4fcb87ea2eef9bb3af0234b14f53',1,'lcd.cpp']]],
-  ['lcd_5ffunc',['LCD_FUNC',['../lcd_8cpp.html#a387bfe42ea7284ba0f154f00df579cad',1,'lcd.cpp']]],
-  ['lcd_5ffunc_5fdl',['LCD_FUNC_DL',['../lcd_8cpp.html#ae4b9a3bcb0dc315afc03412237c5a3ea',1,'lcd.cpp']]],
-  ['lcd_5ffunc_5ff',['LCD_FUNC_F',['../lcd_8cpp.html#a5ea7976aa137e8d043d3dfab474cf0b4',1,'lcd.cpp']]],
-  ['lcd_5ffunc_5fn',['LCD_FUNC_N',['../lcd_8cpp.html#a0741cad05d62ff28d92a05ea11aa6fdc',1,'lcd.cpp']]],
-  ['lcd_5fhome',['LCD_HOME',['../lcd_8cpp.html#ae0e309ccad89222eb3457f2da9f2bb8d',1,'lcd.cpp']]],
-  ['lcd_5frs',['LCD_RS',['../lcd_8h.html#a4781e073871c6f27f89b9463ad3a4ed1',1,'lcd.h']]],
-  ['lcd_5frw',['LCD_RW',['../lcd_8h.html#a26089a10ddd59a0dc7283c19ccc02533',1,'lcd.h']]]
+  ['i2c_5faddress_5fstripe',['I2C_ADDRESS_STRIPE',['../stripe_8h.html#a52f9fc93ce25c487d4f72b9f2f400545',1,'stripe.h']]],
+  ['initial_5fremainder',['INITIAL_REMAINDER',['../crc_8h.html#acce5b79e1a8ad8ffe40fb9f7d63b2fdc',1,'crc.h']]]
 ];

+ 9 - 1
CoffeeCode/html/search/defines_6.js

@@ -1,4 +1,12 @@
 var searchData=
 [
-  ['max_5flcds',['MAX_LCDS',['../lcd_8h.html#a6bfe3f4a880b075a72d2a8318bd10f8e',1,'lcd.h']]]
+  ['kblu',['KBLU',['../logger_8h.html#a3f838f2fc3a9a3b434be606fc908964b',1,'logger.h']]],
+  ['kbold',['KBOLD',['../logger_8h.html#a815022697da1d2d7744ff178e940078c',1,'logger.h']]],
+  ['kcyn',['KCYN',['../logger_8h.html#a32036c94dbb166a3f874b7efc169841f',1,'logger.h']]],
+  ['kgrn',['KGRN',['../logger_8h.html#ac081c83b067273757f7a2e54a5957d41',1,'logger.h']]],
+  ['kmag',['KMAG',['../logger_8h.html#a6825f05d3b9d619d91d79d0ef18bb8b2',1,'logger.h']]],
+  ['knrm',['KNRM',['../logger_8h.html#a137aa83ec74421d226a90c92ec032ac9',1,'logger.h']]],
+  ['kred',['KRED',['../logger_8h.html#a66290957baed5df3930ada4cb8caccf1',1,'logger.h']]],
+  ['kwht',['KWHT',['../logger_8h.html#af0036c8022c9980079ab17e5c87fd478',1,'logger.h']]],
+  ['kyel',['KYEL',['../logger_8h.html#a897b10d246533c95ba86cb79f92e465a',1,'logger.h']]]
 ];

+ 20 - 4
CoffeeCode/html/search/defines_7.js

@@ -1,7 +1,23 @@
 var searchData=
 [
-  ['polynomial',['POLYNOMIAL',['../crc_8h.html#ae13d91fe6e514f0aa1caba701ef1ff92',1,'crc.h']]],
-  ['pressure_5fctrl',['PRESSURE_CTRL',['../hal_8h.html#af9f618757de2bf9051de55c831802f30',1,'hal.h']]],
-  ['prox_5fcovered',['PROX_COVERED',['../hal_8h.html#a7c6e51c86f643b69623e53eaa62e6cd4',1,'hal.h']]],
-  ['proximity_5fsensor',['PROXIMITY_SENSOR',['../hal_8h.html#a60cdc9e2a5c04bd14c4c3c6f872ddf29',1,'hal.h']]]
+  ['lcd_5fblink_5fctrl',['LCD_BLINK_CTRL',['../lcd_8cpp.html#aa52bab70fab9c117f20d71442de77452',1,'lcd.cpp']]],
+  ['lcd_5fcdshift',['LCD_CDSHIFT',['../lcd_8cpp.html#a93e4bb4b824f5b8f5d572d9b4a943ad2',1,'lcd.cpp']]],
+  ['lcd_5fcdshift_5frl',['LCD_CDSHIFT_RL',['../lcd_8cpp.html#afb0c5015365d7e200edec8967d32195c',1,'lcd.cpp']]],
+  ['lcd_5fcgram',['LCD_CGRAM',['../lcd_8cpp.html#a3b38de74c362be1781fef1136aa9684c',1,'lcd.cpp']]],
+  ['lcd_5fclear',['LCD_CLEAR',['../lcd_8cpp.html#a6aa8aa2057294b7d06088e834299b369',1,'lcd.cpp']]],
+  ['lcd_5fctrl',['LCD_CTRL',['../lcd_8cpp.html#a8e945df7ca614325cafa08258e82a63c',1,'lcd.cpp']]],
+  ['lcd_5fcursor_5fctrl',['LCD_CURSOR_CTRL',['../lcd_8cpp.html#a3da48db16c1e7844567542273a5578c7',1,'lcd.cpp']]],
+  ['lcd_5fdgram',['LCD_DGRAM',['../lcd_8cpp.html#a9f40873eaf6a8f0a93971b3e0ab3fd12',1,'lcd.cpp']]],
+  ['lcd_5fdisplay_5fctrl',['LCD_DISPLAY_CTRL',['../lcd_8cpp.html#a1a166a796cbaf4cdd6a3af584ec067d5',1,'lcd.cpp']]],
+  ['lcd_5fen',['LCD_EN',['../lcd_8h.html#a1640ffbc0d8ec0f7edb04a2b93918072',1,'lcd.h']]],
+  ['lcd_5fentry',['LCD_ENTRY',['../lcd_8cpp.html#a28d2c8d621da114a0fe438db2e58507a',1,'lcd.cpp']]],
+  ['lcd_5fentry_5fid',['LCD_ENTRY_ID',['../lcd_8cpp.html#a58e84458e964afcac51877bd13e7703f',1,'lcd.cpp']]],
+  ['lcd_5fentry_5fsh',['LCD_ENTRY_SH',['../lcd_8cpp.html#aff5b4fcb87ea2eef9bb3af0234b14f53',1,'lcd.cpp']]],
+  ['lcd_5ffunc',['LCD_FUNC',['../lcd_8cpp.html#a387bfe42ea7284ba0f154f00df579cad',1,'lcd.cpp']]],
+  ['lcd_5ffunc_5fdl',['LCD_FUNC_DL',['../lcd_8cpp.html#ae4b9a3bcb0dc315afc03412237c5a3ea',1,'lcd.cpp']]],
+  ['lcd_5ffunc_5ff',['LCD_FUNC_F',['../lcd_8cpp.html#a5ea7976aa137e8d043d3dfab474cf0b4',1,'lcd.cpp']]],
+  ['lcd_5ffunc_5fn',['LCD_FUNC_N',['../lcd_8cpp.html#a0741cad05d62ff28d92a05ea11aa6fdc',1,'lcd.cpp']]],
+  ['lcd_5fhome',['LCD_HOME',['../lcd_8cpp.html#ae0e309ccad89222eb3457f2da9f2bb8d',1,'lcd.cpp']]],
+  ['lcd_5frs',['LCD_RS',['../lcd_8h.html#a4781e073871c6f27f89b9463ad3a4ed1',1,'lcd.h']]],
+  ['lcd_5frw',['LCD_RW',['../lcd_8h.html#a26089a10ddd59a0dc7283c19ccc02533',1,'lcd.h']]]
 ];

+ 1 - 5
CoffeeCode/html/search/defines_8.js

@@ -1,8 +1,4 @@
 var searchData=
 [
-  ['reflect_5fdata',['REFLECT_DATA',['../crc_8cpp.html#ac5944d40ab44731450a57acd7f027f6a',1,'REFLECT_DATA():&#160;crc.cpp'],['../crc_8h.html#af6653e78d37b912d592ffc6e96eb7abb',1,'REFLECT_DATA():&#160;crc.h']]],
-  ['reflect_5fremainder',['REFLECT_REMAINDER',['../crc_8cpp.html#a2354513de80cf643198f44d7030b74d7',1,'REFLECT_REMAINDER():&#160;crc.cpp'],['../crc_8h.html#a5aa89bef30ad5bd061deda3eef36e327',1,'REFLECT_REMAINDER():&#160;crc.h']]],
-  ['relais_5fheat',['RELAIS_HEAT',['../hal_8h.html#a9b57e326c17e793a2c70b909256734ab',1,'hal.h']]],
-  ['relais_5fpower',['RELAIS_POWER',['../hal_8h.html#a56489df9a2d1844419f2b0c104516657',1,'hal.h']]],
-  ['relais_5fpump',['RELAIS_PUMP',['../hal_8h.html#a9723c5da9e57e2b3a1c3ec7b635cee53',1,'hal.h']]]
+  ['max_5flcds',['MAX_LCDS',['../lcd_8h.html#a6bfe3f4a880b075a72d2a8318bd10f8e',1,'lcd.h']]]
 ];

+ 6 - 18
CoffeeCode/html/search/defines_9.js

@@ -1,21 +1,9 @@
 var searchData=
 [
-  ['shift_5fg',['SHIFT_G',['../spi_8h.html#aa846752b3dc2a7a280e1c97191c1e378',1,'spi.h']]],
-  ['shift_5frck',['SHIFT_RCK',['../spi_8h.html#aed6e9b64896ee902a2f02b1e49e65a11',1,'spi.h']]],
-  ['shift_5fsclr',['SHIFT_SCLR',['../spi_8h.html#aa9f52b418d31ac71ce93f2d7846ded90',1,'spi.h']]],
-  ['sig',['SIG',['../timer_8h.html#ad6f1d374549d22100d676d5fcac0a7e5',1,'timer.h']]],
-  ['spi_5fchannel',['SPI_CHANNEL',['../global_8h.html#aa8cbb3355883e35c18820bfa63c4ce3a',1,'global.h']]],
-  ['spi_5fspeed',['SPI_SPEED',['../global_8h.html#a0056b7fdd0f81fad9cd38e9fd389a4b6',1,'global.h']]],
-  ['sql_5fdatabase',['SQL_DATABASE',['../global_8h.html#ad55c274bf698014e01dbc9afde3fc610',1,'global.h']]],
-  ['stripe_5fcmd_5ffadeout',['STRIPE_CMD_FADEOUT',['../stripe_8h.html#a14287ccb3789c724603c28910512a0b3',1,'stripe.h']]],
-  ['stripe_5fcmd_5ffadestop',['STRIPE_CMD_FADESTOP',['../stripe_8h.html#a2e4a6f31f6823ec2592e9216a51232f2',1,'stripe.h']]],
-  ['stripe_5fcmd_5ffadeto',['STRIPE_CMD_FADETO',['../stripe_8h.html#a80ccf336e21703504faf1b3acba2c98b',1,'stripe.h']]],
-  ['stripe_5fcmd_5freset',['STRIPE_CMD_RESET',['../stripe_8h.html#a0a2c9ea1a805ca03af6c43c107c98e8e',1,'stripe.h']]],
-  ['stripe_5fcmd_5fset',['STRIPE_CMD_SET',['../stripe_8h.html#ab495a56c339e141ecbecfd9872f81fbb',1,'stripe.h']]],
-  ['stripe_5fcmd_5fset2',['STRIPE_CMD_SET2',['../stripe_8h.html#aead1e6fe1bdc60cade5b071a293864cc',1,'stripe.h']]],
-  ['stripe_5fcmd_5fsetb',['STRIPE_CMD_SETB',['../stripe_8h.html#a25c93d4301c3ad1064adfb9eff952211',1,'stripe.h']]],
-  ['stripe_5fcmd_5fsetdim',['STRIPE_CMD_SETDIM',['../stripe_8h.html#aedb99f1c6b67c005f5a2cd6dea06c6b7',1,'stripe.h']]],
-  ['stripe_5fcmd_5fsetg',['STRIPE_CMD_SETG',['../stripe_8h.html#ac62893e9f8f3793a3f6de3338a9a93ff',1,'stripe.h']]],
-  ['stripe_5fcmd_5fsetr',['STRIPE_CMD_SETR',['../stripe_8h.html#ad06bb775e1f72bc21a5f17a19eb62e80',1,'stripe.h']]],
-  ['stripe_5fcmd_5fsetw',['STRIPE_CMD_SETW',['../stripe_8h.html#a3c5fd782e0479daf6bb272d5197c8877',1,'stripe.h']]]
+  ['pin_5fflow',['PIN_FLOW',['../hal_8h.html#a1b7f077d2a81a295f0f9b0fbf09356ba',1,'hal.h']]],
+  ['pin_5fint0',['PIN_INT0',['../hal_8h.html#acab09879ef6267b9482f7627c82346bc',1,'hal.h']]],
+  ['pin_5fint1',['PIN_INT1',['../hal_8h.html#a987362f14d4ff58584140f09c24a4308',1,'hal.h']]],
+  ['pin_5fpressure_5fctrl',['PIN_PRESSURE_CTRL',['../hal_8h.html#a95d660a5e62442d33d7cc9d93ffb57b9',1,'hal.h']]],
+  ['pin_5fproximity_5fsensor',['PIN_PROXIMITY_SENSOR',['../hal_8h.html#a4b6bff93c300c970e912b45284fa1d7d',1,'hal.h']]],
+  ['polynomial',['POLYNOMIAL',['../crc_8h.html#ae13d91fe6e514f0aa1caba701ef1ff92',1,'crc.h']]]
 ];

+ 6 - 7
CoffeeCode/html/search/defines_a.js

@@ -1,10 +1,9 @@
 var searchData=
 [
-  ['thread_5fcoffee',['THREAD_COFFEE',['../global_8h.html#a5f697926bb7bcc4722a9e650a1acdb6a',1,'global.h']]],
-  ['thread_5fdisplay',['THREAD_DISPLAY',['../global_8h.html#a843e1fa4b4de70b9f31d42a41a896c1c',1,'global.h']]],
-  ['thread_5fmain',['THREAD_MAIN',['../global_8h.html#a67a7c5f1e4a75f1508395d450895990d',1,'global.h']]],
-  ['thread_5fstripe',['THREAD_STRIPE',['../global_8h.html#a77f390a98c0e73ae38abd20f467d6cce',1,'global.h']]],
-  ['timer_5fdelay_5fus',['TIMER_DELAY_US',['../global_8h.html#a91dee3a4ce745234c8a4998388d6c645',1,'global.h']]],
-  ['topbit',['TOPBIT',['../crc_8cpp.html#a118ad552670dbefa1df0ba72d147f5e1',1,'crc.cpp']]],
-  ['true',['TRUE',['../crc_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d',1,'TRUE():&#160;crc.h'],['../lcd_8cpp.html#aa8cecfc5c5c054d2875c03e77b7be15d',1,'TRUE():&#160;lcd.cpp']]]
+  ['reflect_5fdata',['REFLECT_DATA',['../crc_8cpp.html#ac5944d40ab44731450a57acd7f027f6a',1,'REFLECT_DATA():&#160;crc.cpp'],['../crc_8h.html#af6653e78d37b912d592ffc6e96eb7abb',1,'REFLECT_DATA():&#160;crc.h']]],
+  ['reflect_5fremainder',['REFLECT_REMAINDER',['../crc_8cpp.html#a2354513de80cf643198f44d7030b74d7',1,'REFLECT_REMAINDER():&#160;crc.cpp'],['../crc_8h.html#a5aa89bef30ad5bd061deda3eef36e327',1,'REFLECT_REMAINDER():&#160;crc.h']]],
+  ['refresh_5frate',['REFRESH_RATE',['../display_8h.html#abc2b684fcc127e93aee54a3a45e25a7c',1,'display.h']]],
+  ['relais_5fheat',['RELAIS_HEAT',['../hal_8h.html#a9b57e326c17e793a2c70b909256734ab',1,'hal.h']]],
+  ['relais_5fpower',['RELAIS_POWER',['../hal_8h.html#a56489df9a2d1844419f2b0c104516657',1,'hal.h']]],
+  ['relais_5fpump',['RELAIS_PUMP',['../hal_8h.html#a9723c5da9e57e2b3a1c3ec7b635cee53',1,'hal.h']]]
 ];

+ 26 - 1
CoffeeCode/html/search/defines_b.js

@@ -1,4 +1,29 @@
 var searchData=
 [
-  ['use_5fcolors',['USE_COLORS',['../logger_8h.html#acdbdbd1e0c5422f3d1f7aa3960957e0a',1,'logger.h']]]
+  ['shift_5fg',['SHIFT_G',['../spi_8h.html#aa846752b3dc2a7a280e1c97191c1e378',1,'spi.h']]],
+  ['shift_5frck',['SHIFT_RCK',['../spi_8h.html#aed6e9b64896ee902a2f02b1e49e65a11',1,'spi.h']]],
+  ['shift_5fsclr',['SHIFT_SCLR',['../spi_8h.html#aa9f52b418d31ac71ce93f2d7846ded90',1,'spi.h']]],
+  ['sig',['SIG',['../timer_8h.html#ad6f1d374549d22100d676d5fcac0a7e5',1,'timer.h']]],
+  ['spi_5fchannel',['SPI_CHANNEL',['../global_8h.html#aa8cbb3355883e35c18820bfa63c4ce3a',1,'global.h']]],
+  ['spi_5fspeed',['SPI_SPEED',['../global_8h.html#a0056b7fdd0f81fad9cd38e9fd389a4b6',1,'global.h']]],
+  ['sql_5fdatabase',['SQL_DATABASE',['../global_8h.html#ad55c274bf698014e01dbc9afde3fc610',1,'global.h']]],
+  ['state_5fbrew',['STATE_BREW',['../coffee_8h.html#a7a56332694aec763a9f8028113a07199',1,'coffee.h']]],
+  ['state_5fbrewmanual',['STATE_BREWMANUAL',['../coffee_8h.html#af696741daae3faab28c27755188fd828',1,'coffee.h']]],
+  ['state_5fcleaning',['STATE_CLEANING',['../coffee_8h.html#a3a3e5a95a5ba91345c6a1b6f7e06c737',1,'coffee.h']]],
+  ['state_5ferror',['STATE_ERROR',['../coffee_8h.html#a7bf0c086c7c41c12cc63324327932d91',1,'coffee.h']]],
+  ['state_5fheating',['STATE_HEATING',['../coffee_8h.html#ab87d7787dc7a2c2afc6d7853353d7003',1,'coffee.h']]],
+  ['state_5fidle',['STATE_IDLE',['../coffee_8h.html#aafff27c7165f059a969fe60fee51f683',1,'coffee.h']]],
+  ['state_5finitalheating',['STATE_INITALHEATING',['../coffee_8h.html#af74b21e82c0f8fbf7f697db071d420a0',1,'coffee.h']]],
+  ['state_5foff',['STATE_OFF',['../coffee_8h.html#a0cc0d45e13bc83065d45df9d3d1dc887',1,'coffee.h']]],
+  ['stripe_5fcmd_5ffadeout',['STRIPE_CMD_FADEOUT',['../stripe_8h.html#a14287ccb3789c724603c28910512a0b3',1,'stripe.h']]],
+  ['stripe_5fcmd_5ffadestop',['STRIPE_CMD_FADESTOP',['../stripe_8h.html#a2e4a6f31f6823ec2592e9216a51232f2',1,'stripe.h']]],
+  ['stripe_5fcmd_5ffadeto',['STRIPE_CMD_FADETO',['../stripe_8h.html#a80ccf336e21703504faf1b3acba2c98b',1,'stripe.h']]],
+  ['stripe_5fcmd_5freset',['STRIPE_CMD_RESET',['../stripe_8h.html#a0a2c9ea1a805ca03af6c43c107c98e8e',1,'stripe.h']]],
+  ['stripe_5fcmd_5fset',['STRIPE_CMD_SET',['../stripe_8h.html#ab495a56c339e141ecbecfd9872f81fbb',1,'stripe.h']]],
+  ['stripe_5fcmd_5fset2',['STRIPE_CMD_SET2',['../stripe_8h.html#aead1e6fe1bdc60cade5b071a293864cc',1,'stripe.h']]],
+  ['stripe_5fcmd_5fsetb',['STRIPE_CMD_SETB',['../stripe_8h.html#a25c93d4301c3ad1064adfb9eff952211',1,'stripe.h']]],
+  ['stripe_5fcmd_5fsetdim',['STRIPE_CMD_SETDIM',['../stripe_8h.html#aedb99f1c6b67c005f5a2cd6dea06c6b7',1,'stripe.h']]],
+  ['stripe_5fcmd_5fsetg',['STRIPE_CMD_SETG',['../stripe_8h.html#ac62893e9f8f3793a3f6de3338a9a93ff',1,'stripe.h']]],
+  ['stripe_5fcmd_5fsetr',['STRIPE_CMD_SETR',['../stripe_8h.html#ad06bb775e1f72bc21a5f17a19eb62e80',1,'stripe.h']]],
+  ['stripe_5fcmd_5fsetw',['STRIPE_CMD_SETW',['../stripe_8h.html#a3c5fd782e0479daf6bb272d5197c8877',1,'stripe.h']]]
 ];

+ 10 - 1
CoffeeCode/html/search/defines_c.js

@@ -1,4 +1,13 @@
 var searchData=
 [
-  ['width',['WIDTH',['../crc_8cpp.html#a241aeeb764887ae5e3de58b98f04b16d',1,'crc.cpp']]]
+  ['thread_5fcoffee',['THREAD_COFFEE',['../global_8h.html#a5f697926bb7bcc4722a9e650a1acdb6a',1,'global.h']]],
+  ['thread_5fdisplay',['THREAD_DISPLAY',['../global_8h.html#a843e1fa4b4de70b9f31d42a41a896c1c',1,'global.h']]],
+  ['thread_5fmain',['THREAD_MAIN',['../global_8h.html#a67a7c5f1e4a75f1508395d450895990d',1,'global.h']]],
+  ['thread_5fstripe',['THREAD_STRIPE',['../global_8h.html#a77f390a98c0e73ae38abd20f467d6cce',1,'global.h']]],
+  ['time_5fbuttonlongpress',['TIME_BUTTONLONGPRESS',['../hal_8h.html#a39a999d4c82a1021ee63072abe804946',1,'hal.h']]],
+  ['time_5finfusion',['TIME_INFUSION',['../coffee_8h.html#acd34aefc536dfe9b45dbed679cf6afaf',1,'coffee.h']]],
+  ['time_5fsoak',['TIME_SOAK',['../coffee_8h.html#ad4b00557d847ecf54b790844b3be2eb0',1,'coffee.h']]],
+  ['timer_5fdelay_5fus',['TIMER_DELAY_US',['../global_8h.html#a91dee3a4ce745234c8a4998388d6c645',1,'global.h']]],
+  ['topbit',['TOPBIT',['../crc_8cpp.html#a118ad552670dbefa1df0ba72d147f5e1',1,'crc.cpp']]],
+  ['true',['TRUE',['../crc_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d',1,'TRUE():&#160;crc.h'],['../lcd_8cpp.html#aa8cecfc5c5c054d2875c03e77b7be15d',1,'TRUE():&#160;lcd.cpp']]]
 ];

+ 26 - 0
CoffeeCode/html/search/defines_d.html

@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>

+ 4 - 0
CoffeeCode/html/search/defines_d.js

@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['use_5fcolors',['USE_COLORS',['../logger_8h.html#acdbdbd1e0c5422f3d1f7aa3960957e0a',1,'logger.h']]]
+];

+ 26 - 0
CoffeeCode/html/search/defines_e.html

@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>

+ 4 - 0
CoffeeCode/html/search/defines_e.js

@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['width',['WIDTH',['../crc_8cpp.html#a241aeeb764887ae5e3de58b98f04b16d',1,'crc.cpp']]]
+];

+ 2 - 1
CoffeeCode/html/search/enums_1.js

@@ -1,4 +1,5 @@
 var searchData=
 [
-  ['halsig',['HalSig',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68',1,'hal.h']]]
+  ['display_5flang_5ft',['display_lang_t',['../display_8h.html#a681b0c0e7b9408f4c70f8e76da34d080',1,'display.h']]],
+  ['display_5fstrings_5ft',['display_strings_t',['../display_8h.html#a4984755f821d9f0c49acdcac62f4c907',1,'display.h']]]
 ];

+ 1 - 2
CoffeeCode/html/search/enums_2.js

@@ -1,5 +1,4 @@
 var searchData=
 [
-  ['logger_5ftype_5ft',['logger_type_t',['../logger_8h.html#a60cbc432422370d29ed1b783be884823',1,'logger.h']]],
-  ['logger_5fverbose_5ft',['logger_verbose_t',['../logger_8h.html#a1cfb4eb1363ea2e4d18f9052a7a98131',1,'logger.h']]]
+  ['halsig',['HalSig',['../hal_8h.html#aa51a8c9f6b926aa9e9c5dd38249d3f68',1,'hal.h']]]
 ];

+ 2 - 1
CoffeeCode/html/search/enums_3.js

@@ -1,4 +1,5 @@
 var searchData=
 [
-  ['stripe_5ftransient_5ft',['stripe_transient_t',['../stripe_8h.html#aa761062faf633557e537e07a781965e9',1,'stripe.h']]]
+  ['logger_5ftype_5ft',['logger_type_t',['../logger_8h.html#a60cbc432422370d29ed1b783be884823',1,'logger.h']]],
+  ['logger_5fverbose_5ft',['logger_verbose_t',['../logger_8h.html#a1cfb4eb1363ea2e4d18f9052a7a98131',1,'logger.h']]]
 ];

+ 26 - 0
CoffeeCode/html/search/enums_4.html

@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.10"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.