When circumstances throw a huge opportunity your way, how do you scale production fast enough to take advantage of it?  In this Phase Dock LIVE, Steve Friedl shows how he helped his brother’s small biomedical manufacturing company pivot to help meet the huge volume needs for rapid and accurate Covid test equipment.

Steve was featured in a Phase Dock LIVE broadcast, April 10, 2021.

Part Two topics include:

  • Fillerbot #2 — the Universal Fillerbot in development
  • The pumps, the controller, the communication and the software
  • Beaglebone, Arduino, and software choices
  • Continuous improvement and working with a great team

In Part One, Steve walks us through:

  • The fill and assembly of Covid test vials
  • Fillerbot #1 evolution from a plotter mechanism into a highly reliable production equipment.
  • How 3D printed parts and a custom PCB streamlined the vial labeling
  • How he prototyped and tested functionality on a Phase Dock WorkBench before finalizing the PCB
  • Why 3D printing is a Super Power
  • Ways to leverage 80/20 aluminum frames for prototyping and production

CHRIS: Hi, friends—I’m Chris Lehenbauer, CTO and founder of Phase Dock.

Welcome to the April edition of Phase Dock LIVE.  Our featured guest today is our good friend Steve Friedl aka UNIXWIZ.

Steve is a Southern California software and network security consultant, a community hike leader, and unabashed fan of Phase Dock products for prototyping. He’s been using our products to develop and prototype automated production equipment in his brother’s medical manufacturing facility in southern California.

Hey Steve, we’ve seen the end product. We’ve seen some of the ways you’ve gotten there, so tell us where you’re going next.

STEVE: I’ll walk over there to the next one. This is the next version of the Fillerbot. It’s not working yet. I’m still putting it together.

I’ll start with the pump stack. This is all constructed from the 80/20 aluminum.

Fillerbot Universal in development

Fillerbot Universal in development

It’s got space for six pumps. A lot of 3D printed parts. The little bases the pumps sit on. These little bumpers at the end.

If we come over to this side, I actually built in a mounted power supply. Every one of these pumps takes 24 volts…previously you had to have a little power brick for each one. That’s just crazy. So what I did when I put this one together is…it’s heavy (he pulls it away from the wall)…they are all wired together. The white (wires) are RS232 between each of the pumps. Every one of the pumps have this little power connector to hook each one up so it’s really self-contained.

It was kind of overkill to put the voltmeter on there, but it looks kind of nice. And now when I run it, it’s actually helpful to know how much current I’m drawing.

Pump integration with power, comms and voltmeter

Pump integration with power, comms and voltmeter

CHRIS: Hey Steve, are the pumps daisy-chained? The signals?

STEVE: They are. That’s one of the things, that goes into the electronics. They are daisy-chained serial. That means if you are talking with one pump to, say, set the volume, it works. But if you are talking to multiple pumps you have to address each one.

They have to agree to not talk when the other guy is, but it’s common that they’ll talk all over each other when you just get the software going.

Last year I bought a Keysight four-channel scope that had serial protocol code. This has rocked my world. I can put the scope on there and I can tell that the signals were garbled because two of them topped each other [2:15].

I think I told somebody that if I hadn’t had this scope with serial protocol code it would be until heat death of the universe before I got it working.

CHRIS: I totally get that, yeah.

STEVE: So that all comes into the Phase Dock. This isn’t running right now, so I’m actually going to kill the power because I haven’t set this up here. I did this all at home.

[2:35] Again, I used a Beaglebone. There’s a little IO expansion cape and I have a little buck converter.

Fillerbot Universal controller layout

Fillerbot Universal controller layout

These are outputs, 5 volts, strictly USB to power the Beaglebone. Plus I’m going to use a tablet as a little control interface. And this is just power for the tablet. Just a little bit of breadboarding.

[3:05] This white piece, I designed it to mount an RS232 level converter. It’s got the little RJ 11 plugs right on in. Plus, these are the prototype buttons.

Obviously for the real pump, we’re going to have buttons somewhere where the operator can get at them easily. This is just for testing.

Here’s a little speaker because I want to add beeps and boops to let the operator know what is going on.

CHRIS: [3:32] I think that’s extremely helpful. Audio feedback is awesome.

STEVE: Because you don’t want to have somebody to have to look the screen. And the beeps may tell you that maybe it messes up or somebody starts the process and they walk away, you want it to go “beep beep beep” or something.

Where it’s going to be particularly useful though… this is where the Fillerbot is going to be. I call this the Fillerbot Universal. The idea is… we also fill these cytology collection vials. They take the same fluid but it’s 20ml instead of 3ml for the Covid.

Cytology collection vials at Fillerbot Universal

Cytology collection vials at Fillerbot Universal

Right now we use this very, very old Filamatic. I think it was built in the early ‘70s or maybe even late ‘60s. It works, but it’s one at a time.

Here we’ll be able to stack these up. We’ll have three heads. The tubing is going to come through here on this drag chain and feed off the pumps. [4:30]

