Embedded - 223: Gregorian Chants and Things
Episode Date: November 16, 2017Christopher (@stoneymonster) and Elecia (@logicalelegance) chat about listener questions and things they’ve been up to. A listener turned Chris on to Ray Wilson and his Music From Outer Space we...bsite on DIY analog synths and book Make: Analog Synthesizers. After collecting parts for a total DIY, he found and built a neat kit: Kastle Synth (as heard on the show) and has connected it to his Roland SE-02 Analog Synthesizer (on Amazon). BTW, his ham radio WSPR kit is the Ultimate 3 in case you are behind on hobbies. You can hear more about it in 197: Smell the Transistor. Elecia has been working through Udacity’s Self-Driving Engineer nanodegree. She completed term 1 with its computer vision and machine learning and is on to term 2 with sensor fusion, localization, and control. She blissfully is unaware of the cost because she got to be an industry expert for the Intro to Self-Driving Cars course. Listener Simon asked about non-fiction books. Elecia gets many of hers by looking at what is on discount at BookBub’s science section which lead to two books she highly recommends Spirals in Time (snail facts) and Tristan Gooley’s How to Read Water (beach explainer). Chris has been reading Scott Wolley’s The Network: The Battle for the Airwaves and the Birth of the Communications Age and How Music Works by David Byrne. Some show-related recommendations include Gretchen Bakke’s The Grid (hear Gretchen on episode 213: Electricity Doesn’t Behave Like an Apple) and Jimmy Soni’s Mind at Play (hear Jimmy on episode 221: Hiding in Plain Sight). She’s reading Tim O’Reilly’s WTF book about the future in anticipation of an upcoming episode. That's a good reminder: we, of course, also recommend Making Embedded Systems. Zach asked about Michael Barr’s Embedded Software Training in a Box. Apologies if we weren’t specific enough, it would likely make a better blog post. Also: $1 Microcontrollers! Â
Transcript
Discussion (0)
Welcome to Embedded.
I'm Elysia White.
My co-host is Christopher White.
And this week, it's just us chatting with each other.
No guests.
No guests.
We've had some great guests.
Some great guests.
Many great guests.
But this week, there's no guests. great guests but this week there's no gas
uh twitter is providing the lightning round question today there's only one
all right who's asking it or who uh i will ask you uh martin uh at woodworker asks pineapple on pizza good or not good it depends is it a whole pineapple just
put on top of a pizza with the green stuff and the spiky bits no i think it's just
do you go for pineapple on pizza the sliced up pineapple sometimes the sweetened pineapple
sweetened no well it's not like it's fresh pineapple.
That's expensive.
I have been known to eat that.
Mostly it's my fault, though, isn't it?
Because I like pineapple.
I know people have very strong opinions about this,
so I don't think I want to wade in.
Okay, maybe we should do a show about embedded systems
instead of these fragile, weird topics.
Why start now?
We've been topical.
We've had some good topics.
No?
No?
Okay, okay.
We have.
It's been fine.
Just haven't been, you know, super embedded.
Jonathan's was.
Ben's was.
That's true.
All right.
Jimmy with the biography wasn't, but it's Claude Shannon.
So, I mean, you could see that I had googly eye hearts the whole time in my eyes.
Okay.
Yeah.
What have you been up to?
Me?
Yeah.
I've been working for this thing where you do a job for a company that employs you
and then they exchange your services for money.
Okay.
It's okay.
It's okay.
But you shipped a product, which is kind of cool.
Since the last time we had this show with Just Us?
We haven't had a Just Us show in a really long time.
I guess we did ship a product.
Yeah.
Yeah.
Congratulations.
Yeah, it's great.
The reward for a job well done is as you know another job more jobs so it's a harder job after you ship a product you may not
know this if you haven't done it before but it doesn't get easier after you ship a product
especially one that has firmware updates it's much easier to ship something that you can never
improve or fix.
Because then you can just forget about it.
If it's terrible, well, that's just the way it goes.
Not that my product is terrible.
It's one of those platform things that's going to be updates for a long time.
And so there's always improvements in work to do.
And working on consumer products that you can update there's
always this idea that okay we shipped it we we did the firmware we shipped it now we can all take a
vacation we can take a breath but the truth is the first customer update is where all the features
are and things are a lot of them scary and then second customer update is where all of those
really scary features that you put off now need to go in
and it's still not enough time and you
have users to deal with.
You keep saying
tomorrow will be easier and it's
not always.
Beyond that.
You've done a few interesting projects.
We're going to go to that already? That's not the order here.
You have a list of topics. You're going to go to that already? That's not the order here. You have a list
of topics. You can't just skip around.
I always just skip around.
Why would you do that?
What have I been doing?
The only thing I've been doing that's sort of
project-y is working
with, I'm sorry, making
noises. If I'm straining, that's because I'm reaching
to grab something.
I've been playing around with synthesizers a little bit and particularly analog synthesizers. Um, I bought a very nice, uh, sort of a replica of, um, Moog Model D
synthesizer, which is a, uh, since from the seventies, it very very popular but very expensive it was one of these big tabletop
things and you know uh made of expensive op amps because they were expensive in the 70s
and roland actually came out with a sort of a copy of it but with updated electronics and
things so it's all surface mount and uh has a few additional features like uh you know it has a
synth a sequencer and so you can record stuff and play it back or and those kinds of things and has
midi so you can save stuff and recover it which on the old moogs you had to and i know i'm pronouncing
that wrong it's somewhere between moog and moog moog moog moog m-o-O-G, it was all patch panel.
So if you wanted to make a new sound,
you actually connected wires to different things and turned knobs.
And if you wanted to remember that particular sound,
you, I guess, drew a picture or took a picture or a Polaroid or something.
It wasn't like you had your camera in your pocket like you do now.
Yeah.
With this, it's all integrated,
and it has a microcontroller in there that can save stuff,
the positions of knobs and stuff.
And it's not tabletop.
No, it's tiny.
It's tiny.
I was actually really surprised when I got it.
It's, I don't know, the size of a large hardback book,
sort of longish.
So that's cool, but that's not really a project thing.
That's more music.
But that got me interested in the analog stuff.
So I started poking around, and I think somebody,
I can't remember if somebody sent in the suggestion or if I just found it.
No, somebody sent it.
Somebody sent it in.
Yeah.
Do you remember who?
No, sorry.
Well, thank you, whoever you were.
We do appreciate it.
What was the suggestion though
um there's a website called music from outer space which and it's i like it sounds music
from outer space.com and it was put together by a guy named uh ray wilson who has since passed
away sadly um but it's all about getting into building your own synthesizers
analog synthesizers digital synthesizers uh from the electronics to the theory and all that kind
of thing uh and they sold kits and they had open source plans for stuff and he wrote a book for
make called uh make analog synthesizers make electronic sounds the synth diy way um and it's pretty cool and it goes
through a lot of electronics and the theory behind it the cool thing that i didn't really understand
before reading about some of this is how similar analog synthesizers are to radio theory i mean
it's all audible frequencies of course but uh you know it's all oscillators and filters and you know
you plug them together in stages to do different things and it's very similar structurally to how
radio works um yeah when we talk about amplitude modulation for radio right that means that
it's on a carrier wave and then whatever you hear is actually on top of that carrier wave.
It's just, it's multiplied.
But you can see it in the signal.
And you can do that on the synthesizers as well.
You get a specific sound when you do amplitude modulation.
When you do frequency modulation, you get a totally different sound.
And you can do that with multiple oscillators.
They can frequency modulate themselves or phase modulate.
So you can get all these weird things.
And the neat thing about it is,
I don't know, when I was growing up and doing music,
I didn't really know about analog synths.
It was all digital stuff.
I feel like I've talked about this before.
So they weren't really all that cool because
the ones i played with you didn't really get to make your own sounds so much
because they had their bank of sounds and you could alter some stuff but it was always you
know poke poke poke add add to a value with you know a membrane keyboard or something it wasn't
changing the sound wasn't performative you couldn't put it
make it part of your performance like okay i'm going to hold down this note and then i'm going
to open a filter very slowly to change how that sound goes musically um and so i didn't really
understand what's what analog synths were back then so it seemed kind of um well no digital
synthesizers were the new thing that was the cool thing but the theory behind
them is actually very similar there it's just that the thing making the oscillators or the filters
is you know a microcontroller and and maybe some of the wave shapes are coming from rom
but they weren't laid out the same way and so i never i never got to play with the analog sense
so now having played with them it's like oh this is interesting because you can do stuff musically that isn't just changing notes.
It's changing timbre as you play a note or opening a sweep,
you know, like the beginning of Tom Sawyer.
That's a Rush song.
If you think about that, a lot of people know that song.
It starts with this huge filter sweep,
which I didn't know how they did that, but now I do.
So it's kind of cool.
And the neat thing about the analogs is they're modular,
so you can plug different parts of them together.
You can make an oscillator go into another oscillator.
You can mix them in different ways.
You can route things back to do feedback.
And so you can amplitude modulate,
the amplitude modulated, frequency modulated,
phase modulated,
and just get all of these stacked signal filter chains
that end up with UFO sounds.
Yeah, and it's a hook to get into a lot of electronics.
It's a lot of electronics because these filters are interesting.
And if you want to use an oscilloscope, this is a good way to understand.
Yeah, because you can see what you're actually doing.
And you have another sense that tells you what's going on. You hear it and you have
an innate idea of what it, it's changing. You can relate the signal on the scope to something
physical, which for me always makes it easier to understand. In fact, one of the newer analog
synths, I think from Korg, might be from somebody else, but I think from Korg, has a tiny OLED display on it
that they just show a scope view
so you can see what your waveform is doing.
But anyway, so I started playing around with that.
I got the book and went out and bought some parts and stuff
and haven't put those together at all.
They're still waiting for me.
Those were raw parts.
Yeah, raw parts to start building up uh voltage controlled oscillators
voltage controlled filters and things like that uh to piece together you know a synthesizer from
from basic principles but then you skipped ahead and skipped ahead a little bit because i saw this
kit i don't remember how i saw it i think i started subscribing to a bunch of youtube channels for
analog synths and some of these things popped popped up. And this little kit, which you cannot see,
is called the KASTLE, K-A-S-T-L-E,
from Bastl Instruments, B-A-S-T-L.
And there'll be a link in the show notes.
They're actually in, I'm going to get this wrong.
I think they're in the Czech Republic.
But yeah, this is a, it's not an analog synth, but it acts like one.
So it's a digital synth masquerading as an analog synth.
Kind of.
So the difference is it uses two AT-tinies to generate all the oscillators.
Can you change their code?
Yeah.
I don't know easily how easily.
I have to find the pin.
There's no programming header brought out,
so you'd have to pop them off or something to program them
or put a couple blue wires on the right pins.
But yeah, so it's got two AT-Tinys.
One does the work of generating waveforms,
and the other one does the work of a low frequency oscillator which is kind of the
amplitude modulation thing you're talking about except it kind of below audible frequencies so
three hertz so they can make you know woo woo woo kind of modulations
but anyway it's a compact little kit and it was just fun to solder together and the neat thing
about it is it acts a lot like those old modular synths.
It's about the size of a deck of cards, twice as thick.
Runs on a couple of AA batteries.
But it has patch panel on the front, and so you can route all the signals around with, you know, your usual little, what do you call these?
Jumper wires.
Jumper wires.
It's funny because when you say patch panel, I think of big thick yeah exactly quarter inch uh headphone connector yeah they see in like a
radio studio picture yeah um but these are just jumper wires and you can connect stuff around and
it's got inputs so you can take signals from outside so if you had something else generating
a control signal you could route that to a whole bunch of places within the circuit to alter it or you can take the voltage out to something else so you
could stack a couple of these and make really weird sounds or what i did recently was i stacked
this with my roland with your little moog yeah clone and made some really cool stuff happen
by controlling the filter on the Moog with this.
So anyway, it's fun because it's pointless.
And making sounds is just cool.
And I don't know why.
So I don't have anything to show for it yet.
I'm way behind on actually using this for anything,
partially because I'm fascinated by the intricacies and the turning of the knobs and things instead of actually playing music with it so can you make any
sounds with it right now yeah yes let me attempt to do that um please hold oh wait those aren't
the sounds that he's making just to be clear let me try to move my mic around so you can... Go ahead. I mean, I can hear it already.
It sounds very wumpy.
The difference between this is you can't...
There's no keyboards. This is mostly a noise generator.
I feel like we're traveling through space here.
And to the person who said that we needed to have more, like, background music, here you go.
I'll talk while Christopher does DJ stuff.
It's you.
What are you?
I mean, you're turning dials, but what are you doing?
So what dials was I turning?
So it's kind of hard because the documentation is not super clear on what some of this does so it's with this and the moog a lot of it is just kind of learning what the knobs do yeah instead of having you know a robust theory of operation although understanding some of it is
helpful but um i think it goes back to if you have an oscilloscope this is a great way to
understand understanding both yeah so there's one knob that's wave shape and that probably alters what the oscillator
ATtiny's lookup table is looking for.
Two of them are pitch.
So the oscillator pitch.
One of them is the LFO rate,
which is the low frequency oscillator.
So that changes the woo, woo, woo
to faster or slower.
I heard that.
Yeah.
And I didn't change any of the patch cables.
So anyway, it's a fun little toy.
It was not very expensive.
It's about a $60 kit.
And it's actually pretty well put together.
They give you a case for it.
And you put it together.
It didn't seem like it took you that long.
A few hours.
And then you had a bug and it took a little while to sort that.
Yeah.
I forgot to solder one of the pins for one of the AT Tiny's sockets.
Ah, yes.
You do have to add the solder so that they can connect.
Yeah.
Magical.
So the large part of it wasn't working and I couldn't figure out why.
I ended up trying to desolder one of the pots because I thought the pot
was bad because it was one thing that was
directly related to a pot that wasn't working.
And that was
I messed a bunch of stuff up doing that.
Yeah, always check your solder points.
So yeah, that's synthesizers.
They're fun.
I haven't had any really great projects lately.
Okay.
I've been taking classes.
Oh, right.
I've been taking the Udacity self-driving car class.
And I don't want to go too much into it,
because we're actually going to talk to one of the Udacity guys about it,
about why and what's in it and all of that,
and student experiences. It's kind of cool but i i had
been trying to find a way to learn some of this machine learning stuff for the typing robot and
right just kind of flailing about i mean the books on machine learning are all theory the books about
python and machine learning are all just type it in like a monkey
and don't understand it and i was you got stuck i couldn't get between them i wasn't quite stuck
but i was pretty close to stuck because i was reading um ian goodfellow's artificial intelligence
book and i was following it okay which was better than the previous book I had.
But I couldn't apply the math in that book to the code of what I wanted my robot to do.
So it was still too divorced from reality. The Udacity class has helped with that a lot,
that I'm starting to understand some of the terms I saw before from NVIDIA,
and it's just been really helpful.
It's really hard to learn something from a textbook,
even if you have a project.
Textbooks aren't designed that way, right?
They're supposed to be a piece of a course.
Yeah.
I mean, it depends on how much you know. If you have a textbook, for me, if I need to learn everything that's in the textbook, there's no way I'll succeed.
If I know about half and I'm building on that half with what they're presenting, then I do okay.
Yeah.
It's kind of like I've been reading more journal papers.
And I always find them kind of intimidating because the language is stilted and they're
terse.
And I have now been reading some and I realize the reason I find them so difficult and so
confusing is because I don't have the basic knowledge.
And the ones that I've read where I have the basic knowledge, thanks in part to this Udacity
course and that textbook, they make sense. I can, okay, now I see what you did. I see why it's
important. Let's go. But then I go back and I'll like find another one and I won't understand half
the terms and it just is terrible.
And I hate that confused feeling.
I know it's important that it's part of learning and blah, blah, blah.
But it doesn't really make me feel less stupid.
I know it's just ignorance and not stupidity, but it's hard to get over that.
And finding good places to learn has been difficult.
Yeah.
So, yeah, I haven't done a lot of projects.
Gardening and the Udacity classes, which suck up a lot of time.
Because they're real courses.
I mean, you have long projects to do and turn in, and they get graded.
Yes.
Well, I'm doing the nano degree,
which is one of the pay-for courses.
There are some other courses that are free.
So what does that mean?
How much is that?
I don't know because I didn't pay for it.
Because, you know, I cheated,
which we'll talk about with Anthony when he's on.
I think it's $800 a term, so $2,400 for the three terms.
Okay, so that's not terrible.
It's not terrible for a college class.
When I called over to UCSC, our local graduate school,
and was thinking about maybe trying a master's degree
so I could learn some of this stuff,
it was a lot more expensive there.
Yeah.
And they wanted me to take classes like technical writing, which, yeah, sure.
Hey, don't look at me.
I had to actually do that stuff.
I know.
When you got a master's degree and they made you take a resume writing class as you were
a director.
A whole semester of resume writing and presentation writing.
And you already had to do that as part of your job.
You were so annoyed during that class.
And I just, I decided about a month into it
to just give up and pretend I was,
didn't know what I was doing
because it made the teacher feel better.
Yeah.
So.
It didn't really make you feel better.
No.
You know, I had to do a poster board set up
and the whole thing.
Yeah. But this was one of the reasons that I decided to do more online classes and not even ones that I do pay for and not to do a grad.
So, but you're taking this to get to fill in the knowledge you thought you needed to continue with the typing robot.
Yeah.
So when are you going to jump back into the typing robot?
When do you anticipate you will feel like you have enough accumulated working knowledge to apply it?
At this rate, it feels like never.
But I will say that I booted it all up last week
and tried out new algorithms on it.
And that I set up the Jetson training system again now with far more knowledge on how it should work.
So I'm not sure.
There's this new paper out called YOLO, and it's really cool.
It takes object identification.
Which we saw from Micah.
We saw from Micah ScanLime.
It takes object identification and detection.
Usually when you do object identification, you're looking at one thing in an image.
You're looking at a cat or you're looking at a human and you're just one in the image.
When you talk about detection in an image, you could be talking about lots of things like finding all of the people in the image.
Right.
More like what a car would have to do.
Right.
It needs to find all of the other cars in the image.
There's one pedestrian.
We'll avoid that one, but I can't see anymore. Right. It needs to find all of the other cars in the image. There's one pedestrian. We'll avoid that one, but I can't see any more.
So this YOLO does both, where it does detection of many different images.
9,000 different objects are in its database.
So it can identify lots of things on the screen.
And for the typing robot, that would be nice
because one of the things I wanted to do was detect keys.
I'm still...
Yeah, but you're going to have to detect, what,
20-plus keys at a time?
101 keys.
Okay.
And then I wanted to detect some other things.
A little laser light and maybe a few...
It's 101 keys on these things i don't
think on our laptop ones but on the big big ones they say there's 101 keys so i'm on the path i'm
very slowly moving along the path the yellow uh paper was the one that was, I was like, okay, I'm ready to try this. I have enough knowledge on how
to transfer this to do what I want. And then I read the paper and I was like, at the end,
I was curled in a ball thinking, oh my God, I'll never get this. But I've thought that before. So
I just need to keep chugging away on it. All right.
And the class that I'm taking now from udacity is the term two
for self-driving car and that isn't about machine learning it's about kalman filters and sensor
fusion which i don't necessarily need for the typing robot but it's always something i've
been around and i would love to be able to stop saying, yeah, I can help you with your sensor fusion problems,
but I can't implement the Kalman myself.
Because it's just sort of depressing to say that.
But maybe someday soon I'll stop having to qualify
my inertial measurement unit experiences.
And the first module was mostly lane finding
and other car finding.
Is that right?
There's lane finding with straight lanes and then with curving lanes. There's other car finding. Is that right? There's lane finding with straight lanes and
then with curving lanes. There's other car detection. And then there was that whole
section about interpreting German signs. So if you think about that, I can tell a car whether
it needs to go left or right to stay in the lane. I can tell it not to hit the other cars and I can identify when we get to a stop sign.
So the class goes on to how do you do the control
systems and it seems like it's a pretty good
class. It helped. So I went to
a job interview, like a full-time job interview. Okay. And it
kind of helped with that. I've gotten a job interview, like a full-time job interview. Okay. And it kind of helped with that.
I've gotten a contract related to some of the machine learning stuff,
not to actually do it, but because the guy who's doing it
needs to put it on an embedded system.
And I could talk to him.
I could speak the same language.
He said, I'm doing blah, blah, blah.
And I said, oh, have you considered da, da, da?
And he was like, yes, and I'm not doing it because. And we just had this nice conversation. And then as soon as that da da and he was like yes and i'm not doing it because and we just
had this nice conversation and then as soon as that was done he's like do you know the embedded
systems as well as this and i'm like oh so much better we were done i mean it was it was okay we
can be friends no i've i have found that to be useful you don't need necessarily an implementer's
knowledge of something but you do need to be able to talk to the scientist.
Yeah.
When I was doing a medical device, that was, you know, I was fresh off doing some physics and I couldn't do optics.
I hadn't done any optics, but I understood the language at least to say, okay, you're trying to do this.
Okay, that means this for my software. so having having the working language is really useful even if you aren't expert or you know have have a facility to be able to do the actual job of the scientists
this goes back to my no knowledge is ever truly wasted yeah it may not be useful today but
even the practice of learning is good yeah so this So this job, should I talk about it?
That's up to you.
So I went to go interview at Joby Aviation.
You know, we moved to Aptos, which is near Santa Cruz,
and they said their office is in Santa Cruz.
So I was like, okay, well, I'm not sure I want a full-time job,
but they're doing vertical takeoff and landing airplanes in a new model.
And I have FAA experience and, you know,
maybe it would be really fun to work on a really hard problem for years at a time.
So I emailed my resume over and they called and I went up and interviewed.
It's not in Santa Cruz.
The truth is it's in a place called Bonnie Dune.
Which is not a place.
Gorgeous.
But not really a location.
And I met really, really smart people doing incredible things with fun test things. And it just, it took me 45 minutes to get there and at
the end even though i was tired i was like this would be so much fun and then it took me an hour
and 45 minutes to get home during a normal traffic time and i realized this would not be fun because
i can't commute i just i'm not good at it. Well, let's be clear here.
That's not a commute.
Right?
Dirt roads aren't usually involved in commutes.
That's true.
There was, there was a lot of, as I was, as I was commuting, I realized that I could not take the nice car I was in.
I would have to get a car that could do 4x4 in heavy rain.
Mud.
In mud.
Washouts.
Yeah, so I think calling it a commute, it's more of a trek to work.
Well, the first hour would be a commute.
The last would be...
Backpacking.
Backpacking, yeah.
Camping in the car, sort of backpacking backpacking yeah camping in the car sort of backpacking yeah it was um
but if anybody wants to live in davenport which is a beautiful city city come on it's a beautiful
hamlet village town a town foot a beautiful uh waypoint on the road
it's it's it's it's a census designated place when they start that way
you know it's pretty much nothing yeah uh do look at joe b aviation they seem like a really neat
uh company and that actually brings me to the next thing that was on my outline which is
job ads in the show we were doing that for a while, and we were doing giveaways. People were saying, we'll give away T-shirts or whatever, books,
if you'll put a job ad in the show.
And then we haven't been doing that because they aren't, they go out of,
the timing is important.
Right.
And so, but most of our shows, the timing isn't that important.
Right.
So it just didn't work out i know a lot of you will be listening to this like six months late and
that's just silly no it's not silly for them to do that it's silly for us to have a
time limited ad uh in a show that people are listening to yeah i mean we might still do
contests for various things but we aren't taking those anymore.
We haven't been, I don't know if you noticed,
but now it's official.
Instead, if you want to support the show,
we have the Patreon, which we like.
You don't have to support the show.
If you support the show and we have extra money,
it goes to things like the Open Source Hardware Summit,
or we're going to have another one of those get-togethers.
Don't ask me when, I don't know.
Don't ask me where, I can't find a place.
The last place we had, they went out of business that day, so now I feel a little bad.
Well, think of some place you don't like.
Yeah, we'll go someplace terrible.
We'll have it there.
So yeah, but we are thinking about another get-together in the January, February timeframe.
Okay.
There was some...
Oh, we got more questions on the Twitters.
Okay.
Well, I mean, we've got email questions, too.
What do we have on Twitter?
But these are, I mean, people are talking right now.
Go ahead.
I'm reading. I'm reading. It it's twitter it can't be that long
even at 280 characters you should have been able to get through it by now
oh he tweeted a link to the giant microcontroller article oh uh and then asked
uh what's our process for selecting an mcu
uh okay so there's this giant microcontroller article the amazing one dollar microcontroller what's our process for selecting an MCU?
Okay, so there's this giant microcontroller article.
The amazing $1 microcontroller.
And it's written by Jay Carlson,
who will be on the show next month.
So we're not going to talk much about that article.
If you have questions for him, feel free to send those in.
We will post a link to that article so you know it's coming.
And how do I choose a microcontroller?
The laziest way possible.
I look at what I have and I try to figure out if I could just use this for that.
And if I can, I do. If I need to cost reduce, I go look if there's something similar to what i'm using i mean basically i don't
he he did this amazing synthesis of everything that's out there from various different vendors
i usually will start with something and be trying to walk toward something else yeah
occasionally i get to start from whole cloth and for that again I still choose stuff that's
something I've used recently which
generally means it's a Nordic or an STM chip
which is pure lazy
but you're not going to catch me using picks
so yeah
generally I use what's already been chosen
before I had any involvement
and I just stab my leg with a fork.
Yeah, you're loving that chip you have now, aren't you?
Fine.
It's totally fine. Really, just fine.
Okay, so how did you start your embedded software consultancy firm?
Well, that's an interesting question, because which start? When you first started it?
When I restarted it?
Okay, so I was working
at LeapFrog
and my job was changing
and I didn't like it.
So I quit there
and I went to a tiny, tiny startup
with a super famous guy
and it was not at all
what I expected.
And so I stayed there for about six weeks.
Wait, say that again.
I went to a tiny, tiny startup with a super famous guy.
Sorry, I heard a tiny, tiny famous guy.
No.
Anyway, I left there pretty quickly because super famous guy wasn't that involved.
And, um.
We can say who it was. It was Wheels of Zeus. Steve Woz was the famous guy wasn't that involved. And, um, we can say who it was.
It was what wheels of Zeus.
Uh,
Steve was,
was the famous guy.
Wozniak.
Wozniak.
Right.
Of course.
And this is why if you ask me,
if I know Steve Wozniak,
I will say no,
but my beagle has had intimate knowledge of his ears,
uh,
which is a story for another time.
Let's just go on. Anyway, I was
only there for a few weeks before I realized it was not what I wanted. And I had a consultant
friend and I asked him how hard it was. And so he, Michael Mew helped me and he helped me set
up a company. He told me what the options were and he even helped me find my first contract.
But then I went to ShotSpotter not too, like a year, year and a half later,
and kind of put the logical elegance to sleep for a bit.
And then Chris restarted it after his master's degree.
No.
Around the same time, but it wasn't related.
Okay.
Was it around the same time? Anyway it wasn't related. Okay. Was it around the same time?
Anyway.
Yeah, sometime around then.
You had a job.
I got fed up.
Yeah.
Getting fed up is the usual path to consultancy.
Yeah.
For both of us, it wasn't a, I'm going to be a consultant forever.
It was a, I don't want to do this right now, and I need to look at my other options.
And consulting gives me more freedom to do what I want.
And for both of us, we've been a consultant, and then we've been a full-time person.
So it's not like it's an end.
Yeah.
Yeah, I did it for eight years, something like that, before going back to full-time.
And like I said, I actually applied for a full-time job recently.
I'm not going to take it, but I'm a forever consultant.
I know some people are.
I really like consulting, especially because this class thing is really nice,
and I feel like it is part of my job to stay current and to learn new stuff,
which is always harder in a full-time job.
Like they say, oh, we'll develop your career.
Unless they're actually sending you to school, which some places do.
Yeah.
That's not really tenable.
Okay, so answer that uh hacking elegant solution criminal activity frustrated mess or other what oh i see that's a poll it's a poll
that's probably why you can't see it yeah hacking uh hacking is not one of my favorite words i go
with frustrated mess i would never select elegant solution from there
but any of the others maybe
When I first used the word hacking
I always meant it as the worst possible quick solution
to get something working
That or what the cat's doing when she's about to make a hairball
Yeah
Alright cat's doing when she's about to make a hairball yeah all right uh let's see the blog we do by the
way embedded fm has a blog does it no i didn't know because i haven't seen anything on it for a
while we've had a few posts lately but um chris veck and andre chichak have been taking a break
which is now over i hear they're writing furiously.
I hear Andre is writing some and I have at least one post in the queue ready to go.
But Chris Veck is taking the self-driving car class.
So he's not going to be writing anything
until he's done with that because it is a time suck.
All you MSP430 loving people are gonna have
to wait it's really sad i mean they've both been doing a great job on the blog and so i'm bummed
that they aren't making the time for it but i understand it is a lot of work yeah so make sure
you send them lots of emails right beg pathetically for their attention. That's what we really want. Okay.
Okay, let's go with emailed questions that we haven't answered in a long time.
Ben, who is also KN4COI, wanted us to talk about Christopher's adventures in amateur radio and whisper. Oh.
I don't have a lot to say that's different.
We did do this.
We did part of it as a show.
So, Ben, if you haven't heard the show about that,
we'll link to it, and you can look at that.
But, you know, I'll answer.
He has a couple of specific questions, what hardware I'm using.
I'm using the QRP Labs,
pulling it up right now,
the QRP Labs Ultimate 3S Kit,
which is a nice multi-mode transmitter
that's sort of Arduino-ish based,
so pretty open,
and you can get all kinds of filters for it to transmit on many bands.
And it supports a lot of different modes, including the usual Whisper mode.
So that's the one I built and used.
It also has a receiver module that you can use, or build and use,
that will go into the sound port of your computer
and into the WhisperX software to do reception,
which I have not gotten to work.
I should point out that Whisper,
there are some people who receive,
and often they have large antennas,
and there are people who transmit,
and sometimes they have small antennas.
And you don't have to do both
you know yeah um you did transmit for a while and it was hilarious to see that people in georgia
were receiving your tiny quarter watt signal yeah yeah and uh and then you went on to Google Earth and saw their acres.
Well, that was the one in Canada.
It was a big antenna.
But yeah, there's a lot of good kits available.
And there's a lot of people who do stuff with just Raspberry Pi.
You can build a transmitter from Raspberry Pi pretty easily.
You can do reception also with a lot of the sdr kits and things so uh yeah it's pretty
it's a pretty fun little thing because it's i don't know part of the problem i have with ham
radio is actually talking to people and if you ever listen to no offense to hams but if you ever
listen to the kinds of conversations that go on on you know two meter and stuff it, it's not the most thrilling.
And I've just burned my ham ticket.
Yeah, you just, first person ever kicked up out of AARL. So sad.
Yeah, so that's what I'm doing.
Or that's what I'm not doing, or it's what I did. That's what I'll get back to at some
point.
Yeah, I mean, you had fun with it,
and now you're having fun with the synthesizers,
and I expect you'll go back to that.
And yeah, well.
Simon from Melbourne, Australia,
wants to hear some more nonfiction book recommendations from guests and us.
Well, it's going to be mostly you.
I don't read a lot of nonfiction.
We had Gretchen Bakke on the show. That was The Grid. We had Jimmy Soni on the show
about Claude Shannon. We're going to have, I think we're going to have Tim O'Reilly talking
about his WTF futuristic book on the show. If you're looking for another nonfiction,
there's the whole book I hear that's pretty good
about making embedded systems.
This was totally rolling his eyes at me.
You should have seen that.
I wish I'd taken a picture.
It's hilarious.
And if you want a,
what was my favorite nonfiction book
in the last two years?
It might be a tie between spirals in time and
um and what does what can water tell you um i don't think i have that title right
water gooey water gooey how to read water that was it okay and uh the spirals in time is about mollusks
and fossils and it was weirdly entrancing uh instead of reading it before bed like i usually
do for my non-fiction books i picked it up and read it all weekend and forced christopher to
listen to snail facts all weekend.
It was the weekend of snail facts.
It was great.
There are no insects in the ocean.
Christopher even remembers some of the snail facts.
And How to Read Water was looking at ponds and oceans
and figuring out which way the wind is blowing and how does the sandbar look under the water just by looking at the top of the water.
It was so cool.
You became the beach explainer.
I did.
I did.
The beach explainer.
But how do I find nonfiction books?
There's this thing called BookBub.
BookBub.com.
I'll put a link in the show because it's hard to understand what I'm saying there.
And they have a science section, and it tells me whenever there's a science book on sale.
Today, there is one about how owls aren't wise and bats aren't blind.
And so I got that, which is really very factoid-y and pop science. And I don't know ifoidy and pop science and I don't know if
it'll be good but I don't mind I like I like all of these I did I get a negotiation book off of
that same thing um that was two bucks and how to negotiate and it was a hostage negotiator and it
was kind of written for how to do it in MBA things.
I didn't really care about the business stuff,
but I loved the negotiation for hostage
and his techniques for getting people to understand
how to deal with high stress situations
in a way that detenses everything.
Yeah, so I don't think I'm a great person to ask
because I read completely random things.
That sounds great.
You've got a lot of good stuff.
I like to, like, I don't want to,
I will naturally read natural sciences.
All of those I just love.
Biography sometimes.
And then everything else I want to read like one of every year
so that I have some well-rounded thing.
I remember Bailey was telling me how she tried to read something
from each of the Dewey Decimal 100 systems.
So you read something from the 100, something from the 200,
something from the 300 every year so that you get a well-rounded view of the world.
It sounded like fun. I didn't try it, but it sounded like
interesting. Yeah, I don't have, uh, wait.
I was reading something. Yeah, you've read
the Elon Musk book, and I haven't read that yet. Yeah, that was
I mean, he's... I mean, he's
one of those people.
He's an interesting guy.
Not somebody I want to work for.
I
have been slowly going through two books
that are kind of cool
and one of them
is not technology related.
But one sort of is.
It's called The Network.
Oh, right.
And it's not about computer networks.
It's about the history of the first wireless radio networks for broadcast.
So it's called The Network, The Battle for the Airwaves, and The Birth of the Communications Age.
And it's not all about Tesla and Marconi.
It's all about kind of a little bit of the science,
a little bit of the business side,
a little bit of how people figured out how to move on from, you know,
teletype and telegraph to broadcast and how all that developed.
So that was pretty good.
I haven't finished it um the other one is david burn's book called how music works right that you
keep leaving that one out and i keep looking at that it's very cool it's you know it's definitely
thoughts of his there's not a lot of you know it's not science there's not a lot of
super evidence behind it but a lot of his notions of, it's not science. There's not a lot of super evidence behind it,
but a lot of his notions of where certain things we do in music came from,
why certain genres of music are the way they are.
Do you remember any specifics?
Yeah, so stuff like the way classical music
and the structures that we played music in co-developed,
like a big symphony hall influences the music that you play in it.
Sure.
Because you get a certain kind of echo,
you need a certain number of instruments to fill it with sound,
versus the kind of stuff that happens in clubs with rock and roll and stuff like that.
So he has this whole theory of the environment shaping music and vice versa, which was pretty
interesting. So that's, it's not something I'd ever really thought about. And how things changed
over time, like jazz became popular in little clubs,
but then moved on to big concert halls.
And so how the music changed to deal with that.
One specific example is like Gregorian chants and things, right?
Those happened because the place where music happened
was in these big cathedrals with
infinite reverb so you couldn't have quick little notes and you know staccato things and percussion
because it would all just crash into itself but you could have these long droning passages that
kind of layer on top of each other and their echoes. And so the question is kind of chicken and egg.
Did the music come because of where they were singing it,
or did they design the spaces to accommodate the music?
Anyway, so stuff like that.
Sounds cool.
Nothing to do with embedded systems.
Yeah, I do sometimes read technical books, but not that often.
I mean, sometimes sometimes but yeah i'm more likely to want to read
about iguanas or something just just cause okay uh zach zach asks about the the Michael Barr Group's embedded software training in a box.
Priced at $900 US, it contains some stuff and a book and J-Link and IAR,
works Kickstart and stuff and things and dozen articles, PDF books, blah, blah, blah.
And 11 exercises and a capstone project.
I'll put the link in.
I didn't actually follow the link, but I'll put it in anyway.
And basically the question is, what did we think about it?
Which since I didn't follow the link, I can't tell you what I think about it.
But the second question was, what would you put in a box?
And let's just round up and call it a $1,000 box.
$1,000 box?
What would you put in it that would help someone be able to get an embedded systems job?
Okay.
$1,000.
How much can you get a decentol, a decent Rigol for?
I think the decent ones start around $400.
So what I'm trying to figure out is real scope or analog discovery and or salier.
The analog discovery would be a lot cheaper than the Rigol.
So, okay.
So let's say analog discovery.
So that's a couple hundred.
Yeah.
Let's mark that as 200.
That leaves me with $800.
I know, that's so much, isn't it?
I think this is too much.
You could get a number.
Okay.
So I'd get a number of dev kits for the common,
common platforms,
Nordic,
ST,
Atmel.
Okay.
So,
so let,
I don't know if I,
I might do Arduino just because you could do a blinking light right away.
You can do that with those, though.
It's not...
If you're talking about an embedded systems job,
I don't think that's useful.
Well, and then the question is,
do you put in a Raspberry Pi or a BeagleBone?
Sure.
Okay.
Because you can, I mean,
you can give somebody a kit which has
almost every architecture and style embedded system board that they might encounter.
Well, do you want to do that or do you want to give them the board and the sensors they would need to be able to do a bunch of exercises that are truly useful?
I'm trying to spend $1,000 is the problem.
I actually had to do this for someone for $200 recently where I was given a budget of $200
and specced out what I would want in a box.
And I was a little surprised at how fast it went.
I thought it would go further.
$200 goes fast.
$1,000 takes a little while longer
because unless you're just going to buy a whole bunch of things,
that's...
So I think the analog discovery or something along those lines,
for about $200,
I would definitely do a voltmeter separate.
Oh, definitely.
So call that $50.
Get the most expensive voltmeter
and then we can spend some of this money.
No, we're still at 250.
I would get two ST boards that were similar in form factor and power, but very different in terms of processors.
So something that was a Cortex-M4F and something that was an M0.
Yeah, okay.
That's what I was kind of trying to go for.
So that you have the same connectors.
You can use the same sensors on both,
but you get a big change in the architecture.
Yeah.
I would have at least six analog sensors
and at least six digital sensors,
although one of those digital peripherals,
because I want an SD card for logging.
I think that's important.
My high-end one would also probably have Ethernet on it,
so that you have to use an RTOS.
The low-end one, you don't have to use an RTOS.
Now, you've got a bunch of classes here.
You have ones where you have a small board,
and you have to put some LEDs
in there and some resistors and some buttons. And then you have to design some lessons. And as you
design the lessons, you start thinking about, well, what other hardware do I need? If I want
to do a stoplight, then I want to be able to mimic sensors in the road and maybe I don't want to do actual inductive sensors
maybe I just want to have buttons that say there's a car here or there
and then I need a tricolor LED
or I need three times four LEDs
so I think you'd have to start thinking about the projects
you want them to be able to build
and then also what additional sensors they might be able to use.
So temperature sensor, humidity sensor,
all these analog sensors would be really useful.
I, of course, think you need an inertial measurement sensor.
I mean, yeah, so you can fill the whole box up with every kind of sensor.
I would make it so you didn't have to solder.
Yeah, well, really. I would make it so you didn't have to solder. Yeah, that'd be, well, really?
I would.
It's not as required anymore.
It's really hard to teach from afar
and it's so much easier to learn with someone in person.
If you make it so they have to solder,
you have to include a soldering iron
and then you're kind of blowing your $1,000 pretty quick here.
Once you have a soldering iron, then you have to think about, do you need And then you're kind of blowing your $1,000 pretty quick here. Once you have a soldering iron,
then you have to think about, do you need a fan and blah, blah, blah.
So I would avoid soldering.
We're leaving out one thing, though.
What?
Software.
Oh, I would do embed or GCC,
and I would not play with IIR or Kyle.
Okay.
I am done with them.
Done with them.
I mean, I've always,
I've been willing to pay for software that's good.
Just let the implication hang there.
Maybe, yeah.
But as I use GCC more and VS Code,
and I become more adept at GDB Direct,
which I was really good at one time,
and then I kind of lost it using IDEs too much.
And now I'm getting good at it again.
Yeah, I've really gotten back into command line GDB and like it. And you've had a project. I don't even use it in VS Code. I just
drop down to the command line. I'm not that far yet. Although I do have
the command line open in VS Code and I switch back and forth. All my muscle memory from 1998
came right back. Yeah. But
GCC has been faster to compile.
The results have been smaller. They've been faster to compile. The results have been smaller.
They've been faster.
I'm willing to pay for stuff.
It's not like the IDEs are better.
It has some more advanced features than IAR.
The warnings are better.
Yeah, I'm surprised because I have been on the side of
oh buy the IDE it's easier to set up
it is easier to set up
but it's getting better as Nordic and STM
and all of the vendors start to understand
no no I need really all the instructions
and I need to understand your dependencies.
Yeah, I wouldn't be spending a lot of money on software.
As for books and stuff, yeah, I guess I would
probably budget maybe
$100 of those, $1,000 for different books.
It's funny, in this package I put together,
I definitely could have put a book in,
I could have put my book in,
and I opted not to.
And then ever since I've been like,
well, should I? Shouldn't I?
Should I? Shouldn't I?
But I don't want to take out, you know,
the volt meter.
I don't want to decrease the price of the volt meter
just to put my book in.
They can go find my book if they want.
But you should, of course, buy my book because it's fantastic.
So not good at this part.
Yeah, I think that you could build a $1,000 box that would be pretty good.
Unfortunately, I think that the box would have to be updated every year.
Yeah, that's the problem. And that would every year. Yeah, that's the problem.
And that would be the hard part.
That's the problem.
And if I put in a BeagleBone, I would be tempted to put in all of the build tools on an SD card and a screen and tell you that you can use the BeagleBone for development.
I have done that before.
It's a little slow, but it takes out a barrier
to entry
and then you have
the beagle bone
oh as far as
sensors and peripherals go
I would have a display
for
my processors
because that's always
a really good thing
to learn
something ADC
and DAC
I mean you think
about a project
you could make
a little oscilloscope
yourself
yeah
maybe that's the first
thing you leave out.
Well, no, because
communicating with the display
and having to do
good buffer handling
and ADC and DAC.
No, not right away.
But that could be the third or fourth project.
First project's always
blinky anyway.
So Zach, I don't know if we answered your question i bet
you actually wanted a list of things and i just mumbled through it oh wow uh i mentioned tim
o'reilly did i did i say i think we're gonna have him on the show soon yes okay so if you have
questions for tim get them into me around thanksgiving um that's when i will start putting
things together for him uh another show i am going to pre-announce,
it's so bad when I pre-announce things
because that's when they all get canceled.
So far we've talked about Jay, we've talked about Tim O'Reilly,
and now I'm going to say we're going to have another holiday show
at the Amp Hour.
So who knows what's going to go wrong before that can happen.
We didn't say what holiday.
Yeah.
Could be St. Patrick's Day.
So we will be chatting with Chris Gamble between Christmas and New Year's. We didn't say what holiday. Yeah. Could be St. Patrick's Day.
So we will be chatting with Chris Gamble between Christmas and New Year's.
If you would like to ask.
If you'd like to direct the conversation in any way.
In any way.
Just let us know.
It will be a joint show. So it will be posted on both shows.
That covers it.
All right.
Things I have.
Did Twitter come up
with anything new?
I haven't been pushing
update fast enough.
No, that's it.
Okay.
And we will call it done.
Call it done.
Let's see.
I did.
Oh, man, I didn't write
out my end thing.
Let's see.
Going to have to wing it.
Thank you to Christopher for co-hosting and
producing why are you looking at me like that because you're you say this every time and it
seems like you're not remembering it that's because i read it every time sink in after 220
times oh my goodness uh thank you to to... Now look at what you did.
Thank you to Christopher
for producing and co-hosting.
Thank you to our Patreon
subscribers
or supporters or whatever you'd like
to be called. I really do
appreciate the ability to send people
mics and the ability
to occasionally fork out caches
to things that I appreciate, that I think
you would appreciate too. And of course, thank you for listening. I do have some quotes to leave you
with. Let me choose one of these. Let's see. Let's go with one from Jimmy Sonny's Claude Shannon book, A Mind at Play, in which Omni Magazine asked Claude Shannon,
do you find fame a burden?
And Shannon replied, not too much.
I have people like you coming and wasting my afternoons,
but it isn't that much of a burden.
Embedded is an independently produced radio show that focuses on the many aspects of engineering.
It is a production of Logical Elegance, an embedded software consulting company in California.
If there are advertisements in the show, we did not put them there and do not receive money from them.
At this time, our sponsors are Logical Elegance and listeners like you.