Fritzing
#17 – Meditation – Goggles NeoPixel Meditation – Small Enclosures – Mk08
——
#donluc #meditation #gogglesmeditation #musicshield #neopixels #arduino #sparkfun #project #programming #electronics #microcontrollers #consultant #zoom #patreon #videoblog
——
——
——
——
Hammond Manufacturing Ltd.
For more than 100 years, customers who have required unsurpassed performance, wide selection and durability for power distribution, racks and enclosures have relied on the Hammond brand.
The business started in a backyard workshop in 1916 located in Guelph, Ontario, Canada. In 1917, the original company known as O.S. Hammond and Son was established in Guelph. O.S. Hammond and Son began making tube radio sets, battery chargers and other related products between 1919 and 1927. In the early 1930’s Hammond became the first company in Canada to manufacture a line of 2-post racks and a narrow cabinet to support the growing broadcast and communications industries. Company expanded its focus on the U.S. and International markets. Hammond made a number of strategic acquisitions of transformer companies and became one of the largest suppliers of magnetics to the North American electrical OEM market.
ABS plastic hand held enclosures, 1553 series, soft sided, ergonomic comfort, battery compartments. Ergonomically designed for hand-held comfort. Choice of five sizes and six color combinations.
DL2103Mk04
1 x Arduino Uno – R3
1 x ProtoScrewShield
1 x Music Shield V1.1
1 x NeoPixel Stick – 8 x 5050 RGB LED with Integrated Drivers
1 x microSD Card – 2GB
1 x Panel Mount 1K potentiometer
2 x Knob
1 x SparkFun Rotary Switch – 10 Position
1 x SparkFun Rotary Switch Breakout
1 x Breadboard Solderable
11 x 1K Ohm
1 x Hamburger Mini Speaker
1 x In-Ear Headphones
1 x 5200 mAh Portable Charger
17 x Wire Solid Core – 22 AWG
1 x Ethernet Cable Cat 5 – 2 Metres
1 x Goggles
1 x Hammond Manufacturing, Small Enclosures, 1553 Series
1 x USB Cable A to B – 6 Foot
Arduino Uno – R3
RW0 – Analog A4
PO0 – Analog A5
NP1 – Digital 1
MB0 – RST
VIN – +5V
GND – GND
DL2103Mk05p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // #17 - Meditation - Goggles NeoPixel Meditation - Small Enclosures - Mk08 // 03-04 // DL2103Mk04p.ino 17-08 // DL2103Mk04 // 1 x Arduino Uno - R3 // 1 x ProtoScrewShield // 1 x Music Shield V1.1 // 1 x NeoPixel Stick - 8 x 5050 RGB LED with Integrated Drivers // 1 x microSD Card - 2GB // 1 x Panel Mount 1K potentiometer // 2 x Knob // 1 x SparkFun Rotary Switch - 10 Position // 1 x SparkFun Rotary Switch Breakout // 1 x Breadboard Solderable // 11 x 1K Ohm // 1 x Hamburger Mini Speaker // 1 x In-Ear Headphones // 1 x 5200 mAh Portable Charger // 17 x Wire Solid Core - 22 AWG // 1 x Ethernet Cable Cat 5 - 2 Metres // 1 x Goggles // 1 x Hammond Manufacturing, Small Enclosures, 1553 Series // 1 x USB Cable A to B - 6 Foot // Include the Library Code // NeoPixel #include <Adafruit_NeoPixel.h> // Fat 16 #include <Fat16.h> #include <Fat16Util.h> // New SPI #include <NewSPI.h> // Arduino #include <arduino.h> // Music Player #include "pins_config.h" #include "vs10xx.h" #include "newSDLib.h" #include "MusicPlayer.h" // NeoPixels #define PIN 1 // How many NeoPixels are attached to the Arduino #define NUMPIXELS 8 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Color // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Panel Mount 1K potentiometer // Brighten int BrightenValue = 0; // Color const int iSensorColor = A5; int y = 0; int ColorVal = 0; // Rotary Switch - 10 Position // Number 1 => 10 int iRotNum = A4; // iRotVal - Value int iRotVal = 0; // Number int z = 0; int x = 0; // Music Player MusicPlayer myplayer; // Software Version Information String sver = "17-08"; void loop() { // Rotary Switch isRot(); }
getNeopix.ino
// Neopix void isNeopix() { for(int i=0; i<NUMPIXELS; i++){ // Neopix // BrightenValue = 40 BrightenValue = 40; pixels.setBrightness( BrightenValue ); // The pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(red,green,blue)); // This sends the updated pixel color to the hardware pixels.show(); } } // Range Color void isRangeColor() { // Range Color ColorVal = analogRead( iSensorColor ); y = (ColorVal / 127); switch ( y ) { case 0: // Blue red = 0; green = 102; blue = 204; isNeopix(); break; case 1: // Yellow red = 255; green = 255; blue = 0; isNeopix(); break; case 2: // Pink red = 255; green = 153; blue = 203; isNeopix(); break; case 3: // White red = 255; green = 255; blue = 255; isNeopix(); break; case 4: // Green red = 0; green = 255; blue = 0; isNeopix(); break; case 5: // Orange red = 255; green = 102; blue = 0; isNeopix(); break; case 6: // Violet red = 204; green = 102; blue = 204; isNeopix(); break; case 7: // Red red = 255; green = 0; blue = 0; isNeopix(); break; } }
getRot.ino
// Rotary Switch // isRot - iRotVal - Value void isRot() { // Rotary Switch z = analogRead( iRotNum ); x = map(z, 0, 4095, 0, 9); iRotVal = map(z, 0, 1023, 0, 10); // Range Value switch ( iRotVal ) { case 0: // Range Color isRangeColor(); break; case 1: // Music // Add To Playlist // 3:18 myplayer.addToPlaylist("DLEMk001.mp3"); // 2:47 myplayer.addToPlaylist("DLEMk002.mp3"); // 4.34 myplayer.addToPlaylist("DLEMk003.mp3"); // There are two songs in the playlist // 10:37 myplayer.playList(); while(1); break; case 2: // Music // Add To Playlist // 22:53 myplayer.addToPlaylist("DLEMk004.mp3"); // There are two songs in the playlist // 22:53 myplayer.playList(); while(1); break; case 3: // Music // Add To Playlist // 4:18 myplayer.addToPlaylist("DLEMk005.mp3"); // 4:20 myplayer.addToPlaylist("DLEMk006.mp3"); // There are two songs in the playlist // 8:38 myplayer.playList(); while(1); break; case 4: // Music // Add To Playlist // 9:14 myplayer.addToPlaylist("DLEMk007.mp3"); // 7:52 myplayer.addToPlaylist("DLEMk008.mp3"); // There are two songs in the playlist // 17:07 myplayer.playList(); while(1); break; case 5: // Music // Add To Playlist // 4:37 myplayer.addToPlaylist("DLEMk009.mp3"); // There are two songs in the playlist // 4:37 myplayer.playList(); while(1); break; case 6: // Music // Add To Playlist // 8:40 myplayer.addToPlaylist("DLEMk010.mp3"); // 8:40 myplayer.playList(); while(1); break; case 7: // Music // Add To Playlist // 1:31 myplayer.addToPlaylist("DLEMk011.mp3"); // 3:29 myplayer.addToPlaylist("DLEMk012.mp3"); // There are two songs in the playlist // 5:00 myplayer.playList(); while(1); break; case 8: // Music // Add To Playlist // 6:14 myplayer.addToPlaylist("DLEMk013.mp3"); // 5:17 myplayer.addToPlaylist("DLEMk014.mp3"); // There are two songs in the playlist // 11:31 myplayer.playList(); while(1); break; case 9: // Music // Add To Playlist // 6:30 myplayer.addToPlaylist("DLEMk015.mp3"); // 3:00 myplayer.addToPlaylist("DLEMk016.mp3"); // There are two songs in the playlist // 9:30 myplayer.playList(); while(1); break; } }
setup.ino
// Setup void setup() { // This initializes the NeoPixel library pixels.begin(); delay(50); // Range Color isRangeColor(); // Music Player // Will initialize the hardware and set default mode to be normal myplayer.begin(); }
Music 01 – 10m 37s
DLEMk001.mp3
DLEMk002.mp3
DLEMk003.mp3
Music 02 – 22m 53s
DLEMk004.mp3
Music 03 – 8m 38s
DLEMk005.mp3
DLEMk006.mp3
Music 04 – 17m 07s
DLEMk007.mp3
DLEMk008.mp3
Music 05 – 4m 37s
DLEMk009.mp3
Music 06 – 8m 40s
DLEMk010.mp3
Music 07 – 5m 00s
DLEMk011.mp3
DLEMk012.mp3
Music 08 – 11m 31s
DLEMk013.mp3
DLEMk014.mp3
Music 09 – 9m 30s
DLEMk015.mp3
DLEMk016.mp3
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
Web: https://zoom.us/
Patreon: https://www.patreon.com/DonLucElectronics
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
#17 – Meditation – Goggles NeoPixel Meditation – Goggles – Mk07
——
——
——
——
#donluc #meditation #gogglesmeditation #musicshield #neopixels #arduino #sparkfun #project #programming #electronics #microcontrollers #consultant #zoom #patreon #videoblog
Goggles
Goggles are forms of protective eyewear that usually enclose or protect the area surrounding the eye in order to prevent particulates, water or chemicals from striking the eyes. They are used in chemistry laboratories and in woodworking. They are often used in snow sports as well, and in swimming. Goggles are often worn when using power tools such as drills or chainsaws to prevent flying particles from damaging the eyes.
Welding goggles provide a degree of eye protection while some forms of welding and cutting are being done. They are intended to protect the eyes not only from the heat and optical radiation produced by the welding, such as the intense ultraviolet light produced by an electric arc, but also from sparks or debris.
Goggles NeoPixel Meditation
Meditation is a practice where an individual uses a technique or focusing the mind on a particular object, thought, activity, song, or video to train attention and awareness, and achieve a mentally clear and emotionally calm and stable state.
First Luc researched the scientific principles behind available biofeedback technologies, the ways to design and build the actual sensors Goggles NeoPixel Meditation. To find the solution yielding the best results light and music, constructed proof-of-concept prototypes.
DL2103Mk03
1 x Arduino Uno – R3
1 x ProtoScrewShield
1 x Music Shield V1.1
1 x NeoPixel Stick – 8 x 5050 RGB LED with Integrated Drivers
1 x microSD Card – 2GB
1 x Panel Mount 1K potentiometer
2 x Knob
1 x SparkFun Rotary Switch – 10 Position
1 x SparkFun Rotary Switch Breakout
1 x Breadboard Solderable
11 x 1K Ohm
1 x Hamburger Mini Speaker
17 x Wire Solid Core – 22 AWG
1 x Ethernet Cable Cat 5 – 2 Metres
1 x Goggles
1 x Half-Size Breadboard
1 x SparkFun Cerberus USB Cable
Arduino Uno – R3
RW0 – Analog A4
PO0 – Analog A5
NP1 – Digital 1
MB0 – RST
VIN – +5V
GND – GND
DL2103Mk03p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // #17 - Meditation - Goggles NeoPixel Meditation - Goggles - Mk07 // 03-03 // DL2103Mk03p.ino 17-07 // DL2103Mk03 // 1 x Arduino Uno - R3 // 1 x ProtoScrewShield // 1 x Music Shield V1.1 // 1 x NeoPixel Stick - 8 x 5050 RGB LED with Integrated Drivers // 1 x microSD Card - 2GB // 1 x Panel Mount 1K potentiometer // 11 x Knob // 1 x SparkFun Rotary Switch - 10 Position // 1 x SparkFun Rotary Switch Breakout // 1 x Breadboard Solderable // 11 x 1K Ohm // 1 x Hamburger Mini Speaker // 17 x Wire Solid Core - 22 AWG // 1 x Ethernet Cable Cat 5 - 2 Metres // 1 x Goggles // 1 x Half-Size Breadboard // 1 x SparkFun Cerberus USB Cable // Include the Library Code // NeoPixel #include <Adafruit_NeoPixel.h> // Fat 16 #include <Fat16.h> #include <Fat16Util.h> // New SPI #include <NewSPI.h> // Arduino #include <arduino.h> // Music Player #include "pins_config.h" #include "vs10xx.h" #include "newSDLib.h" #include "MusicPlayer.h" // NeoPixels #define PIN 1 // How many NeoPixels are attached to the Arduino #define NUMPIXELS 8 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Color // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Panel Mount 1K potentiometer // Brighten int BrightenValue = 0; // Color const int iSensorColor = A5; int y = 0; int ColorVal = 0; // Rotary Switch - 10 Position // Number 1 => 10 int iRotNum = A4; // iRotVal - Value int iRotVal = 0; // Number int z = 0; int x = 0; // Music Player MusicPlayer myplayer; // Software Version Information String sver = "17-07"; void loop() { // Rotary Switch isRot(); }
getNeopix.ino
// Neopix void isNeopix() { for(int i=0; i<NUMPIXELS; i++){ // Neopix // BrightenValue = 40 BrightenValue = 40; pixels.setBrightness( BrightenValue ); // The pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(red,green,blue)); // This sends the updated pixel color to the hardware pixels.show(); } } // Range Color void isRangeColor() { // Range Color ColorVal = analogRead( iSensorColor ); y = (ColorVal / 127); switch ( y ) { case 0: // Blue red = 0; green = 102; blue = 204; isNeopix(); break; case 1: // Yellow red = 255; green = 255; blue = 0; isNeopix(); break; case 2: // Pink red = 255; green = 153; blue = 203; isNeopix(); break; case 3: // White red = 255; green = 255; blue = 255; isNeopix(); break; case 4: // Green red = 0; green = 255; blue = 0; isNeopix(); break; case 5: // Orange red = 255; green = 102; blue = 0; isNeopix(); break; case 6: // Violet red = 204; green = 102; blue = 204; isNeopix(); break; case 7: // Red red = 255; green = 0; blue = 0; isNeopix(); break; } }
getRot.ino
// Rotary Switch // isRot - iRotVal - Value void isRot() { // Rotary Switch z = analogRead( iRotNum ); x = map(z, 0, 4095, 0, 9); iRotVal = map(z, 0, 1023, 0, 10); // Range Value switch ( iRotVal ) { case 0: // Range Color isRangeColor(); break; case 1: // Music // Add To Playlist // 3:18 myplayer.addToPlaylist("DLEMk001.mp3"); // 2:47 myplayer.addToPlaylist("DLEMk002.mp3"); // 4.34 myplayer.addToPlaylist("DLEMk003.mp3"); // There are two songs in the playlist // 10:37 myplayer.playList(); while(1); break; case 2: // Music // Add To Playlist // 22:53 myplayer.addToPlaylist("DLEMk004.mp3"); // There are two songs in the playlist // 22:53 myplayer.playList(); while(1); break; case 3: // Music // Add To Playlist // 4:18 myplayer.addToPlaylist("DLEMk005.mp3"); // 4:20 myplayer.addToPlaylist("DLEMk006.mp3"); // There are two songs in the playlist // 8:38 myplayer.playList(); while(1); break; case 4: // Music // Add To Playlist // 9:14 myplayer.addToPlaylist("DLEMk007.mp3"); // 7:52 myplayer.addToPlaylist("DLEMk008.mp3"); // There are two songs in the playlist // 17:07 myplayer.playList(); while(1); break; case 5: // Music // Add To Playlist // 4:37 myplayer.addToPlaylist("DLEMk009.mp3"); // There are two songs in the playlist // 4:37 myplayer.playList(); while(1); break; case 6: // Music // Add To Playlist // 8:40 myplayer.addToPlaylist("DLEMk010.mp3"); // 8:40 myplayer.playList(); while(1); break; case 7: // Music // Add To Playlist // 1:31 myplayer.addToPlaylist("DLEMk011.mp3"); // 3:29 myplayer.addToPlaylist("DLEMk012.mp3"); // There are two songs in the playlist // 5:00 myplayer.playList(); while(1); break; case 8: // Music // Add To Playlist // 6:14 myplayer.addToPlaylist("DLEMk013.mp3"); // 5:17 myplayer.addToPlaylist("DLEMk014.mp3"); // There are two songs in the playlist // 11:31 myplayer.playList(); while(1); break; case 9: // Music // Add To Playlist // 6:30 myplayer.addToPlaylist("DLEMk015.mp3"); // 3:00 myplayer.addToPlaylist("DLEMk016.mp3"); // There are two songs in the playlist // 9:30 myplayer.playList(); while(1); break; } }
setup.ino
// Setup void setup() { // This initializes the NeoPixel library pixels.begin(); delay(50); // Range Color isRangeColor(); // Music Player // Will initialize the hardware and set default mode to be normal myplayer.begin(); }
Music 01 – 10m 37s
DLEMk001.mp3
DLEMk002.mp3
DLEMk003.mp3
Music 02 – 22m 53s
DLEMk004.mp3
Music 03 – 8m 38s
DLEMk005.mp3
DLEMk006.mp3
Music 04 – 17m 07s
DLEMk007.mp3
DLEMk008.mp3
Music 05 – 4m 37s
DLEMk009.mp3
Music 06 – 8m 40s
DLEMk010.mp3
Music 07 – 5m 00s
DLEMk011.mp3
DLEMk012.mp3
Music 08 – 11m 31s
DLEMk013.mp3
DLEMk014.mp3
Music 09 – 9m 30s
DLEMk015.mp3
DLEMk016.mp3
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
Web: https://zoom.us/
Patreon: https://www.patreon.com/DonLucElectronics
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
#17 – Meditation – Glasses LED Meditation – NeoPixel Stick – Mk06
——
#donluc #meditation #glassesledmeditation #musicshield #neopixels #arduino #sparkfun #project #programming #electronics #microcontrollers #consultant #zoom #patreon #videoblog
——
——
——
——
NeoPixel Stick – 8 x 5050 RGB LED with Integrated Drivers
Make your own little LED strip arrangement with this stick of NeoPixel LEDs. We crammed 8 of the tiny 5050 (5mm x 5mm) smart RGB LEDs onto a PCB with mounting holes and a chainable design. Use only one microcontroller pin to control as many as you can chain together! Each LED is addressable as the driver chip is inside the LED. Each one has ~18mA constant current drive so the color will be very consistent even if the voltage varies, and no external choke resistors are required making the design slim. Power the whole thing with 5VDC (4-7V works).
The LEDs are ‘chainable’ by connecting the output of one stick into the input of another. There is a single data line with a very timing-specific protocol. Since the protocol is very sensitive to timing, it requires a real-time microconroller such as an AVR, Arduino, PIC, mbed, etc. It cannot be used with a Linux-based microcomputer or interpreted microcontroller such as the netduino or Basic Stamp. Our wonderfully-written Neopixel library for Arduino supports these pixels. As it requires hand-tuned assembly it is only for AVR cores but others may have ported this chip driver code so please google around. An 8MHz or faster processor is required.
DL2103Mk02
1 x Arduino Uno – R3
1 x ProtoScrewShield
1 x Music Shield V1.1
1 x NeoPixel Stick – 8 x 5050 RGB LED with Integrated Drivers
1 x microSD Card – 2GB
1 x Panel Mount 1K potentiometer
2 x Knob
1 x SparkFun Rotary Switch – 10 Position
1 x SparkFun Rotary Switch Breakout
1 x Breadboard Solderable
11 x 1K Ohm
1 x Hamburger Mini Speaker
17 x Wire Solid Core – 22 AWG
1 x Ethernet Cable Cat 5 – 2 Metres
1 x Half-Size Breadboard
1 x SparkFun Cerberus USB Cable
Arduino Uno – R3
RW0 – Analog A4
PO0 – Analog A5
NP1 – Digital 1
MB0 – RST
VIN – +5V
GND – GND
DL2103Mk02p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // #17 - Meditation - Glasses LED Meditation - NeoPixel Stick - Mk06 // 03-02 // DL2103Mk02p.ino 17-06 // DL2103Mk02 // 1 x Arduino Uno - R3 // 1 x ProtoScrewShield // 1 x Music Shield V1.1 // 1 x NeoPixel Stick - 8 x 5050 RGB LED with Integrated Drivers // 1 x microSD Card - 2GB // 1 x Panel Mount 1K potentiometer // 11 x Knob // 1 x SparkFun Rotary Switch - 10 Position // 1 x SparkFun Rotary Switch Breakout // 1 x Breadboard Solderable // 11 x 1K Ohm // 1 x Hamburger Mini Speaker // 17 x Wire Solid Core - 22 AWG // 1 x Ethernet Cable Cat 5 - 2 Metres // 1 x Half-Size Breadboard // 1 x SparkFun Cerberus USB Cable // Include the Library Code // NeoPixel #include <Adafruit_NeoPixel.h> // Fat 16 #include <Fat16.h> #include <Fat16Util.h> // New SPI #include <NewSPI.h> // Arduino #include <arduino.h> // Music Player #include "pins_config.h" #include "vs10xx.h" #include "newSDLib.h" #include "MusicPlayer.h" // NeoPixels #define PIN 1 // How many NeoPixels are attached to the Arduino #define NUMPIXELS 8 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Color // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Panel Mount 1K potentiometer // Brighten int BrightenValue = 0; // Color const int iSensorColor = A5; int y = 0; int ColorVal = 0; // Rotary Switch - 10 Position // Number 1 => 10 int iRotNum = A4; // iRotVal - Value int iRotVal = 0; // Number int z = 0; int x = 0; // Music Player MusicPlayer myplayer; // Software Version Information String sver = "17-06"; void loop() { // Rotary Switch isRot(); }
getNeopix.ino
// Neopix void isNeopix() { for(int i=0; i<NUMPIXELS; i++){ // Neopix // BrightenValue = 40 BrightenValue = 40; pixels.setBrightness( BrightenValue ); // The pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(red,green,blue)); // This sends the updated pixel color to the hardware pixels.show(); } } // Range Color void isRangeColor() { // Range Color ColorVal = analogRead( iSensorColor ); y = (ColorVal / 127); switch ( y ) { case 0: // Blue red = 0; green = 102; blue = 204; isNeopix(); break; case 1: // Yellow red = 255; green = 255; blue = 0; isNeopix(); break; case 2: // Pink red = 255; green = 153; blue = 203; isNeopix(); break; case 3: // White red = 255; green = 255; blue = 255; isNeopix(); break; case 4: // Green red = 0; green = 255; blue = 0; isNeopix(); break; case 5: // Orange red = 255; green = 102; blue = 0; isNeopix(); break; case 6: // Violet red = 204; green = 102; blue = 204; isNeopix(); break; case 7: // Red red = 255; green = 0; blue = 0; isNeopix(); break; } }
getRot.ino
// Rotary Switch // isRot - iRotVal - Value void isRot() { // Rotary Switch z = analogRead( iRotNum ); x = map(z, 0, 4095, 0, 9); iRotVal = map(z, 0, 1023, 0, 10); // Range Value switch ( iRotVal ) { case 0: // Range Color isRangeColor(); break; case 1: // Music // Add To Playlist // 3:18 myplayer.addToPlaylist("DLEMk001.mp3"); // 2:47 myplayer.addToPlaylist("DLEMk002.mp3"); // 4.34 myplayer.addToPlaylist("DLEMk003.mp3"); // There are two songs in the playlist // 10:37 myplayer.playList(); while(1); break; case 2: // Music // Add To Playlist // 22:53 myplayer.addToPlaylist("DLEMk004.mp3"); // There are two songs in the playlist // 22:53 myplayer.playList(); while(1); break; case 3: // Music // Add To Playlist // 4:18 myplayer.addToPlaylist("DLEMk005.mp3"); // 4:20 myplayer.addToPlaylist("DLEMk006.mp3"); // There are two songs in the playlist // 8:38 myplayer.playList(); while(1); break; case 4: // Music // Add To Playlist // 9:14 myplayer.addToPlaylist("DLEMk007.mp3"); // 7:52 myplayer.addToPlaylist("DLEMk008.mp3"); // There are two songs in the playlist // 17:07 myplayer.playList(); while(1); break; case 5: // Music // Add To Playlist // 4:37 myplayer.addToPlaylist("DLEMk009.mp3"); // There are two songs in the playlist // 4:37 myplayer.playList(); while(1); break; case 6: // Music // Add To Playlist // 8:40 myplayer.addToPlaylist("DLEMk010.mp3"); // 8:40 myplayer.playList(); while(1); break; case 7: // Music // Add To Playlist // 1:31 myplayer.addToPlaylist("DLEMk011.mp3"); // 3:29 myplayer.addToPlaylist("DLEMk012.mp3"); // There are two songs in the playlist // 5:00 myplayer.playList(); while(1); break; case 8: // Music // Add To Playlist // 6:14 myplayer.addToPlaylist("DLEMk013.mp3"); // 5:17 myplayer.addToPlaylist("DLEMk014.mp3"); // There are two songs in the playlist // 11:31 myplayer.playList(); while(1); break; case 9: // Music // Add To Playlist // 6:30 myplayer.addToPlaylist("DLEMk015.mp3"); // 3:00 myplayer.addToPlaylist("DLEMk016.mp3"); // There are two songs in the playlist // 9:30 myplayer.playList(); while(1); break; } }
setup.ino
// Setup void setup() { // This initializes the NeoPixel library pixels.begin(); delay(50); // Range Color isRangeColor(); // Music Player // Will initialize the hardware and set default mode to be normal myplayer.begin(); }
Music 01 – 10m 37s
DLEMk001.mp3
DLEMk002.mp3
DLEMk003.mp3
Music 02 – 22m 53s
DLEMk004.mp3
Music 03 – 8m 38s
DLEMk005.mp3
DLEMk006.mp3
Music 04 – 17m 07s
DLEMk007.mp3
DLEMk008.mp3
Music 05 – 4m 37s
DLEMk009.mp3
Music 06 – 8m 40s
DLEMk010.mp3
Music 07 – 5m 00s
DLEMk011.mp3
DLEMk012.mp3
Music 08 – 11m 31s
DLEMk013.mp3
DLEMk014.mp3
Music 09 – 9m 30s
DLEMk015.mp3
DLEMk016.mp3
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
Web: https://zoom.us/
Patreon: https://www.patreon.com/DonLucElectronics
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
#17 – Meditation – Glasses LED Meditation – Music Meditation – Mk05
——
#donluc #meditation #glassesledmeditation #musicshield #neopixels #arduino #sparkfun #project #programming #electronics #microcontrollers #consultant #zoom #patreon #videoblog
——
——
——
——
Meditation or Aesthetics or Ambient of Music
Aesthetics of music is a branch of philosophy that deals with the nature of art, beauty and taste in music, and with the creation or appreciation of beauty in music. In the pre-modern tradition, the aesthetics of music or musical aesthetics explored the mathematical and cosmological dimensions of rhythmic and harmonic organization.
As an early 20th-century French composer, Erik Satie used such Dadaist-inspired explorations to create an early form of ambient/background music that he labeled “furniture music”. This he described as being the sort of music that could be played during a dinner to create a background atmosphere for that activity, rather than serving as the focus of attention.
I think of it as melodious, softening the noises of the knives and forks at dinner, not dominating them, not imposing itself. It would fill up those heavy silences that sometime fall between friends dining together. It would spare them the trouble of paying attention to their own banal remarks. And at the same time it would neutralize the street noises which so indiscreetly enter into the play of conversation. To make such music would be to respond to a need.
Background music for meditation should be calm, relaxing, and to evoke a warm feeling that allows viewers to feel safe and comfortable. Moreover, meditating music should quiet the inner voice, allowing the viewer to stay in the present moment and focus on immersing in meditation.
DL2103Mk01
1 x Arduino Uno – R3
1 x ProtoScrewShield
1 x Music Shield V1.1
2 x Breadboard-friendly RGB Smart NeoPixel
1 x microSD Card – 2GB
1 x Panel Mount 1K potentiometer
2 x Knob
1 x SparkFun Rotary Switch – 10 Position
1 x SparkFun Rotary Switch Breakout
1 x Breadboard Solderable
11 x 1K Ohm
1 x Hamburger Mini Speaker
20 x Wire Solid Core – 22 AWG
1 x Half-Size Breadboard
1 x SparkFun Cerberus USB Cable
Arduino Uno – R3
RW0 – Analog A4
PO0 – Analog A5
NP1 – Digital 1
MB0 – RST
VIN – +5V
GND – GND
DL2103Mk01p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // #17 - Meditation - Glasses LED Meditation - Music - Mk05 // 03-01 // DL2103Mk01p.ino 17-05 // DL2103Mk01 // 1 x Arduino Uno - R3 // 1 x ProtoScrewShield // 1 x Music Shield V1.1 // 2 x Breadboard-friendly RGB Smart NeoPixel // 1 x microSD Card - 2GB // 1 x Panel Mount 1K potentiometer // 11 x Knob // 1 x SparkFun Rotary Switch - 10 Position // 1 x SparkFun Rotary Switch Breakout // 1 x Breadboard Solderable // 11 x 1K Ohm // 1 x Hamburger Mini Speaker // 20 x Wire Solid Core - 22 AWG // 1 x Half-Size Breadboard // 1 x SparkFun Cerberus USB Cable // Include the Library Code // NeoPixel #include <Adafruit_NeoPixel.h> // Fat 16 #include <Fat16.h> #include <Fat16Util.h> // New SPI #include <NewSPI.h> // Arduino #include <arduino.h> // Music Player #include "pins_config.h" #include "vs10xx.h" #include "newSDLib.h" #include "MusicPlayer.h" // NeoPixels #define PIN 1 // How many NeoPixels are attached to the Arduino #define NUMPIXELS 2 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Color // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Panel Mount 1K potentiometer // Brighten int BrightenValue = 0; // Color const int iSensorColor = A5; int y = 0; int ColorVal = 0; // Rotary Switch - 10 Position // Number 1 => 10 int iRotNum = A4; // iRotVal - Value int iRotVal = 0; // Number int z = 0; int x = 0; // Music Player MusicPlayer myplayer; // Software Version Information String sver = "17-05"; void loop() { // Rotary Switch isRot(); }
getNeopix.ino
// Neopix void isNeopix() { for(int i=0; i<NUMPIXELS; i++){ // Neopix // BrightenValue = 40 BrightenValue = 40; pixels.setBrightness( BrightenValue ); // The pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(red,green,blue)); // This sends the updated pixel color to the hardware pixels.show(); } } // Range Color void isRangeColor() { // Range Color ColorVal = analogRead( iSensorColor ); y = (ColorVal / 127); switch ( y ) { case 0: // Blue red = 0; green = 102; blue = 204; isNeopix(); break; case 1: // Yellow red = 255; green = 255; blue = 0; isNeopix(); break; case 2: // Pink red = 255; green = 153; blue = 203; isNeopix(); break; case 3: // White red = 255; green = 255; blue = 255; isNeopix(); break; case 4: // Green red = 0; green = 255; blue = 0; isNeopix(); break; case 5: // Orange red = 255; green = 102; blue = 0; isNeopix(); break; case 6: // Violet red = 204; green = 102; blue = 204; isNeopix(); break; case 7: // Red red = 255; green = 0; blue = 0; isNeopix(); break; } }
getRot.ino
// Rotary Switch // isRot - iRotVal - Value void isRot() { // Rotary Switch z = analogRead( iRotNum ); x = map(z, 0, 4095, 0, 9); iRotVal = map(z, 0, 1023, 0, 10); // Range Value switch ( iRotVal ) { case 0: // Range Color isRangeColor(); break; case 1: // Music // Add To Playlist // 3:18 myplayer.addToPlaylist("DLEMk001.mp3"); // 2:47 myplayer.addToPlaylist("DLEMk002.mp3"); // 4.34 myplayer.addToPlaylist("DLEMk003.mp3"); // There are two songs in the playlist // 10:37 myplayer.playList(); while(1); break; case 2: // Music // Add To Playlist // 22:53 myplayer.addToPlaylist("DLEMk004.mp3"); // There are two songs in the playlist // 22:53 myplayer.playList(); while(1); break; case 3: // Music // Add To Playlist // 4:18 myplayer.addToPlaylist("DLEMk005.mp3"); // 4:20 myplayer.addToPlaylist("DLEMk006.mp3"); // There are two songs in the playlist // 8:38 myplayer.playList(); while(1); break; case 4: // Music // Add To Playlist // 9:14 myplayer.addToPlaylist("DLEMk007.mp3"); // 7:52 myplayer.addToPlaylist("DLEMk008.mp3"); // There are two songs in the playlist // 17:07 myplayer.playList(); while(1); break; case 5: // Music // Add To Playlist // 4:37 myplayer.addToPlaylist("DLEMk009.mp3"); // There are two songs in the playlist // 4:37 myplayer.playList(); while(1); break; case 6: // Music // Add To Playlist // 8:40 myplayer.addToPlaylist("DLEMk010.mp3"); // 8:40 myplayer.playList(); while(1); break; case 7: // Music // Add To Playlist // 1:31 myplayer.addToPlaylist("DLEMk011.mp3"); // 3:29 myplayer.addToPlaylist("DLEMk012.mp3"); // There are two songs in the playlist // 5:00 myplayer.playList(); while(1); break; case 8: // Music // Add To Playlist // 6:14 myplayer.addToPlaylist("DLEMk013.mp3"); // 5:17 myplayer.addToPlaylist("DLEMk014.mp3"); // There are two songs in the playlist // 11:31 myplayer.playList(); while(1); break; case 9: // Music // Add To Playlist // 6:30 myplayer.addToPlaylist("DLEMk015.mp3"); // 3:00 myplayer.addToPlaylist("DLEMk016.mp3"); // There are two songs in the playlist // 9:30 myplayer.playList(); while(1); break; } }
setup.ino
// Setup void setup() { // This initializes the NeoPixel library pixels.begin(); delay(50); // Range Color isRangeColor(); // Music Player // Will initialize the hardware and set default mode to be normal myplayer.begin(); }
Music 01 – 10m 37s
DLEMk001.mp3
DLEMk002.mp3
DLEMk003.mp3
Music 02 – 22m 53s
DLEMk004.mp3
Music 03 – 8m 38s
DLEMk005.mp3
DLEMk006.mp3
Music 04 – 17m 07s
DLEMk007.mp3
DLEMk008.mp3
Music 05 – 4m 37s
DLEMk009.mp3
Music 06 – 8m 40s
DLEMk010.mp3
Music 07 – 5m 00s
DLEMk011.mp3
DLEMk012.mp3
Music 08 – 11m 31s
DLEMk013.mp3
DLEMk014.mp3
Music 09 – 9m 30s
DLEMk015.mp3
DLEMk016.mp3
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
Web: https://zoom.us/
Patreon: https://www.patreon.com/DonLucElectronics
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
#17 – Meditation – Glasses LED Meditation – Music Shield – Mk04
——
#donluc #meditation #glassesledmeditation #musicshield #neopixels #arduino #sparkfun #project #programming #electronics #microcontrollers #consultant #zoom #patreon #videoblog
——
——
——
——
Music Shield V1.1
The Music Shield is a professional audio codec.It can work with Arduino and Arduino Mega. It is based on VS1053b IC, and can play a variety of music formats stored on MicroSD cards with the provided Arduino Library.
Features
- Arduino and Arduino Mega compatible
- 2 control-push buttons and 1 knob switch
- Plays music from micro SD cards
- Decodes: MP3, WAV, MIDI, Ogg Vorbis
- Fat16 library
- I2S interface for external DAC
- Headphone/Line Out for playback
- Excellent sound quality with ±1dB frequency response
DL2102Mk07
1 x Arduino Uno – R3
1 x ProtoScrewShield
1 x Music Shield V1.1
2 x Breadboard-friendly RGB Smart NeoPixel
1 x microSD Card – 2GB
1 x Panel Mount 1K potentiometer
1 x Knob
1 x Momentary Button – Panel Mount (Black)
1 x 1K Ohm
1 x Hamburger Mini Speaker
15 x Wire Solid Core – 22 AWG
1 x Half-Size Breadboard
1 x SparkFun Cerberus USB Cable
Arduino Uno – R3
SW0 – Analog A4
PO0 – Analog A5
NP1 – Digital 1
MB0 – RST
VIN – +5V
GND – GND
DL2102Mk07p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // #17 - Meditation - Glasses LED Meditation - Music Shield - Mk04 // 02-07 // DL2102Mk07p.ino 17-04 // DL2102Mk07 // 1 x Arduino Uno - R3 // 1 x ProtoScrewShield // 1 x Music Shield V1.1 // 2 x Breadboard-friendly RGB Smart NeoPixel // 1 x microSD Card - 2GB // 1 x Panel Mount 1K potentiometer // 1 x Knob // 1 x Momentary Button - Panel Mount (Black) // 1 x 1K Ohm // 1 x Hamburger Mini Speaker // 15 x Wire Solid Core - 22 AWG // 1 x Half-Size Breadboard // 1 x SparkFun Cerberus USB Cable // Include the Library Code // NeoPixel #include <Adafruit_NeoPixel.h> // Fat 16 #include <Fat16.h> #include <Fat16Util.h> // New SPI #include <NewSPI.h> // Arduino #include <arduino.h> // Music Player #include "pins_config.h" #include "vs10xx.h" #include "newSDLib.h" #include "MusicPlayer.h" // NeoPixels #define PIN 1 // How many NeoPixels are attached to the Arduino #define NUMPIXELS 2 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Color // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Panel Mount 1K potentiometer // Brighten int BrightenValue = 0; // Color const int iSensorColor = A5; int y = 0; int ColorVal = 0; // Mountable Slide Switch int iSS1 = A4; // State int iSS1State = 0; // Music Player MusicPlayer myplayer; // Software Version Information String sver = "17-04"; void loop() { // Slide Switch // Read the state of the iSS1 value iSS1State = digitalRead(iSS1); // If it is the Slide Switch State is HIGH if (iSS1State == HIGH) { // Range Color isRangeColor(); } else { // Add To Playlist myplayer.addToPlaylist("F001.mp3"); myplayer.addToPlaylist("F002.mp3"); myplayer.addToPlaylist("F003.mp3"); myplayer.addToPlaylist("F004.mp3"); myplayer.addToPlaylist("F005.mp3"); // There are two songs in the playlist myplayer.playList(); while(1); } }
getNeopix.ino
// Neopix void isNeopix() { for(int i=0; i<NUMPIXELS; i++){ // Neopix // BrightenValue = 40 BrightenValue = 40; pixels.setBrightness( BrightenValue ); // The pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(red,green,blue)); // This sends the updated pixel color to the hardware pixels.show(); } } // Range Color void isRangeColor() { // Range Color ColorVal = analogRead( iSensorColor ); y = (ColorVal / 127); switch ( y ) { case 0: // Blue red = 0; green = 102; blue = 204; isNeopix(); break; case 1: // Yellow red = 255; green = 255; blue = 0; isNeopix(); break; case 2: // Pink red = 255; green = 153; blue = 203; isNeopix(); break; case 3: // White red = 255; green = 255; blue = 255; isNeopix(); break; case 4: // Green red = 0; green = 255; blue = 0; isNeopix(); break; case 5: // Orange red = 255; green = 102; blue = 0; isNeopix(); break; case 6: // Violet red = 204; green = 102; blue = 204; isNeopix(); break; case 7: // Red red = 255; green = 0; blue = 0; isNeopix(); break; } }
setup.ino
// Setup void setup() { // This initializes the NeoPixel library pixels.begin(); delay(50); // Slide Switch pinMode(iSS1, INPUT); // Music Player // Will initialize the hardware and set default mode to be normal myplayer.begin(); }
Music
F001.mp3
F002.mp3
F003.mp3
F004.mp3
F005.mp3
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
Web: https://zoom.us/
Patreon: https://www.patreon.com/DonLucElectronics
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
#17 – Meditation – Glasses LED Meditation – SparkFun Qwiic MP3 Trigger – Mk03
——
——
——
——
#donluc #meditation #glassesmeditation #glassesledmeditation #neopixels #audioplayer #microsd #arduino #sparkfun #project #programming #electronics #microcontrollers #consultant #patreon #videoblog
TMRpcm
PCM(Pulse Width Modulation)/WAV playback direct from SD card
Samples Per second(Hz): 16000
Main formats: WAV files, 8-bit, 8-32khz Sample Rate, mono.
Voice: Yes
Music: No / Yes
Qwiic MP3 Trigger
The Qwiic MP3 Trigger is designed to operate at 3.3V and must not be powered above 3.6V as this is the maximum operating voltage of microSD cards. Otherwise, the board can also be powered through the Qwiic connector.
MP3 and ATtiny84
At the heart of the Qwiic MP3 Trigger is the WT2003S MP3 decoder IC. This IC reads MP3s from the microSD card and will automatically mount the SD card as a jump drive if USB is detected. The ATtiny84A receives I2C commands and controls the MP3 decoder.
Audio Amplifier
The speaker is boosted by a Class-D mono amplifier capable of outputting up to 1.4W. Both outputs have volume controlled by the SET_VOLUME command and is selectable between 32 levels.
Audio Outputs
This is a friction fit type connector; simply push stranded core wire into the hole and the connector will grip the wire, speaker as Dayton audio reference 3″ full-range drive.
Voice: Yes
Music: Yes
DL2102Mk06
1 x SparkFun RedBoard Qwiic
2 x Breadboard-friendly RGB Smart NeoPixel
1 x SparkFun Qwiic MP3 Trigger
1 x microSD Card – 2GB
2 x Panel Mount 1K potentiometer
2 x Knob
1 x Qwiic Cable – 100mm
1 x Dayton Audio Reference 3″ Full-Range Drive
2 x Wire Stranded Core – 18 AWG
17 x Wire Solid Core – 22 AWG
1 x Half-Size Breadboard
1 x SparkFun Cerberus USB Cable
SparkFun RedBoard Qwiic
PO0 – Analog A0
PO1 – Analog A1
NP1 – Digital 6
I2C – 0x37
VIN – +5V
GND – GND
DL2102Mk06p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // #17 - Meditation - Glasses LED Meditation - SparkFun Qwiic MP3 Trigger - Mk03 // 02-06 // DL2102Mk06p.ino 17-03 // 1 x Arduino Pro Mini 328 - 5V/16MHz // 2 x Breadboard-friendly RGB Smart NeoPixel // 1 x SparkFun Qwiic MP3 Trigger // 1 x microSD Card - 2GB // 2 x Panel Mount 1K potentiometer // 2 x Knob // 1 x Qwiic Cable - 100mm // 1 x Dayton Audio Reference 3" Full-Range Drive // 2 x Wire Stranded Core - 16 AWG // 17 x Wire Solid Core - 22 AWG // 1 x Half-Size Breadboard // 1 x SparkFun Cerberus USB Cable // Include the Library Code // NeoPixel #include <Adafruit_NeoPixel.h> // Wire communicate with I2C / TWI devices #include <Wire.h> // SparkFun MP3 Trigger #include "SparkFun_Qwiic_MP3_Trigger_Arduino_Library.h" // NeoPixels #define PIN 6 // How many NeoPixels are attached to the Arduino #define NUMPIXELS 2 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Color // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Panel Mount 1K potentiometer // Brighten const int iSensorBrighten = A0; // Max - Min int BrightenValue = 0; // Minimum sensor value int BrightenMin = 0; // Maximum sensor value int BrightenMax = 1023; // Color const int iSensorColor = A1; int y = 0; int ColorVal = 0; // SparkFun MP3 Trigger MP3TRIGGER mp3; // Software Version Information String sver = "17-03"; void loop() { // Range Color isRangeColor(); if (mp3.isPlaying() == false) { // Play Track dleMk002.mp3 mp3.playTrack(1); } }
getMP3.ino
// MP3 // Setup MP3 void isSetupMP3(){ // Check to see if Qwiic MP3 is present on the bus if (mp3.begin() == false) { // Qwiic MP3 failed to respond. Please check wiring and possibly the I2C address. Freezing... while (1); } if (mp3.hasCard() == false) { // Qwiic MP3 is missing its SD card. Freezing... while (1); } // Volume can be 0 (off) to 31 (max) mp3.setVolume(28); // Play Track dleMk002.mp3 mp3.playTrack(1); }
getNeopix.ino
// Neopix void isNeopix() { for(int i=0; i<NUMPIXELS; i++){ // Neopix // Read the Brightneed BrightenValue = analogRead( iSensorBrighten ); // Apply the calibration to the BrightneedValue reading BrightenValue = map(BrightenValue, BrightenMin, BrightenMax, 0, 255); // In case the sensor value is outside the range seen during calibration BrightenValue = constrain(BrightenValue, 0, 255); // The pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setBrightness( BrightenValue ); pixels.setPixelColor(i, pixels.Color(red,green,blue)); // This sends the updated pixel color to the hardware pixels.show(); } } // Range Color void isRangeColor() { // Range Color ColorVal = analogRead( iSensorColor ); y = (ColorVal / 127); switch (y) { case 0: // Blue red = 0; green = 102; blue = 204; isNeopix(); break; case 1: // Yellow red = 255; green = 255; blue = 0; isNeopix(); break; case 2: // Pink red = 255; green = 153; blue = 203; isNeopix(); break; case 3: // White red = 255; green = 255; blue = 255; isNeopix(); break; case 4: // Green red = 0; green = 255; blue = 0; isNeopix(); break; case 5: // Orange red = 255; green = 102; blue = 0; isNeopix(); break; case 6: // Violet red = 204; green = 102; blue = 204; isNeopix(); break; case 7: // Red red = 255; green = 0; blue = 0; isNeopix(); break; } }
setup.ino
// Setup void setup() { // This initializes the NeoPixel library pixels.begin(); // Serial // Serial.begin(9600); // Wire communicate with I2C / TWI devices Wire.begin(); // SparkFun MP3 Trigger Setup isSetupMP3(); }
Music
dleMk002.mp3
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
Patreon: https://www.patreon.com/DonLucElectronics
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
#17 – Meditation – Glasses LED Meditation – Audio Player – Mk02
——
#donluc #meditation #glassesmeditation #glassesledmeditation #glassesled #neopixels #audioplayer #microsd #arduino #sparkfun #project #programming #electronics #microcontrollers #consultant #patreon #videoblog
——
——
——
——
Meditation Music
Music Meditation has many wonderful benefits for helping people with control meditation may significantly reduce stress, anxiety, depression, COVID-19, HIV, TMJD, aphasia, ADHD, cancer, and pain; and enhance peace, perception, self-concept, and well-being. Music Meditation can also lift your mood, slow your breathing, and create other stress-inducing changes.
From mood enhancement and relaxation to full-blown oneness with the cosmos, music has the ability to powerfully shift our state of mind. Meditation is not that different. Meditation lowers the stress hormone cortisol, helps us sleep better, and rewires the brain with a host of positive emotional qualities. The goal of both music and meditation is to create a powerful and positive shift in our mental state.
Music is a reliable source of transformational experience for many, and we are attracted to music for the same reasons that meditators meditate. Music and meditation both allow a fuller and richer experience of our emotions. They stop our incessant and often negative mental chatter and offer us an opportunity to inhabit the present moment more fully and meaningfully. These are all important for good health and happiness in human beings.
Meditation and music are calming, transformative activities that can improve health in multiple ways. Research studies indicate that meditation can protect of a heart attack or stroke, improve sleep, relieve pain, sharpen mind and memory, lift mood, and ease anxiety.
DL2102Mk05
1 x Arduino Pro Mini 328 – 5V/16MHz
2 x Breadboard-friendly RGB Smart NeoPixel
1 x Panel Mount 1K potentiometer
1 x Knob
1 x MicroSD card breakout board+
1 x MicroSD Memory Card (8 GB SDHC)
1 x SparkFun Audio Jack Breakout
1 x Audio Jack 3.5mm
1 x Hamburger Mini Speaker
20 x Wire Solid Core – 22 AWG
2 x Half-Size Breadboard
1 x SparkFun FTDI Basic Breakout – 5V
1 x SparkFun Cerberus USB Cable
Arduino Pro Mini 328
PO0 – Analog A0
SS0 – Digital 10
MOS – Digital 11
MIS – Digital 12
SCK – Digital 13
SPE – Digital 9
NP1 – Digital 6
VIN – +5V
GND – GND
DL2102Mk05p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // #17 - Meditation - Glasses LED Meditation - Audio Player - Mk02 // 02-05 // DL2102Mk05p.ino 17-05 // 1 x Arduino Pro Mini 328 - 5V/16MHz // 2 x Breadboard-friendly RGB Smart NeoPixel // 1 x Panel Mount 1K potentiometer // 1 x Knob // 1 x MicroSD card breakout board+ // 1 x MicroSD Memory Card (8 GB SDHC) // 1 x SparkFun Audio Jack Breakout // 1 x Audio Jack 3.5mm // 1 x Hamburger Mini Speaker // 20 x Wire Solid Core - 22 AWG // 2 x Half-Size Breadboard // 1 x SparkFun FTDI Basic Breakout - 5V // 1 x SparkFun Cerberus USB Cable // Include the Library Code // NeoPixel #include <Adafruit_NeoPixel.h> // SPI (Serial Peripheral Interface) #include <SPI.h> // SD Cards #include <SD.h> // PCM/WAV Audio Playback #include <TMRpcm.h> // NeoPixels #define PIN 6 // How many NeoPixels are attached to the Arduino #define NUMPIXELS 2 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Color // Red int red = 0; // Green int green = 0; // Blue int blue = 0; // Panel Mount 1K potentiometer // Brightneed const int iSensorBrightneed = A0; // Max - Min int BrightneedValue = 0; // Minimum sensor value int BrightneedMin = 0; // Maximum sensor value int BrightneedMax = 1023; // PCM/WAV Audio Playback TMRpcm music; int iSpeaker = 9; int iPlaying = 0; // SD Cards int iSD = 10; // Software Version Information String sver = "17-02"; void loop() { // Range Color // White isRangeColor(); // Playing iPlaying = music.isPlaying(); if ( iPlaying == 0 ) { // Play music.play("dleMk001.wav"); } }
getNeopix.ino
// Neopix void isNeopix() { for(int i=0; i<NUMPIXELS; i++){ // Neopix // Read the Brightneed BrightneedValue = analogRead( iSensorBrightneed ); // Apply the calibration to the BrightneedValue reading BrightneedValue = map(BrightneedValue, BrightneedMin, BrightneedMax, 0, 255); // In case the sensor value is outside the range seen during calibration BrightneedValue = constrain(BrightneedValue, 0, 255); // The pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setBrightness( BrightneedValue ); pixels.setPixelColor(i, pixels.Color(red,green,blue)); // This sends the updated pixel color to the hardware pixels.show(); } } // Range Color void isRangeColor() { // Range Color // White red = 255; green = 255; blue = 255; isNeopix(); }
setup.ino
// Setup void setup() { // This initializes the NeoPixel library pixels.begin(); // PCM/WAV Audio Playback music.speakerPin = iSpeaker; // SD Cards SD.begin( iSD ); // PCM/WAV Audio Playback // Volume music.setVolume(5); music.quality(1); // Play music.play("dleMk001.wav"); }
Music
dleMk001.wav
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
Patreon: https://www.patreon.com/DonLucElectronics
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
#17 – Meditation – Glasses LED Meditation – Mk01
——
#donluc #glasses #glassesmeditation #glassesled #glassesledmeditation #neopixels #meditation #arduino #sparkfun #project #programming #software #electronics #microcontrollers #consultant #patreon #vlog #videoblog
——
——
——
——
——
Me, Luc suffered on 2013 a massive stroke that let me with an aphasia condition. In 2014 I could speak words and make myself understand by using the computer, and the good thing is that I did not lose my abilities. In 2015 Norma, my wife, was doing meditation and praying and an invocation or act that seeks to activate a rapport with an object of worship through deliberate communication. In the narrow sense, the term refers to an act of supplication or intercession directed towards a deity or a deified ancestor. More generally, prayer can also have the purpose of thanksgiving or praise, and in comparative religion is closely associated with more abstract forms of meditation and with charms or spells.
In this view, the ultimate goal of prayer is to help train a person to focus on divinity through philosophy and intellectual contemplation (meditation). This approach was taken by the other medieval rationalists. Meditation engages thought, imagination, emotion, and desire. This mobilization of faculties is necessary in order to deepen our convictions of faith, prompt the conversion of our heart, and strengthen our will to follow. Some modalities of alternative medicine employ prayer.
Glasses LED Meditation
First Luc researched the scientific principles behind available biofeedback technologies, the ways to design and build the actual sensors Meditation Glasses LED. Arduino Pro Mini, RGB Smart NeoPixel, potentiometer, slide switch, USB LiPoly charger, lithium ion battery, wire, Etc… To find the solution yielding the best results, constructed proof-of-concept prototypes.
DL2102Mk02
1 x Arduino Pro Mini 328 – 5V/16MHz
2 x Breadboard-friendly RGB Smart NeoPixel
3 x Panel Mount 1K potentiometer
3 x Knob
1 x Mountable Slide Switch
1 x USB LiPoly Charger – Single Cell
1 x Lithium Ion Battery – 400mAh
Wire Solid Core – 22 AWG
1 x SparkFun FTDI Basic Breakout – 5V
1 x SparkFun Cerberus USB Cable
Arduino Pro Mini 328
PO0 – Analog A0
PO1 – Analog A1
PO2 – Analog A2
NP1 – Digital 6
VIN – +5V
GND – GND
DL2102Mk02p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // #17 - Meditation - Glasses LED - Mk01 // 02-02 // DL2102Mk02p.ino 17-01 // 1 x Arduino Pro Mini 328 - 5V/16MHz // 2 x Breadboard-friendly RGB Smart NeoPixel // 3 x Panel Mount 1K potentiometer // 3 x Knob // 1 x Mountable Slide Switch // 1 x USB LiPoly Charger - Single Cell // 1 x Lithium Ion Battery - 400mAh // Wire Solid Core - 22 AWG // 1 x SparkFun FTDI Basic Breakout - 5V // 1 x SparkFun Cerberus USB Cable // Include the Library Code // NeoPixel #include <Adafruit_NeoPixel.h> // NeoPixels #define PIN 6 // How many NeoPixels are attached to the Arduino #define NUMPIXELS 2 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Panel Mount 1K potentiometer // Brightneed const int sensorPin = A0; // Delay const int sensorDelay = A1; // Number const int sensorNumber = A2; // Variables int sensorValue = 0; // the sensor value int sensorMin = 1023; // minimum sensor value int sensorMax = 0; // maximum sensor value int red = 0; int green = 0; int blue = 0; int x = 0; long delayVal = 0; long xp = 0; int y = 0; int z = 0; // Software Version Information String sver = "17-01"; void loop() { z = analogRead(sensorNumber); y = (z / 127); // range value: switch (y) { case 0: // Blue red = 0; green = 102; blue = 204; neopix(); break; case 1: // Yellow red = 255; green = 255; blue = 0; neopix(); break; case 2: // Pink red = 255; green = 153; blue = 203; neopix(); break; case 3: // White red = 255; green = 255; blue = 255; neopix(); break; case 4: // Green red = 0; green = 255; blue = 0; neopix(); break; case 5: // Orange red = 255; green = 102; blue = 0; neopix(); break; case 6: // Violet red = 204; green = 102; blue = 204; neopix(); break; case 7: xp = analogRead(sensorDelay); delayVal = (1000 * xp); // range value: switch (x) { case 0: // Blue red = 0; green = 102; blue = 204; neopix(); delay(delayVal); // Delay for a period of time (in milliseconds). x = 1; break; case 1: // Yellow red = 255; green = 255; blue = 0; neopix(); delay(delayVal); // Delay for a period of time (in milliseconds). x = 2; break; case 2: // Pink red = 255; green = 153; blue = 203; neopix(); delay(delayVal); // Delay for a period of time (in milliseconds). x = 3; break; case 3: // White red = 255; green = 255; blue = 255; neopix(); delay(delayVal); // Delay for a period of time (in milliseconds). x = 4; break; case 4: // Green red = 0; green = 255; blue = 0; neopix(); delay(delayVal); // Delay for a period of time (in milliseconds). x = 5; break; case 5: // Orange red = 255; green = 102; blue = 0; neopix(); delay(delayVal); // Delay for a period of time (in milliseconds). x = 6; break; case 6: // Violet red = 204; green = 102; blue = 204; neopix(); delay(delayVal); // Delay for a period of time (in milliseconds). x = 0; break; } break; } }
getNeopix.ino
// Neopix void neopix() { for(int i=0; i<NUMPIXELS; i++){ // read the sensor: sensorValue = analogRead(sensorPin); // apply the calibration to the sensor reading sensorValue = map(sensorValue, sensorMin, sensorMax, 0, 255); // in case the sensor value is outside the range seen during calibration sensorValue = constrain(sensorValue, 0, 255); // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setBrightness( sensorValue ); pixels.setPixelColor(i, 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); } }
setup.ino
// Setup void setup() { // This initializes the NeoPixel library pixels.begin(); }
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
Patreon: https://www.patreon.com/DonLucElectronics
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 #16: Sound – Microphone SparkFun Sound Detector – Mk15
——
#donluc #microphone #sound #arduino #fritzing #sparkfun #project #programming #software #electronics #microcontrollers #consultant #vlog
——
——
——
——
——
Microphone
A microphone is a device a transducer that converts sound into an electrical signal. Microphones are used in many applications. They are also used in computers for recording voice, speech recognition, VoIP, and for non-acoustic purposes such as ultrasonic sensors or knock sensors.
Electret microphone is a type of electrostatic capacitor-based microphone, which eliminates the need for a polarizing power supply by using a permanently charged material. Unlike other condenser microphones, electret types require no polarizing voltage, but they normally contain an integrated preamplifier, which does require a small amount of power.
SparkFun Sound Detector
SparkFun Item: SEN-12642
The SparkFun Sound Detector is a small and very easy to use audio sensing board with three different outputs. The Sound Detector not only provides an audio output, but also a binary indication of the presence of sound, and an analog representation of its amplitude. The 3 outputs are simultaneous and independent, so you can use as many or as few as you want at once.
The envelope output allows you to easily read amplitude of sound by simply measuring the analog voltage. Gain can be adjusted with a through-hole resistor, to change the threshold of the binary output pin as well.
DL2101Mk03
1 x SparkFun RedBoard Qwiic
1 x SparkFun Sound Detector
3 x Jumper Wires 6in M/M
1 x Half-Size Breadboard
1 x SparkFun Cerberus USB Cable
SparkFun RedBoard Qwiic
MIC – Analog A0
VIN – +5V
GND – GND
DL2101Mk03p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // Project #16: Sound - SparkFun Sound Detector - Mk15 // 01-03 // DL2101Mk03p.ino 16-15 // DL2101Mk03 // 1 x SparkFun RedBoard Qwiic // 1 x SparkFun Sound Detector // 3 x Jumper Wires 6in M/M // 1 x Half-Size Breadboard // 1 x SparkFun Cerberus USB Cable // Include the Library Code // Microphone unsigned int iMic = A0; // Sample window width in mS const int sampleWindow = 250; // Volume unsigned int iVol; // Peak-to-peak level unsigned int peakToPeak = 0; // Max - Min unsigned int signalMax = 0; unsigned int signalMin = 1024; // Convert to volts double volts = 0; // Software Version Information String sver = "16-15"; void loop() { // Microphone isMic(); }
getMic.ino
// getMic // is Microphone void isMic() { // Start of sample window unsigned long start = millis(); // Peak-to-peak level peakToPeak = 0; // Max - Min signalMax = 0; signalMin = 1024; // Collect data for 250 miliseconds while ( millis() - start < sampleWindow ) { iVol = analogRead( iMic ); // This is the max of the 10-bit ADC so this loop will include all readings if (iVol < 1024) { if (iVol > signalMax) { // Save just the max levels signalMax = iVol; } else if (iVol < signalMin) { // Save just the min levels signalMin = iVol; } } } // Max - Min = peak-peak amplitude peakToPeak = signalMax - signalMin; // Convert to volts volts = ( peakToPeak * 3.3 ) / 1024; // Serial Serial.println( volts ); }
setup.ino
// Setup void setup() { // Setup Serial Serial.begin (9600); }
People can contact us: https://www.donluc.com/?page_id=1927
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc...)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2021a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
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 #16: Sound – Rotary Switch – Mk13
——
#donluc #sound #simplekeyboard #synthesizer #mozzi #adsr #rotaryswitch #programming #arduino #fritzing #electronics #microcontrollers #consultant #vlog
——
——
——
——
——
Wave
In a wave is a propagating dynamic disturbance of one or more quantities, sometimes as described by a wave equation. In physical waves, at least two field quantities in the wave medium are involved. Sound waves are variations of the local pressure and particle motion that propagate through the medium.
Sine Wave
To the human ear, a sound that is made of more than one sine wave will have perceptible harmonics, addition of different sine waves results in a different waveform and thus changes the timbre of the sound. Presence of higher harmonics in addition to the fundamental causes variation in the timbre, which is the reason why the same musical note played on different instruments sounds different.
Rotary Switch – SparkFun Rotary Switch Breakout
This is a single pole, 10 position rotary switch able to select up to 10 different states in a durable package. Unlike our other rotary switch, this model is much more robust and capable of handling larger currents and voltages. Though this switch requires you to use 11 pins and is not breadboard friendly we do offer a breakout board to provide easier access to its capabilities.
This is the SparkFun Rotary Switch Breakout, a very simple board designed to easily provide you access to each pin on our 10-position rotary switches. This breakout allows you to easily add a rotary switch to your next project without having to worry about attaching its unique footprint to a custom board or solderless breadboard. All you need to do is solder the 10-position rotary switch into the breakout and each pin will become available for breadboard or hookup wire compatibility.
DL2011Mk08
1 x Arduino Pro Mini 328 – 5V/16MHz
8 x Tactile Button
1 x Rotary Switch – 10 Position
1 x SparkFun Rotary Switch Breakout
1 x Knob
11 x 1K Ohm
1 x Audio Jack 3.5mm
1 x SparkFun Audio Jack Breakout
1 x Speaker
12 x Wire Solid Core – 22 AWG
9 x Jumper Wires 3in M/M
11 x Jumper Wires 6in M/M
2 x Full-Size Breadboard
1 x SparkFun Cerberus USB Cable
1 x SparkFun FTDI Basic Breakout – 5V
Arduino Pro Mini 328 – 5V/16MHz
SPK – Digital 9
KY2 – Digital 2
KY3 – Digital 3
KY4 – Digital 4
KY5 – Digital 5
KY6 – Digital 6
KY7 – Digital 7
KY8 – Digital 8
KY9 – Digital 10
RO0 – Analog A0
VIN – +5V
GND – GND
DL2011Mk08p.ino
// ***** Don Luc Electronics © ***** // Software Version Information // Project #16: Sound - Rotary Switch - Mk13 // 11-08 // DL2011Mk08p.ino 16-13 // 1 x Arduino Pro Mini 328 - 5V/16MHz // 8 x Tactile Button // 1 x Rotary Switch - 10 Position // 1 x SparkFun Rotary Switch Breakout // 1 x Knob // 11 x 1K Ohm // 1 x Audio Jack 3.5mm // 1 x SparkFun Audio Jack Breakout // 1 x Speaker // 12 x Wire Solid Core - 22 AWG // 9 x Jumper Wires 3in M/M // 11 x Jumper Wires 6in M/M // 2 x Full-Size Breadboard // 1 x SparkFun Cerberus USB Cable // 1 x SparkFun FTDI Basic Breakout - 5V // Include the Library Code // Pitches #include "pitches.h" // Mozzi #include#include #include // Oscillator Tables used for output Waveshape #include // Simple Keyboard // Minimum reading of the button that generates a note const int iKeyboard2 = 2; const int iKeyboard3 = 3; const int iKeyboard4 = 4; const int iKeyboard5 = 5; const int iKeyboard6 = 6; const int iKeyboard7 = 7; const int iKeyboard8 = 8; const int iKeyboard9 = 10; // Button is pressed int aa = 1; int bb = 1; int cc = 1; int dd = 1; int ee = 1; int ff = 1; int gg = 1; int hh = 1; // Frequency int iFreg = 0; int iNoteA = 0; int iNoteB = 0; int iNoteC = 0; int iNoteD = 0; int iNoteE = 0; int iNoteF = 0; int iNoteG = 0; int iNoteAA = 0; // Oscillator Functions declared for output envelope 1 // Sine Wave Oscil <2048, AUDIO_RATE> aSin1(SIN2048_DATA); // ADSR declaration/definition // Comment out to use default control rate of 64 #define CONTROL_RATE 128 ADSR envelope1; // Rotary Switch // Number 1 => 10 int iRotNum = A0; // iRotVal - Value int iRotVal = 0; // Number int z = 0; // Software Version Information String sver = "16-13"; void loop() { // Audio Hook audioHook(); }
getKeyboard.ino
// getKeyboard // setupKeyboard void setupKeyboard() { // Initialize the pushbutton pin as an input pinMode(iKeyboard2, INPUT_PULLUP); pinMode(iKeyboard3, INPUT_PULLUP); pinMode(iKeyboard4, INPUT_PULLUP); pinMode(iKeyboard5, INPUT_PULLUP); pinMode(iKeyboard6, INPUT_PULLUP); pinMode(iKeyboard7, INPUT_PULLUP); pinMode(iKeyboard8, INPUT_PULLUP); pinMode(iKeyboard9, INPUT_PULLUP); } // isKeyboard void isKeyboard() { // Read the state of the pushbutton value if ( digitalRead(iKeyboard2) == LOW ) { // Button is pressed - pullup keeps pin high normally aa = aa + 1; // Rotary Switch isRot(); // ADSR declaration/definition envelope1.noteOn(); aSin1.setFreq( iNoteA ); } else { aa = aa - 1; } // Read the state of the pushbutton value if ( digitalRead(iKeyboard3) == LOW ) { // Button is pressed - pullup keeps pin high normally bb = bb + 1; // Rotary Switch isRot(); // ADSR declaration/definition envelope1.noteOn(); aSin1.setFreq( iNoteB ); } else { bb = bb - 1; } // Read the state of the pushbutton value if ( digitalRead(iKeyboard4) == LOW ) { // Button is pressed - pullup keeps pin high normally cc = cc + 1; // Rotary Switch isRot(); // ADSR declaration/definition envelope1.noteOn(); aSin1.setFreq( iNoteC ); } else { cc = cc - 1; } // Read the state of the pushbutton value if ( digitalRead(iKeyboard5) == LOW ) { // Button is pressed - pullup keeps pin high normally dd = dd + 1; // Rotary Switch isRot(); // ADSR declaration/definition envelope1.noteOn(); aSin1.setFreq( iNoteD ); } else { dd = dd - 1; } // Read the state of the pushbutton value if ( digitalRead(iKeyboard6) == LOW ) { // Button is pressed - pullup keeps pin high normally ee = ee + 1; // Rotary Switch isRot(); // ADSR declaration/definition envelope1.noteOn(); aSin1.setFreq( iNoteE ); } else { ee = ee - 1; } // Read the state of the pushbutton value if ( digitalRead(iKeyboard7) == LOW ) { // Button is pressed - pullup keeps pin high normally ff = ff + 1; // Rotary Switch isRot(); // ADSR declaration/definition envelope1.noteOn(); aSin1.setFreq( iNoteF ); } else { ff = ff - 1; } // Read the state of the pushbutton value if ( digitalRead(iKeyboard8) == LOW ) { // Button is pressed - pullup keeps pin high normally gg = gg + 1; // Rotary Switch isRot(); // ADSR declaration/definition envelope1.noteOn(); aSin1.setFreq( iNoteG ); } else { gg = gg - 1; } // Read the state of the pushbutton value if ( digitalRead(iKeyboard9) == LOW ) { // Button is pressed - pullup keeps pin high normally hh = hh + 1; // Rotary Switch isRot(); // ADSR declaration/definition envelope1.noteOn(); aSin1.setFreq( iNoteAA ); } else { hh = hh - 1; } }
getMozzi.ino
// Mozzi // Update Control void updateControl(){ // Frequency isPitches(); // Keyboard isKeyboard(); } // Update Audio int updateAudio(){ // ADSR declaration/definition envelope1.update(); // Oscillator // >>8 for AUDIO_MODE STANDARD return (int) (envelope1.next() * aSin1.next())>>8; }
getPitches.ino
// Pitches // isPitches void isPitches(){ // Range Frequency Note Low => High switch ( iFreg ) { case 1: // NOTE A1 iNoteA = NOTE_A1; iNoteB = NOTE_B1; iNoteC = NOTE_C2; iNoteD = NOTE_D2; iNoteE = NOTE_E2; iNoteF = NOTE_F2; iNoteG = NOTE_G2; iNoteAA = NOTE_A2; break; case 2: // NOTE A2 iNoteA = NOTE_A2; iNoteB = NOTE_B2; iNoteC = NOTE_C3; iNoteD = NOTE_D3; iNoteE = NOTE_E3; iNoteF = NOTE_F3; iNoteG = NOTE_G3; iNoteAA = NOTE_A3; break; case 3: // NOTE A3 iNoteA = NOTE_A3; iNoteB = NOTE_B3; iNoteC = NOTE_C4; iNoteD = NOTE_D4; iNoteE = NOTE_E4; iNoteF = NOTE_F4; iNoteG = NOTE_G4; iNoteAA = NOTE_A4; break; case 4: // NOTE A4 iNoteA = NOTE_A4; iNoteB = NOTE_B4; iNoteC = NOTE_C5; iNoteD = NOTE_D5; iNoteE = NOTE_E5; iNoteF = NOTE_F5; iNoteG = NOTE_G5; iNoteAA = NOTE_A5; break; case 5: // NOTE A5 iNoteA = NOTE_A5; iNoteB = NOTE_B5; iNoteC = NOTE_C6; iNoteD = NOTE_D6; iNoteE = NOTE_E6; iNoteF = NOTE_F6; iNoteG = NOTE_G6; iNoteAA = NOTE_A6; break; case 6: // NOTE A6 iNoteA = NOTE_A6; iNoteB = NOTE_B6; iNoteC = NOTE_C7; iNoteD = NOTE_D7; iNoteE = NOTE_E7; iNoteF = NOTE_F7; iNoteG = NOTE_G7; iNoteAA = NOTE_A7; break; case 7: // NOTE A7 iNoteA = NOTE_A7; iNoteB = NOTE_B7; iNoteC = NOTE_C8; iNoteD = NOTE_D8; iNoteE = NOTE_E8; iNoteF = NOTE_F8; iNoteG = NOTE_G8; iNoteAA = NOTE_A8; break; } }
getRot.ino
// Rotary Switch // isRot - iRotVal - Value void isRot() { // Rotary Switch z = analogRead( iRotNum ); iRotVal = map(z, 0, 1023, 0, 9); // Range Value switch ( iRotVal ) { case 0: // Sine Wave // Frequency iFreg = 1; break; case 1: // Sine Wave // Frequency iFreg = 2; break; case 2: // Sine Wave // Frequency iFreg = 3; break; case 3: // Sine Wave // Frequency iFreg = 4; break; case 4: // Sine Wave // Frequency iFreg = 5; break; case 5: // Sine Wave // Frequency iFreg = 6; break; case 6: // Sine Wave // Frequency iFreg = 7; break; case 7: // Z envelope1.noteOff(); break; case 8: // Z envelope1.noteOff(); break; case 9: // Z envelope1.noteOff(); break; } }
pitches.h
/***************************************************************** * Pitches NOTE_B0 <=> NOTE_B8 - NOTE_A4 is "A" measured at 440Hz *****************************************************************/ #define NOTE_B0 31 #define NOTE_C1 33 #define NOTE_CS1 35 #define NOTE_D1 37 #define NOTE_DS1 39 #define NOTE_E1 41 #define NOTE_F1 44 #define NOTE_FS1 46 #define NOTE_G1 49 #define NOTE_GS1 52 #define NOTE_A1 55 #define NOTE_AS1 58 #define NOTE_B1 62 #define NOTE_C2 65 #define NOTE_CS2 69 #define NOTE_D2 73 #define NOTE_DS2 78 #define NOTE_E2 82 #define NOTE_F2 87 #define NOTE_FS2 93 #define NOTE_G2 98 #define NOTE_GS2 104 #define NOTE_A2 110 #define NOTE_AS2 117 #define NOTE_B2 123 #define NOTE_C3 131 #define NOTE_CS3 139 #define NOTE_D3 147 #define NOTE_DS3 156 #define NOTE_E3 165 #define NOTE_F3 175 #define NOTE_FS3 185 #define NOTE_G3 196 #define NOTE_GS3 208 #define NOTE_A3 220 #define NOTE_AS3 233 #define NOTE_B3 247 #define NOTE_C4 262 #define NOTE_CS4 277 #define NOTE_D4 294 #define NOTE_DS4 311 #define NOTE_E4 330 #define NOTE_F4 349 #define NOTE_FS4 370 #define NOTE_G4 392 #define NOTE_GS4 415 #define NOTE_A4 440 #define NOTE_AS4 466 #define NOTE_B4 494 #define NOTE_C5 523 #define NOTE_CS5 554 #define NOTE_D5 587 #define NOTE_DS5 622 #define NOTE_E5 659 #define NOTE_F5 698 #define NOTE_FS5 740 #define NOTE_G5 784 #define NOTE_GS5 831 #define NOTE_A5 880 #define NOTE_AS5 932 #define NOTE_B5 988 #define NOTE_C6 1047 #define NOTE_CS6 1109 #define NOTE_D6 1175 #define NOTE_DS6 1245 #define NOTE_E6 1319 #define NOTE_F6 1397 #define NOTE_FS6 1480 #define NOTE_G6 1568 #define NOTE_GS6 1661 #define NOTE_A6 1760 #define NOTE_AS6 1865 #define NOTE_B6 1976 #define NOTE_C7 2093 #define NOTE_CS7 2217 #define NOTE_D7 2349 #define NOTE_DS7 2489 #define NOTE_E7 2637 #define NOTE_F7 2794 #define NOTE_FS7 2960 #define NOTE_G7 3136 #define NOTE_GS7 3322 #define NOTE_A7 3520 #define NOTE_AS7 3729 #define NOTE_B7 3951 #define NOTE_C8 4186 #define NOTE_CS8 4435 #define NOTE_D8 4699 #define NOTE_DS8 4978 #define NOTE_E8 5274 #define NOTE_F8 5588 #define NOTE_FS8 5920 #define NOTE_G8 6272 #define NOTE_GS8 6645 #define NOTE_A8 7040 #define NOTE_AS8 7459 #define NOTE_B8 7902
setup.ino
// Setup void setup() { // Setup Keyboard setupKeyboard(); // Start Mozzi startMozzi( CONTROL_RATE ); // Sets Attack and Decay Levels; assumes Sustain, Decay, and Idle times envelope1.setADLevels(200,200); // Sets Decay time in milliseconds envelope1.setDecayTime(100); // Sustain Time setting for envelope1 envelope1.setSustainTime(32500); }
Sounds
https://www.donluc.com/DLE/sounds.html
Technology Experience
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi,Espressif, etc…)
- Robotics
- 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
- 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
https://www.donluc.com/DLE/LucPaquinCVEngMk2020a.pdf
Web: https://www.donluc.com/
Web: http://www.jlpconsultants.com/
Web: https://www.donluc.com/DLE/
Web: https://www.donluc.com/DLHackster/
Web: https://www.hackster.io/neosteam-labs
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