Unlike the other Fillerbot (See Part 1), which was two axes. This is just one. It has dramatically simplified construction. We’ll expand by going out. For cytology vials, we’ll do three at a time. But when we’re going to do the Covid vials, we’ll replace this head with a different one. There will be six heads. Then we’ll be adding a motor to do the drive, switches and all of that.

CHRIS: Sure. Wow. I love the modularity and the flexibility there. That just makes total sense for the next level.

STEVE: I think so. It’s a lot simpler. I think two axes are a lot more difficult because you’ve got a much longer lever arm as things go out.

Other people have suggested basically orienting the whole thing this way, [5:32] so you can do two axes and it wouldn’t be quite so tough.

Possible alternate orientation of Fillerbot Universal

Possible alternate orientation of Fillerbot Universal

I think keeping it this way (his original layout), is going to be good enough.

We’ll standardize on these pump stacks. I have aluminum cut for doing six-pump and three-pump versions.

This will probably do three really well. [5:54]

CHRIS: You know, Steve, something that we’ve found as well…a lot of times, if the machine is simple enough… what I like to do is to scale and get more throughput by just adding more machines.

Instead of building a much more complicated larger single machine, just have lots more small simple machines. There are actually a number of advantages to that, so I like the approach that you are taking.

STEVE: The other reason we do this is I’m hoping this will be universal. We’ll make a handful of these for cytology fills, a handful for Covid fills. We’ll be able to keep these in stock in case something breaks.

If the original Fillerbot broke, it’s the only one we have…that makes everybody a little bit nervous.

CHRIS: That’s absolutely true. The redundancy is key, because you have a single point of failure over there…and this would take care of that. Also, I love that modularity. We’ve done basically the same thing with our production (acrylic line bending) folders. The base, which is the most complicated part, is standardized. And then, for the different sized products we have a smaller, simpler folding unit that attaches with four screws into a fixed position. So it’s the same concept. That way you can adjust your production.

It’s the perfect blend between redundancy and flexibility. So I think you’re going the right direction.

STEVE: Also because they are simpler, they are easier to build. The first one is always the one that takes the longest.

As we were prepping this morning, I was talking with Mike at some length about this one, and he thought that raising this up might be important to give some clearance for the tubes. [7:38] You definitely don’t want anything to rub as the tubes come up from this drag chain over here. So maybe we make this another inch or two taller. I don’t know. We’ll find out.

CHRIS: That’s the beauty of the 80/20 also, right? That is a very simple change to make in your design before you go to production on multiple machines.

That also speaks to something that you and I talked about before in the run-up to the show, which was this notion of…and I’ve seen it myself, I think it’s a universal law…we tend to see the more complicated solution first. The more elegant, simpler solution takes a while to come forward.

Chris Lehenbauer, CTO and Founder of Phase Dock

Chris Lehenbauer, CTO and Founder of Phase Dock

That’s what I kind of see going from your first Fillerbot to this one, you’ve actually removed one axis and made it much, much simpler. I think you’ll be able to match that throughput and maybe get a little better. By increasing the number of machines you can certainly do that. I see that process working in you and it seems to be almost a universal law.

STEVE: That’s why you have ideas. A lot of my ideas I get from the operators here. People who work on the machines for hours at a time have ideas for little simple things. You know, not every idea has to be a million-dollar idea.

CHRIS: That is one of the fundamental principles of continuous improvement; lots of little ones…lots of line drives, don’t wait for the home runs, right?

STEVE: Right. As a matter of fact, while I was building the very first version of the Fillerbot, it had just a single nozzle. Because it was built on a plotter, it actually has a mechanism to raise and lower whatever is at the end. And originally I had that, thinking we needed to dip down into the vial. Turns out we don’t need to. But I’m looking at this trying to make it faster, and it was actually my wife Jaimee who said “Make multiple nozzles on the end.” I was like “Duh.”

CHRIS: We’ve had that happen here so many times, Barbara will look over my shoulder and she’ll say “If you just do X…” and I’ll think “Man, why didn’t I see that?”

STEVE: I’m surprised just how much good inspiration I get from Jaimee who’s only been here once. [10:04]

CHRIS: There’s something to that. Which is what I like what you said before about that notion of listening to the operators. The people who are closest to the process very often have some of the best insights into that process. If we’re humble enough to listen to them you can really make a lot of progress.

STEVE: The nice thing about here at Resolution Biomedical is that everybody is really on the same page. Everybody helps everybody else. It has really been delightful. I have much more respect for people who work in factories. I couldn’t do this all by myself. We could not be successful without the team here. Just amazing.

CHRIS: I’ve heard of stories like that across the country as people responded to the demands of the pandemic. But just to see it close up here, it’s actually…I don’t want to be cheesy…but it’s pretty heartwarming.

It speaks to something that is near and dear to our hearts, which is onshoring or re-shoring manufacturing capacity. That’s just something I’m really, really big on. That’s one of the reasons we build our own product.

We’re also being drawn in, in a good way, into educational uses for our product. We’re actually developing some curriculum materials so I’m hoping we can help to bring young people into the engineering world because of success stories like this…what you’re showing us right here.

