Added how to include the library section to main page

This commit is contained in:
Kristian Sloth Lauszus 2013-02-17 19:52:02 +01:00
parent d33cf25bbf
commit 851b621598
15 changed files with 169 additions and 143 deletions

View file

@ -110,127 +110,148 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="stringliteral">* &lt;b&gt;Kristian Lauszus, TKJ Electronics&lt;/b&gt; - &lt;kristianl@tkjelectronics.com&gt;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="stringliteral"> * Developer of the BTD, SPP, PS3, Wii, and Xbox libraries</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="stringliteral"># How to use the library</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="stringliteral"># How to include the library</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="stringliteral">### Arduino ADK</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="stringliteral">To use this library with the official [Arduino ADK](http://arduino.cc/en/Main/ArduinoBoardADK) uncomment the following line in [avrpins.h](https://github.com/felis/USB_Host_Shield_2.0/blob/master/avrpins.h):</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="stringliteral">&lt;code&gt;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="stringliteral">\#define BOARD\_MEGA_ADK</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="stringliteral">&lt;/code&gt;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="stringliteral">First download the library by clicking on the following link: &lt;https://github.com/felis/USB_Host_Shield_2.0/archive/master.zip&gt;.</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="stringliteral">Then uncompress the zip folder and rename the directory to &quot;USB\_Host\_Shield\_20&quot;, as any special characters are not supported by the Arduino IDE.</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="stringliteral">Now open up the Arduino IDE and open &quot;File&gt;Preferences&quot;. There you will see the location of your sketchbook. Open that directory and create a directory called &quot;libraries&quot; inside that directory.</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="stringliteral">Now move the &quot;USB\_Host\_Shield\_20&quot; directory to the &quot;libraries&quot; directory.</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="stringliteral">### [Bluetooth libraries](https://github.com/felis/USB_Host_Shield_2.0/blob/master/BTD.cpp)</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="stringliteral">The final structure should look like this:</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="stringliteral">The [BTD library](https://github.com/felis/USB_Host_Shield_2.0/blob/master/BTD.cpp) is a general purpose library for an ordinary Bluetooth dongle.</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="stringliteral">This library make it easy to add support for different Bluetooth services like a PS3 or a Wii controller or SPP which is a virtual serial port via Bluetooth.</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="stringliteral">Some different examples can be found in the [example directory](https://github.com/felis/USB_Host_Shield_2.0/tree/master/examples/Bluetooth).</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="stringliteral">* Arduino/</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="stringliteral"> * libraries/</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="stringliteral"> * USB\_Host\_Shield\_20/</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="stringliteral">The BTD library will also make it possible to use multiple services at once, the following example sketch is an example of this:</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="stringliteral">&lt;https://github.com/felis/USB_Host_Shield_2.0/blob/master/examples/Bluetooth/PS3SPP/PS3SPP.ino&gt;</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="stringliteral">### [SPP library](https://github.com/felis/USB_Host_Shield_2.0/blob/master/SPP.cpp)</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="stringliteral">SPP stands for &quot;Serial Port Profile&quot; and is a Bluetooth protocol that implements a virtual comport which allows you to send data back and forth from your computer/phone to your Arduino via Bluetooth.</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="stringliteral">It has been tested successfully on Windows, Mac OS X, Linux, and Android.</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="stringliteral">Unfortunately Google broke something in Android 4.2, so it&#39;</span>s currently not working in <span class="keyword">this</span> version of Android.</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;More information can be found at these blog posts:</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;* &lt;http:<span class="comment">//www.circuitsathome.com/mcu/bluetooth-rfcommspp-service-support-for-usb-host-2-0-library-released&gt;</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/07/rfcommspp-library-for-arduino/&gt;</span></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;To implement the <a class="code" href="class_s_p_p.html">SPP</a> protocol I used a <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> sniffing tool called [PacketLogger](http:<span class="comment">//www.tkjelectronics.com/uploads/PacketLogger.zip) developed by Apple. </span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;It enables me to see the <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> communication between my Mac and any device.</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;### PS3 Library</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;These libraries consist of the [<a class="code" href="class_p_s3_b_t.html">PS3BT</a>](https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/PS3BT.cpp) and [PS3USB](https://github.com/felis/USB_Host_Shield_2.0/blob/master/PS3USB.cpp). These libraries allows you to use a Dualshock 3, Navigation or a Motion controller with the USB Host Shield both via Bluetooth and USB.</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;In order to use your Playstation controller via <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> you have to <span class="keyword">set</span> the <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> address of the dongle internally to your PS3 Controller. This can be achieved by plugging the controller in via <a class="code" href="class_u_s_b.html">USB</a> and letting the library <span class="keyword">set</span> it automatically.</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;__Note:__ To obtain the address you have to plug in the <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> dongle before connecting the controller, or alternatively you could <span class="keyword">set</span> it in code like so: &lt;https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/examples/Bluetooth/PS3BT/PS3BT.ino#L12&gt;.</span></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;For more information about the PS3 protocol see the official wiki: &lt;https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/wiki/PS3-Information&gt;.</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;Also take a look at the blog posts:</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/01/ps3-controller-bt-library-for-arduino/&gt;</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;* &lt;http:<span class="comment">//www.circuitsathome.com/mcu/sony-ps3-controller-support-added-to-usb-host-library&gt;</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;* &lt;http:<span class="comment">//www.circuitsathome.com/mcu/arduino/interfacing-ps3-controllers-via-usb&gt;</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;<a class="code" href="controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0a42a4ade1acd55a49164099104990e09f">A</a> special thanks go to the following people:</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="stringliteral">Now quit the Arduino IDE and reopen it.</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="stringliteral">Now you should be able to go open all the examples codes by navigating to &quot;File&gt;Examples&gt;USB\_Host\_Shield\_20&quot; and then select the example you will like to open.</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="stringliteral">For more information visit the following site: &lt;http://arduino.cc/en/Guide/Libraries&gt;.</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="stringliteral"># How to use the library</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="stringliteral">### Arduino ADK</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="stringliteral">To use this library with the official [Arduino ADK](http://arduino.cc/en/Main/ArduinoBoardADK) uncomment the following line in [avrpins.h](https://github.com/felis/USB_Host_Shield_2.0/blob/master/avrpins.h):</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="stringliteral">&lt;code&gt;</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="stringliteral">\#define BOARD\_MEGA_ADK</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="stringliteral">&lt;/code&gt;</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="stringliteral">### [Bluetooth libraries](https://github.com/felis/USB_Host_Shield_2.0/blob/master/BTD.cpp)</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="stringliteral">The [BTD library](https://github.com/felis/USB_Host_Shield_2.0/blob/master/BTD.cpp) is a general purpose library for an ordinary Bluetooth dongle.</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="stringliteral">This library make it easy to add support for different Bluetooth services like a PS3 or a Wii controller or SPP which is a virtual serial port via Bluetooth.</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="stringliteral">Some different examples can be found in the [example directory](https://github.com/felis/USB_Host_Shield_2.0/tree/master/examples/Bluetooth).</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="stringliteral">The BTD library will also make it possible to use multiple services at once, the following example sketch is an example of this:</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="stringliteral">&lt;https://github.com/felis/USB_Host_Shield_2.0/blob/master/examples/Bluetooth/PS3SPP/PS3SPP.ino&gt;</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="stringliteral">### [SPP library](https://github.com/felis/USB_Host_Shield_2.0/blob/master/SPP.cpp)</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="stringliteral">SPP stands for &quot;Serial Port Profile&quot; and is a Bluetooth protocol that implements a virtual comport which allows you to send data back and forth from your computer/phone to your Arduino via Bluetooth.</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="stringliteral">It has been tested successfully on Windows, Mac OS X, Linux, and Android.</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="stringliteral">Unfortunately Google broke something in Android 4.2, so it&#39;</span>s currently not working in <span class="keyword">this</span> version of Android.</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;More information can be found at these blog posts:</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;* &lt;http:<span class="comment">//www.circuitsathome.com/mcu/bluetooth-rfcommspp-service-support-for-usb-host-2-0-library-released&gt;</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/07/rfcommspp-library-for-arduino/&gt;</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;1. _Richard Ibbotson_ who made <span class="keyword">this</span> excellent guide: &lt;http:<span class="comment">//www.circuitsathome.com/mcu/ps3-and-wiimote-game-controllers-on-the-arduino-host-shield-part&gt;</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;2. _Tomoyuki Tanaka_ <span class="keywordflow">for</span> releasing his code <span class="keywordflow">for</span> the Arduino <a class="code" href="class_u_s_b.html">USB</a> Host shield connected to the wiimote: &lt;http:<span class="comment">//www.circuitsathome.com/mcu/rc-car-controlled-by-wii-remote-on-arduino&gt;</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;To implement the <a class="code" href="class_s_p_p.html">SPP</a> protocol I used a <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> sniffing tool called [PacketLogger](http:<span class="comment">//www.tkjelectronics.com/uploads/PacketLogger.zip) developed by Apple. </span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;It enables me to see the <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> communication between my Mac and any device.</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;Also a big thanks all the people behind these sites about the Motion controller:</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;### PS3 Library</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;* &lt;http:<span class="comment">//thp.io/2010/psmove/&gt;</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;* &lt;http:<span class="comment">//www.copenhagengamecollective.org/unimove/&gt;</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;* &lt;https:<span class="comment">//github.com/thp/psmoveapi&gt;</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;* &lt;http:<span class="comment">//code.google.com/p/moveonpc/&gt;</span></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"> 86</span>&#160;<span class="preprocessor">### Xbox 360 Library</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;The library support one Xbox 360 via <a class="code" href="class_u_s_b.html">USB</a> or up to four Xbox 360 controllers wirelessly by <span class="keyword">using</span> a [Xbox 360 wireless receiver](http:<span class="comment">//blog.tkjelectronics.dk/wp-content/uploads/xbox360-wireless-receiver.jpg).</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;To use it via <a class="code" href="class_u_s_b.html">USB</a> use the [<a class="code" href="class_x_b_o_x_u_s_b.html">XBOXUSB</a>](https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/XBOXUSB.cpp) library or to use it wirelessly use the [XBOXRECV](https://github.com/felis/USB_Host_Shield_2.0/blob/master/XBOXRECV.cpp) library.</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;__Note that a Wireless controller can NOT be used via <a class="code" href="class_u_s_b.html">USB</a>!__</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;Examples code can be found in the [examples directory](https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/tree/master/examples/Xbox).</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;Also see the following blog posts:</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;* &lt;http:<span class="comment">//www.circuitsathome.com/mcu/xbox360-controller-support-added-to-usb-host-shield-2-0-library&gt;</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/07/xbox-360-controller-support-added-to-the-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/12/xbox-360-receiver-added-to-the-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;These libraries consist of the [<a class="code" href="class_p_s3_b_t.html">PS3BT</a>](https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/PS3BT.cpp) and [PS3USB](https://github.com/felis/USB_Host_Shield_2.0/blob/master/PS3USB.cpp). These libraries allows you to use a Dualshock 3, Navigation or a Motion controller with the USB Host Shield both via Bluetooth and USB.</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;In order to use your Playstation controller via <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> you have to <span class="keyword">set</span> the <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> address of the dongle internally to your PS3 Controller. This can be achieved by plugging the controller in via <a class="code" href="class_u_s_b.html">USB</a> and letting the library <span class="keyword">set</span> it automatically.</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;__Note:__ To obtain the address you have to plug in the <a class="code" href="_p_s3_enums_8h.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> dongle before connecting the controller, or alternatively you could <span class="keyword">set</span> it in code like so: &lt;https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/examples/Bluetooth/PS3BT/PS3BT.ino#L12&gt;.</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;For more information about the PS3 protocol see the official wiki: &lt;https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/wiki/PS3-Information&gt;.</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;Also take a look at the blog posts:</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;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/01/ps3-controller-bt-library-for-arduino/&gt;</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;* &lt;http:<span class="comment">//www.circuitsathome.com/mcu/sony-ps3-controller-support-added-to-usb-host-library&gt;</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;* &lt;http:<span class="comment">//www.circuitsathome.com/mcu/arduino/interfacing-ps3-controllers-via-usb&gt;</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<a class="code" href="controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0a42a4ade1acd55a49164099104990e09f">A</a> special thanks go to the following people:</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;1. _Richard Ibbotson_ who made <span class="keyword">this</span> excellent guide: &lt;http:<span class="comment">//www.circuitsathome.com/mcu/ps3-and-wiimote-game-controllers-on-the-arduino-host-shield-part&gt;</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;2. _Tomoyuki Tanaka_ <span class="keywordflow">for</span> releasing his code <span class="keywordflow">for</span> the Arduino <a class="code" href="class_u_s_b.html">USB</a> Host shield connected to the wiimote: &lt;http:<span class="comment">//www.circuitsathome.com/mcu/rc-car-controlled-by-wii-remote-on-arduino&gt;</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;Also a big thanks all the people behind these sites about the Motion controller:</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;All the information regarding the Xbox 360 controller protocol are form these sites:</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;* &lt;http:<span class="comment">//tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/UsbInfo&gt;</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;* &lt;http:<span class="comment">//tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/WirelessUsbInfo&gt;</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;* &lt;https:<span class="comment">//github.com/Grumbel/xboxdrv/blob/master/PROTOCOL&gt;</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor">### [Wii library](https://github.com/felis/USB_Host_Shield_2.0/blob/master/Wii.cpp)</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;The [Wii](https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/Wii.cpp) library support the Wiimote, but also the Nunchuch and Motion Plus extensions via Bluetooth. The Wii U Pro Controller is also supported via Bluetooth.</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;First you have to pair with the controller, <span class="keyword">this</span> is done automatically by the library <span class="keywordflow">if</span> you create the instance like so:</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;&lt;code&gt;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<a class="code" href="class_w_i_i.html">WII</a> Wii(&amp;Btd,<a class="code" href="_wii_8h.html#a8f0b5b0dedaf5c25c4887f03ebfdd425">PAIR</a>);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;&lt;/code&gt;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;And then press 1 &amp; 2 at once on the Wiimote or press sync <span class="keywordflow">if</span> you are <span class="keyword">using</span> a Wii U Pro Controller.</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;After that you can simply create the instance like so:</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;&lt;code&gt;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<a class="code" href="class_w_i_i.html">WII</a> Wii(&amp;Btd);</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;&lt;/code&gt;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;Then just press any button any button on the Wiimote and it will connect to the dongle.</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;Take a look at the example <span class="keywordflow">for</span> more information: &lt;https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/examples/Bluetooth/Wii/Wii.ino&gt;.</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;Also take a look at the blog post:</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/08/wiimote-added-to-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;All the information about the Wii controllers are from these sites:</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;* &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote&gt;</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;* &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote/Extension_Controllers&gt;</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;* &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote/Extension_Controllers/Nunchuck&gt;</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;* &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote/Extension_Controllers/Wii_Motion_Plus&gt;</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;* The old library created by _Tomoyuki Tanaka_: &lt;https:<span class="comment">//github.com/moyuchin/WiiRemote_on_Arduino&gt; also helped a lot.</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="preprocessor"># FAQ</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;&gt; When I plug my device into the <a class="code" href="class_u_s_b.html">USB</a> connector nothing happens?</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;Try to connect a external power supply to the Arduino - <span class="keyword">this</span> solves the problem in most cases.</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;* &lt;http:<span class="comment">//thp.io/2010/psmove/&gt;</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;* &lt;http:<span class="comment">//www.copenhagengamecollective.org/unimove/&gt;</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;* &lt;https:<span class="comment">//github.com/thp/psmoveapi&gt;</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;* &lt;http:<span class="comment">//code.google.com/p/moveonpc/&gt;</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">### Xbox 360 Library</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;The library support one Xbox 360 via <a class="code" href="class_u_s_b.html">USB</a> or up to four Xbox 360 controllers wirelessly by <span class="keyword">using</span> a [Xbox 360 wireless receiver](http:<span class="comment">//blog.tkjelectronics.dk/wp-content/uploads/xbox360-wireless-receiver.jpg).</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;To use it via <a class="code" href="class_u_s_b.html">USB</a> use the [<a class="code" href="class_x_b_o_x_u_s_b.html">XBOXUSB</a>](https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/XBOXUSB.cpp) library or to use it wirelessly use the [XBOXRECV](https://github.com/felis/USB_Host_Shield_2.0/blob/master/XBOXRECV.cpp) library.</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;__Note that a Wireless controller can NOT be used via <a class="code" href="class_u_s_b.html">USB</a>!__</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;Examples code can be found in the [examples directory](https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/tree/master/examples/Xbox).</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;Also see the following blog posts:</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;* &lt;http:<span class="comment">//www.circuitsathome.com/mcu/xbox360-controller-support-added-to-usb-host-shield-2-0-library&gt;</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/07/xbox-360-controller-support-added-to-the-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/12/xbox-360-receiver-added-to-the-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;All the information regarding the Xbox 360 controller protocol are form these sites:</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;* &lt;http:<span class="comment">//tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/UsbInfo&gt;</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;* &lt;http:<span class="comment">//tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/WirelessUsbInfo&gt;</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;* &lt;https:<span class="comment">//github.com/Grumbel/xboxdrv/blob/master/PROTOCOL&gt;</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor">### [Wii library](https://github.com/felis/USB_Host_Shield_2.0/blob/master/Wii.cpp)</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;The [Wii](https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/Wii.cpp) library support the Wiimote, but also the Nunchuch and Motion Plus extensions via Bluetooth. The Wii U Pro Controller is also supported via Bluetooth.</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;First you have to pair with the controller, <span class="keyword">this</span> is done automatically by the library <span class="keywordflow">if</span> you create the instance like so:</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;&lt;code&gt;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<a class="code" href="class_w_i_i.html">WII</a> Wii(&amp;Btd,<a class="code" href="_wii_8h.html#a8f0b5b0dedaf5c25c4887f03ebfdd425">PAIR</a>);</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;&lt;/code&gt;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;And then press 1 &amp; 2 at once on the Wiimote or press sync <span class="keywordflow">if</span> you are <span class="keyword">using</span> a Wii U Pro Controller.</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;After that you can simply create the instance like so:</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;&lt;code&gt;</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<a class="code" href="class_w_i_i.html">WII</a> Wii(&amp;Btd);</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;&lt;/code&gt;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;Then just press any button any button on the Wiimote and it will connect to the dongle.</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;Take a look at the example <span class="keywordflow">for</span> more information: &lt;https:<span class="comment">//github.com/felis/USB_Host_Shield_2.0/blob/master/examples/Bluetooth/Wii/Wii.ino&gt;.</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;Also take a look at the blog post:</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;* &lt;http:<span class="comment">//blog.tkjelectronics.dk/2012/08/wiimote-added-to-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;All the information about the Wii controllers are from these sites:</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;* &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote&gt;</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;* &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote/Extension_Controllers&gt;</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;* &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote/Extension_Controllers/Nunchuck&gt;</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;* &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote/Extension_Controllers/Wii_Motion_Plus&gt;</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;* The old library created by _Tomoyuki Tanaka_: &lt;https:<span class="comment">//github.com/moyuchin/WiiRemote_on_Arduino&gt; also helped a lot.</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="preprocessor"># FAQ</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;&gt; When I plug my device into the <a class="code" href="class_u_s_b.html">USB</a> connector nothing happens?</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;Try to connect a external power supply to the Arduino - <span class="keyword">this</span> solves the problem in most cases.</div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>

