——
#DonLucElectronics #DonLuc #ESP32 #Bluetooth #ThumbJoystick #Keyboard #Arduino #Project #Fritzing #Programming #Electronics #Microcontrollers #Consultant
——
——
——
——
Bluetooth
Bluetooth is a short-range wireless technology standard that is used for exchanging data between fixed and mobile devices over short distances and building personal area networks. It employs UHF radio waves in the ISM bands, from 2.402 GHz to 2.48 GHz. It is mainly used as an alternative to wire connections, to exchange files between nearby portable devices, computer and connect cell phones and music players with wireless headphones. In the most widely used mode, transmission power is limited to 2.5 milliwatts, giving it a very short range of up to 10 metres.
DL2210Mk01
1 x Adafruit HUZZAH32 – ESP32 Feather
1 x Lithium Ion Battery – 2500mAh
1 x Thumb Joystick
1 x SparkFun Thumb Joystick Breakout
1 x SparkFun Cerberus USB Cable
ESP32 Feather
JY0 – Analog A0
JY1 – Analog A5
SE0 – Digital 13
VIN – +3.3V
GND – GND
——
DL2210Mk01p.ino
/* ***** Don Luc Electronics © *****
Software Version Information
Project #16: Sound - Bluetooth - Mk21
16-21
DL2210Mk01p.ino
1 x Adafruit HUZZAH32 – ESP32 Feather
1 x Lithium Ion Battery - 2500mAh
1 x Thumb Joystick
1 x SparkFun Thumb Joystick Breakout
1 x SparkFun Cerberus USB Cable
*/
// Include the Library Code
// ESP32 BLE Keyboard
#include <BleKeyboard.h>
// ESP32 BLE Keyboard
BleKeyboard bleKeyboard;
// Connections to joystick
// Vertical
const int VERT = A0;
// Horizontal
const int HORIZ = A5;
// Pushbutton
const int SEL = 13;
// Initialize variables for analog and digital values
int vertical;
int horizontal;
int selec;
// Software Version Information
String sver = "16-21";
void loop() {
// ESP32 BLE Keyboard
if(bleKeyboard.isConnected()) {
// Thumb Joystick
isThumbJoystick();
}
// Delay
delay( 1000 );
}
getThumbJoystick.ino
// Thumb Joystick
void isThumbJoystick() {
// Read all values from the joystick
// Joystick was sitting around 2047 for the vertical and horizontal values
// Will be 0-4095
// Vertical
vertical = analogRead(VERT);
if (vertical == 4095) {
// Volume Up
bleKeyboard.write(KEY_MEDIA_VOLUME_UP);
} else if (vertical == 0) {
// Volume Down
bleKeyboard.write(KEY_MEDIA_VOLUME_DOWN);
}
// Horizontal
// Will be 0-4095
horizontal = analogRead(HORIZ);
if (horizontal == 4095) {
// Previous Track
bleKeyboard.write(KEY_MEDIA_PREVIOUS_TRACK);
} else if (horizontal == 0) {
// Next Track
bleKeyboard.write(KEY_MEDIA_NEXT_TRACK);
}
// Will be HIGH (1) if not pressed, and LOW (0) if pressed
selec = digitalRead(SEL);
if (selec == 0) {
// Play/Pause media key
bleKeyboard.write(KEY_MEDIA_PLAY_PAUSE);
}
}
setup.ino
// Setup
void setup() {
// Make the SEL line an input
pinMode(SEL, INPUT_PULLUP);
// ESP32 BLE Keyboard
bleKeyboard.begin();
}
——
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)
Instructor and E-Mentor
- IoT
- PIC Microcontrollers
- Arduino
- Raspberry Pi
- Espressif
- Robotics
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


