Episode 31 Transcript - Help I'm Alive

Paul Cutler

Welcome to The Bootloader. I'm Tod Kurt. And I'm Paul Cutler. The show works like this. Tod and I have each brought three things to share, and we'll talk about each one for about five minutes. We're glad you're here. Tod, what's your first one for us?

Tod Kurt

My first one is Bambu Helper. Bambu Helper is a tiny ESP32 powered desk friend that tells you how your 3D printer's doing. uses MQTT either in lan mode or cloud mode to get your Bambu labs printer stats. It shows percent progress, ETA when the print will be finished, temps on the bed, nozzle, and chamber if you've got a chamber, and even what type of filament it's using. I finally got a Bambu printer a few weeks ago. The same week, a member on the R-ESP32 subreddit post about using an ESP32 super mini board and a little 1.5 inch square TFT display to pull data from their Bambu P1S print. over MQTT. I didn't even know this was possible. I knew that they were kind of on the net, but I thought it was a purely proprietary protocol. And the build he ended up making was pretty slick. It was like this nice little enclosure thing that looked kind of like it would properly set on your desk like a little product. So I bookmarked it and I thought, okay, maybe I'll get this something, get this to work on my H2 printer, like after some time. But then a few days later he posted an update. Surprise, Bambu helper now works for all 3D printers. And it can work in either lan mode, talking directly to your printer, if you've got one of the printers that can do that, which unfortunately mine is not, or in cloud mode where it talks to Bambu servers over a secure TLS MQTT. It's even got a web interface once you've got it all set up to configure various settings, like what information you want to just be displayed and like if you want the screen rotated or not, depending on how you build a setup. And if it's not doing anything at all, like if your printer is just stationary, then it becomes a clock. So that's pretty handy. And if you want to build one of these, it's pretty easy. It's just eight wires to solder between the, you. ESP 32 in the display. There's an optional touch button you can wire up if you want, but I don't think it's really that needed. I think it just switches between a couple of different sort of status screens. The maker included a nice 3D printed enclosure that's got a really clean, minimal aesthetic, almost retrocomputer inspired. And I thought it was very thoughtfully designed because it assumes that your little ESP32 board already has headers soldered down, which is the way I always operate. I prototype stuff on a breadboard and then move it to an enclosure. And a lot of builds assume that like, oh, you're taking this pristine board and soldering wires to it. It's like, I don't want that. I want something that I can kind of undo and put it back on the breadboard if I need to. So it's nice that his 3D printed design kind of assumes that you've got headers already installed. The end result looks kind of like a finished product, which is pretty great. I've breadboarded this running right now, and it seems pretty useful. I think I might actually build it. You can get all the information from the Bambu handy app. on your phone if you have that installed or from Bambu studio if you use that but i'm a big fan of ambient displays and so i think i'm going to build this and put it in the house where i can tell a glance what the printer's doing that's in my workshop which uh they're they're distinct they're separate and but i think my case i'm going to make a little alternate case it's going to be more vertically oriented and wall mounted so i can mount it to our cork board where like little notes go up but an outstanding question i have is for Bambu helper is how does it deal with error or warning conditions, you know, like jammed filament, opened door chamber or chamber door. I've not tested that yet because it's hard to get these Bambu printers to fail so far as far as I can tell. But, you know, I come from a decade of 3D printing where I'm used to printers failing as much as them working. So this is one of the first things I key on. And all of the while I've been pondering this, our Paul here writes two incredible CircuitPython tools. First, circuit Bambu, a CircuitPython take on Bambu helper, and it looks great. And it's written in like CircuitPython with display I.O. So you can port it to other platforms, I think, pretty easily. And more generally, a Bambu Lab CircuitPython library for anyone to get info and interact with the Bambo Labs printer. This is super neat. I can't wait to play with it. I'm honestly more interested in modding circuit Bambu to work with one of my favorite ESP32 boards that I've mentioned in previous episodes since those all have built-in displays, no wiring needed. So thanks, Paul.

Paul Cutler

Yeah, since I stalk you on GitHub, or I mean, follow you on GitHub. I saw you Star Bambu Helper, and I went through and looked at it. And after a day or two, I'm like, if they can do it in Arduino, you should be able to do it in CircuitPython. And I hadn't worked on a CircuitPython project, a big project in a couple of years. And I have to admit, This is the first time I've ever used Claude to help me bootstrap it. So I did use Claude to do some of it. But it only works in cloud mode right now. Local mode doesn't work yet. And that's because CircuitPython only uses MQTT 3.1.1. And the cloud mode can use either 3 or MQTT5. But the local mode, supposedly local mode only works in 3.11 in my testing, but CircuitPython still isn't connecting. So I have some more testing to do there. And yeah, I got it up and running on a qualia display, just the one display that I had. And it was a fun little project to do.