View file

@ -472,7 +472,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">return</span> (uint8_t)(ButtonState[controller] &gt;&gt; 8);</div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(b == <a class="code" href="controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0a629d7b403cea5f826352f3aefb9a6d6a">R2</a>)</div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">return</span> (uint8_t)ButtonState[controller];</div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> (ButtonState[controller] &amp; ((uint32_t)pgm_read_word(&amp;BUTTONS[(uint8_t)b]) &lt;&lt; 16));</div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> (ButtonState[controller] &amp; ((uint32_t)pgm_read_word(&amp;XBOXBUTTONS[(uint8_t)b]) &lt;&lt; 16));</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;}</div>
<div class="line"><a name="l00386"></a><span class="lineno"><a class="code" href="class_x_b_o_x_r_e_c_v.html#a5e9a59d90ec1941c7152cdd438c284d0"> 386</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="class_x_b_o_x_r_e_c_v.html#a5e9a59d90ec1941c7152cdd438c284d0">XBOXRECV::getButtonClick</a>(uint8_t controller, <a class="code" href="controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0">Button</a> b) {</div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">if</span>(b == <a class="code" href="controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0a0adffb24dae0c41be5b803f4d444f066">L2</a>) {</div>
@ -489,7 +489,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; }</div>
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }</div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; uint16_t button = pgm_read_word(&amp;BUTTONS[(uint8_t)b]);</div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; uint16_t button = pgm_read_word(&amp;XBOXBUTTONS[(uint8_t)b]);</div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordtype">bool</span> click = (ButtonClickState[controller] &amp; button);</div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; ButtonClickState[controller] &amp;= ~button; <span class="comment">// clear &quot;click&quot; event</span></div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">return</span> click;</div>
@ -553,10 +553,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;}</div>
<div class="line"><a name="l00463"></a><span class="lineno"><a class="code" href="class_x_b_o_x_r_e_c_v.html#a9e17aa44f2946e710fb9343f27290c85"> 463</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_x_b_o_x_r_e_c_v.html#a9e17aa44f2946e710fb9343f27290c85">XBOXRECV::setLedOn</a>(uint8_t controller, <a class="code" href="controller_enums_8h.html#aadcb6002d2b42fdfe01490f730ab00a6">LED</a> led) {</div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keywordflow">if</span>(led != <a class="code" href="controller_enums_8h.html#aadcb6002d2b42fdfe01490f730ab00a6ab1d5eac4b1dca480c8056eaea7663b7a">ALL</a>) <span class="comment">// All LEDs can&#39;t be on a the same time</span></div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <a class="code" href="class_x_b_o_x_r_e_c_v.html#a354ede498c38b95a60c1b27deb01e47d">setLedRaw</a>(controller,(pgm_read_byte(&amp;LEDS[(uint8_t)led]))+4);</div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <a class="code" href="class_x_b_o_x_r_e_c_v.html#a354ede498c38b95a60c1b27deb01e47d">setLedRaw</a>(controller,(pgm_read_byte(&amp;XBOXLEDS[(uint8_t)led]))+4);</div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;}</div>
<div class="line"><a name="l00467"></a><span class="lineno"><a class="code" href="class_x_b_o_x_r_e_c_v.html#a54490f57e16eaee6689ca92351958017"> 467</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_x_b_o_x_r_e_c_v.html#a54490f57e16eaee6689ca92351958017">XBOXRECV::setLedBlink</a>(uint8_t controller, <a class="code" href="controller_enums_8h.html#aadcb6002d2b42fdfe01490f730ab00a6">LED</a> led) {</div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <a class="code" href="class_x_b_o_x_r_e_c_v.html#a354ede498c38b95a60c1b27deb01e47d">setLedRaw</a>(controller,pgm_read_byte(&amp;LEDS[(uint8_t)led]));</div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <a class="code" href="class_x_b_o_x_r_e_c_v.html#a354ede498c38b95a60c1b27deb01e47d">setLedRaw</a>(controller,pgm_read_byte(&amp;XBOXLEDS[(uint8_t)led]));</div>
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;}</div>
<div class="line"><a name="l00470"></a><span class="lineno"><a class="code" href="class_x_b_o_x_r_e_c_v.html#ace7deafed6fa6991d38417b41a490c57"> 470</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_x_b_o_x_r_e_c_v.html#ace7deafed6fa6991d38417b41a490c57">XBOXRECV::setLedMode</a>(uint8_t controller, <a class="code" href="xbox_enums_8h.html#a57effb96f46e458675a2653d4c543ca2">LEDMode</a> ledMode) { <span class="comment">// This function is used to do some speciel LED stuff the controller supports</span></div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="class_x_b_o_x_r_e_c_v.html#a354ede498c38b95a60c1b27deb01e47d">setLedRaw</a>(controller,(uint8_t)ledMode);</div>

