FLORA
Project #23: E-Textiles – SparkFun Micro OLED – Mk03
——
#DonLucElectronics #DonLuc #ETextiles #Wearable #FLORA #MicroOLED #Arduino #Project #Programming #Electronics #Microcontrollers #Consultant
——
——
——
——
SparkFun Micro OLED Breakout (Qwiic)
The SparkFun Qwiic Micro OLED Breakout is a Qwiic-enabled version of our popular Micro OLED display. The small monochrome, blue-on-black OLED screen presents incredibly clear images for your viewing pleasure. It’s micro, but it still packs a punch the OLED display is crisp, and you can fit a deceivingly large amount of graphics on there. This breakout is perfect for adding graphics to your next project and displaying diagnostic information without resorting to a serial output, all with the ease of use of our own Qwiic Connect System.
This version of the Micro OLED Breakout is exactly the size of its non-Qwiic sibling, featuring a screen that is 64 pixels wide and 48 pixels tall and measuring 0.66 inch across. But it has also been equipped with two Qwiic connectors, making it ideal for I2C operations. We’ve also added two mounting holes and a convenient Qwiic cable holder incorporated into a detachable tab on the board that can be easily removed thanks to a v-scored edge. We’ve even made sure to include an I2C pull-up jumper and ADDR jumper on the back of the board, so if you have your own I2C pull-ups or need to change the I2C address of the board, you have options.
DL2204Mk03
1 x FLORA – Version 1.0a
1 x SparkFun Micro OLED
1 x RGB Smart NeoPixel
1 x Half-Size Breadboard
1 x SparkFun Cerberus USB Cable
FLORA – Version 1.0a
NEO – Digital 6
SDA – Analog A2
SCL – Analog A3
VIN – +5V
GND – GND
——
DL2204Mk03p.ino
/* ***** Don Luc Electronics © ***** Software Version Information Project #23: E-Textiles - SparkFun Micro OLED - Mk03 23-03 DL2204Mk03p.ino 1 x FLORA - Version 1.0a 1 x SparkFun Micro OLED 1 x RGB Smart NeoPixel 1 x Half-Size Breadboard 1 x SparkFun Cerberus USB Cable */ // Include the Library Code // Wire #include <Wire.h> // NeoPixels #include <Adafruit_NeoPixel.h> // SparkFun Micro OLED #include <SFE_MicroOLED.h> // FLORA // Color String sVal; // NeoPixels // On digital pin 6 #define PIN 6 // NeoPixels NUMPIXELS = 1 #define NUMPIXELS 1 // Pixels Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Neopix int iNeo = 0; // Value int zz = 0; // SparkFun Micro OLED #define PIN_RESET 9 #define DC_JUMPER 1 // I2C declaration MicroOLED oled(PIN_RESET, DC_JUMPER); // Software Version Information String sver = "23-03"; void loop() { // FLORA isFLORA(); // Micro OLED isMicroOLED(); // Delay delay( 3000 ); }
getFLORA.ino
// FLORA // isFLORA void isFLORA() { // FLORA = zz => Neopix // FLORA = sVal => Color if ( zz == 0 ) { sVal = "Green"; isNUMPIXELS(); zz = 1; } else if ( zz == 1 ) { sVal = "Blue"; isNUMPIXELS(); zz = 2; } else if ( zz == 2 ) { sVal = "Red"; isNUMPIXELS(); zz = 3; } else if ( zz == 3 ) { sVal = "Yellow"; isNUMPIXELS(); zz = 4; } else if ( zz == 4 ) { sVal = "Magenta"; isNUMPIXELS(); zz = 5; } else if ( zz == 5 ) { sVal = "Cyan"; isNUMPIXELS(); zz = 6; } else if ( zz == 6 ) { sVal = "White"; isNUMPIXELS(); zz = 0; } }
getMicroOLED.ino
// SparkFun Micro OLED // Setup Micro OLED void setupMicroOLED() { // Initialize the OLED oled.begin(); // Clear the display's internal memory oled.clear(ALL); // Display what's in the buffer (splashscreen) oled.display(); // Delay 1000 ms delay(1000); // Clear the buffer. oled.clear(PAGE); } // Micro OLED void isMicroOLED() { // Clear the display oled.clear(PAGE); // Set cursor to top-left oled.setCursor(0, 0); // Set font to type 1 oled.setFontType(1); // Print sVal oled.print(sVal); oled.display(); }
getNeopix.ino
// NeoPixels // Neopix void isNeopix() { // Pixels pixels.setBrightness( 255 ); // Pixels color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor( iNeo, pixels.Color(red,green,blue) ); // This sends the updated pixel color to the hardware pixels.show(); // Delay for a period of time (in milliseconds) delay(50); } // isNUMPIXELS void isNUMPIXELS() { // Neopix Value switch ( zz ) { case 0: // NeoPixels Green // Red red = 0; // Green green = 255; // Blue blue = 0; // Neopix iNeo = 0; isNeopix(); break; case 1: // NeoPixels Blue // Red red = 0; // Green green = 0; // Blue blue = 255; // Neopix iNeo = 0; isNeopix(); break; case 2: // NeoPixels Red // Red red = 255; // Green green = 0; // Blue blue = 0; // Neopix iNeo = 0; isNeopix(); break; case 3: // NeoPixels Yellow // Red red = 255; // Green green = 255; // Blue blue = 0; // Neopix iNeo = 0; isNeopix(); break; case 4: // NeoPixels Magenta // Red red = 255; // Green green = 0; // Blue blue = 255; // Neopix iNeo = 0; isNeopix(); break; case 5: // NeoPixels Cyan // Red red = 0; // Green green = 255; // Blue blue = 255; // Neopix iNeo = 0; isNeopix(); break; case 6: // NeoPixels White // Red red = 255; // Green green = 255; // Blue blue = 255; // Neopix iNeo = 0; isNeopix(); break; } } // isNUMPIXELSoff void isNUMPIXELSoff() { // Black Off // NeoPixels // Red red = 0; // Green green = 0; // Blue blue = 0; isNeopix(); }
setup.ino
// Setup void setup() { // NeoPixels // This initializes the NeoPixel library pixels.begin(); // Delay for a period of time (in milliseconds) delay(50); // isNUMPIXELS Off isNUMPIXELSoff(); // Set up I2C bus Wire.begin(); // Delay for a period of time (in milliseconds) delay(50); // Setup Micro OLED setupMicroOLED(); }
——
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- IoT
- Robotics
- Camera and Video Capture Receiver Stationary, Wheel/Tank and Underwater Vehicle
- Unmanned Vehicles Terrestrial and Marine
- Research & Development (R & D)
- Desktop Applications (Windows, OSX, Linux, Multi-OS, Multi-Tier, etc…)
- Mobile Applications (Android, iOS, Blackberry, Windows Mobile, Windows CE, etc…)
- Web Applications (LAMP, Scripting, Java, ASP, ASP.NET, RoR, Wakanda, etc…)
- Social Media Programming & Integration (Facebook, Twitter, YouTube, Pinterest, etc…)
- Content Management Systems (WordPress, Drupal, Joomla, Moodle, etc…)
- Bulletin Boards (phpBB, SMF, Vanilla, jobberBase, etc…)
- eCommerce (WooCommerce, OSCommerce, ZenCart, PayPal Shopping Cart, etc…)
Instructor and E-Mentor
- IoT
- PIC Microcontrollers
- Arduino
- Raspberry Pi
- Espressif
- Robotics
- DOS, Windows, OSX, Linux, iOS, Android, Multi-OS
- Linux-Apache-PHP-MySQL
Follow Us
J. Luc Paquin – Curriculum Vitae – 2022 English & Español
https://www.jlpconsultants.com/luc/
Web: https://www.donluc.com/
Web: https://www.jlpconsultants.com/
Facebook: https://www.facebook.com/neosteam.labs.9/
YouTube: https://www.youtube.com/channel/UC5eRjrGn1CqkkGfZy0jxEdA
Twitter: https://twitter.com/labs_steam
Pinterest: https://www.pinterest.com/NeoSteamLabs/
Instagram: https://www.instagram.com/neosteamlabs/
Don Luc
Project #23: E-Textiles – FLORA – Mk02
——
#DonLucElectronics #DonLuc #ETextiles #Wearable #FLORA #Arduino #Project #Programming #Electronics #Microcontrollers #Consultant
——
——
——
——
FLORA – Wearable Electronic Platform – Version 1.0a
FLORA is Adafruit’s fully-featured wearable electronics platform. It’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’s built around the Atmega32u4 chip, which has built-in USB support, is wearable Arduino / Arduino-compatible.
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.
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.
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.
FLORA
- FLORA is fabric friendly, all the components on board are flush to the PCB and won’t snag delicate garments.
- FLORA is extremely beginner-friendly. it is difficult to destroy the FLORA by connecting a battery backwards due to polarized connector and protection diodes.
- 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.
- 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.
DL2204Mk01
1 x FLORA – Version 1.0a
1 x RGB Smart NeoPixel
1 x Half-Size Breadboard
1 x SparkFun Cerberus USB Cable
FLORA – Version 1.0a
NEO – Digital 6
VIN – +5V
GND – GND
DL2204Mk01p.ino
/* ***** Don Luc Electronics © ***** Software Version Information Project #23: E-Textiles - FLORA - Wearable Electronic Platform - Mk02 23-02 DL2204Mk02p.ino 1 x FLORA - Version 1.0a 1 x RGB Smart NeoPixel 1 x Half-Size Breadboard 1 x SparkFun Cerberus USB Cable */ // Include the Library Code // NeoPixels #include <Adafruit_NeoPixel.h> // NeoPixels // On digital pin 6 #define PIN 6 // NeoPixels NUMPIXELS = 1 #define NUMPIXELS 1 // Pixels Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Neopix int iNeo = 0; // Value int zz = 0; // Software Version Information String sver = "23-02"; void loop() { // FLORA isFLORA(); delay( 2000 ); }
getFLORA.ino
// FLORA // isFLORA void isFLORA() { // FLORA = zz => Neopix if ( zz == 0 ) { isNUMPIXELS(); zz = 1; } else if ( zz == 1 ) { isNUMPIXELS(); zz = 2; } else if ( zz == 2 ) { isNUMPIXELS(); zz = 3; } else if ( zz == 3 ) { isNUMPIXELS(); zz = 4; } else if ( zz == 4 ) { isNUMPIXELS(); zz = 5; } else if ( zz == 5 ) { isNUMPIXELS(); zz = 6; } else if ( zz == 6 ) { isNUMPIXELS(); zz = 0; } }
getNeopix.ino
// NeoPixels // Neopix void isNeopix() { // Pixels pixels.setBrightness( 255 ); // Pixels color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor( iNeo, pixels.Color(red,green,blue) ); // This sends the updated pixel color to the hardware pixels.show(); // Delay for a period of time (in milliseconds) delay(50); } // isNUMPIXELS void isNUMPIXELS() { // Neopix Value switch ( zz ) { case 0: // NeoPixels Green // Red red = 0; // Green green = 255; // Blue blue = 0; // Neopix iNeo = 0; isNeopix(); break; case 1: // NeoPixels Blue // Red red = 0; // Green green = 0; // Blue blue = 255; // Neopix iNeo = 0; isNeopix(); break; case 2: // NeoPixels Red // Red red = 255; // Green green = 0; // Blue blue = 0; // Neopix iNeo = 0; isNeopix(); break; case 3: // NeoPixels Yellow // Red red = 255; // Green green = 255; // Blue blue = 0; // Neopix iNeo = 0; isNeopix(); break; case 4: // NeoPixels Magenta // Red red = 255; // Green green = 0; // Blue blue = 255; // Neopix iNeo = 0; isNeopix(); break; case 5: // NeoPixels Cyan // Red red = 0; // Green green = 255; // Blue blue = 255; // Neopix iNeo = 0; isNeopix(); break; case 6: // NeoPixels White // Red red = 255; // Green green = 255; // Blue blue = 255; // Neopix iNeo = 0; isNeopix(); break; } } // isNUMPIXELSoff void isNUMPIXELSoff() { // Black Off // NeoPixels // Red red = 0; // Green green = 0; // Blue blue = 0; isNeopix(); }
setup.ino
// Setup void setup() { // NeoPixels // This initializes the NeoPixel library pixels.begin(); // Delay for a period of time (in milliseconds) delay(50); // isNUMPIXELS Off isNUMPIXELSoff(); }
——
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- IoT
- Robotics
- Camera and Video Capture Receiver Stationary, Wheel/Tank and Underwater Vehicle
- Unmanned Vehicles Terrestrial and Marine
- Research & Development (R & D)
- Desktop Applications (Windows, OSX, Linux, Multi-OS, Multi-Tier, etc…)
- Mobile Applications (Android, iOS, Blackberry, Windows Mobile, Windows CE, etc…)
- Web Applications (LAMP, Scripting, Java, ASP, ASP.NET, RoR, Wakanda, etc…)
- Social Media Programming & Integration (Facebook, Twitter, YouTube, Pinterest, etc…)
- Content Management Systems (WordPress, Drupal, Joomla, Moodle, etc…)
- Bulletin Boards (phpBB, SMF, Vanilla, jobberBase, etc…)
- eCommerce (WooCommerce, OSCommerce, ZenCart, PayPal Shopping Cart, etc…)
Instructor and E-Mentor
- IoT
- PIC Microcontrollers
- Arduino
- Raspberry Pi
- Espressif
- Robotics
- DOS, Windows, OSX, Linux, iOS, Android, Multi-OS
- Linux-Apache-PHP-MySQL
Follow Us
J. Luc Paquin – Curriculum Vitae – 2022 English & Español
https://www.jlpconsultants.com/luc/
Web: https://www.donluc.com/
Web: https://www.jlpconsultants.com/
Facebook: https://www.facebook.com/neosteam.labs.9/
YouTube: https://www.youtube.com/channel/UC5eRjrGn1CqkkGfZy0jxEdA
Twitter: https://twitter.com/labs_steam
Pinterest: https://www.pinterest.com/NeoSteamLabs/
Instagram: https://www.instagram.com/neosteamlabs/
Don Luc