GymCam Knows Exactly What You’ve Been Doing In The Gym

Getting exact statistics on one’s physical activities at the gym, is not an easy feat. While most people these days are familiar with or even regularly use one of those motion-based trackers on their wrist, there’s a big question as to their accuracy. After all, it’s all based on the motions of just one’s wrist, which as we know leads to amusing results in the tracker app when one does things like waving or clapping one’s hands, and cannot track leg exercises at the gym.

To get around the issue of limited sensor data, researchers at Carnegie Mellon University (Pittsburgh, USA) developed a system based around a camera and machine vision algorithms. While other camera solutions that attempt this suffer from occlusion while trying to track individual people as accurately as possible, this new system instead doesn’t try to track people’s joints, but merely motion at specific exercise machines by looking for repetitive motion in the scene.

The basic concept is that repetitive motion usually indicates forms of exercise, and that no two people at the same type of machine will ever be fully in sync with their motions, so that merely a handful of pixels suffice to track motion at that machine by a single person. This also negates many privacy issues, as the resolution doesn’t have to be high enough to see faces or track joints with any degree of accuracy.

In experiments at the university’s gym, the accuracy of their system over 5 days and 42 hours of video. Detecting exercise activities in the scene was with a 99.6% accuracy, disambiguating between simultaneous activities was 84.6% accurate, while recognizing exercise types was 93.6% accurate. Ultimately repetition counts for specific exercises were within 1.7 counts.

Maybe an extended version of this would be a flying drone capturing one’s outside activities, giving one finally that 100% accurate exercise account while jogging?

Thanks to [Qes] for sending this one in!

These Tips Make Assembling A Few Hundred PCBs Easier

There are a few common lessons that get repeated by anyone who takes on the task of assembling a few hundred PCBs, but there are also unique insights to be had. [DominoTree] shared his takeaways after making a couple hundred electronic badges for DEFCON 26 (that’s the one before the one that just wrapped up, if anyone’s keeping track.) [DominoTree] assembled over 200 Telephreak badges and by the end of it he had quite a list of improvements he wished he had made during the design phase.

Some tips are clearly sensible, such as adding proper debug and programming interfaces, or baking an efficient test cycle into the firmware. Others are not quite so obvious, for example “add a few holes to your board.” Holes can be useful in unexpected ways and cost essentially zero. Even if the board isn’t going to be mounted to anything, a few holes can provide a way to attach jigs or other hardware like test fixtures.

[DominoTree] ended up having to attach multiple jumper wires to reprogram boards after assembly, and assures us that “doing this a bunch of times really sucked.”
Other advice is more generic but no less important, as with “eliminate as many steps as possible.” Almost anything adds up to a significant chunk of time when repeated hundreds of times. To the basement hacker, something such as pre-cut and pre-tinned wires might seem like a shameful indulgence. But cutting, stripping, tinning, then hand-soldering a wire adds up to significant time and effort by iteration number four hundred (that’s two power wires per badge) even if one isn’t staring down a looming deadline.

[DominoTree] also followed up with additional advice on making assembly easier. Our own [Brian Benchoff] has also shared his observations on the experience of developing and assembling a large number of Hackaday Superconference badges, including what it took to keep things moving along when inevitable problems surfaced.

You don’t need to be making batches of hundreds for these lessons to pay off, so keep them in mind and practice them on your next project.

High Voltage Protects Low Denominations

How do you keep people out of your change jar? If you didn’t say with a 3D printed iris mechanism and high-voltage spark gap, then clearly you aren’t [Vije Miller]. Which is probably for the best, as we’re not sure we actually want to live in a world where there are two of these things.

Regular Hackaday readers will know that [Vije] has a way of using electromechanical trickery to inject a bit of excitement, and occasionally a little danger, into even the most mundane aspects of life. His latest project is an automated change jar that uses a pinpad to authenticate users, while everyone else gets the business end of a spark gap if the PIR sensor detects them getting to close.

You can see a demonstration of the jar in the video after the break, where he shows the jar’s ability to stop…himself, from getting access to it. Hey, nobody said it was meant to keep out real intruders. Though we do think a similar gadget could be a fun way to keep the kids out of the cookie jar before dinner, though we’d strongly suggest deleting the high-voltage component from the project before deploying it with a gullet full of Keebler’s best.

[Vije] was able to adapt a printable iris design he found on Thingiverse to fit over the mouth of the jar, and uses servos in the base to rotate the whole assembly around and open it up. The internal Arduino Nano handles reading from the pinpad, controlling the stepper, and of course firing up the spark generator for 1000 milliseconds each time the PIR sensor detects somebody trying to be cute. Just the sound of the arc should be enough to get somebody to reconsider the value of literal pocket change.

Some of the design elements used in this change jar’s high voltage components were influenced by the lessons learned when [Vije] was building his plasma-powered toilet air freshener. There’s a sentence we bet you never expected to read today.

Continue reading “High Voltage Protects Low Denominations”

Hack Your Brain To Stop Overeating