View file

@ -371,7 +371,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">return</span> (uint8_t)(ButtonState &gt;&gt; 8);</div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(b == <a class="code" href="controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0a629d7b403cea5f826352f3aefb9a6d6a">R2</a>)</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">return</span> (uint8_t)ButtonState;</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">return</span> (ButtonState &amp; ((uint32_t)pgm_read_word(&amp;BUTTONS[(uint8_t)b]) &lt;&lt; 16));</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">return</span> (ButtonState &amp; ((uint32_t)pgm_read_word(&amp;XBOXBUTTONS[(uint8_t)b]) &lt;&lt; 16));</div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;}</div>
<div class="line"><a name="l00285"></a><span class="lineno"><a class="code" href="class_x_b_o_x_u_s_b.html#ab85b8ce772b122f1b9df489c7e045635"> 285</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="class_x_b_o_x_u_s_b.html#ab85b8ce772b122f1b9df489c7e045635">XBOXUSB::getButtonClick</a>(<a class="code" href="controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0">Button</a> b) {</div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">if</span>(b == <a class="code" href="controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0a0adffb24dae0c41be5b803f4d444f066">L2</a>) {</div>
@ -388,7 +388,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; uint16_t button = pgm_read_word(&amp;BUTTONS[(uint8_t)b]);</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; uint16_t button = pgm_read_word(&amp;XBOXBUTTONS[(uint8_t)b]);</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordtype">bool</span> click = (ButtonClickState &amp; button);</div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; ButtonClickState &amp;= ~button; <span class="comment">// clear &quot;click&quot; event</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">return</span> click;</div>
@ -411,10 +411,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;}</div>
<div class="line"><a name="l00321"></a><span class="lineno"><a class="code" href="class_x_b_o_x_u_s_b.html#a2348a35d4302f0a76bbeb319e84349a1"> 321</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_x_b_o_x_u_s_b.html#a2348a35d4302f0a76bbeb319e84349a1">XBOXUSB::setLedOn</a>(<a class="code" href="controller_enums_8h.html#aadcb6002d2b42fdfe01490f730ab00a6">LED</a> led) {</div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">if</span>(led != <a class="code" href="controller_enums_8h.html#aadcb6002d2b42fdfe01490f730ab00a6ab1d5eac4b1dca480c8056eaea7663b7a">ALL</a>) <span class="comment">// All LEDs can&#39;t be on a the same time</span></div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="class_x_b_o_x_u_s_b.html#a2cb9786f22e69ec3db26d9a55f95e22e">setLedRaw</a>((pgm_read_byte(&amp;LEDS[(uint8_t)led]))+4);</div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="class_x_b_o_x_u_s_b.html#a2cb9786f22e69ec3db26d9a55f95e22e">setLedRaw</a>((pgm_read_byte(&amp;XBOXLEDS[(uint8_t)led]))+4);</div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;}</div>
<div class="line"><a name="l00325"></a><span class="lineno"><a class="code" href="class_x_b_o_x_u_s_b.html#acc52982e6105d029d1e0980367dc10f6"> 325</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_x_b_o_x_u_s_b.html#acc52982e6105d029d1e0980367dc10f6">XBOXUSB::setLedBlink</a>(<a class="code" href="controller_enums_8h.html#aadcb6002d2b42fdfe01490f730ab00a6">LED</a> led) {</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <a class="code" href="class_x_b_o_x_u_s_b.html#a2cb9786f22e69ec3db26d9a55f95e22e">setLedRaw</a>(pgm_read_byte(&amp;LEDS[(uint8_t)led]));</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <a class="code" href="class_x_b_o_x_u_s_b.html#a2cb9786f22e69ec3db26d9a55f95e22e">setLedRaw</a>(pgm_read_byte(&amp;XBOXLEDS[(uint8_t)led]));</div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;}</div>
<div class="line"><a name="l00328"></a><span class="lineno"><a class="code" href="class_x_b_o_x_u_s_b.html#a7426adef803da704df7593858389926e"> 328</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_x_b_o_x_u_s_b.html#a7426adef803da704df7593858389926e">XBOXUSB::setLedMode</a>(<a class="code" href="xbox_enums_8h.html#a57effb96f46e458675a2653d4c543ca2">LEDMode</a> ledMode) { <span class="comment">// This function is used to do some speciel LED stuff the controller supports</span></div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <a class="code" href="class_x_b_o_x_u_s_b.html#a2cb9786f22e69ec3db26d9a55f95e22e">setLedRaw</a>((uint8_t)ledMode);</div>