Tod Kurt

That's great. It's kind of amazing that the Bambu is exposing the MQTT service. It's like all authenticated and stuff. So like Randos can't just come and look at the status of your printer. But they expose that to the world. So your little Bambu helper, your Bambu helper in Circa Python can run anywhere on the planet. It doesn't have to be on your land, which is pretty cool. All right. So what's your first one for this week or for this month?

Paul Cutler

You know, it's one thing to own a 3D printer, but it's another thing when you have your own scanner to scan an object and then 3D print a replica. And that's what OpenScan does. It's an open source and modular scanner. They have two models, the OpenScan Mini and the OpenScan Classic, both of which are sold for $239. That's without the 3D printer in a Raspberry Pi 4. which you can also buy direct from them. But what you get for $240 is a pre-soddered and tested pie shield and ring light, a 3D printed cross-polarizer module for the OpenScan Mini, an Arjucam's 16 megapixel camera with the cables, two stepper motors and their drivers, and a power supply and a couple small parts that you'll need. And if you really want to do it yourself, they do make the bill of materials available so you could order all the parts by yourself. With the two-steper motors, it spins the small table that your object sits on, while the second moves the 3D printed parts around and over the top of it. Check out the show notes for links to their site. It's hard to describe without seeing it. When it comes to accuracy, they link to one of their blog posts, which I've shared in the show notes. The author scanned two Chrome Allied spheres with a diameter of 20 millimeters and 25 millimeters and took 150 photos per set, which was about 250 megs of total data and took 11 minutes. They then process the photos in open scan cloud. They're free, and I don't know how to say this word. I want to say it like telemetry, but I think it's photogrammetry. Don't know. But it's a free service that they offer that never shares your data. The results from scanning the two spheres were less than 0.028 millimeters, which is impressive. If you want to make your own gaming miniatures or really anything at all, the combo of the open scan plus a 3D printer would make. a killer combination.

Tod Kurt

Yeah, that's like there's, there's been photogrammetry apps for, for your phone for a while because you're, because what is photogrammetry? It's basically taking a lot of photos of an object and you can you spin around with your phone. And because the phone has sensors inside to tell where it's at in space, you know, with the accelerometer and the gyro and stuff, it can tell as you move around where those photos are taken. And then like, yeah, there's something that stitches them all together into 3D. But if you ever tried to do in that, the resolution is fairly low. Whereas this open scan is made for these little tabletop handheld miniatures. It's made for high-res small things, which is really neat. It's like you don't see that very often. And I don't have a use for it, but it's so cool.

Paul Cutler

Right, exactly. I highly recommend checking out their website and seeing the photos that they've taken and seeing it in action because I can't really describe it that well.

Tod Kurt

