{"id":3034,"date":"2022-04-09T06:04:00","date_gmt":"2022-04-09T13:04:00","guid":{"rendered":"https:\/\/www.donluc.com\/?p=3034"},"modified":"2022-04-09T06:04:00","modified_gmt":"2022-04-09T13:04:00","slug":"project-23-e-textiles-flora-mk02","status":"publish","type":"post","link":"https:\/\/www.donluc.com\/?p=3034","title":{"rendered":"Project #23: E-Textiles &#8211; FLORA &#8211; Mk02"},"content":{"rendered":"<div style=\"width: 720px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-3034-1\" width=\"720\" height=\"480\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02W.mp4?_=1\" \/><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02W.mp4\">https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02W.mp4<\/a><\/video><\/div>\n<p>&#8212;&#8212;<\/p>\n<p>#DonLucElectronics #DonLuc #ETextiles #Wearable #FLORA #Arduino #Project #Programming #Electronics #Microcontrollers #Consultant<\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02a.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02a.png\" alt=\"FLORA\" width=\"720\" height=\"390\" class=\"alignnone size-full wp-image-3036\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02a.png 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02a-300x163.png 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02b.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02b.png\" alt=\"FLORA\" width=\"720\" height=\"480\" class=\"alignnone size-full wp-image-3037\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02b.png 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02b-300x200.png 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02c.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02c.png\" alt=\"FLORA\" width=\"720\" height=\"480\" class=\"alignnone size-full wp-image-3038\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02c.png 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2022\/04\/DL2204Mk02c-300x200.png 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><strong>FLORA &#8211; Wearable Electronic Platform &#8211; Version 1.0a<\/strong><\/p>\n<p>FLORA is Adafruit&#8217;s fully-featured wearable electronics platform. It&#8217;s a round, sewable, Arduino-compatible microcontroller designed to empower amazing wearables projects. The FLORA family also has the best stainless steel threads, sensors, GPS modules and chainable LED NeoPixels, perfect accessories for the FLORA main board. It&#8217;s built around the Atmega32u4 chip, which has built-in USB support, is wearable Arduino \/ Arduino-compatible.<\/p>\n<p>The FLORA has built-in USB support. Built in USB means you plug it in to program it, it just shows up, all you need is a Mini-B USB cable, no additional purchases are needed. The FLORA has USB HID support, so it can act like a mouse or keyboard to attach directly to computers.<\/p>\n<p>FLORA has a small but easy to use onboard reset button to reboot the system. The power supply is designed to be flexible and easy to use. Can be used with LiIon\/LiPoly, LiFe, alkaline or rechargeable NiMh\/NiCad batteries of any size. The FLORA does not have a LiPo charger included by design, this allows safe use with multiple battery types and reduces risk of fire as it is not recommended to charge these batteries on fabric. We suggest one of our micro-lipo chargers if you want to use LiPo batteries with FLORA.<\/p>\n<p>FLORA has onboard power switch connected to 2A power FET for safe and efficient battery on\/off control, so you can power quite a bit without burning out your switch. The FLORA has an onboard 3.3v 250mA regulator with a protection diode and USB fuse so that the microcontroller voltage is consistent and can power common 3.3v modules and sensors.<\/p>\n<p><strong>FLORA<\/strong><\/p>\n<ul>\n<li>FLORA is fabric friendly, all the components on board are flush to the PCB and won&#8217;t snag delicate garments.<\/li>\n<li>FLORA is extremely beginner-friendly. it is difficult to destroy the FLORA by connecting a battery backwards due to polarized connector and protection diodes.<\/li>\n<li>The FLORA has 4 indicator LEDs: power good, digital signal LED for bootloader feedback, data rx\/tx. Also onboard is an ICSP connector for easy reprograming for advanced users.<\/li>\n<li>There are 14 sewing tap pads for attachment and electrical connections. Data buses are interleaved with power and ground pads for easy module and sensor attachments without worrying about overlapping traces which are not possible with conductive thread.<\/li>\n<\/ul>\n<p><strong>DL2204Mk01<\/strong><\/p>\n<p>1 x FLORA &#8211; Version 1.0a<br \/>\n1 x RGB Smart NeoPixel<br \/>\n1 x Half-Size Breadboard<br \/>\n1 x SparkFun Cerberus USB Cable<\/p>\n<p><strong>FLORA &#8211; Version 1.0a<\/strong><\/p>\n<p>NEO &#8211; Digital 6<br \/>\nVIN &#8211; +5V<br \/>\nGND &#8211; GND<\/p>\n<p><strong>DL2204Mk01p.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/* ***** Don Luc Electronics \u00a9 *****\r\nSoftware Version Information\r\nProject #23: E-Textiles - FLORA - Wearable Electronic Platform - Mk02\r\n23-02\r\nDL2204Mk02p.ino\r\n1 x FLORA - Version 1.0a\r\n1 x RGB Smart NeoPixel\r\n1 x Half-Size Breadboard\r\n1 x SparkFun Cerberus USB Cable\r\n*\/\r\n\r\n\/\/ Include the Library Code\r\n\/\/ NeoPixels\r\n#include &lt;Adafruit_NeoPixel.h&gt;\r\n\r\n\/\/ NeoPixels\r\n\/\/ On digital pin 6\r\n#define PIN 6\r\n\/\/ NeoPixels NUMPIXELS = 1\r\n#define NUMPIXELS 1\r\n\/\/ Pixels\r\nAdafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);\r\n\/\/ Red\r\nint red = 0;\r\n\/\/ Green\r\nint green = 0;\r\n\/\/ Blue\r\nint blue = 0;\r\n\/\/ Neopix\r\nint iNeo = 0;\r\n\/\/ Value\r\nint zz = 0;\r\n\r\n\/\/ Software Version Information\r\nString sver = &quot;23-02&quot;;\r\n\r\nvoid loop() {\r\n\r\n  \/\/ FLORA\r\n  isFLORA();\r\n  delay( 2000 );\r\n  \r\n}\r\n<\/pre>\n<p><strong>getFLORA.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/\/ FLORA\r\n\/\/ isFLORA\r\nvoid isFLORA() {\r\n\r\n  \/\/ FLORA = zz =&gt; Neopix\r\n  if ( zz == 0 ) {\r\n\r\n    isNUMPIXELS();\r\n    zz = 1;\r\n    \r\n  } else if ( zz == 1 ) {\r\n\r\n    isNUMPIXELS();\r\n    zz = 2;\r\n    \r\n  } else if ( zz == 2 ) {\r\n\r\n    isNUMPIXELS();\r\n    zz = 3;\r\n    \r\n  } else if ( zz == 3 ) {\r\n\r\n    isNUMPIXELS();\r\n    zz = 4;\r\n    \r\n  } else if ( zz == 4 ) {\r\n\r\n    isNUMPIXELS();\r\n    zz = 5;\r\n    \r\n  } else if ( zz == 5 ) {\r\n\r\n    isNUMPIXELS();\r\n    zz = 6;\r\n    \r\n  } else if ( zz == 6 ) {\r\n\r\n    isNUMPIXELS();\r\n    zz = 0;\r\n    \r\n  }\r\n    \r\n}\r\n<\/pre>\n<p><strong>getNeopix.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/\/ NeoPixels\r\n\/\/ Neopix\r\nvoid isNeopix() \r\n{ \r\n\r\n    \/\/ Pixels\r\n    pixels.setBrightness( 255 );\r\n    \/\/ Pixels color takes RGB values, from 0,0,0 up to 255,255,255\r\n    pixels.setPixelColor( iNeo, pixels.Color(red,green,blue) ); \r\n    \/\/ This sends the updated pixel color to the hardware\r\n    pixels.show(); \r\n    \/\/ Delay for a period of time (in milliseconds)\r\n    delay(50);     \r\n  \r\n}\r\n\/\/ isNUMPIXELS\r\nvoid isNUMPIXELS()\r\n{\r\n\r\n  \/\/ Neopix Value\r\n  switch ( zz ) {  \r\n    case 0:\r\n      \/\/ NeoPixels Green\r\n      \/\/ Red\r\n      red = 0;\r\n      \/\/ Green\r\n      green = 255;\r\n      \/\/ Blue\r\n      blue = 0;\r\n      \/\/ Neopix\r\n      iNeo = 0;   \r\n      isNeopix();\r\n      break;  \r\n    case 1:\r\n      \/\/ NeoPixels Blue\r\n      \/\/ Red\r\n      red = 0;\r\n      \/\/ Green\r\n      green = 0;\r\n      \/\/ Blue\r\n      blue = 255;\r\n      \/\/ Neopix\r\n      iNeo = 0;\r\n      isNeopix();\r\n      break;\r\n    case 2:\r\n      \/\/ NeoPixels Red\r\n      \/\/ Red\r\n      red = 255;\r\n      \/\/ Green\r\n      green = 0;\r\n      \/\/ Blue\r\n      blue = 0;\r\n      \/\/ Neopix\r\n      iNeo = 0;   \r\n      isNeopix();\r\n      break;\r\n    case 3:\r\n      \/\/ NeoPixels Yellow\r\n      \/\/ Red\r\n      red = 255;\r\n      \/\/ Green\r\n      green = 255;\r\n      \/\/ Blue\r\n      blue = 0;\r\n      \/\/ Neopix\r\n      iNeo = 0;\r\n      isNeopix();\r\n      break;\r\n    case 4:\r\n      \/\/ NeoPixels Magenta\r\n      \/\/ Red\r\n      red = 255;\r\n      \/\/ Green\r\n      green = 0;\r\n      \/\/ Blue\r\n      blue = 255;\r\n      \/\/ Neopix\r\n      iNeo = 0;\r\n      isNeopix();\r\n      break;\r\n    case 5:\r\n      \/\/ NeoPixels Cyan\r\n      \/\/ Red\r\n      red = 0;\r\n      \/\/ Green\r\n      green = 255;\r\n      \/\/ Blue\r\n      blue = 255;\r\n      \/\/ Neopix\r\n      iNeo = 0;\r\n      isNeopix();\r\n      break;\r\n    case 6:\r\n      \/\/ NeoPixels White\r\n      \/\/ Red\r\n      red = 255;\r\n      \/\/ Green\r\n      green = 255;\r\n      \/\/ Blue\r\n      blue = 255;\r\n      \/\/ Neopix\r\n      iNeo = 0;\r\n      isNeopix();    \r\n      break;\r\n  }\r\n  \r\n}\r\n\/\/ isNUMPIXELSoff\r\nvoid isNUMPIXELSoff()\r\n{\r\n\r\n   \/\/ Black Off\r\n   \/\/ NeoPixels\r\n   \/\/ Red\r\n   red = 0;\r\n   \/\/ Green\r\n   green = 0;\r\n   \/\/ Blue\r\n   blue = 0;\r\n   isNeopix();\r\n \r\n}\r\n<\/pre>\n<p><strong>setup.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/\/ Setup\r\nvoid setup() {\r\n\r\n  \/\/ NeoPixels\r\n  \/\/ This initializes the NeoPixel library\r\n  pixels.begin();\r\n  \/\/ Delay for a period of time (in milliseconds)\r\n  delay(50);\r\n  \/\/ isNUMPIXELS Off\r\n  isNUMPIXELSoff();\r\n\r\n}\r\n<\/pre>\n<p>&#8212;&#8212;<\/p>\n<p><strong>People can contact us:<\/strong> https:\/\/www.donluc.com\/?page_id=1927<\/p>\n<p><strong>Technology Experience<\/strong><\/p>\n<ul>\n<li>Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc&#8230;)<\/li>\n<li>IoT<\/li>\n<li>Robotics<\/li>\n<li>Camera and Video Capture Receiver Stationary, Wheel\/Tank and Underwater Vehicle<\/li>\n<li>Unmanned Vehicles Terrestrial and Marine<\/li>\n<li>Research &#038; Development (R &#038; D)<\/li>\n<li>Desktop Applications (Windows, OSX, Linux, Multi-OS, Multi-Tier, etc&#8230;)<\/li>\n<li>Mobile Applications (Android, iOS, Blackberry, Windows Mobile, Windows CE, etc&#8230;)<\/li>\n<li>Web Applications (LAMP, Scripting, Java, ASP, ASP.NET, RoR, Wakanda, etc&#8230;)<\/li>\n<li>Social Media Programming &#038; Integration (Facebook, Twitter, YouTube, Pinterest, etc&#8230;)<\/li>\n<li>Content Management Systems (WordPress, Drupal, Joomla, Moodle, etc&#8230;)<\/li>\n<li>Bulletin Boards (phpBB, SMF, Vanilla, jobberBase, etc&#8230;)<\/li>\n<li>eCommerce (WooCommerce, OSCommerce, ZenCart, PayPal Shopping Cart, etc&#8230;)<\/li>\n<\/ul>\n<p><strong>Instructor and E-Mentor<\/strong><\/p>\n<ul>\n<li>IoT<\/li>\n<li>PIC Microcontrollers<\/li>\n<li>Arduino<\/li>\n<li>Raspberry Pi<\/li>\n<li>Espressif<\/li>\n<li>Robotics<\/li>\n<li>DOS, Windows, OSX, Linux, iOS, Android, Multi-OS<\/li>\n<li>Linux-Apache-PHP-MySQL<\/li>\n<\/ul>\n<p><strong>Follow Us<\/strong><\/p>\n<p><strong>J. Luc Paquin \u2013 Curriculum Vitae &#8211; 2022 English &#038; Espa\u00f1ol<\/strong><br \/>\nhttps:\/\/www.jlpconsultants.com\/luc\/<\/p>\n<p><strong>Web:<\/strong> https:\/\/www.donluc.com\/<br \/>\n<strong>Web:<\/strong> https:\/\/www.jlpconsultants.com\/<br \/>\n<strong>Facebook:<\/strong> https:\/\/www.facebook.com\/neosteam.labs.9\/<br \/>\n<strong>YouTube:<\/strong> https:\/\/www.youtube.com\/channel\/UC5eRjrGn1CqkkGfZy0jxEdA<br \/>\n<strong>Twitter:<\/strong> https:\/\/twitter.com\/labs_steam<br \/>\n<strong>Pinterest:<\/strong> https:\/\/www.pinterest.com\/NeoSteamLabs\/<br \/>\n<strong>Instagram:<\/strong> https:\/\/www.instagram.com\/neosteamlabs\/<\/p>\n<p><strong>Don Luc<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8212;&#8212; #DonLucElectronics #DonLuc #ETextiles #Wearable #FLORA #Arduino #Project #Programming #Electronics #Microcontrollers #Consultant &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; FLORA &#8211; Wearable Electronic Platform &#8211; Version 1.0a FLORA is Adafruit&#8217;s fully-featured wearable electronics platform. It&#8217;s a round, sewable, Arduino-compatible microcontroller designed to empower amazing wearables projects. The FLORA family also has the best stainless steel threads, sensors, GPS &#8230; <a title=\"Project #23: E-Textiles &#8211; FLORA &#8211; Mk02\" class=\"read-more\" href=\"https:\/\/www.donluc.com\/?p=3034\" aria-label=\"Read more about Project #23: E-Textiles &#8211; FLORA &#8211; Mk02\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[208,47,50,49,38,59,5,58,10],"tags":[86,6,102,4,212,19,215,85,24,9,27,33,213],"class_list":["post-3034","post","type-post","status-publish","format-standard","hentry","category-e-textiles","category-adafruit","category-arduino","category-consultant","category-digitalelectronics","category-fritzing","category-microcontrollers","category-arduino-programming","category-projects","tag-adafruit","tag-arduino","tag-components","tag-consultant","tag-e-textiles","tag-electronics","tag-flora","tag-fritzing","tag-microcontroller","tag-programming","tag-projects-2","tag-technology","tag-wearable"],"_links":{"self":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/3034","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3034"}],"version-history":[{"count":1,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/3034\/revisions"}],"predecessor-version":[{"id":3039,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/3034\/revisions\/3039"}],"wp:attachment":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3034"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3034"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}