View file

@ -97,8 +97,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
Include dependency graph for avrpins.h:</div>
<div class="dyncontent">
<div class="center"><img src="avrpins_8h__incl.png" border="0" usemap="#avrpins_8h" alt=""/></div>
<map name="avrpins_8h" id="avrpins_8h">
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>

View file

@ -96,15 +96,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
Inheritance diagram for HexDumper&lt; BASE_CLASS, LEN_TYPE, OFFSET_TYPE &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="class_hex_dumper__inherit__graph.png" border="0" usemap="#_hex_dumper_3_01_b_a_s_e___c_l_a_s_s_00_01_l_e_n___t_y_p_e_00_01_o_f_f_s_e_t___t_y_p_e_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="_hex_dumper_3_01_b_a_s_e___c_l_a_s_s_00_01_l_e_n___t_y_p_e_00_01_o_f_f_s_e_t___t_y_p_e_01_4_inherit__map" id="_hex_dumper_3_01_b_a_s_e___c_l_a_s_s_00_01_l_e_n___t_y_p_e_00_01_o_f_f_s_e_t___t_y_p_e_01_4_inherit__map">
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for HexDumper&lt; BASE_CLASS, LEN_TYPE, OFFSET_TYPE &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="class_hex_dumper__coll__graph.png" border="0" usemap="#_hex_dumper_3_01_b_a_s_e___c_l_a_s_s_00_01_l_e_n___t_y_p_e_00_01_o_f_f_s_e_t___t_y_p_e_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="_hex_dumper_3_01_b_a_s_e___c_l_a_s_s_00_01_l_e_n___t_y_p_e_00_01_o_f_f_s_e_t___t_y_p_e_01_4_coll__map" id="_hex_dumper_3_01_b_a_s_e___c_l_a_s_s_00_01_l_e_n___t_y_p_e_00_01_o_f_f_s_e_t___t_y_p_e_01_4_coll__map">
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>