Yeah. If you've ever wanted to recreate a detailed miniature. you know, not a lot of people want to do that, but if you want to do that, this is like a godsend. What's your next one for us? Back in February, I saw some folks on Blue Sky who had a tiny e-book, e-reader that could magnet to the back of your phone. It was super simple, having only four buttons, no touchscreen, and explicitly just rendered e-pub-formatted books. You loaded onto it via microSD card. I've been wanting to try a proper e-reader for a while, but I didn't really get sidetracked or pay the expense of or pay. Amazon 4 or something like a Kindle. And this little $60 X-E-Ink X-4 looked like a great choice to get started. And then I learned it had an ESP 32 in it. So I get it a couple months ago. Start using it as intended. It's really neat. It's got a very focused use case that it presents. So the ability to be distracted by doing, for doing anything else with it is zero. You can just read books on it. I think it might be a little bit too small for me as a regular e-reader. I, you know, I need glasses. I'm a big guy. It needs just a little bit bigger, I think. But then I distracted myself from its intended use and started hacking on it because it turns out you can treat it like any other ESP32 devboard. For the record, it's an ESP 32 C3 with 16 megabytes of flash. That's pretty low-end as ESP-30 devices go, but, you know, it doesn't have native USB supports. You can't make it look like a hard drive. just USB serial, but it does have a Risk 5 processor and Wi-Fi and Bluetooth. So there's lots of possibility for fun things there. And then I discover CrossPoint Reader, an entirely open-source alternative firmware for the XTE Inc, written from the ground up. It's essentially it's written in Arduino using Platform I.O. It uses the open source open X4 SDK library, which was new to me that that existed, to access the various peripherals of the reader in a nice clean way. And Crosspoint offers some really neat features like saving your reading position, supporting ePubs with images, having nicer fonts. You can upload books to it over Wi-Fi, and it has over-the-air firmware updates. Like normally to update firmware on the reader, you need to use their special little app or a Chrome browser or something. Anyway, it's like you have to have a cable and a computer. And new features have been added to Crosspoint Reader firmware all the time. So don't wait for an official release. Just install it from GitHub and see what happens. You can always undo and load the official firmware if you want. And then on top of that, I learned that last month, friend of the show Liz, aka Blitz City, DOI, has also been hacking on the X4, and has added a CircuitPython build for it. And she made a nice helper library for it. While the CircuitPython firmware sets up the ePaper display to act as a standard CircuitPython display I.O. display. The helper library that she wrote gives you easy access to the battery monitor and the buttons, which are implemented as a resistor ladder, so they're kind of tricky to read. So thanks, Liz. Oh, and also, the e-paper display, unlike all the maker-oriented e-paper displays or ink displays that we have access to, this display is really fast. So it's cool to see like a professional e-ink display. So suffice to say, there's a ton of fun hacking opportunities to be had with this quite well-built little e-ink reader. It's sturdy enough to live in my backpack, and the fact that it can act as a ESP 32 Wi-Fi dev board when I need one, gives it double utility, flash on your own Arduino sketch to it, and then flash back the e-reader application. You know, since all your books live on the SD card, it doesn't matter to you. So this is highly recommended if you want a fun thing to hack on, maybe as an e-reader even. But as I've not used it much as an actual re-reader, you know, I can't speak to much of that yet.

Paul Cutler

I didn't realize how small it was until I was on there, site so it's four inches but that they have a picture of people using an iPhone pro and it's magnetically attached to the back and fits within the iPhone so that that kind of gives you a perspective of how big

Tod Kurt

it really is yeah i've got i've got an iPhone an iPhone pro max and it's smaller than the phone on all dimensions so what's your next one for this one we've covered a couple air quality

Paul Cutler

monitors over the years and project aura is another but with a small twist Project Aura is running as a Maker World crowdfunding project where you pay $30 for the 3D model and the firmware, which gets you the 3MF file, firmware, and the STL for 3D printing. The bill of materials is also provided, and you have to buy the parts yourself, which add up to about $200. You need to pick up a WaveShare ESP 32S3 touch with a 4.3 inch screen, a Senserion, Sen.66, an Adafruitbreakout that measures the air quality, temperature, and humidity, as well. well as SFA 30 from Seed Studio, which is a formaldehyde sensor. An Adafruit pressure sensor and hub, you can choose from a couple of different models, which I've linked to in the show notes. And lastly, a real-time clock, the Adafruit, 8523. Other than that, some miscellaneous cables, capacitors, and a battery are needed. All the parts are linked from the project page, making it easy to buy. The project blew away its goal. It raised $79,000 with an original goal of $1,000. which is so impressive, and it doesn't even require any soldering. With the project blowing away its goals, the creator added a stretch goal for a second alternate enclosure design, which he's also released. The firmware uses Arduino and Platform I.O. And LVGL for the graphics. It looks really impressive. Check it out with the links in the show notes. It even has a night mode. It also features an integrated web dashboard with live stats, events, setting sync, and over-the-air firmware updates. Initial setup can be done as it will create a Wi-Fi hotspot and uses MDNS to connect to it. And of course, it's home assistant capable and uses MQTT for communication. Lastly, it features a safe boot. It will automatically roll back to the last known good config after crashes, making it easy to use. I'm still in the market for an air quality sensor from my office. I'm curious how bad the air gets with my 3D printer here with me. One of these days, I need to bite the bullet and just buy one of these projects. But what was really neat to me is the fact that he sold the STL and the firmware for $30. People are so used to just downloading STLs for free, but there's clearly a demand if you're going to raise 80 grand on a one grand goal.

Tod Kurt

