Host library for controlling a WiConnect enabled Wi-Fi module.

Dependents:   wiconnect-ota_example wiconnect-web_setup_example wiconnect-test-console wiconnect-tcp_server_example ... more

Committer:
dan_ackme
Date:
Thu Oct 23 15:16:06 2014 -0700
Revision:
26:8067e3d463d3
Added 'updateFirmware' and 'networkGetJoinResult' api methods
Various bug fixes
Updated documentation

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dan_ackme 26:8067e3d463d3 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
dan_ackme 26:8067e3d463d3 2 <html xmlns="http://www.w3.org/1999/xhtml">
dan_ackme 26:8067e3d463d3 3 <head>
dan_ackme 26:8067e3d463d3 4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
dan_ackme 26:8067e3d463d3 5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
dan_ackme 26:8067e3d463d3 6 <title>ACKme WiConnect Host Library</title>
dan_ackme 26:8067e3d463d3 7 <link rel="icon" href="favicon.ico" type="image/x-icon">
dan_ackme 26:8067e3d463d3 8 <link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
dan_ackme 26:8067e3d463d3 9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
dan_ackme 26:8067e3d463d3 10 <script type="text/javascript" src="jquery.js"></script>
dan_ackme 26:8067e3d463d3 11 <script type="text/javascript" src="dynsections.js"></script>
dan_ackme 26:8067e3d463d3 12 <link href="navtree.css" rel="stylesheet" type="text/css"/>
dan_ackme 26:8067e3d463d3 13 <script type="text/javascript" src="resize.js"></script>
dan_ackme 26:8067e3d463d3 14 <script type="text/javascript" src="navtree.js"></script>
dan_ackme 26:8067e3d463d3 15 <script type="text/javascript">
dan_ackme 26:8067e3d463d3 16 $(document).ready(initResizable);
dan_ackme 26:8067e3d463d3 17 $(window).load(resizeHeight);
dan_ackme 26:8067e3d463d3 18 </script>
dan_ackme 26:8067e3d463d3 19 <link href="search/search.css" rel="stylesheet" type="text/css"/>
dan_ackme 26:8067e3d463d3 20 <script type="text/javascript" src="search/search.js"></script>
dan_ackme 26:8067e3d463d3 21 <script type="text/javascript">
dan_ackme 26:8067e3d463d3 22 $(document).ready(function() { searchBox.OnSelectItem(0); });
dan_ackme 26:8067e3d463d3 23 </script>
dan_ackme 26:8067e3d463d3 24 <link href="doxygen.css" rel="stylesheet" type="text/css" />
dan_ackme 26:8067e3d463d3 25 </head>
dan_ackme 26:8067e3d463d3 26 <body>
dan_ackme 26:8067e3d463d3 27 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
dan_ackme 26:8067e3d463d3 28 <div id="titlearea" style="font-family:verdana;">
dan_ackme 26:8067e3d463d3 29 <table border='0' cellpadding='0' cellspacing='0' width="98%">
dan_ackme 26:8067e3d463d3 30 <tr style="height:20px"><td>&nbsp;</td></tr>
dan_ackme 26:8067e3d463d3 31 <tr style="border-collapse: collapse; padding: 0;">
dan_ackme 26:8067e3d463d3 32 <td style="width:20px"></td>
dan_ackme 26:8067e3d463d3 33 <td style="padding-right:40px"><img src="ackmelogo.png" alt="ACKme Logo" /></td>
dan_ackme 26:8067e3d463d3 34 <td style="vertical-align:middle; text-align:left; font: bold 25px/100% Verdana, Arial, Helvetica, sans-serif;">
dan_ackme 26:8067e3d463d3 35 WiConnect Host Library- API Reference Guide</td>
dan_ackme 26:8067e3d463d3 36 <td style="width:20px"></td>
dan_ackme 26:8067e3d463d3 37 </tr>
dan_ackme 26:8067e3d463d3 38 <tr><td>&nbsp;</td></tr>
dan_ackme 26:8067e3d463d3 39 </table>
dan_ackme 26:8067e3d463d3 40 </div><!-- Generated by Doxygen 1.8.7 -->
dan_ackme 26:8067e3d463d3 41 <script type="text/javascript">
dan_ackme 26:8067e3d463d3 42 var searchBox = new SearchBox("searchBox", "search",false,'Search');
dan_ackme 26:8067e3d463d3 43 </script>
dan_ackme 26:8067e3d463d3 44 <div id="navrow1" class="tabs">
dan_ackme 26:8067e3d463d3 45 <ul class="tablist">
dan_ackme 26:8067e3d463d3 46 <li><a href="index.html"><span>Library&#160;Overview</span></a></li>
dan_ackme 26:8067e3d463d3 47 <li><a href="modules.html"><span>Library&#160;API</span></a></li>
dan_ackme 26:8067e3d463d3 48 <li><a href="examples.html"><span>API&#160;Examples</span></a></li>
dan_ackme 26:8067e3d463d3 49 <li><a href="annotated.html"><span>Classes</span></a></li>
dan_ackme 26:8067e3d463d3 50 <li><a href="http://wiconnect.ack.me/2.0/general_overview"><span>WiConnect&#160;Reference&#160;Manual</span></a></li>
dan_ackme 26:8067e3d463d3 51 <li><a href="http://www.ack.me/WiConnect"><span>ACKme&#160;Website</span></a></li>
dan_ackme 26:8067e3d463d3 52 <li>
dan_ackme 26:8067e3d463d3 53 <div id="MSearchBox" class="MSearchBoxInactive">
dan_ackme 26:8067e3d463d3 54 <span class="left">
dan_ackme 26:8067e3d463d3 55 <img id="MSearchSelect" src="search/mag_sel.png"
dan_ackme 26:8067e3d463d3 56 onmouseover="return searchBox.OnSearchSelectShow()"
dan_ackme 26:8067e3d463d3 57 onmouseout="return searchBox.OnSearchSelectHide()"
dan_ackme 26:8067e3d463d3 58 alt=""/>
dan_ackme 26:8067e3d463d3 59 <input type="text" id="MSearchField" value="Search" accesskey="S"
dan_ackme 26:8067e3d463d3 60 onfocus="searchBox.OnSearchFieldFocus(true)"
dan_ackme 26:8067e3d463d3 61 onblur="searchBox.OnSearchFieldFocus(false)"
dan_ackme 26:8067e3d463d3 62 onkeyup="searchBox.OnSearchFieldChange(event)"/>
dan_ackme 26:8067e3d463d3 63 </span><span class="right">
dan_ackme 26:8067e3d463d3 64 <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
dan_ackme 26:8067e3d463d3 65 </span>
dan_ackme 26:8067e3d463d3 66 </div>
dan_ackme 26:8067e3d463d3 67 </li>
dan_ackme 26:8067e3d463d3 68 </ul>
dan_ackme 26:8067e3d463d3 69 </div>
dan_ackme 26:8067e3d463d3 70 </div><!-- top -->
dan_ackme 26:8067e3d463d3 71 <div id="side-nav" class="ui-resizable side-nav-resizable">
dan_ackme 26:8067e3d463d3 72 <div id="nav-tree">
dan_ackme 26:8067e3d463d3 73 <div id="nav-tree-contents">
dan_ackme 26:8067e3d463d3 74 <div id="nav-sync" class="sync"></div>
dan_ackme 26:8067e3d463d3 75 </div>
dan_ackme 26:8067e3d463d3 76 </div>
dan_ackme 26:8067e3d463d3 77 <div id="splitbar" style="-moz-user-select:none;"
dan_ackme 26:8067e3d463d3 78 class="ui-resizable-handle">
dan_ackme 26:8067e3d463d3 79 </div>
dan_ackme 26:8067e3d463d3 80 </div>
dan_ackme 26:8067e3d463d3 81 <script type="text/javascript">
dan_ackme 26:8067e3d463d3 82 $(document).ready(function(){initNavTree('target__config_8h_source.html','');});
dan_ackme 26:8067e3d463d3 83 </script>
dan_ackme 26:8067e3d463d3 84 <div id="doc-content">
dan_ackme 26:8067e3d463d3 85 <!-- window showing the filter options -->
dan_ackme 26:8067e3d463d3 86 <div id="MSearchSelectWindow"
dan_ackme 26:8067e3d463d3 87 onmouseover="return searchBox.OnSearchSelectShow()"
dan_ackme 26:8067e3d463d3 88 onmouseout="return searchBox.OnSearchSelectHide()"
dan_ackme 26:8067e3d463d3 89 onkeydown="return searchBox.OnSearchSelectKey(event)">
dan_ackme 26:8067e3d463d3 90 <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
dan_ackme 26:8067e3d463d3 91
dan_ackme 26:8067e3d463d3 92 <!-- iframe showing the search results (closed by default) -->
dan_ackme 26:8067e3d463d3 93 <div id="MSearchResultsWindow">
dan_ackme 26:8067e3d463d3 94 <iframe src="javascript:void(0)" frameborder="0"
dan_ackme 26:8067e3d463d3 95 name="MSearchResults" id="MSearchResults">
dan_ackme 26:8067e3d463d3 96 </iframe>
dan_ackme 26:8067e3d463d3 97 </div>
dan_ackme 26:8067e3d463d3 98
dan_ackme 26:8067e3d463d3 99 <div class="header">
dan_ackme 26:8067e3d463d3 100 <div class="headertitle">
dan_ackme 26:8067e3d463d3 101 <div class="title">target_config.h</div> </div>
dan_ackme 26:8067e3d463d3 102 </div><!--header-->
dan_ackme 26:8067e3d463d3 103 <div class="contents">
dan_ackme 26:8067e3d463d3 104 <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;</div>
dan_ackme 26:8067e3d463d3 105 <div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#pragma once</span></div>
dan_ackme 26:8067e3d463d3 106 <div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
dan_ackme 26:8067e3d463d3 107 <div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
dan_ackme 26:8067e3d463d3 108 <div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment">// The BAUD rate your PC/MAC/Linux terminal uses with the eval board</span></div>
dan_ackme 26:8067e3d463d3 109 <div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#define CONSOLE_BAUD 115200</span></div>
dan_ackme 26:8067e3d463d3 110 <div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div>
dan_ackme 26:8067e3d463d3 111 <div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
dan_ackme 26:8067e3d463d3 112 <div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment">// Uncomment this to enable WiConnect serial interface hardware flow control</span></div>
dan_ackme 26:8067e3d463d3 113 <div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">// NOTE: your platform must support the serial flow control api functions</span></div>
dan_ackme 26:8067e3d463d3 114 <div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment">//#define ENABLE_FLOW_CONTROL</span></div>
dan_ackme 26:8067e3d463d3 115 <div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
dan_ackme 26:8067e3d463d3 116 <div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
dan_ackme 26:8067e3d463d3 117 <div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define WICONNECT_INTERNAL_BUFFER_SIZE (4*1024)</span></div>
dan_ackme 26:8067e3d463d3 118 <div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define WICONNECT_SERIAL_RX_BUFFER_SIZE (4*1024)</span></div>
dan_ackme 26:8067e3d463d3 119 <div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
dan_ackme 26:8067e3d463d3 120 <div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define DEFAULT_CMD_GETCHAR_TIMEOUT 250</span></div>
dan_ackme 26:8067e3d463d3 121 <div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define DEFAULT_COMMAND_LINE_LENGTH_MAX 128</span></div>
dan_ackme 26:8067e3d463d3 122 <div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define DEFAULT_COMMAND_MAX_HISTORY 16</span></div>
dan_ackme 26:8067e3d463d3 123 <div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define DEFAULT_CMD_PROMPT_STR &quot;&gt; &quot;</span></div>
dan_ackme 26:8067e3d463d3 124 <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define DEFAULT_COMMAND_MAX_ARGV 16</span></div>
dan_ackme 26:8067e3d463d3 125 <div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
dan_ackme 26:8067e3d463d3 126 <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define TEST_NONBLOCKING_API false</span></div>
dan_ackme 26:8067e3d463d3 127 <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define TEST_BUFFER_LENGTH 4*1024</span></div>
dan_ackme 26:8067e3d463d3 128 <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
dan_ackme 26:8067e3d463d3 129 <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
dan_ackme 26:8067e3d463d3 130 <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~</span></div>
dan_ackme 26:8067e3d463d3 131 <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">// Seabass Target Configuration</span></div>
dan_ackme 26:8067e3d463d3 132 <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#ifdef TARGET_SEABASS</span></div>
dan_ackme 26:8067e3d463d3 133 <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
dan_ackme 26:8067e3d463d3 134 <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#define WICONNECT_TX_PIN PA_9</span></div>
dan_ackme 26:8067e3d463d3 135 <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#define WICONNECT_RX_PIN PA_10</span></div>
dan_ackme 26:8067e3d463d3 136 <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#define WICONNECT_RESET_PIN PB_0</span></div>
dan_ackme 26:8067e3d463d3 137 <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#define WICONNECT_WAKE_PIN NC</span></div>
dan_ackme 26:8067e3d463d3 138 <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
dan_ackme 26:8067e3d463d3 139 <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#ifdef ENABLE_FLOW_CONTROL</span></div>
dan_ackme 26:8067e3d463d3 140 <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#define WICONNECT_CTS_PIN PA_11</span></div>
dan_ackme 26:8067e3d463d3 141 <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#define WICONNECT_RTS_PIN PA_12</span></div>
dan_ackme 26:8067e3d463d3 142 <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#else</span></div>
dan_ackme 26:8067e3d463d3 143 <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#define WICONNECT_CTS_PIN NC</span></div>
dan_ackme 26:8067e3d463d3 144 <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#define WICONNECT_RTS_PIN NC</span></div>
dan_ackme 26:8067e3d463d3 145 <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#endif</span></div>
dan_ackme 26:8067e3d463d3 146 <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
dan_ackme 26:8067e3d463d3 147 <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#endif</span></div>
dan_ackme 26:8067e3d463d3 148 <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
dan_ackme 26:8067e3d463d3 149 <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
dan_ackme 26:8067e3d463d3 150 <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment">//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~</span></div>
dan_ackme 26:8067e3d463d3 151 <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment">// Nucleo F401RE Target Configuration</span></div>
dan_ackme 26:8067e3d463d3 152 <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#ifdef TARGET_NUCLEO_F401RE</span></div>
dan_ackme 26:8067e3d463d3 153 <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
dan_ackme 26:8067e3d463d3 154 <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#define WICONNECT_TX_PIN PA_9</span></div>
dan_ackme 26:8067e3d463d3 155 <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor">#define WICONNECT_RX_PIN PA_10</span></div>
dan_ackme 26:8067e3d463d3 156 <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#define WICONNECT_RESET_PIN PC_7</span></div>
dan_ackme 26:8067e3d463d3 157 <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#define WICONNECT_WAKE_PIN NC</span></div>
dan_ackme 26:8067e3d463d3 158 <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
dan_ackme 26:8067e3d463d3 159 <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor">#ifdef ENABLE_FLOW_CONTROL</span></div>
dan_ackme 26:8067e3d463d3 160 <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor">#define WICONNECT_CTS_PIN PA_11</span></div>
dan_ackme 26:8067e3d463d3 161 <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor">#define WICONNECT_RTS_PIN PA_12</span></div>
dan_ackme 26:8067e3d463d3 162 <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor">#else</span></div>
dan_ackme 26:8067e3d463d3 163 <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#define WICONNECT_CTS_PIN NC</span></div>
dan_ackme 26:8067e3d463d3 164 <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#define WICONNECT_RTS_PIN NC</span></div>
dan_ackme 26:8067e3d463d3 165 <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#endif</span></div>
dan_ackme 26:8067e3d463d3 166 <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
dan_ackme 26:8067e3d463d3 167 <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#endif</span></div>
dan_ackme 26:8067e3d463d3 168 <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
dan_ackme 26:8067e3d463d3 169 </div><!-- fragment --></div><!-- contents -->
dan_ackme 26:8067e3d463d3 170 </div><!-- doc-content -->
dan_ackme 26:8067e3d463d3 171 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
dan_ackme 26:8067e3d463d3 172 <ul>
dan_ackme 26:8067e3d463d3 173 <li class="footer">&copy; ACKme Networks 2014</li>
dan_ackme 26:8067e3d463d3 174 </ul>
dan_ackme 26:8067e3d463d3 175 </div>
dan_ackme 26:8067e3d463d3 176 </body>
dan_ackme 26:8067e3d463d3 177 </html>