View file

@ -177,7 +177,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
, <a class="el" href="_p_s3_u_s_b_8cpp.html#a5442183aed6e48d11b22eb790351a5cd">PS3USB.cpp</a>
, <a class="el" href="_s_p_p_8cpp.html#a5c3da75486e8c6a65da9ecc5c9c588e1">SPP.cpp</a>
, <a class="el" href="_wii_8cpp.html#aa59a533c04572a9aa97676c8e9a40d80">Wii.cpp</a>
, <a class="el" href="xbox_enums_8h.html#a2403439df9095a54a47f78fbdae332cd">xboxEnums.h</a>
, <a class="el" href="xbox_enums_8h.html#a33b4e3a0eceeb86e6bfacec058c6faee">xboxEnums.h</a>
</li>
<li>PROLIFIC_REV_1
: <a class="el" href="cdcprolific_8h.html#a9c2ce56792e2f2641b822909d38c4820">cdcprolific.h</a>

View file

@ -95,7 +95,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
&#160;<ul>
<li>PROGMEM
: <a class="el" href="hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0">hidboot.cpp</a>
, <a class="el" href="xbox_enums_8h.html#a2403439df9095a54a47f78fbdae332cd">xboxEnums.h</a>
, <a class="el" href="xbox_enums_8h.html#a33b4e3a0eceeb86e6bfacec058c6faee">xboxEnums.h</a>
, <a class="el" href="_wii_8cpp.html#aa59a533c04572a9aa97676c8e9a40d80">Wii.cpp</a>
, <a class="el" href="_s_p_p_8cpp.html#a5c3da75486e8c6a65da9ecc5c9c588e1">SPP.cpp</a>
, <a class="el" href="_p_s3_u_s_b_8cpp.html#a5442183aed6e48d11b22eb790351a5cd">PS3USB.cpp</a>