STEVE: It’s been a wonderful confluence of a lot of things that have happened at once. You know…Covid…we already had a process for the cytology vials…I had availability and interest. Other people who work other aspects of this. It all just came together. It’s really been a very exciting year.

CHRIS: It’s been really great for us because this is why we do this series (of LIVE interviews). I’ve said this before, our customers do the most amazing things and just to kind of look over your shoulder during the last year has been great. When you first told us what you were doing and we started seeing pictures, we were like “This is why we do what we do” to try to help accelerate (innovation).

It is really gratifying to see it come together.

STEVE: It’s been fun sharing with you guys. It turns out I found out about you guys from a Facebook ad.

CHRIS: We were wondering about that.

STEVE: It was definitely a Facebook ad. I looked at it and I thought “This is great.” Of course, I have a big love for the whole SR71 vibe that you guys have going on there.

CHRIS: That’s why we really appreciate you taking the time, and our other folks who have joined us for Phase Dock LIVEs before, basically to show how they are using this thing. Because there is such a range of projects.

BARBARA: I have a question. We are considering inviting some folks from Beaglebone to speak, and I notice that you are featuring Beaglebone in your build. Why Beaglebone? And do you think it would be relevant for a future Phase Dock LIVE?

STEVE: I love Beaglebone. I’d originally started using the Raspberry Pi, but it just doesn’t have enough IO. Basically I use the Raspberry Pi for compute, but anything where I need IO for…this has four serial ports on it, and right now even with this I’m using two, plus the console. The other one uses two    Adding external stuff on the Pi was just too much.

Steve compares Beaglebone and Raspberry Pi for his applications.

Steve compares Beaglebone and Raspberry Pi for his applications.

For building industrial equipment like this, Beaglebone is perfect. That IO is just crazy good and useful.

In my whole network I have three or four Raspberry Pi’s that do things like time servers, name servers. You use the hardware that is best for it. But the Beaglebone has been just delightful.

The one I’m using here is the green WIFI. You can see the little wireless antennas here. [14:36] I haven’t powered them on here at RBI, but it normally just sits on the WIFI and you connect to it over the net. Of course, they are both Linux and just SSH into it and run the software. It’s been tremendously reliable.

I love a good ecosystem. Again, nothing beats the Pi for a huge ecosystem, but the ecosystem around the Beaglebone tends to be more along the things that I would want. I’m not looking to make sparkly LEDs [15:05]

CHRIS: I think you are right. Honestly, what makes a given family of boards succeed more than anything else is the ecosystem both for software development resources, and additional hardware add-ons, boards, shields, hats, whatever they are. That’s really what makes it.

We are thinking about having two of the “big dogs” in the Beaglebone world if we can twist their arms to join us for maybe two months out. We’ll definitely let everyone know about that.

In some ways the Beaglebone is kind of the best of both worlds, kind of like a microcontroller wrapped up in a Raspberry Pi.

STEVE: Also, just to round out the micros, over on the Roser labeling machines the little pause button uses a small Arduino. It was really a simple application, just managing some buttons and sensors. I didn’t want to run an operating system that could be corrupted. Now we’re talking about a couple hundred lines of C code. So Arduino was perfect for that.

I think you had Glenn* (Popiel) on a couple of months ago, right?  [*Glenn Popiel is the author of a number of Arduino project books. He was Phase Dock’s guest in January 2021.]

CHRIS: For a lot of the stuff I do, I just use straight up Arduino. It’s amazing how complicated you can get on an Arduino. And you’re right, it’s pretty bullet-proof. Once it’s flashed it stays there.

STEVE: On the Beaglebone, the actual application is in Python which I’ve never used before. I was more of a Perl guy. But I like Python a lot. It’s got pretty nice bindings to the hardware, so… talk to the serial port, catch an interrupt, from an IO line or whatever. I really like it a lot. I was surprised how much I liked it.

I did find that trying to use CircuitPython on one of the Adafruit Metros was unusable. You can’t write big programs, no interrupts. I just gave up and went back to the Beaglebone.

CHRIS: That’s interesting. It’s something I wanted to look at, but haven’t dabbled in yet. Maybe that’s something for a future Phase Dock LIVE. I’m curious about CircuitPython because I think Python in general is an easy language to learn and yet very powerful. And now it’s being so widely used. It is gathering steam. I’d love to see it gather more. But I don’t’ really know much about CircuitPython.

STEVE: I’ll fill you in a little bit later sometime.

CHRIS: Is there anything else that you’d like to show us?

STEVE: I think we have drilled down and covered it all. You’ve seen all the things that matter here…except for the people. It’s really been a fun thing to share with you.

CHRIS: Steve, I want to thank you, not only for what you’ve built out here but also for how much you support us as a company. Barbara and I really appreciate that. Thank you for that.

STEVE: One little company to another.

CHRIS: That’s great. I think that that’s a wrap for us. I’d like to thank you both, Steve for a fabulous presentation. Mike for helping out behind the camera. Mike, come around in front and wave at the camera.

STEVE: Thanks very much!

CHRIS: Thanks and we love what you guys are doing.

END Part 2.  View Part 1.