Sometimes the easiest advice can be the hardest to follow. For example: if you want to lose weight, you must eat right and exercise. You can avoid both and still lose weight by simply eating less, but that takes willpower.

Losing weight is one of the hardest things a person can do, because we have to eat to survive. That leaves the problem of stopping when we’re full. Here in the united states of high-fat foods and huge portions, that can be really, really difficult, as evidenced by the obesity statistics. But no matter where you live, it’s easy to ignore the ‘stomach full’ signal. It’s kind of slow, anyway. So how do you get yourself tuned into the signal? All it takes is a little classical conditioning.

Slim Band is simple, but effective. Basically, it’s a pack of breath-freshening strips strapped to a timer PCB and set into a watchband. Set the five-minute timer when you start eating, and when it goes off, take out a strip and mintify your mouth. By the time the minty-ness wears off, you should feel full enough to push your plate away. The convenience factor is a big plus—there’s no getting the phone out to set an alarm, or digging for mints in your pocket or purse.

Though the idea began as a personal improvement project, [Chaz] would like to see it widely adopted as a way of fighting obesity and evening out the world’s food distribution in the longer term. We would, too.

3D Printer Emission Monitor Quantifies The Stench

While we don’t yet know the long-term effects of hanging out around 3D printers, it doesn’t take a in-depth study to figure out that their emissions aren’t healthy. What smells toxic usually is toxic. Still, it’s oh-so-fun to linger and watch prints grow into existence, even when we have hundreds or thousands of hours of printing under our belts.

Most of us would agree that ABS stinks worse than PLA, and that’s probably because it releases formaldehyde when melted. PLA could be viewed as slightly less harmful because it has a lower melting point, and more volatile organic compounds (VOCs) are released at higher temperatures. Though we should probably always open a window when printing, human nature is a strong force. We need something to save us from our stubbornness, and [Gary Peng] has the answer: a smart 3D printer emission monitor.

The monitor continually checks the air quality and collects data about VOC emissions. As the VOCs become elevated during printing, the user is notified with visual, audio, and phone notifications. Green means you’re good, yellow means open a window, red means GTFO. There’s a brief demo after the break that also shows the phone interface.

The heart of this monitor is a CCS811 gas sensor, which provides VOC data to a Particle Photon. [Gary] built a simple Blynk interface to handle the alerts and graph historical VOC readings. He’s got the code and STLs available, so let this be the last time you watch something print in blissful semi-ignorance.

Concerned about air quality in general? Here’s a standalone portable monitor designed to quantify the soul-crushing stuffiness of meetings.

Continue reading “3D Printer Emission Monitor Quantifies The Stench”

Automate Sorting Your Trash With Some Healthy Machine Learning

Sorting trash into the right categories is pretty much a daily bother. Who hasn’t stood there in front of the two, three, five or more bins (depending on your area and country), pondering which bin it should go into? [Alvaro Ferrán Cifuentes]’s SeparAItor project is a proof of concept robot that uses a robotic sorting tray and a camera setup that aims to identify and sort trash that is put into the sorting tray.

The hardware consists of a sorting tray mounted to the top of a Bluetooth-connected pan and tilt platform. The platform communicates with the rest of the system, which uses a camera and OpenCV to obtain the image data, and a Keras-based back-end which implements a deep learning neural network in Python.

Training of the system was performed by using self-made photos of the items that would need to be sorted as these would most closely match real-life conditions. After getting good enough recognition results, the system was put together, with a motion detection feature added to respond when a new item was tossed into the tray. The system will then attempt to identify the item, categorize it, and instruct the platform to rotate to the correct orientation before tilting and dropping it into the appropriate bin. See the embedded video after the break for the system in action.

Believe it or not, this isn’t the first trash-sorting robot to grace the pages of Hackaday. Potentially concepts like these, that rely on automation and machine vision, could one day be deployed on a large scale to help reduce how much recyclable material end up in landfills. Continue reading “Automate Sorting Your Trash With Some Healthy Machine Learning”

KVM Foot Switch In A Few Steps

[Radishmouse], despite the handle, is not a mouse guy. Give him a keyboard and he will get around just fine in any OS or program. As it is, he’s got a handful of ThinkPads, each running a different OS. He wanted to be able to switch his nice mechanical keyboard between two laptops without the hassle of unplugging and replugging the thing. His solution: a DIY KVM foot switch.

He’s been learning about electronics and 3D design, and this problem was the perfect opportunity to dig in and get his hands dirty. After learning enough about the USB protocol and switches to figure out what had to happen, he made a prototype from a pâte tub. Though undeniably classy, this vessel would never survive the rigors of foot-stomping in feline territory. Fortunately, [radishmouse] has also been learning about 3D design. After some trial and error, he came up with a sturdy, curvy 3D-printed two-piece enclosure. We particularly like the blocks built into the bottom piece that shore up the USB ports.

There are lots of reasons to build input controls for those under-utilized appendages at the ends of your legs. You could control your ‘scope with a probe in each hand, or use a foot switch to relocate an inconvenient power button.

Via [r/functionalprint]