Embedded - 85: Stalked by Hoopers and Engineers
Episode Date: January 21, 2015Scott Miller built a hula hoop with Bluetooth, an inertial measurement unit, a 32-bit processor, an 8-bit processor, and a slew of individually addressable LEDs. It makes wild patterns when you move.... Scott's "normal" company, with all of its ham radio equipment, is Argent Data Systems. The hula hoops are Hyperion Hoops. You can buy a hoop. They are also on Facebook or you can watch the mesmerizing lightshow on YouTube (also here and here). Yes, the hula hoop does speak DMX512, doesn't everybody? Reaction Housing is hiring!
Transcript
Discussion (0)
This is Embedded, the show for people who love gadgets.
I'm Eliseo White with Christopher White,
and we're going to talk to Scott Miller of Argent Data Systems about Hula Hoops.
Yes, I said Hula Hoops.
Hula Hoops as embedded systems.
Yes.
But before we get started, Reaction Housing asked if we do sponsorships
because they wanted me to ask you all to send in a resume for their open electrical engineering
and embedded systems positions. But we haven't really gotten monetization together, so I was
just going to ask them to send some samples so I could give them away. Turns out they make houses. Houses for disaster zones,
which you have to say, it's pretty darn cool. So go check out their open recs.
And I will link in the show notes. In the meantime, Reaction Housing, and let's get back to it.
Hi, Scott. Thanks for joining us today.
Hi, thanks for having me on the show.
Could you tell us a bit about yourself?
Sure.
I'm a mostly self-educated programmer and embedded hardware guy.
I got kind of an early start.
I think I started out on the Commodore 64 at about age seven or eight.
I'm pretty sure the Commodore 64 Programmer's Reference Guide was my favorite book growing up.
I learned a whole lot from that.
I had all the basic language stuff and then all of the memory maps and the data sheets for all the major chips and the schematics.
So that was something I had to figure out, what all those things meant.
And then my family got into ham radio.
I got my ham radio license about age 10, started learning about electronics then.
And then by age 15, I was taking some electronics classes and computer science classes at the local community college.
So then I got into a career in IT and worked mostly as a contractor for the Air Force
and did that for about a decade or so.
And then the early 2000s,
I started working more on embedded hobby projects
and things again.
And one in particular, a ham radio-related project,
it just kind of snowballed.
It was a classic open-source scratching-an-itch sort of thing.
It was something I wanted to experiment with
and made a few kits and made a few more kits for other people to try out that were interested in it
and it just kind of went from there until uh in 2004 i uh started my company argent data systems
to work on those and then 2008 i went full time and so now you primarily make kits for ham radio.
Yeah, up until the last six months or so.
Yeah, it's been mostly ham related things.
Mostly low speed data stuff for tracking, telemetry, weather systems, and some voice stuff like Simplex repeater. And it's not strictly HAM. A lot of that stuff gets used
for commercial applications too. A lot of the commercial applications are in
really remote locations or they're for
public service type things like search and rescue teams,
Red Cross chapters, stuff like that.
And then the last six months, the hula hoops have turned into kind of a big thing.
I really want to talk about that.
But I also kind of want to build the picture of what you were doing before hula hoops tried to take over your life. And so the kits you're making include automatic packet reporting systems for vehicle tracking.
Is that one of the ones I saw?
Right. Yeah, that was the initial kit that kind of got out of control, the OpenTracker.
I really wanted to experiment with some protocol ideas and some alternatives to APRS.
And I don't know how many of your listeners might be familiar with APRS.
It's the automated packet reporting system.
And it was kind of an outgrowth of the ham packet radio networks
that kind of arose in the 80s and early 90s.
And they were mostly for BBS-type applications,
like messaging, radio-based email.
And they kind of started falling out of use in the mid-90s maybe
when internet email started to get more commonplace.
And then Bob Brunningham was really the force behind APRS.
He found ways to repurpose a lot of that hardware
and the existing networks to do tracking
because GPS receivers started getting cheap about that time
and then selective availability was turned off and they got accurate so bob's contribution was
really coming up with this protocol and coming up with ways to reuse this hardware it was very
kind of kludged together it was making everything work out of existing hardware with very little
extra stuff it could just be used with anything scraped together. And that's what really made it initially successful.
And then there were a series of kits,
devices like mine that made it a little more integrated.
The OpenTracker, its main job is to talk to a GPS receiver,
gets all the data from GPS,
and then handles keying up your radio at the right time
and encoding data out in the right APRS format
and generating all the tones and everything.
So this is the kind of thing that people put on those, quote,
space balloons that they're launching to get great images
and then recover their equipment when it's in Fresno.
Yeah, I've done several of those myself.
Okay, so now the hula hoops.
Six months ago, let it set the frame.
Let's see, that's summer.
And you met a hula hoop and you fell in love.
What?
No, that's not right.
The project goes back a little further than that.
It really started around November of 2013.
And I think where this came from, i'd hosted a maker day event at my
shop and one of my friends showed up um gina's a an avid hooper and uh my friends got her a future
hoop uh which is it's it's basically plastic tubing with a string of lp-8806 addressable LEDs in it and a cut-down Arduino Pro Mini squeezed in there.
And it's really pretty basic in construction,
but it does some pretty cool patterns.
And I was impressed with it.
It looks really cool.
And I was impressed with her performance
and she showed it off and what she could do with it.
And, you know, I kind of,
that was in the back of my mind for a while.
And then I was buying some $10 tool from Adafruit or SparkFun or something.
And you can't just buy a $10 tool from one of those places without going and seeing what other gadgets they got.
Yeah, because you get free shipping if you buy enough.
Oh, sure.
I mean, it makes sense in the end.
It's cheaper this way.
That's exactly what they want you to do.
Couldn't afford not to get more things.
So, yeah, I picked up some addressable LEDs
and, you know, spent a morning playing with those
when they came in, figured out how to drive
and everything and started thinking about projects
I could do with that.
And, you know, I thought back to Gina's hoop.
I was thinking, she's an amazing artist.
I started wondering what she could do if she had a
hoop where she had the ability to program it herself. And she's not a programmer, so it
couldn't be a code-based thing. But I've seen what she can do in Photoshop. So my thought was,
if I set it up so that she could edit patterns in Photoshop, and then set the hoop up as a mass
storage device, so she could plug it into her computer
and she could just download the pattern straight to the hoop.
So that's kind of where that started.
And I spent maybe four days getting an initial prototype up and running.
It was ugly, but it proved the concept.
It worked.
And I kind of kept building on that.
And then the music festival season came around.
And I think in April or May, that and then music festival season came around and in april or may took a handful of the the
prototypes to the lucidity music festival in santa barbara and the the reception was just
just crazy there uh everyone loved them and then i really started thinking more about making an
actual uh commercial product and spent months more working on it and uh really launched it around uh end of june start
july i think uh and then especially uh with toward the uh the christmas season it's really
just exploded it's been at least uh half of my sales for the last six months so how are the
hooper customers different than the ham radio customers uh there is a lot of
difference i mean demographically the age alone sure yeah i definitely ham radio is dominated by
by an older crowd and it's it's very much skewed male uh you know i go to to the uh
hamvention in dayton almost every year uh an exhibit there and yeah the median age
is probably somewhere over 50 uh and almost all male uh and they they tend to be from engineering
backgrounds and more more technical people in general uh and the hoopers probably the bulk of them are from maybe 19 to 35, something like that.
Probably the median age would be more around 24, 25, and as heavily skewed female as the ham market is male.
One important distinction I found is that they're very much more emotionally attached to the hoops than I've seen anyone really get attached to their ham gear.
You know, hams can get pretty passionate about their stuff, but they usually don't name their radios.
And it's very much a personal and emotional thing for the hoopers.
And they're using these for athletic things.
I mean, I have a hula hoop, and I use it to exercise it.
It never leaves the house, so I'm always –
I saw the future hoops, and I thought they were really cool,
but I didn't think they'd be that cool in my kitchen.
It definitely seems to be a thing with hoopers uh having very tiny spaces to hoop in
if you go look at youtube it seems like most of them have apartments that are about
10 feet on a side so they get very good at hooping in confined spaces apparently
and so what are they doing with the hoops are are they just you know doing it for their own
amusement or are there hoop is there a hoopervention like a hamvention if there is with the hoops? Are they just doing it for their own amusement? Or is
there a hoopervention, like a hamvention?
If there isn't, there should be soon.
There is.
Music festivals
are really a big part of it for a lot of people.
You'll see a lot
of hoops at music festivals.
And then there are hooping-specific
events and workshops and clinics.
There's hoop camp
and some really pretty large events
that'll draw hundreds and hundreds of hoopers.
So a lot of them,
it's definitely a hobby for most of them,
numerically anyway.
There's just a lot of people
that they'll hoop for their own enjoyment and they'll hoop at music festivals
and meet up with other local hoopers.
And then there are some, there's a fair number of them that are professional
or semi-professional performers. A lot of them, especially if they're buying high
end smart hoops, they may be getting them for paid gigs.
And so this is a performance art similar to dance oh it's very much a dance thing i mean hoop dance is in its own legitimate dance form
so with your hoop what's inside of it i mean you mentioned smart leds Are those the NeoPixels? So I think the NeoPixel is Adafruit's branding for the WorldSemi WS2812.
Yes.
Okay.
Yeah, I'm using the WS2812B, which is pretty similar.
I'm just buying them directly from WorldSemi by the kilometer now.
LEDs by the kilometer.
That was really part of my nefarious
plan here i was one of the legitimate business reason to have lots and lots of addressable leds
on hand uh so so i've definitely done that i've got all the leds i'll ever need for my personal
projects uh but uh yeah i i that's that's the uh the core of it uh The controller, right now I'm using a Coldfire V1 chip from Freescale.
And honestly, it's a 32-bit chip running at 48 megahertz.
And I'm really pushing it already.
I really want to go to a faster ARM chip, something that's got at least 64K of RAM,
because I just keep cramming more in there.
And it's got the MEMS motion sensors.
Right now I'm using the Bosch SensorTech BMX055,
which is a nine-axis motion and position sensor.
It's got angular rate gyros, accelerometers, and magnetometers.
And are you using all of those?
I mean, I can see how a gyro that totally
makes sense, the hoop is spinning, and the accelerometer for up and down and even for
rhythm and beats. But what do you use the magnetometer for? Not a whole lot right now.
The main thing I'm testing the magnetometer for at the moment is uh determining orientation of the hoop
for like persistence of vision if you've got something that needs to be upright like text
if you're waving the hoop in one plane where it's it's trying to print text uh if you're just waving
the hoop up and down on one cycle it's going to be right side up in the next it's going to be right side up, and the next it's going to be upside down. So the gyros and accelerometers can be used to flip it in the right direction, but then it needs to know which way is down.
And if the hoop has a lot of other motion going on, it's hard for the accelerometer alone to tell it which way is down.
So I'm working on using a magnetometer for that, also for some syncing up you know if you want this pattern to
start at the same points every cycle then the magnetometer is useful for figuring out when
north is going back around it seems kind of counterintuitively complicated that you've got
your sensor your position sensor on one part of a circle that the motion may not be easy to
understand or describe even and if you hold it in one place the magnitude that the motion may not be easy to understand or
describe even.
And if you hold it in one place,
the magnitude of the motion is going to be less than if you're holding it
in another place.
If you run into things where you've been surprised that,
Oh,
that moves in a way I didn't expect it to,
or that doesn't work.
And I thought it was going to.
Absolutely.
Honestly,
I I've had to go relearn more,
more trig for this than for any other project I've ever done.
Yeah, the sensor fusion stuff is really probably the most gnarly thing for math in there.
Yeah, I'm still learning.
There's a lot more to be done.
I'm kind of interested in looking at the related part, BMO055, I think uh that's got a sensor fusion processor built in has
quaternion output and everything but i haven't had a chance to check that out so i'm still doing all
of my sensor processing internally and yeah i'm learning a lot about the motion and how you know
this this point on the hoop will will trace out a hypocycloid or a hypotrochoid, and we try to figure out how I want to change
what's going out of the LEDs based on those motions.
There's definitely a lot to it.
A friend of mine has helped with a hoop simulator,
and we're getting some of that simulated in 3D
so we can work on it on a desktop
and figure some of those things out from there.
And you only have one of these inertial units.
I was about to say, adding a second one might be interesting. and figure some of those things out from there. And you only have one of these inertial units.
I can see... I was about to say, adding a second one might be interesting.
You really would want one on the 180 degrees off.
It would definitely be nice.
It would be nice to have...
More data is always better.
It just gets into more complicated...
You've got to run wires over there,
and you're running small signals
in parallel to an LED string that's switching
maybe three amps at peak. So it's a noisy environment and there's assembly concerns.
So yeah, I'd like to. There are just some complications doing that.
Oh, yeah, of course. So you said persistence of vision. This can spell out words like those
bike spoke lights.
Sure, yeah.
Most of the patterns are just image files.
You make your pattern as an image and save it as a BMP
because those are just easiest to access.
They're not compressed.
It's a really easy format.
So you can do hard-coded text that way.
It's also got a character generator built into it.
It's pretty limited right now.
It just does one font, one color.
But I've been experimenting with that.
So when you're doing choreography,
you can have it display words at different points.
And it's got some diagnostic uses.
If I want to see what pattern it's on,
I can have it give me the name of the pattern that way.
Then I've got to wave it up and down looking in the mirror.
And so this 48 megahertz chip, 32-bit chip, which seems sort of huge to drive some LEDs,
is it mostly consumed with creating the sensor fusion,
or is it driving those sensors,
which have some pretty funky timing requirements?
Yeah, so I got tired of dealing
with the funky timing requirements on that
and moved that off to a secondary microcontroller.
So that's an HCS-08 running at, I think, 16 megahertz,
something like that.
So its sole job is just take data over an SPI bus
and then handle communicating with the LEDs.
So it offloads all that from the main processor.
Really, the system is kind of IO-constrained.
This pattern storage, it's got 16 megabytes of serial flash.
So it's got some limitations there
and how fast it can pull off blocks.
And it's a fat file system,
so it's got to go back to the cluster link table
and directories and the image data.
And what I've got...
And wait a minute, it's fat because you have to be able
to pretend it's a mass storage glass device
and plug it in over USB so people can
Photoshop or put down their BMPs. Is that right? Right. Yeah. It's got folders on there. You can
organize things by just dropping patterns into folders and then you press the first preset
button on the remote control and it brings up patterns in the first folder and the next one
brings up the next folder. And know and there's uh text-based
configuration files and uh you can also drop uh audacity project files the audacity is an
open source audio editor so if you're doing choreography for music you can open up audacity
and drop an mp3 file in there and And then Audacity lets you create note tracks.
So you just go drop a note at a particular point in the song,
and then you can send the hoop commands that way
to switch patterns and display text or something.
And then you just drop the XML file onto the hoop,
and that serves as a script to drive the hoop.
And you can cue the hoop in at the right point in the song,
and then it'll do
all the pattern changes and text and everything along with your performance so if i was hooping
to say john williams star wars theme i could actually like have movie pictures at different
points sure yeah you can do that uh the I mean, it all depends on the motion.
For persistence of vision, it depends on how fast you're moving the hoop and in what plane.
You know, some of those things work great when you're taking pictures of it, taking a long
exposure. These look amazing. Some of them are hard to see depending on the motion and how big
the pattern is. And then there are some that don't really look that great on film, but just look amazing in person.
Well, and it's kind of like the spirograph. Is that what it was called?
Yeah.
And so you're not getting a 2D linear representation like I'm used to thinking of pictures.
Right. Well, you you know it depends on the
motion again uh if you just hold the hoop up over your head and drop it straight down you can kind
of a tube effect and and that's more linear uh it's one of the reasons i want to go to a chip
with a lot more ram is to be able to do on the fly remapping so you can load the the two-dimensional
image in and then uh you know select what swath of that image you're displaying out to
the led based on what plane it's in uh and on how it's moving you need a gpu and then we need to
hook this up to like doom or some sort of first person shooter that you like create your vr as
you move around uh you know performance capture actually is is part of what i'm going for you
know i want to be able to record off of the motion sensors and
be able to uh show that on the computer afterwards i have no idea how well it's going to work out
with the single inertial sensor but uh yeah there's there's lots of stuff i want to try with
that seems like there's a lot you could do with live performance as well not just necessarily
scripting things but having things triggered externally so you know if you have a live band
with dancers or something you know they don't necessarily want to play to a pre-recorded background but somebody could be up
there driving driving the performance and syncing it up yeah and what i've got for that uh still in
the prototype stage but i built uh a dmx 512 bridge and dmx 512 is a stage lighting uh communication
standard uh so this is this is what they'd use at a performance venue
for driving all of their fancy lights.
So this bridge, the hoops all have Bluetooth in them,
and the bridge will link up with,
I think one bridge will handle two hoops,
will link up with the hoops over Bluetooth
and then show up as a DMX 512 device.
You can plug this thing into your uh stage lighting
control system and program it like you would uh you know any of your stage lighting stuff so
so your lighting designers that are already used to this lighting design software can go and program
uh pattern changes and changes in motion and brightness and everything and then assign that
to faders on their control board and uh you'll be able to control it and kind of puppet it in real time.
So the real question is, how do I hook this to my drum set?
Do I have to hoop while I drum?
Because that's probably too much.
That would be tricky.
I'd like to see that.
Maybe I can do it around my neck.
I can hoop while you draw.
It'll be a team effort.
Well, the music visualization is another thing.
That's one of the features we're working on for the Android remote,
which is still in progress.
But I tried putting microphones on the controllers inside the hoop.
And the problem there is you don't get a lot of sound
through the tubing.
And then what you get is mostly banging around on your box.
There's a lot of noise there.
But if you've got an Android phone,
it's already got a microphone on it.
So the Android app will be able to turn on the microphone
and listen to ambient music
or you can play music on the phone itself and then
do some ffts and beat detection and send that data out over bluetooth to the hoop so the hoop can do
some visualization real time it would be so cool to put this next to i want to see a more complex
band than a rock band but something with strings and horns. Wait, wait, wait. And then be able to visualize the different parts of an orchestra.
More complex band than a rock band.
Yeah, you're a drummer, right?
I'm sorry.
Do you want me to use?
That just seems mean.
Okay, so the remote control.
I'm just going to skip this and move on.
You mentioned Bluetooth. Is there a remote control. I'm just going to skip this and move on. You mentioned Bluetooth.
Is there a remote control Bluetooth?
It's still in progress.
Basically, what I came down to is I proved out the basic Bluetooth protocol stuff.
I've got the packet-based protocol all set up and working with a Windows test program.
But I don't know Android well enough to do this all on my own.
And I finally realized,
you know, it's a hard decision
as a programmer to say,
no, I'm not going to do this part
because I just don't have the time
to go get up to speed on Android.
So as much as I'd like to do that all myself,
it would be fun.
I just don't have the hours
and the day to do it.
So I've outsourced that part
to someone else.
And that should be, I'm hoping in the next month,
we'll have the beta version of that out.
But yeah, I've gotten as far as a Hello World application
on Android myself and decided
this is just going to take me too long.
Are you going to do iOS next?
So the problem with iOS is that with classic Bluetooth.
Oh, you can't do it.
Right. Yeah. iPhones and Bluetooth. right yeah if you do btle you can do pretty much whatever you want but if you're doing bt classic then you have to go through the
m5 program and they never talk to you yeah dang it but we have android devices yeah and really
what it came down to i started looking around uh realized that uh you
know you can you can buy a generic android tablet for what 50 70 dollars now so i it would be cheaper
to just sell a cheap android tablet as a dedicated hoop remote control than to try to jump through
apple's hoops for the ios support that was sort of punny.
What Bluetooth chip are you using?
So it's using the RN41 or RN42 module,
depending on which option you order.
That's from, I think it was Roving Networks originally.
I'm pretty sure they're Microchip now.
Yeah, they're Microchip now.
Cool.
Have you sold them to anyone famous?
I don't know if they've been sold to anyone famous.
Someone just performed with a couple of them at Pierce Brosnan's New Year's Eve party.
That's sort of cool.
Are you going to that big music thing in Anaheim? NAMM. NAMM, thank you. Are you going to that big music thing in Anaheim?
NAMM.
NAMM, thank you.
Are you going to NAMM?
No, I don't know that one.
I wasn't planning to go to that.
It's a very, very, very big trade show for basically the entire music industry. So you end up with lots of technology, lots of instruments, lighting stuff.
Lots of famous people sitting in the row ahead of you.
Recording equipment, and
then just about every
musician in the world goes there. So, you
just walk in through this trade show, and then there's
the drummer from
some rock band.
The Red Hot Chili
Peppers drummer ran into me
while I was walking down the hall.
Stuff like that. It's very weird, but
yeah,
it would be a good place for this kind of thing.
I think it would get a lot of attention.
Yeah, I hadn't considered that.
That's definitely something to look into.
Well, when you, Chris, went to NAMM because you were in a band,
I went and hung out at the hotel,
except all of the bands have open shows.
You don't need the card to go to the show.
Yeah, so you go to hotel to hotel.
It was so fun.
It's half of one famous group with another half of another famous group just jamming.
It's very strange.
Yeah, and most people don't know about it because it's kind of an industry trade show thing.
But you can definitely get in. I think I would have find a couple of uh demo hoopers to come with me because i really don't think i'm going to impress them definitely definitely that was one of the things i'm going
to ask is uh are you a hooper have you started hooping i'm learning uh i can do a few basic
things i'm really not very good yet i mean i can do with two hoops i can do a
chase weave which looks cool for about five seconds before you realize that's the only
thing i can do with two hoops yeah because the hooper like the people who actually know how to
do it who don't just like sit there and do it for exercise they they do it isn't it isn't around
their waist for very long at all no there's there's a lot
of off-body stuff uh there's a lot of different styles really uh especially with male hoopers you
see a lot more emphasis on on off-body moves uh and there's there's several different different
broad styles of hooping and uh yeah the hoops all over the performers tend to be moving around a lot
uh and really that's you know that's one of the biggest challenges for me.
If I really want to make this something special,
really the smart hoops that are out there now,
mine's the only one as far as I know that's got motion sensors on it.
So there's really not much interaction between the performer
and what's going on on the hoop.
They can select the patterns they want, at least on some of the hoops.
But the interaction tends to be limited to like,
I'm going to set this hoop on a chaser pattern.
You know, the lights move around at a constant rate.
Now, if I do an isolation and spin the hoop in place,
this way it looks like the lights are standing still.
And then if I reverse direction,
it looks like they're going faster.
So people will incorporate that with their moves to some degree.
But really what I need is a really good hooper on hand who can work on developing routines,
find out what you can really do when you've got the ability to work with the hoop and program it with motion sensors. Maybe you want it to do one thing up until you stall in reverse directions
and then have it switch to some other mode.
I've got a volunteer working on a lot of pattern development for me,
and she's done some really amazing things where these chaser lights
kind of split off from one into many and then recombine again.
And if we can find out the right way to do that, it doesn't even look like a hoop when
you get that going.
It looks like some entirely other thing when it's in the dark and all you can see is the
lights.
It's really hard to process what kind of object this even is because these lights just split
off and move around on their own.
And it's a real challenge to figure out how do I make that something that the performers can work with and develop new routines?
How do I come up with some kind of high-level language or representation for these sensor modes and all the different things it could potentially do?
How do I get those tools into the hands of the performers and the creative people that can really do new and interesting things?
That's a pretty big documentation issue.
A lot of the hoop movements have names.
You've already used a couple.
But even so, even with the classes, the names are not always consistent.
And then saying, okay, so if you use other brands' hoop,
then you might use chaser the whole time, but a chasing light pattern the whole time.
But with ours, you can do these three motions and still get that same chasing pattern.
You need, you're inventing two languages.
I mean, the hoop languages and then the lighting language.
Yeah.
I mean, just from a human language perspective, there's the, you know, how do we describe these things?
Just describing the different sensor axes to hoopers, that can be confusing.
Oh, yes.
That can be confusing to engineers because I do that a lot.
Sure.
Yeah.
Yeah.
I can't just start you know talking
about euler anger angles and things and documentation uh you know i'm trying to
gear these things toward the at the end users um but it does get very complicated you have to
figure out what level of abstraction to you know to give the users and how to uh how to represent
these things well in the same extent it all has to be done either in person
because it's a very kinesthetic sort of thing it's a very you have to see and hold it to understand
it so you're going to need at least videos well sure uh and that's that's part of where the
performance capture would be useful if you can get a video going and also have the thing recording
all your motion and then go look at the computer afterwards and and sync that up with your video and see this is what the motion
sensors were seeing uh you know and then maybe be able to use that to plan a routine and look at the
motion sensor data and the video and say now at this point i want it to reverse direction or i
want these lights to split and uh you know do something else i think it's really going to have
to be a very hands-on visual sort of thing.
Just in playing with the DMX-512 control,
I've got a lighting control board,
a bunch of fader little sliders on it.
And just having that there to adjust parameters
is very useful.
So I don't have to go in and tweak things in code
or edit the configuration file
or send a command to it over Bluetooth.
Just grab one of
these sliders and and tweak the setting and tweak these two settings together and see what happens
that alone is is very useful uh you know we're walking around at burning man this year i i had
walking around the demo hoop on a motion mode right just kind of spinning the hoop back and
forth and uh you know the green lights would go racing around one way and the blue lights would go racing around the other way at different multiples of the speed
I was spinning it at. So I basically got stalked by hoopers and by engineers. They'd run up to me
and some guy told me he'd been following me for half a kilometer, trying to figure out if it was
really doing that and how, uh uh so i had a couple of conversations
out there about about the sensors and uh and how they worked and um yeah there's there's just
so much to the potential there just you know i'd handle the i'd hand the uh the hoop over to these
people that would come up to me on the playa, and they'd have their own hooping styles and things,
and I'd be pushing the motion sensor control buttons,
trying different modes, and we'd find combinations of modes
that just looked amazing.
I had no idea what moves they were doing and what modes I'd selected.
It was a very uncontrolled sort of environment,
but to be able to sit down even with just the faders on the lighting control board and try different things with someone hooping in the shop, that would be great.
I mean, there's really just a about all the songs and how to sync
and what you could do in a performance situation.
When you were talking about performances,
you said something about multiple hoops linking.
Can they talk to each other?
Yeah, the hoops can talk to each other.
Because right now the only wireless they've got is Bluetooth.
I originally hoped to get ISM band transceivers in there.
And I did a project a couple years ago for electro-luminescent wire costumes.
It was also a Burning Man project.
And it made a sort of ad hoc mesh networking thing where you could have, I think, up to 255 people with these controllers on their
their costume el wire and as soon as they come come in range of each other they'd sync up and
start running patterns appropriate to the number of people in the group and then you could merge
groups and the groups could split and the networks repartition uh it was it was a ridiculous amount
of work for what turned out to be a one-time thing really uh and i'm hoping to still someday get some of that integrated with the hoops but i really only had space for the one
wireless module in there so it had to be bluetooth for the sake of uh you know phone and tablet
compatibility so they got bluetooth and they can connect to each other uh you know so you can link
two of them and they can coordinate what patterns they're going to run. Eventually, you'll be able to share patterns.
So if you run some of the music festival and want to sync up and share patterns that they've created,
you'll be able to do that from hoop to hoop or just real-time share the pattern
so you can run the same pattern at the same time.
Any multi-hoop sync, they do have IR emitters on.
They have IR remote controls, so they already had the ir receiver
so i threw a ir emitter on there too so they have some ability to do multi-hoop sync over ir but the
range is very short you have to have within a few feet of each other so mostly what you're doing
with that is getting them synced up and they agree on time and what they're going to do and then they
do some more stuff together but yeah so multi-hoop, they also have some motion sensor
transferability. And this is something that, again, I'm just playing with things and figuring
out what might be useful for real performers. The first demo mode I did, the hoops have one of the
motion sensor modes is it just locks the pattern in place. So you've got four've got, uh, four points of light around the hoop.
You can spin the hoop around any direction and the lights just stay where
they are.
Uh,
just,
it's kind of a cool effect.
Um,
then with the Bluetooth linking,
I use that and then added a mode where it would send the motion of one
hoop to the other hoop.
So we hold the two hoops up together and you spin the hoop in your right
hand,
the hoop in your right hand,
the light stays still, but the light's on the left-hand hoop.
And so it just looks like I'm exercising. I'm not actually moving.
Well, you're moving. You're exercising your right hand. Somebody else is exercising for you.
It looks like your left hand.
So, you know, it's really hard to say which of those things are going to be
really useful. You know, it looks really cool to say which of those things are going to be really useful.
It looks really cool.
So many possibilities.
Yeah, yeah.
There's so many places to go with it.
And I know I'm not the one to find all those out. I think that's the problem with a lot of the smart hoops that have come and gone is that they're developed by usually one engineer.
And they've got some ideas for cool patterns or whatever.
And they put those on there.
And they succeed or they don't.
But really where it's at, there's so many more people out there.
I mean, there's so many more people that are better with this kind of creative stuff in the artistic side of it than me.
And I really just want to focus on getting them the tools
because they just keep constantly surprising me.
I've got
a very very much a user-driven community here already for sharing patterns uh i launched with
maybe 200 patterns on the hoop and uh the latest load we're up to 800 something and there's more
than a thousand and the one that's waiting for approval now so i'll see these i'll fire up on
my own demo hoops and i'll see patterns on there that I've never seen before. And some of them just blow me away, things I hadn't even considered doing.
Are you open sourcing the code or are you mostly focused on trying to keep the pattern
methodology open and not worrying too much about sharing the code for everybody to see?
So I'm not planning to open source the core code.
When I move to a bigger processor,
I'd like to have some kind of API or something in there
where you could write plugins or extensions for it.
I've actually had a fair amount of interest on that.
People want to be able to write code
and do things beyond what any reasonable end user sort of
scripting interface might be able to do uh so yeah there's there's uh that's definitely something i
want to pursue but i'm not planning to open source the the core code for the group itself at this
time it's funny it strikes me uh somebody said a few years ago that this is gonna sound weird that
twitter apps were the great UI design playground
because you know what you have to build.
It has to show tweets.
But beyond that, you can change its look and feel.
You can change how you interact with it.
You can change how you show things and interact with things and expand them.
But they don't all look the same.
They don't all look the same.
Some of them do.
But anyway, that's not the important part.
Sorry.
But this actually strikes me as a great playground for inertial,
for lighting, for networking,
because, I mean, I'm just sitting here with my mind going,
thinking, well, what else can you do with this?
I mean, okay, so I can link several of these together.
Well, what if you link them to the internet
and you have people controlling remote performances?
Just stupid ideas like that.
But it really does seem like a wide open space
for just exploring all kinds of ideas.
And it starts from something that's quite simple.
Some lights, a little bit of code,
and some inertialial sensors and then gets
super complicated from there obviously yeah absolutely um yeah the uh first really big
music festival uh we took the beta hoops to in may or june uh it was lightning in a bottle festival
and i was uh walking around we handed out demo hoop to let people play with them. And then I was walking around with a couple of software engineer friends.
And they just spent the whole evening watching these people hoop with them
and just brainstorming on ideas, all the things.
They wanted access to the code right then.
They wanted to be able to go and write things for it.
And they had all these ideas.
A bunch of them might have, but it's really fun watching software people see those things for the first time and start thinking about all the things we
could you could do with that well in the trading i'm like oh the quaternion part i could totally
write that for you but i want access to all the rest of it and i'm just you know the imu yeah okay
sure and but then i'm also looking at my little i I'm going to write, I'm going to do a proposal,
I'm going to do a presentation about inertial sensors, and I wanted a cute little widget to describe accelerometers versus gyros and magnetometers
and get them fixed in people's minds so they really understood what the differences were and the strengths of each.
And I'm looking at it, I'm like, oh, that's so boring now. It was cute, but now I need a hula hoop in order to do this demonstration properly.
Why are you looking at me?
And a hoop for dancers so that somebody else can do it while I'm talking.
Background chorus.
Yes, and a whole dance line. Yeah, so I think a part of it, you know,
is I've been burned a little bit with having some of my open source stuff
ripped off commercially, like in China.
And I think I want to maintain enough control
over the core that, well,
it's really hard to avoid that entirely.
If someone's really, really intent
on ripping off your stuff, they can do it.
I want to make it a little harder, and I think some of the
core stuff doesn't need to be
open source, but I want to make sure
that it's a rich enough API.
It'll probably be
use your standard
Eclipse ARM
GCC
tool chain and everything, and
have everything nicely packaged up
that you could possibly want to interface with it
and present all the motion sensor data
nicely packaged up where you don't have to worry about
all of the internals of how that's working
and how the timing for the LEDs is working
and really get as much power in the hands
of the add-on developers as possible.
As someone who's like, yeah, that's cool.
Let's do this add-on development.
I think that's awesome.
But as someone who's seen other people write APIs for embedded systems, it is so difficult.
And the memory management, the memory protection, and how important is it to you that they can't do other things?
Sure.
And that's something I've considered.
I really don't want hoop viruses.
Hoop viruses, yes.
Yeah.
Basically, yeah, you're right.
Without a lot of protection, then if you're giving everyone free access you don't have any protection
if there's no memory protection they can get everything out there and uh so yeah it's something
i haven't really decided how i want to handle that i mean i really want to be able to go on
making a living doing this kind of stuff so uh that's that's kind of my standard there i don't
want my my code just code just getting ripped off
and then losing out on that.
So there's a decision to be made there.
And I would definitely like to err on the side of openness.
I've always tried to go that way before
because I think really what I've lost probably
is offset more by what I would have gained
having more openness and having more people contributing
and looking at things. Yeah, no, there's definitely a balance and, and doing an API,
focusing on these probably relatively few people who are interested in the code,
and even fewer people who are interested and have time versus the larger scale of the people who
want to be able to design the light patterns and work with it instead of work on it.
And so I can totally see how it's going to be challenging to figure out who is the audience for your limited development time, because we all have limited time.
Absolutely. time absolutely uh you know and something being self-employed uh i have some freedom there like
the dmx 512 stuff that the stage lighting integration it's possibly even hard to justify
the time on that because when you're looking at the numbers the majority of the people buying
these things are not going to do anything like that.
They're going to use them like in a festival environment.
And there are, you know, 10 or 100 festival hoopers for every serious stage hooper
that's going to be part of a production where they would actually want to use that.
But I have got some freedom, at least, to say,
this is a really cool thing that I want to do for the sake of doing it,
even if there's not really a business case for it.
You know, as long as I'm still paying the rent and everything.
There are limits to that.
But yeah, I do get to choose some of these things
just because it would be cool to do.
Well, and like many serendipitous things,
there might be some fantastic upside later
when Taylor Swift or some star wants it, and
they're going to order 15 hoops because they never want one broken.
And that isn't as huge an expense as it is
for somebody who's doing it themselves. I have it in good authority that Taylor Swift
does listen to our show, so she probably gets some ideas from this. I think only
infosec Taylor Swift ever listens to our show, so she probably gets some ideas from this. I think only InfoSec Taylor Swift ever listens
to us.
Different? Damn.
No, I'm sure it's the same person.
Okay.
Yeah, okay.
But these hoops are pretty
expensive.
Right now, mine are selling for
$325, the basic one. You can pay a little
more for the extended range
Bluetooth, which is really only useful if you're doing the DMX-512 selling for 325 basic one you can pay a little more for the extended range uh bluetooth which
is really only useful if you're doing the the vmx 512 integration uh and that's kind of the low end
for the smart hoops really the one uh yeah the the uh the range the future hoop shuffle is kind of
the the basic low end one that everybody knows about and i think they sell it $2.99 yeah yeah and i think
the the phoenix which is the only other one that has this kind of pattern programmability
that one's i think $4.95 is their their retail price so well and the shuffle just shuffles there
there isn't the ability to tie it to music or to make your own images.
And they have another one that's got a remote future remote is 400.
And then you can change things,
but you still can't do your own stuff very much.
Right?
Yeah.
They're pretty limited.
And,
uh,
you know,
I definitely came in on the,
the low side of the price and,
uh,
trying to, uh, I'm really planning for the longterm here and trying to get the, uh, Definitely came in on the low side of the price.
I'm really planning for the long term here and trying to get the production costs down.
We're looking at injection moldings and pieces, which is a new adventure for me.
I'm not a mechanical engineer.
I've got to learn a lot of mechanical engineering things over the last few years.
The connector pieces, we're looking at getting those injection molded so they're they're cheaper and more consistent to produce a lot of work's going into the uh the
tooling and the assembly process to try to get that as uh you know reduce the labor as much as
possible so there's a lot of mechanical engineering stuff that's going into this really try to to stay
ahead because you look at um future hoop shuffle to pick
on them a bit uh this is something you can build with a drill press and a soldering iron really
uh it's it's tubing with some holes drilled in it they've got an arduino kind of cut down
with a saw to fit into the tubing uh there's a there's a blocking diode in there and a decoupling
capacitor and that's it it's just a spring soldered on to uh spring buttons and all crammed into a tube and you know they really
haven't scaled it up unless they've changed it since i saw one last day it's not really scale
it beyond the the home workshop uh sort of construction no i saw one and i thought i'm
not paying for that i could build it and i could. I mean, it was definitely very buildable.
And I could probably build it with things that are in our shop right now, except for the actual hula hoop tubing.
And yet the laziness prevented me.
Yeah.
And really, Future Hoop's got a good reputation for reliability because they are built really solid.
This is not a lot to me.
You can fix them with the very basic tools.
So they've got their niche. is not a lot to me you can fix them with the very basic tools uh so yeah they've got their uh their niche that's it's it's a rugged little hoop uh but it's it's
not a very sophisticated build and i'm still working i've put a lot of mechanical build on
this one it's it's got some 3d printed parts in it which you know is not my my first choice for
a production scale thing but we're not turning them out in you know thousands
and thousands yet so i've got a little solid little tool too that runs about eight hours a
day churning out little internal pieces that hold battery clips in place and hold the circuit board
in the right place uh you know so that gives me a lot of flexibility and you know i don't have to
do a lot of machining steps uh for these parts i just build exactly what i want for these parts. I just build exactly what I want for these little pieces.
Yes, that's so cool. I'm flabbergasted. Was this what you intended? I mean, you were building these kits and then you started Hula Hoops and now it's half or more of your business. Was this what you intended?
It definitely isn't something I intended starting out,
but the more I got into it, really,
I've been doing the ham radio stuff,
kits for 12 years or so.
And it's kind of nice to have a shift.
I've just been working on the same code
for years and years
and working a lot with the same been working on the same code for years and years and uh working a lot with
the same same customers and doing the same things and it's nice to just have a jump to something
entirely different uh you know it's a different market and different different way to market it
and uh there's lots of new challenges i've gotten to learn lots of new things. And now I have to worry about things like coordinating promo video shoots. I have to go find talent for demoing these things. I so you know maybe maybe if you want to stay
comfortable doing doing one thing then jumping off and something else this is a bad thing but
it's it's been kind of invigorating for me to jump in and just learn a lot a lot of new things
what was the biggest surprise with doing it? Maybe just how attached the hoopers get to their hoops and the community.
It's really intense.
I've got one group on the website.
I think we're up to maybe 700 people in the Facebook group, the Hyperion hoop.
It's a very active community.
They're very passionate.
They're on there constantly speculating on where they're at in the build queue and talking about how horrible it is to wait.
And then they just freak out when they get the shipment notification,
and they all get really excited.
They're very passionate.
And every once in a while that that goes
wrong if something goes wrong you really have to be on top of the customer service because they
they get upset very fast uh it's it's definitely not not the same as the ham radio crowd in that
respect so you you're selling these hula hoops and they're 325 bucks which is not what you would pay at target for a normal
hula hoop because they're much cooler and you have a six eight week lead time i mean you're
you're building them as fast as you can right uh yeah it's it's several weeks right now i've had
to uh hire on a couple of people for help. And yeah, we're still pretty swamped.
And I don't know what my competitors' assembly labor is like.
I know there was one prototype.
There's one hoop that never went beyond a handful of units produced.
And the engineer said something about each one of those taking 25 hours of labor to assemble, which I can't imagine. I imagine most of our competitors probably have more assembly labor than ours
just because of the way I've designed this thing to try to minimize that.
Also, we've got a removable battery where most of those are internal.
So there's a lot of battery wiring and stuff that goes into all the other ones.
So I think our build times are probably pretty good but yeah over the christmas season
in particular we just got absolutely swamped and it is an exercise thing so you may stay
swamped for another month or two while we all work out our resolutions yeah and i think uh
it'll probably pick up again around uh music festival season uh you know right now it's
slowed down post christmas and i'm i'm kind of glad for that. It's giving
us a chance to breathe a little and get caught up on the
backlog. And then at some
point I'll hopefully get to be able to
work on software some more
and get
some new ideas implemented and have some
cool new stuff for when things
pick up again in festival season.
But yeah,
it's been an adventure last four weeks
i've been working uh 80 hour weeks and uh uh you know i'm going home sometimes at 10 30 at night
and then answering some more emails at home before i go to bed and then i'm back in the shop at eight
in the morning doing again do the ham uh radio folks know about your hooping adventure uh i i would imagine at least some of
them if they're paying attention i i think i've mentioned a little bit about it in some of the
forums uh and they're on the same same online store right now i haven't split off the stores
i've got so much back-end automation stuff in our order fulfillment that it's been too much
trouble to set up an
entirely different online store for the hoops so they're kind of all lumped in there they're
in different sections but uh it's it's still all through argent data systems and you've got
uh simplex repeaters and uh you know telemetry gadgets and stuff and then uh and then hula hoops
in another section simplex repeaters and hula hoops. One-stop shopping. Yep.
So having your own store,
why do you do your own store?
Why don't you use one of the existing ones?
Probably not Etsy, but Tindy or eBay or even
Amazon has the small store
stuff now.
So I've looked at Amazon and I'm still considering that
for some of the things like the Simplex
repeater. That's kind of a
less technical standalone thing that's got broader markets.
It still does have various different cables and things that have to list those as different accessories.
And the ham stuff, it's just that there's so many little things that I stock that hasn't been worth going through Amazon, I think, for that and managing inventory with them.
And early on, I started doing this out of my spare bedroom.
So I was shipping everything directly.
And I put a lot of work into the automation.
And I've got a really efficient system set up where orders print out automatically. You scan a barcode, you throw everything in a box,
and you jab at a touchscreen two times to print out the label
with all the customs forms and postage and everything.
And it sends emails to the customers and logs it.
So it's a really efficient process.
I was even working on a warehouse automation system
based around a snack vending machine.
It would load a bunch
of the common kits and things up into the dispenser coils and and have it send commands to the machine
so i've scrapped the snack machine for now but i've got the uh the dispenser coils and stepper
motors so when i have time to work on that i'll get back to that and have it automatically
dispense parts out into the uh the trays but uh we've got a fairly efficient setup here.
And there's definitely, you know,
some things to consider for Amazon.
I think maybe the hoops eventually,
when we have enough of those built and in stock,
I'll look at putting those on Amazon
and the repeaters are the other big candidate for that.
That's just an odd set of things.
I understand how they work together
because, you know, as an embedded software engineer, It's just an odd set of things. I understand how they work together,
because as an embedded software engineer,
I have nice, interesting things I've worked on,
and it's a weird set.
But hula hoops and repeaters, yeah.
I had no idea how complicated a hula hoop could be, and the fact that I want to add another IMU
and make it more complicated for you is just, wow.
Why stop there?
Oh, yeah, no, we need another IMU.
Well, it needs contact, you know,
like capacitive touch sensors around too, really.
Oh, yes.
Pressure sensors?
Yeah, strain gauges.
And we need several different radios.ios i mean bluetooth low energy for low energy
mode and uh um yeah and of course the larger processor and as he was talking i was thinking
maybe a gpu would be the way to go to to remap these things no and i've been very tempted
i've been very tempted to put GPS receivers in them too.
Yeah.
You know, I've got GPS receivers that will fit.
I've tried.
They'll fit into the three-quarter inch tubing.
For the time basis so they didn't have to talk to each other.
Exactly.
They don't have to talk to each other.
They could sync up and everyone play the same thing.
That's true.
I mean, you know, you could have your hoop guide you back to your campsite,
you know, when you're at a music festival or something.
It could be useful. You could have like a marching band style synchronization
where they're all in different places and it knows what place it's in and then oh like when
they do the dinosaur on the exactly the field all right you know and we're already working on
multi-hoop patterns where uh maybe you've got a comet sort of pattern that zips around one hoop
and then jumps over to an adjacent hoop oh yeah and yeah. And if I was at the lead of the comment,
I could be like the white and the other people are like the blue.
Oh, yeah.
I could totally get into this.
Okay.
So we need a GPS receiver too,
which we might as well put into the fusion algorithms
because everybody needs to know where they are in the world.
And since it's hard to find good hoopers,
we should just make a robot.
Yeah.
We've talked about hooping robots you know
just have something to shop here for for testing with uh yeah that's that's it's on the list but
all right i i i think before i you know want to do all this myself we should probably get going
chris do you have any more questions yeah well i, you're focused on hula hoops now,
and I understand that because you're backed up making them.
But it seems like this kind of similar technology
could be applied to other kinds of motion activities and performance,
like, oh, God, I don't know, belly dancing, you know, a skirt with lights.
But that's a less broad market.
But it just seems like this would apply to all
kinds of things where you're tracking somebody's motion and tron jackets while playing basketball
right well contact the staff and uh boogangs and uh meteor hammers and poi and there's lots of
other yeah all sorts of those things i and i i want to do those a staff is next on my list but i
get the mechanical build for this on most of the software i think will go straight across
to these other things right uh there's already a friend uh mechanical engineer and machinist friend
got a controller from me and build a staff just for himself so he's got the only hyperion staff
out there uh and it works great for that. He had changed some patterns a bit, but
definitely there's a lot of other toys
and things we can put into it, all kinds
of performance props and stuff.
I think the hoop is
a good platform for now
to develop all the software on and get this
one mechanical build really nailed down
and then I'll start working on a lot more of those things.
This has been great.
Scott, do you have anything you'd like to leave us with?
Any last thoughts?
If you want to see the hoops in action,
go check out hyperionhoop.com.
We got a gallery on there.
Actually, if you go look up on YouTube,
you can find some of our customers showing them off.
There's some really amazing performances on there.
Yeah, you're going to need a channel.
Yeah, I'm working on stuff. I have to learn
all this social media stuff
but
it's on the list of new things I
have to deal with that I didn't worry
about before. And then
the ham radio stuff is on
argentdata.com. It's A-R-G-E-N-T
D-A-T-A dot com.
And of course there'll be show notes for both
and a couple of the hoop videos that I particularly like in the show notes.
My guest has been Scott Miller,
owner of Argent Data Systems and creator of the Hyperion HOOP.
The websites, again, will be in the show notes.
It's nice that I read these things aloud before reading them in paper.
Let's see.
Thank you to Christopher White for co-hosting and producing.
Thank you to Daryl Smith of Radioactive Networks in Australia for listening and for suggesting we invite Scott on the show.
If you'd like to suggest someone or just say hello, the contact link is on embedded.fm.
Or you can email us show at embedded.fm, or you can email us show at Embedded.fm.
I also want to thank all of you for listening.
If we ever should meet in person, I will deny any ability to hula hoop.
I will certainly not demonstrate.
We'll chat again next week.
In the meantime, I have a thought to leave you with.
This one from LeBron James, someone I had no idea could hula hoop.
I like to get out there, get up on the court, use my speed and aggressiveness towards the hoop.
Maybe not hula hoops.