Hi Mike,
The three easiest approaches I can think of are using an ultrasonic sensor, a capacitive touch sensor, or a light-based sensor. I typically use Adafruit to research sensors in these situations and they've been pretty reliable (I promise I'm not getting kickbacks for saying this), but you can also do google searches and find similar products to what Adafruit sells, sometimes for cheaper!
Ultrasonic:
Never used this but probably what I would go with. Cheap, effective and pi-compatible - this will detect how far away a person's hand is, so you can just program it to trigger within x centimeters of the sensor. Only setback might be aesthetics since you need to keep the two cylinders unobstructed, but if you can make a nice house for it, not so bad.
https://www.adafruit.com/product/3942
Similar to the above, but laser-based and easier to hide
https://www.adafruit.com/product/3317
Light:
Lots of different light sensors. Basic idea would be if a certain amount of light is blocked, the pi will know to trigger a function. Disadvantage is if this is in an area where light fluctuates, it might get triggered by the fluctuations, so you wouldn't want this by a window for example. You could control that by having a light pointed at the sensor so that it is constantly detecting a large amount of light, then when a person's hand gets in the way, it blocks that light.
https://www.adafruit.com/product/4162
Cap Touch:
A capacitive touch sensor senses electricity in the air, if the user's hand gets close enough, it will trigger it like a button. You can usually increase the sensitivity on these to allow the user's hand to be farther away, BUT it'll still probably have to be fairly close, so might want to go with one of the above options. If the sensitivity is strong enough you can hide these sensors from view.
This is the cheapest I've found that's pi compatible, but the sensitivity isn't that great, so a person would have to get pretty close to trigger it.
https://www.adafruit.com/product/1374?gclid=CjwKCAiAoOz-BRBdEiwAyuvA6zSYNoXc6bsyYJTr7gOqt368h_vMpgfiK1EKM3sJH5sExfUJ9m4TThoC3l4QAvD_BwE
Never used this, but I assume you can adjust its sensitivity. Might be overkill if you need just one button.
https://www.adafruit.com/product/2340
If you need directional/gesture recognition, like detecting if the user swipes their hand up/down/left/right a 3D gesture sensor is the way to go. You can just slap one of these on top of the pi and install the software, and modify their premade code. First link I've use, definitely works, and is fairly easy if you're used to using raspberry pi's, second link is probably about the same.
https://www.digikey.com/en/products/detail/seeed-technology-co.,-ltd/103100083/10451872
https://www.adafruit.com/product/2325
Let me know if you have any questions!
------------------------------
Ian McDermontt
Creative Technologist
Hirshhorn Museum and Sculpture Garden
Washington DC
------------------------------
Original Message:
Sent: 12-16-2020 02:37 PM
From: Mike Watson
Subject: Touchless "buttons"
We're working on switching over some of our "push to start the video" buttons into touchless triggers. I have seen "wave hand" sensors around town (mostly to operate ADA doors) but I can't find a solution to trigger a Raspberry Pi - essentially something low-volt with a normal open position. This seems like something everyone in the free world would need and would be readily available, but I just don't see the right option out there. What are you using?
------------------------------
Mike Watson
San Diego History Center
San Diego CA
------------------------------