Yeah. This is a really great solution to the problem of one of the things, I'm on the 3D printing subreddit quite a lot. And people always get frustrated because, you know, they'll upload their projects. to thing averse printables or maker world and then they'll find their designs for sell on Amazon or eBay or whatever and it's just like, they're just like, it's really demoralizing, you know, that like someone's just taking your design and printing out a whole bunch and selling them. And usually you can get them taken down. Like often you can just ask the person who stole your design and they'll take it down because they're stealing from thousands of people who cares of they to take down one of them. But this is a great way to just kind of get around that because like, oh, you make money up front. for a really cool idea. And if copies are made subsequent, it's like, well, at least you actually got paid at the very start.

Paul Cutler

Yeah. And in fact, if you visit the Maker World crowdfunding site, I believe he even sold commercial versions. So it costs more, but you could actually buy a commercial license to print them and sell them online.

Tod Kurt

That's awesome. I had an argument anybody to look at this because it looks very sci-fi. You know, it's just like those sort of concatenated triangular rhombus with a display on one side. and like vents all over it because it's an air quality sensor. And all the graphics that are in LVGL look kind of Star Trek-y almost, you know. And also if you look in internally, I love how it, because it's all just ATA fruit boards, like the Stemakutie boards. And he made a cool little 3D printable rack that houses the four different boards altogether and sort of makes it of one unit, which is really nice. It's like this is such a great testament to how cool Stemak QT can be. You don't, you just like plug, plug, plug, plug, plug. and you've got a thing that actually does a useful task. Yep, absolutely. And what's your next one for us? Okay, so another dev board. This one's important, like super important, like societally important. So the Baochip 1X by Bunny Huang is another micro-controlled platform like the RP2040 or the ESP 32. But unlike those chips, everything about the baochip is open source. It's based on an open source risk fee core. It's actually got many cores in there. And the entire design is open, like not just the cores. The baochip includes a main CPU running at 315 meghertz. And four smaller cores running at 700 megahertz and a complete set of hardware accelerators for cryptography and encryption, true random number generation, and a bunch of other things for like sort of the modern things we need in computers. For memory, it's got two megabytes of RAM and built in four megabytes of RR RAM or resistive random access memory, which is kind of. like Flash, but it's different. It also has an MMU, a memory management unit, so it could host real OSs. In size and cost, it's similar to the Raspberry Pi, you know, between like under $10 or whatever for the devboard. But it's so very different because of this openness. And he's taken the openness of the bout chip to the max. In addition to the design being open and the ROM bootloader being open, the chip itself is literally open. It's transparent to infrared light. So you can inspect it with a microscope and a camera that's sensitive to IR. so you can verify that the silicon that you received was what was promised. It's like a physical check sum to guarantee that the chip that you got has not got malware or compromised encryption hardware in it. We just can't do that. Any of the chips we get, we just have to trust that what's in them is what's in them. I've been following this project for a while, and recently Bunny published a couple of posts on the crowd supply campaign page that goes deep into the details of the design of the chip. in comparisons with other chips and past designs that other groups have done. As someone who once thought they were going to be a VLSI designer, these posts are magical. I recommend anyone interested in chip design to read them as they cover decades of CPU design in just a few pages. One of the specific things that I found really fascinating was inside the BOW-I-Co processors that are sort of like the PIO co-processors. That are sort of like the PIO co-processors that are in the RP2040. If you ever heard about these, they're the things that enable. us to do really cool protocoly stuff like, oh, neopixels or HTML. They're like tiny little subcomputers inside the main computer. And in his BIO analysis document, he describes that while the RP2040s PIOs are conceptually simple, they're actually really complex, comparable to how like older CISC-style processors were like one instruction could do a lot. But that made the whole chip much more complicated. And the PIOs take up a lot of physical space on the chip. So Bunny took a different approach with the BIO processors. He made each one a tiny Risk 5 processor running at 700 megahertz with a few tricks to make them better for I.O. Tasks, like being able to halt on various conditions. So these I.O processors are full risk computers, just like the main CPU. And so they have much more program space than the 32 instructions of P.S. that's in the RP 2040, these BIO co-processors can run additional tasks like signal processing or other sort of sensor handling tasks that you would normally do in your main CPU. It's amazing. I can't wait to play with this. So disclosure, I'm a vague acquaintance of Bunny, and I've personally backed the Boucher crowdfunding campaign. Can't wait to play with these. A fully open chip that's not patent encumbered is the future. Like open source, we've been talking about how open source is the future, that's been proving out over the last couple of decades. We all talk about open source, but everything we base our open designs on ultimately runs on physical chips that are literal black boxes. Let's change that.

