Hackaday has awarded this project with the HCI award and some financing to help the project. First off, thank you Hackaday!!!!! To reinvest some of the money into the project, explore more HC interactions, and to enhance the Atltvhead experience I am building a high five sensor.
Most of the communication goes one way, chat types -> the tv changes. But I want to give some IRL people control in chat (at least emoji spam). Allow for some physical action to have a digital presence, just as chat's digital presence impacts the physical screen.
The Needs:
- Must be a separate wearable device
- Battery must last longer than Atltvhead's
- Must be able to offload as much of the tvhead's chatbot code as possible
- Must interact with Twitch (wifi) separate from the tvhead head
- 1 week prototype
The Desires:
- Creates a separate mode to for all existing commands
- Creates a party atmosphere in the chatroom
- Code offloads all features not directly related to running the Tv screen
A large part of my design decisions were based around my 1 week constraint. I wanted as close to a functional prototype glove done in time for this weeks stream. So here are the materials I had on hand when deciding what to do:
- Esp32
- Prusa Mk3 3D printer (PETG)
- Steel Thread (conductive)
- Velostat
- Biking Glove
- Wristband
Luckily the Esp32 has some capacitive sensing pins and features. It even has the ability to have a capacitive touch interrupts (oh boi).
int threshold = 62; // The higher this number the more sensitive the touch capabilites.
bool touch1detected = false;
void gotTouch1(){
touch1detected = true;
}
void setup(){
Serial.begin(115200);
touchAttachInterrupt(T6, gotTouch1, threshold); //T6 is pin 14
}
void loop(){
if(touch1detected){
touch1detected = false;
delay(500); // timer based debounce
Serial.println("Touch 1 detected");
}
}
The Build
For the Esp32, I took the conductive thread, wrapped it around pin 14, soldered the pin closed, superglued the thread, and cut it (I decided not to use the velostat). I rushed a rough CAD housing for the esp32 with some features to hang onto the wristband (files are located in the file section of this project). Lastly, I took the other end of the conductive thread and sewed it into the biking glove. At the end it all ended up looking like this:
// I added this to where the chat is being read in my atltvhead code
else if(ircMessage.text =="High Five Mode Initiated"){
color = cHue;
for(int ppgLooper =0; ppgLooper <= 3; ppgLooper++){
for(int indPPG =0; indPPG<=5;indPPG++){
ppg(indPPG);
}
}
color = 211;
chanel = 4;
channelSwitch = true;
}
What is next?!
As of today, I tested it live during a stream. I'll have a highlight video out later this week. There are a good amount of hickups with this design though. How capacitivity changed throughout the stream. I tested it while I was wearing the glove, and even while I was wearing atltvhead to account for the added capacity. However I got sweaty, and sweaty people conduct differently. This caused multiple misfires and endlessly looped the ppg animation.
I plan to get in some conductive fabric and make a soft button to replace the capacitve switch. I know I know, I could code a constant calibration section to the capacitive touch. If it triggers 10 times in less than a certain amount of time, back off the sensitivity and try again. Actually I probably will code this until I can make the soft button.
Oh Well that is all! I plan to keep working on the High Five Glove/sensor for Atltvhead and will get that video out soon! Thank you Hackaday for the support and hope I can use it to grow the project!
-Nate
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.