View file

@ -96,8 +96,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
Include dependency graph for hidusagestr.h:</div>
<div class="dyncontent">
<div class="center"><img src="hidusagestr_8h__incl.png" border="0" usemap="#hidusagestr_8h" alt=""/></div>
<map name="hidusagestr_8h" id="hidusagestr_8h">
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>

View file

@ -101,6 +101,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</ul>
</li>
</ul>
<h1>How to include the library</h1>
<p>First download the library by clicking on the following link: <a href="https://github.com/felis/USB_Host_Shield_2.0/archive/master.zip">https://github.com/felis/USB_Host_Shield_2.0/archive/master.zip</a>.</p>
<p>Then uncompress the zip folder and rename the directory to "USB_Host_Shield_20", as any special characters are not supported by the Arduino IDE.</p>
<p>Now open up the Arduino IDE and open "File&gt;Preferences". There you will see the location of your sketchbook. Open that directory and create a directory called "libraries" inside that directory. Now move the "USB_Host_Shield_20" directory to the "libraries" directory.</p>
<p>The final structure should look like this:</p>
<ul>
<li>Arduino/<ul>
<li>libraries/<ul>
<li>USB_Host_Shield_20/</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>Now quit the Arduino IDE and reopen it.</p>
<p>Now you should be able to go open all the examples codes by navigating to "File&gt;Examples&gt;USB_Host_Shield_20" and then select the example you will like to open.</p>
<p>For more information visit the following site: <a href="http://arduino.cc/en/Guide/Libraries">http://arduino.cc/en/Guide/Libraries</a>.</p>
<h1>How to use the library</h1>
<h3>Arduino <a class="el" href="class_a_d_k.html">ADK</a></h3>
<p>To use this library with the official <a href="http://arduino.cc/en/Main/ArduinoBoardADK">Arduino ADK</a> uncomment the following line in <a href="https://github.com/felis/USB_Host_Shield_2.0/blob/master/avrpins.h">avrpins.h</a>:</p>

View file

@ -96,8 +96,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
Include dependency graph for printhex.h:</div>
<div class="dyncontent">
<div class="center"><img src="printhex_8h__incl.png" border="0" usemap="#printhex_8h" alt=""/></div>
<map name="printhex_8h" id="printhex_8h">
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>