Paul Cutler

And that's exactly what I was going to say is I don't know if folks appreciate how the fact that it's 100% open source, right? We think of the Raspberry Pi Pico as being open source, but the RM2 chip is not. The Bluetooth is not. So to have something that was from A to Z designed with that in mind is absolutely. Absolutely amazing. Yeah, yeah. Like the, the Raspberry Pi Pico, the RP 2040 was a like kind of the next step from where we were a few years ago because it was so open. Like there was so much that was there was of the design that was given out that we could see how it all worked. It was it was incredible. But now this, the baochip is the next is I feel like the next step after that because we're getting to the truly, truly fully fully open. So anyway, Paul, what's your last one for today? My last one is either you love it or hate it, but it's AI related. and it's called OpenCode, which is 100% open source AI coding agents. So think Claude Code, but open source. I know, I know it's AI, but I have to admit to dipping my toe into AI use this past month and I kind of can see the utility in using AI for coding. OpenCode is licensed under the Liberal MIT license and features more than 130,000 stars on GitHub. It includes a number of free models that you can use or you can connect it to other popular AI providers like Anthropics Claude, Google's Gemini and more. It features extensions for VS code, cursor, and Zed, so you can use it right in your IDE. I didn't see an official JetBrains extension for PiCharm, but JetBrains does offer one in their marketplace. I downloaded the desktop app they offer and tried it out. The desktop app is really similar to an IDE. On the left, there's a pain to interact with the AI, and on the right is your code editor. The first project I had to do was to try and convert an Arduino project to CircuitPython that uses MQTT, the Bambu helper app that we talked about earlier. Let's just say it didn't do that great of a job. But the CircuitPython code was really C Python code is what it spit out with how it was trying to connect to the MQTD broker. I then tried a different experiment and gave it a library I had just written and told it to replace the code.compy and use the library instead. It got about 90% right, so it did a lot better. I'm guessing that there's just not a lot of training data in the free models for circuit Python. They also offer two paid options. The first is Zen, which they say gives you access to a curated set of AI models that open code is tested and benchmarked just for coding agents. They claim that they are fixing this for everyone, not just for open code users by testing select models and consulting their teams, working with providers to ensure that the models are delivered properly, and benchmarking all the model provider combinations that they recommend. They also charge $20, but pay as you go where you can set a monthly spend limit so you don't overpay. which is a lot of horror stories on Reddit right now when I read about how many tokens are being used for Claude and whatnot. Yeah. The second option is open code go, which is $10 a month and is more of a standard plan. They claim it has generous limits, but don't really say how many. It includes access to the GLM5, Kmi K2.5, the Minimax M2.5, and Minimax 2.7 models. One thing I will say is I have no idea how the open source models were created, and if it was done in an ethical way. So if you're looking to try out this whole AI thing, this is one way to do it with an open source app and open source models to see if it works for you. Yeah, I played around with this a couple weeks ago.

Tod Kurt

I was kind of pitting it and Claude Code against each other. Like their terminal apps work very similar. If you've used to one, the open code one will be about the same. I did find it not to be not as good as cloud code, but maybe about as good as chat GPT. I was mostly poking at it with C code, which I think has probably a broader foothold in the models. I did like that there's an LLM. I'm really excited by the idea of an LLM that is specifically tailored for coders. Because I think that's one of the few cases where the LLM type stuff can actually work, especially for some of the stuff I've been doing lately, which has been updating code from five years ago to more modern standards, where it's like you're not really trying to do new stuff, you're just trying to do old stuff in a new way.

Paul Cutler

Right.

Tod Kurt

And that seems like a perfect, perfect fit for these LLM things. And so, yeah, so it's like, I think for a lot of stuff, like if you're, if you use some of the lower end models for, unlike Claude or whatever, maybe OpenCode could replace that for now. I do wish, like as you mentioned, I do wish there was more details to how they made their Zen models. They didn't really talk much about that. They're kind of cagey, the way that like all these guys are, Casey. Right. I know that too. And, you know, and hey, you know, Claude code sources open now too in a way. Yes, it is. As of yesterday, I think it just was leaked. So, you know, Pandora's box has been opened. It's all open code. But yeah. So yeah, if you're into LLM-based coding, give the open code a try, I think.

Paul Cutler

Well, that's our show. Thanks for listening. And you can find detailed show notes and transcripts at thebootloader.net. Until next time, stay positive.