The VR PatPat
usually just called the patpat... idk why i bother with the vr part
What?
This is just a lil doodad that I put together to let me feel when people pat my head or pull my ears in vrchat. My middleware receives touch data from the game, and sends it to the main module, which controls all 3 motors.
why?
...I like headpats. In person or virtual, I like having someone I trust pet, pat, rub, or scratch my head, just feels nice. It's rare I can get that in person, but headpats are a staple of VRChat. Sooo, why not combine the 2?
where?
my head, stoopid, keep up
how?
This is the complicated bit... sorta. VRChat has support for osc, which was originally intended for virtual instruments, like midi. However, the ability to send and receive settings for a tree of traits is useful for avatar data, on both ends. With a custom avatar (some others will work, but custom is easiest), I set up some colliders so I can detect when someone pats my head or pulls my ears. This triggers a message over osc, which I can pick up in a custom middleware. I'd love to send the data straight to the esp8266, but that might blow it up, since VRChat sends a firehose of osc data wherever it's pointed. So, I made a program in nodejs to take in that osc data, filter out what I need, and send over the respective data to the headstrap, which runs a custom firmware. The headstrap, for now, runs a web server that will change the vibration levels of each module via a get endpoint. There's better ways to do this, but it works well enough for me.
should others try to build one?
Honestly? maybe. I don't plan on making a guide for these, since they're not designed super well, but everything someone would need to recreate it is public. The screws are a bit of a mix, the haptic vibration modules are reasonably cheap, and you can't trip and fall in a maker's workspace without seeing a d1 mini on the way down. Should you try to make one yourself, good luck! I won't hold your hand, but I tried not to leave out any rakes that might get in your way.
and now, more pics, because why not
