Imagine if chefs couldn't taste, artists couldn't see, and musicians couldn't hear.
Those jobs would be basically impossible, but that's exactly how things work for
anyone building electronics. Us humans just can't perceive electric current, except
y'know, when we're getting zapped by it. If I could sense the current traveling through a wire,
I could literally poke around in my projects and feel the power flowing and the chips
chattering. Today, I'm going to give myself a super power.
...right after I deal with this hangover.
[Jazzy funk tune goes "la la la la la la"]
Huge announcement: I have just launched my Patreon campaign!
I'll tell you more at the end, but tl;dr, give me all your money. Link is in the description.
So check this out. Whenever electricity flows through a circuit, it creates a magnetic field
around the conductor. The more current flows through the wire, the bigger and stronger the
magnetic field surrounding it. This works the other way too; when we cut the current through
the wire, the magnetic field will collapse back into electricity and send a bit of voltage in
the opposite direction. All we have to do is put the right sensor into the magnetic field
and it'll tell us how powerful it is, which in turn tells us how much current created it.
So this is a digital compass, which is a type of magnetometer you'll find in
smartphones and watches. This thing detects magnetic fields themselves,
so we don't have to wait for them to collapse back into electricity to measure them.
So let's demonstrate. I'm going to hook this thing up to a Teensy, of course,
and I'll stream each axis of the compass to this graph. You can see that as I turn it around,
it picks up the earth's magnetic field just fine. Watch as I wave a very,
very tiny magnet around, and again, it makes a huge impact on the readings.
So I'll put this wire over it and run some current through it, and it doesn't make a dent...
...actually it does. The resolution' s not great, but this thing totally picks up the current
traveling through the wire. I really should do the experiments BEFORE I write the episodes.
We're going to need a more sensitive sensor. Another option would be Hall-effect sensors, like
the ones I use to detect my fingers in this data glove. Those won't work either, unfortunately;
you can absolutely buy Hall sensors that can detect super-small DC currents, but you have to
put a ferrite ring around the wire to concentrate the magnetic field on the sensor. I can't clamp
a sensor over a wire and a circuit board, because the wires are... in a circuit board!
[Goofy-style G'HYUCK!]
What we need is a fluxgate magnetometer. That sounds like some star trek bull[REDACTED] but
trust me, it's a very real and very precise magnetic sensor. This is a Texas Instruments
DRV425 fluxgate magnetic-field sensor. We just power it here, ground it here,
this is our reference voltage, and this voltage is proportional to the strength of-vuvuv the of the
magnetic field... the strength of the magnetic field... all right, I'm done with this scene.
You can clearly see that when I turn on the power through this wire, the fluxgate picks
up that very faint magnetic field. As I turn up the juice, the reading increases in proportion.
The fluxgate itself is just a tiny piece of magnetizable material wrapped in two coils of
wire. The drive coil magnetizes the core with an electric current and then shuts off. That
magnetic field collapses back into an electric current, which is picked up by the sense coil,
and the device measures it. Then the drive coil magnetizes the core again,
but in the OPPOSITE DIRECTION. It shuts off, sense coil measures again. So,
back and forth it goes, creating a magnetic field, allowing it to collapse, measuring it,
creating the opposite magnetic field, allowing it to collapse, and measuring that too.
So these readings should be symmetrical; in fact, we should always get the same amount
of current out of the sense coil as we put in through the drive coil because, like, y'know,
where the hell else is it gonna go? But if we expose the sensor to a magnetic field,
heh-hey hey! The field helps the drive coil in one direction, so it charges the
core faster and returns a higher reading. The field FIGHTS the coil in the other direction,
which prevents it from charging the core all the way, and it reduces the reading.
It's just... a current transformer... in disguise.
[Palpable awkwardness]
...arright...
This thing is sensitive enough to pick up the faint magnetic field around a current-carrying
wire with, like, a really high level of accuracy. By measuring the difference between the readings
in each direction, we can tell not only how powerful the magnetic field, is but also which
direction it's pointing. In this sensor the core runs from the left side to the right side, so it
detects current on wires going from the top side to the bottom side. That's because current follows
a right hand rule, so if the current is flowing thiiis way, magnetic field forms thiiis way.
By the way, I usually skip over the theory, but in this episode I decided to mix it up and dive
a little deeper. Did you enjoy learning a bit about electromagnetism, or should I just shut
up and jump into the project? Did I do a good job of explaining this stuff? Drop me a comment and
roast me up real good; I am still trying to find the perfect blend of education and "education."
So for this project we're NOT using a Teensy!
[Gasps from live studio audience]
We are using the Adafruit NRF52 Feather because it integrates the battery circuitry that we need
to turn this into a wearable. This thing also acts as a Bluetooth Low Energy master device,
which is important, because it lets us connect to this Buzz wristband. I am using this vibrating
wristband instead of, just, you know, adding vibrating motors to the project, because drunk me
drunkenly entered a developer contest on Hackster and if I ghost them one more time, they're gonna
stop sending me free hardware. I tried to convince the company that makes this, Neosensory,
to sponsor this episode, but the CTO called the hell out of this bluff.
Enjoy the free PR, Scott.
All right, so what the hell is this thing anyways? Well, out of the box,
the Neosensory Buzz translates the volume and pitch of incoming sounds into vibrating
patterns on these four rumble motors. It lets you touch sound. If you're hard of hearing,
this sensory substitution can improve your lip reading and alert you to cars
skidding out of control behind you. If your hearing is fine, it's...
it's kind of useless. But I guess it makes your speakers sound like a bass booming rave?
[Tacky 90's trance]
[Oontz oontz oontz]
[Trance still playing in background]
Give this thing to Elon Musk and throw them in a closet with three tabs of acid,
he'll get us to Mars in like 20 minutes.
All you have to do is call some functions and the Feather connects straight to the Buzz,
overrides the sound-to-vibes functionality, and directly tells it when it's ready to rumble.
Somewhere along the way, fun fact, your sketch has to agree to Neosensory's terms and conditions.
I Am Not A Lawyer, but I really doubt that you can sue an embedded device when it breaks an end-user
license agreement. It does this by literally saying the word 'agree' over Bluetooth serial.
Somebody overthought the HELL out of this and I love it.
This thing's really simple to build. We just wire the sensor up to power and ground,
we run the output and reference pins to the Feather's analog inputs, we tell the thing
to vibrate when the thing senses the thing, and there we go! I can now feel electric current.
I mean, like, you have to trust me on that; uh, you can't feel anything through YouTube. I wish
I wish you could, though. I'll tell you what... uh... put your phone on your wrist,
and on the count of three, I will turn on the current and you
shake your phone around. Desktop and TV people, like, I don't know. Figure it out.
One... two... three...
[Buzzy mouth noises] [bvvvvvvvvvvvvvvvvv]
Fine. We'll visualize it too. Here's an LED shield - I mean an Adafruit
DotStar Matrix FeatherWing™, all rights reserved.
Ermegerd, merchernical erngernering!
I fired up Fusion 360 and I modeled a nice three-part enclosure that glues right onto
this weightlifter's glove. This is actually the leftover glove from the Somatic project,
which is why you should never throw anything away,
ever. This sandwiches the boards and braces the battery, so we avoid some lithium-splosions.
I'm going to glue this onto the glove with some E6000 and screw it all shut.
Now, we gotta make the wearable sensor wearable. Magnetic fields weaken with distance,
so I designed this little ring that exposes the sensor so we can really mash it into the wire
we're measuring. I printed this in flexible TPU, which makes it a lot more comfortable to wear,
but also lets me design a little pocket to snug the sensor board in there.
I add a little cable management on the fingernail, so I can route the wires gracefully over my hand.
It's important to leave some slack so I can bend my finger,
so I printed this little clippy dingus to keep the wires from snagging on protuberances.
I will just display a simple linear plot of current over
time and add some flamboyant color coding to make it camera-friendly.
[In the manner of an elevated individual] Now you can, like, see what I feel, man.
Electronic status: Done. The code is also done, but my analytics show that about 30%
of you people run away as soon as I put a line of code on screen. You can download it
yourself and see what it looks like. Links to everything are down in the description.
I will give you the spoiler though... it looks like code.
[Triumphant music] All that's left is to give this thing a name! Ladies, gentlemen, and cyborgs,
say hello...
to the THUNDER FINGER! [Record scratch]
I REALLY suck at naming things.
So we're powered up, linked up, locked, loaded. there's a chance that I'm currently the only
homo sapiens capable of feeling direct current. Let's finger some electrons!
This thing actually works alright for a ten-hour project. It isn't as sensitive as it should be,
but that has more to do with the deadline than the hardware. If I had some time to tweak,
I could calibrate the DRV425's response range to better pick up what I'm looking for
you. I could also feed the output reference voltages into a differential amplifier,
which would increase our resolution. Also, I'm polling the sensor super-slow because
it makes the code easier to write, but we can actually read the fluxgate up to 23,000 times
a second. With the right code, we could decode PWM pulses, we could pick up audio transmissions,
we could even sniff 9600-baud serial traffic. I could convert each one
to a different tactile texture so I can debug and hack electronics with my finger.
This finger, in fact. This one.
Of course, the Thunder Finger's vibrating motor should really be thundering my finger
but not my... wrist... but come on, the Buzz was free. It's free hardware. Speaking of,
I am putting a link to the Hackster Neosensory contest in the description, because Hackster
has promoted a bunch of my projects, so it's about time I return the favor. There's still
two weeks left in the contest. I'm looking forward to getting stuffed by each and every one of you.
If you want to build the Thunder Finger for yourself,
I'm putting the links in the description.
I'm pretty sure you can actually buy all the parts for this project, so knock yourself out!
Big announcement, my Patreon campaign is live! The super-duper-rad perks include
a monthly Q&A stream, sneak peeks at upcoming projects,
Brooke's trolltastic blooper reel. I need your support to buy parts and make awesome projects,
so if you want to see more videos, it would totally rule if you can kick in a few bucks.
My glorious Lab Patrons get access to the top-secret supporter-only channels in the Discord,
which has 2,600 friendly members and five jerks. It doesn't make any money,
but it does make friends, and isn't... isn't the real money the friends you make along the way?
...No, it's money. You can't pay rent with friends.
Thanks for watching, and I'll feel you in the future!