View file

@ -57,7 +57,7 @@ var searchData=
['printvalue',['PrintValue',['../class_report_desc_parser_base.html#a3c160efea3854223f0e171a9d97a07cd',1,'ReportDescParserBase']]],
['printvrcontrolspageusage',['PrintVRControlsPageUsage',['../class_report_desc_parser_base.html#a938d53101e5ab4e5831276efb298fea9',1,'ReportDescParserBase']]],
['productid',['ProductID',['../struct_inquiry_response.html#a02c12d5c3f7b9e821c6f28dc827f5629',1,'InquiryResponse']]],
['progmem',['PROGMEM',['../hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0',1,'PROGMEM():&#160;hidboot.cpp'],['../hidescriptorparser_8cpp.html#aeac1fb99476e075b3926185867e2a01e',1,'PROGMEM():&#160;hidescriptorparser.cpp'],['../hidusagestr_8h.html#a39c32b4d39ac909b45a9fb44f88615b2',1,'PROGMEM():&#160;hidusagestr.h'],['../_p_s3_b_t_8cpp.html#a554d83ee81af8e8083760b8a8ff9b9ea',1,'PROGMEM():&#160;PS3BT.cpp'],['../_p_s3_enums_8h.html#aefe67abcaf27811cfe8d010add39ae4e',1,'PROGMEM():&#160;PS3Enums.h'],['../_p_s3_u_s_b_8cpp.html#a5442183aed6e48d11b22eb790351a5cd',1,'PROGMEM():&#160;PS3USB.cpp'],['../_s_p_p_8cpp.html#a5c3da75486e8c6a65da9ecc5c9c588e1',1,'PROGMEM():&#160;SPP.cpp'],['../_wii_8cpp.html#aa59a533c04572a9aa97676c8e9a40d80',1,'PROGMEM():&#160;Wii.cpp'],['../xbox_enums_8h.html#a2403439df9095a54a47f78fbdae332cd',1,'PROGMEM():&#160;xboxEnums.h']]],
['progmem',['PROGMEM',['../hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0',1,'PROGMEM():&#160;hidboot.cpp'],['../hidescriptorparser_8cpp.html#aeac1fb99476e075b3926185867e2a01e',1,'PROGMEM():&#160;hidescriptorparser.cpp'],['../hidusagestr_8h.html#a39c32b4d39ac909b45a9fb44f88615b2',1,'PROGMEM():&#160;hidusagestr.h'],['../_p_s3_b_t_8cpp.html#a554d83ee81af8e8083760b8a8ff9b9ea',1,'PROGMEM():&#160;PS3BT.cpp'],['../_p_s3_enums_8h.html#aefe67abcaf27811cfe8d010add39ae4e',1,'PROGMEM():&#160;PS3Enums.h'],['../_p_s3_u_s_b_8cpp.html#a5442183aed6e48d11b22eb790351a5cd',1,'PROGMEM():&#160;PS3USB.cpp'],['../_s_p_p_8cpp.html#a5c3da75486e8c6a65da9ecc5c9c588e1',1,'PROGMEM():&#160;SPP.cpp'],['../_wii_8cpp.html#aa59a533c04572a9aa97676c8e9a40d80',1,'PROGMEM():&#160;Wii.cpp'],['../xbox_enums_8h.html#a33b4e3a0eceeb86e6bfacec058c6faee',1,'PROGMEM():&#160;xboxEnums.h']]],
['prolific_5frev_5f1',['PROLIFIC_REV_1',['../cdcprolific_8h.html#a9c2ce56792e2f2641b822909d38c4820',1,'cdcprolific.h']]],
['prolific_5frev_5fh',['PROLIFIC_REV_H',['../cdcprolific_8h.html#a961cb737481f7f216ba32049bbdb8d28',1,'cdcprolific.h']]],
['prolific_5frev_5fhx_5fchip_5fd',['PROLIFIC_REV_HX_CHIP_D',['../cdcprolific_8h.html#a95aad329b927ced24fc54a2c1c604c4f',1,'cdcprolific.h']]],

View file

