<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Kinetis MicrocontrollersのトピックAttached is USB Generic HID demo for the FRDM-KL25Z Freedom Board</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Attached-is-USB-Generic-HID-demo-for-the-FRDM-KL25Z-Freedom/m-p/293628#M11939</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The Plan:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I needed a USB Generic HID bootloader.&amp;nbsp; After looking at various&lt;/P&gt;&lt;P&gt;'frameworks' and such I could not find what that was small enough, or&lt;/P&gt;&lt;P&gt;was not full of complex conditional compiles of ancient processors,&lt;/P&gt;&lt;P&gt;making the code hard to follow.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In the attached .zip file can be found USB/usb_hid.c that gets as&lt;/P&gt;&lt;P&gt;close to the bare-metal of the Freescale Kinetis KL25 as used on the&lt;/P&gt;&lt;P&gt;Freedom Board, FRDM-KL25Z.&amp;nbsp; No 'frameworks', no GUI, no complex&lt;/P&gt;&lt;P&gt;anything to get in the way of understanding what is going on at the&lt;/P&gt;&lt;P&gt;bare metal USB HID level.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have included a Windows .exe based demo that controls the LED of&lt;/P&gt;&lt;P&gt;the Freedom Board, and shows a moving gauge when the touch slider on&lt;/P&gt;&lt;P&gt;the Freedom Board is moved.&amp;nbsp; This demo should compile and run fine on&lt;/P&gt;&lt;P&gt;Linux, however I did not test.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This code, as it currently stands, is built up on&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://github.com/payne92/bare-metal-arm"&gt;https://github.com/payne92/bare-metal-arm&lt;/A&gt;&lt;SPAN&gt; and the descriptor&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt; processing code from the LUFA project &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.lufa-lib.org/"&gt;http://www.lufa-lib.org&lt;/A&gt;&lt;SPAN&gt; .&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;With the GCC compiler setup, compile in the src/ directory as:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;make -f usb_demo.mak&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The S19 output will be created in a directory called Firmware, a&lt;/P&gt;&lt;P&gt;directory level about the 'src' directory.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This will create a `hid_demo.srec` image file to flash onto the&lt;/P&gt;&lt;P&gt;development board.&amp;nbsp; (If you're using the standard bootloader, plug&lt;/P&gt;&lt;P&gt;SDA USB port to a host computer and then copy the .SREC file to the&lt;/P&gt;&lt;P&gt;FRDM-KL25Z block device.)&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If everything is working, the RGB LEB will be steady green when the&lt;/P&gt;&lt;P&gt;board is connected, until the LED_DEMO program starts which will then&lt;/P&gt;&lt;P&gt;turn white.&amp;nbsp; You can access the USB SDA serial port (at 115,200 baud)&lt;/P&gt;&lt;P&gt;and see the USB status messages.&amp;nbsp; Moving the sliders on the PC will&lt;/P&gt;&lt;P&gt;change the LED color on the Freedom board.&amp;nbsp; The touch slider on the&lt;/P&gt;&lt;P&gt;Freedom board will move the gague indicator on the PC.&lt;/P&gt;&lt;P&gt;All via USB HID messages.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The Windows demo code is build with DialogBlocks and the MinGW&lt;/P&gt;&lt;P&gt;compiler.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To make a new project copy usb_demo.mak to new name and change it&lt;/P&gt;&lt;P&gt;accordingly.&amp;nbsp; Replace the bogus USB VID/PID 0xDEAD/0xBEEF with a&lt;/P&gt;&lt;P&gt;valid USB VID/PID before releasing your project to the world.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;On the To Do list was:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Pass USB Consortium Compliance Test.&lt;/P&gt;&lt;P&gt;&amp;nbsp; Currently not passing the 'halt' or 'resume' Feature Requests.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Figure out why you have to move the LED slider before the touch&lt;/P&gt;&lt;P&gt;&amp;nbsp; slider shows up in the GUI demo.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Remove dependency on LUFA sources.&amp;nbsp; There are to many headers etc,&lt;/P&gt;&lt;P&gt;&amp;nbsp; needs simplified.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Replace ring.c et.al with cbuf.h .&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://blog.softwaresafety.net/2012/02/even-design-patterns-still-have-bugs.html"&gt;http://blog.softwaresafety.net/2012/02/even-design-patterns-still-have-bugs.html&lt;/A&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Reduce size to well under 4K, for Bootloader.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Complete Bootloader.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Make sure code is MISRA compliant.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Well documented with Doxygen to the same quality level as LUFA.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Compile with other compilers.&amp;nbsp; Modify compiler.h and COMP_xxx&lt;/P&gt;&lt;P&gt;&amp;nbsp; makefiles so source code doesn't need touched, when building with&lt;/P&gt;&lt;P&gt;&amp;nbsp; different compilers.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Put on GitHub.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;"If you want to make God laugh, tell Him your plans."&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Reality:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; My wife committed suicide due to the excruciating headache caused by&lt;/P&gt;&lt;P&gt;&amp;nbsp; a Cerebral Spinal Fluid Leak (CSF or CFSL); Intracranial&lt;/P&gt;&lt;P&gt;&amp;nbsp; Hypotension.&amp;nbsp; She lost her twenty-three year battle with this&lt;/P&gt;&lt;P&gt;&amp;nbsp; disease.&amp;nbsp; In the coming weeks I'll be posting her medical history&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; at &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.kpaddock.com/"&gt;http://www.kpaddock.com&lt;/A&gt;&lt;SPAN&gt; so others may learn what we did right and&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; wrong.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://blog.softwaresafety.net/2013/08/my-wifes-suicide.html"&gt;http://blog.softwaresafety.net/2013/08/my-wifes-suicide.html&lt;/A&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; For now my life is going in a direction I never saw coming.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Rather that let this code bit rot until I can get back to it, I'm&lt;/P&gt;&lt;P&gt;&amp;nbsp; posting in the hopes that others can use what I started.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Please keep us up to date on any progress.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;References:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* Bare Metal Arm:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://github.com/payne92/bare-metal-arm"&gt;https://github.com/payne92/bare-metal-arm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* DialogBlocks:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.dialogblocks.com/"&gt;http://www.dialogblocks.com&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* Freescale Freedom FRDM-KL25Z: &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=FRDM-KL25Z"&gt;http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=FRDM-KL25Z&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* GCC ARM toolchain:&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://launchpad.net/gcc-arm-embedded"&gt;https://launchpad.net/gcc-arm-embedded&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* MinGW:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://nuwen.net/mingw.html"&gt;http://nuwen.net/mingw.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* Newlib:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://sourceware.org/newlib/"&gt;http://sourceware.org/newlib/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-337687"&gt;KL25_Generic_HID_Demo.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 09 Sep 2013 18:21:19 GMT</pubDate>
    <dc:creator>bobpaddock</dc:creator>
    <dc:date>2013-09-09T18:21:19Z</dc:date>
    <item>
      <title>Attached is USB Generic HID demo for the FRDM-KL25Z Freedom Board</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Attached-is-USB-Generic-HID-demo-for-the-FRDM-KL25Z-Freedom/m-p/293628#M11939</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The Plan:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I needed a USB Generic HID bootloader.&amp;nbsp; After looking at various&lt;/P&gt;&lt;P&gt;'frameworks' and such I could not find what that was small enough, or&lt;/P&gt;&lt;P&gt;was not full of complex conditional compiles of ancient processors,&lt;/P&gt;&lt;P&gt;making the code hard to follow.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In the attached .zip file can be found USB/usb_hid.c that gets as&lt;/P&gt;&lt;P&gt;close to the bare-metal of the Freescale Kinetis KL25 as used on the&lt;/P&gt;&lt;P&gt;Freedom Board, FRDM-KL25Z.&amp;nbsp; No 'frameworks', no GUI, no complex&lt;/P&gt;&lt;P&gt;anything to get in the way of understanding what is going on at the&lt;/P&gt;&lt;P&gt;bare metal USB HID level.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have included a Windows .exe based demo that controls the LED of&lt;/P&gt;&lt;P&gt;the Freedom Board, and shows a moving gauge when the touch slider on&lt;/P&gt;&lt;P&gt;the Freedom Board is moved.&amp;nbsp; This demo should compile and run fine on&lt;/P&gt;&lt;P&gt;Linux, however I did not test.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This code, as it currently stands, is built up on&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://github.com/payne92/bare-metal-arm"&gt;https://github.com/payne92/bare-metal-arm&lt;/A&gt;&lt;SPAN&gt; and the descriptor&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt; processing code from the LUFA project &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.lufa-lib.org/"&gt;http://www.lufa-lib.org&lt;/A&gt;&lt;SPAN&gt; .&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;With the GCC compiler setup, compile in the src/ directory as:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;make -f usb_demo.mak&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The S19 output will be created in a directory called Firmware, a&lt;/P&gt;&lt;P&gt;directory level about the 'src' directory.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This will create a `hid_demo.srec` image file to flash onto the&lt;/P&gt;&lt;P&gt;development board.&amp;nbsp; (If you're using the standard bootloader, plug&lt;/P&gt;&lt;P&gt;SDA USB port to a host computer and then copy the .SREC file to the&lt;/P&gt;&lt;P&gt;FRDM-KL25Z block device.)&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If everything is working, the RGB LEB will be steady green when the&lt;/P&gt;&lt;P&gt;board is connected, until the LED_DEMO program starts which will then&lt;/P&gt;&lt;P&gt;turn white.&amp;nbsp; You can access the USB SDA serial port (at 115,200 baud)&lt;/P&gt;&lt;P&gt;and see the USB status messages.&amp;nbsp; Moving the sliders on the PC will&lt;/P&gt;&lt;P&gt;change the LED color on the Freedom board.&amp;nbsp; The touch slider on the&lt;/P&gt;&lt;P&gt;Freedom board will move the gague indicator on the PC.&lt;/P&gt;&lt;P&gt;All via USB HID messages.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The Windows demo code is build with DialogBlocks and the MinGW&lt;/P&gt;&lt;P&gt;compiler.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To make a new project copy usb_demo.mak to new name and change it&lt;/P&gt;&lt;P&gt;accordingly.&amp;nbsp; Replace the bogus USB VID/PID 0xDEAD/0xBEEF with a&lt;/P&gt;&lt;P&gt;valid USB VID/PID before releasing your project to the world.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;On the To Do list was:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Pass USB Consortium Compliance Test.&lt;/P&gt;&lt;P&gt;&amp;nbsp; Currently not passing the 'halt' or 'resume' Feature Requests.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Figure out why you have to move the LED slider before the touch&lt;/P&gt;&lt;P&gt;&amp;nbsp; slider shows up in the GUI demo.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Remove dependency on LUFA sources.&amp;nbsp; There are to many headers etc,&lt;/P&gt;&lt;P&gt;&amp;nbsp; needs simplified.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Replace ring.c et.al with cbuf.h .&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://blog.softwaresafety.net/2012/02/even-design-patterns-still-have-bugs.html"&gt;http://blog.softwaresafety.net/2012/02/even-design-patterns-still-have-bugs.html&lt;/A&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Reduce size to well under 4K, for Bootloader.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Complete Bootloader.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Make sure code is MISRA compliant.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Well documented with Doxygen to the same quality level as LUFA.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Compile with other compilers.&amp;nbsp; Modify compiler.h and COMP_xxx&lt;/P&gt;&lt;P&gt;&amp;nbsp; makefiles so source code doesn't need touched, when building with&lt;/P&gt;&lt;P&gt;&amp;nbsp; different compilers.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Put on GitHub.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;"If you want to make God laugh, tell Him your plans."&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Reality:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; My wife committed suicide due to the excruciating headache caused by&lt;/P&gt;&lt;P&gt;&amp;nbsp; a Cerebral Spinal Fluid Leak (CSF or CFSL); Intracranial&lt;/P&gt;&lt;P&gt;&amp;nbsp; Hypotension.&amp;nbsp; She lost her twenty-three year battle with this&lt;/P&gt;&lt;P&gt;&amp;nbsp; disease.&amp;nbsp; In the coming weeks I'll be posting her medical history&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; at &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.kpaddock.com/"&gt;http://www.kpaddock.com&lt;/A&gt;&lt;SPAN&gt; so others may learn what we did right and&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; wrong.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://blog.softwaresafety.net/2013/08/my-wifes-suicide.html"&gt;http://blog.softwaresafety.net/2013/08/my-wifes-suicide.html&lt;/A&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; For now my life is going in a direction I never saw coming.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Rather that let this code bit rot until I can get back to it, I'm&lt;/P&gt;&lt;P&gt;&amp;nbsp; posting in the hopes that others can use what I started.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Please keep us up to date on any progress.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;References:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* Bare Metal Arm:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://github.com/payne92/bare-metal-arm"&gt;https://github.com/payne92/bare-metal-arm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* DialogBlocks:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.dialogblocks.com/"&gt;http://www.dialogblocks.com&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* Freescale Freedom FRDM-KL25Z: &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=FRDM-KL25Z"&gt;http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=FRDM-KL25Z&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* GCC ARM toolchain:&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://launchpad.net/gcc-arm-embedded"&gt;https://launchpad.net/gcc-arm-embedded&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* MinGW:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://nuwen.net/mingw.html"&gt;http://nuwen.net/mingw.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;* Newlib:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://sourceware.org/newlib/"&gt;http://sourceware.org/newlib/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-337687"&gt;KL25_Generic_HID_Demo.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Sep 2013 18:21:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Attached-is-USB-Generic-HID-demo-for-the-FRDM-KL25Z-Freedom/m-p/293628#M11939</guid>
      <dc:creator>bobpaddock</dc:creator>
      <dc:date>2013-09-09T18:21:19Z</dc:date>
    </item>
  </channel>
</rss>