@ -9,7 +9,7 @@ var searchData=
['portindicatorssupported',['PortIndicatorsSupported',['../struct_hub_descriptor.html#a6478c259c7397e89d50b42f6f3d4f4e4',1,'HubDescriptor']]],
['prevstate',['prevState',['../class_keyboard_report_parser.html#a7ca6a366c46a1b1915ade7fa61080b20',1,'KeyboardReportParser']]],
['productid',['ProductID',['../struct_inquiry_response.html#a02c12d5c3f7b9e821c6f28dc827f5629',1,'InquiryResponse']]],
['progmem',['PROGMEM',['../hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0',1,'PROGMEM():&#160;hidboot.cpp'],['../hidescriptorparser_8cpp.html#aeac1fb99476e075b3926185867e2a01e',1,'PROGMEM():&#160;hidescriptorparser.cpp'],['../hidusagestr_8h.html#a39c32b4d39ac909b45a9fb44f88615b2',1,'PROGMEM():&#160;hidusagestr.h'],['../_p_s3_b_t_8cpp.html#a554d83ee81af8e8083760b8a8ff9b9ea',1,'PROGMEM():&#160;PS3BT.cpp'],['../_p_s3_enums_8h.html#aefe67abcaf27811cfe8d010add39ae4e',1,'PROGMEM():&#160;PS3Enums.h'],['../_p_s3_u_s_b_8cpp.html#a5442183aed6e48d11b22eb790351a5cd',1,'PROGMEM():&#160;PS3USB.cpp'],['../_s_p_p_8cpp.html#a5c3da75486e8c6a65da9ecc5c9c588e1',1,'PROGMEM():&#160;SPP.cpp'],['../_wii_8cpp.html#aa59a533c04572a9aa97676c8e9a40d80',1,'PROGMEM():&#160;Wii.cpp'],['../xbox_enums_8h.html#a2403439df9095a54a47f78fbdae332cd',1,'PROGMEM():&#160;xboxEnums.h']]],
['progmem',['PROGMEM',['../hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0',1,'PROGMEM():&#160;hidboot.cpp'],['../hidescriptorparser_8cpp.html#aeac1fb99476e075b3926185867e2a01e',1,'PROGMEM():&#160;hidescriptorparser.cpp'],['../hidusagestr_8h.html#a39c32b4d39ac909b45a9fb44f88615b2',1,'PROGMEM():&#160;hidusagestr.h'],['../_p_s3_b_t_8cpp.html#a554d83ee81af8e8083760b8a8ff9b9ea',1,'PROGMEM():&#160;PS3BT.cpp'],['../_p_s3_enums_8h.html#aefe67abcaf27811cfe8d010add39ae4e',1,'PROGMEM():&#160;PS3Enums.h'],['../_p_s3_u_s_b_8cpp.html#a5442183aed6e48d11b22eb790351a5cd',1,'PROGMEM():&#160;PS3USB.cpp'],['../_s_p_p_8cpp.html#a5c3da75486e8c6a65da9ecc5c9c588e1',1,'PROGMEM():&#160;SPP.cpp'],['../_wii_8cpp.html#aa59a533c04572a9aa97676c8e9a40d80',1,'PROGMEM():&#160;Wii.cpp'],['../xbox_enums_8h.html#a33b4e3a0eceeb86e6bfacec058c6faee',1,'PROGMEM():&#160;xboxEnums.h']]],
['ps3connected',['PS3Connected',['../class_p_s3_b_t.html#a2804535e3164eafca80a6f6c6bd9a4f9',1,'PS3BT::PS3Connected()'],['../class_p_s3_u_s_b.html#a0dad8754ff18d0c375c2569791d50876',1,'PS3USB::PS3Connected()']]],
['ps3moveconnected',['PS3MoveConnected',['../class_p_s3_b_t.html#a9273b6796948b83772117b3805421b4a',1,'PS3BT::PS3MoveConnected()'],['../class_p_s3_u_s_b.html#a89aa4233f3eeeb99693a099da527ec28',1,'PS3USB::PS3MoveConnected()']]],
['ps3navigationconnected',['PS3NavigationConnected',['../class_p_s3_b_t.html#ab35277632083d43f8750d130bea6d430',1,'PS3BT::PS3NavigationConnected()'],['../class_p_s3_u_s_b.html#a54b2dcaa1e9acef83de2376b50c7ff09',1,'PS3USB::PS3NavigationConnected()']]],

View file

@ -97,8 +97,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
Include dependency graph for usb_ch9.h:</div>
<div class="dyncontent">
<div class="center"><img src="usb__ch9_8h__incl.png" border="0" usemap="#usb__ch9_8h" alt=""/></div>
<map name="usb__ch9_8h" id="usb__ch9_8h">
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>

View file

@ -121,8 +121,8 @@ Enumerations</h2></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:a2403439df9095a54a47f78fbdae332cd"><td class="memItemLeft" align="right" valign="top">const uint8_t LEDS[]&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xbox_enums_8h.html#a2403439df9095a54a47f78fbdae332cd">PROGMEM</a></td></tr>
<tr class="separator:a2403439df9095a54a47f78fbdae332cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33b4e3a0eceeb86e6bfacec058c6faee"><td class="memItemLeft" align="right" valign="top">const uint8_t XBOXLEDS[]&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xbox_enums_8h.html#a33b4e3a0eceeb86e6bfacec058c6faee">PROGMEM</a></td></tr>
<tr class="separator:a33b4e3a0eceeb86e6bfacec058c6faee"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="a57effb96f46e458675a2653d4c543ca2"></a>
@ -151,12 +151,12 @@ Variables</h2></td></tr>
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="a2403439df9095a54a47f78fbdae332cd"></a>
<a class="anchor" id="a33b4e3a0eceeb86e6bfacec058c6faee"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const uint16_t BUTTONS [] PROGMEM</td>
<td class="memname">const uint16_t XBOXBUTTONS [] PROGMEM</td>
</tr>
</table>
</div><div class="memdoc">

View file

@ -118,14 +118,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="xbox_enums_8h.html#a57effb96f46e458675a2653d4c543ca2a699ca8594a49a8c786c6881a14caeb37"> 28</a></span>&#160; <a class="code" href="xbox_enums_8h.html#a57effb96f46e458675a2653d4c543ca2a699ca8594a49a8c786c6881a14caeb37">ALTERNATING</a> = 0x0D, </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="l00032"></a><span class="lineno"><a class="code" href="xbox_enums_8h.html#a2403439df9095a54a47f78fbdae332cd"> 32</a></span>&#160;<span class="keyword">const</span> uint8_t LEDS[] <a class="code" href="hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0">PROGMEM</a> = {</div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="code" href="xbox_enums_8h.html#a33b4e3a0eceeb86e6bfacec058c6faee"> 32</a></span>&#160;<span class="keyword">const</span> uint8_t XBOXLEDS[] <a class="code" href="hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0">PROGMEM</a> = {</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; 0x02, <span class="comment">// LED1</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; 0x03, <span class="comment">// LED2</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; 0x04, <span class="comment">// LED3</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; 0x05, <span class="comment">// LED4</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; 0x01 <span class="comment">// ALL - Used to blink all LEDs</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; };</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">const</span> uint16_t BUTTONS[] <a class="code" href="hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0">PROGMEM</a> = {</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">const</span> uint16_t XBOXBUTTONS[] <a class="code" href="hidboot_8cpp.html#ad1eb9d7b0347c20d121c984618c442f0">PROGMEM</a> = {</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; 0x0100, <span class="comment">// UP</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; 0x0800, <span class="comment">// RIGHT</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; 0x0200, <span class="comment">// DOWN</span></div>