1 00:00:02,660 --> 00:00:04,160 - Welcome to The Bootloader, I'm Tod Kurt. 2 00:00:04,800 --> 00:00:05,540 - And I'm Paul Cutler. 3 00:00:06,080 --> 00:00:07,080 The show works like this. 4 00:00:07,420 --> 00:00:09,300 Tod and I have each brought three things to share 5 00:00:09,500 --> 00:00:11,700 and we'll chat about each one for about five minutes. 6 00:00:12,260 --> 00:00:14,100 For detailed show notes and transcripts, 7 00:00:14,440 --> 00:00:15,780 check out thebootloader.net, 8 00:00:16,180 --> 00:00:18,000 which also just got a shiny new coat of paint 9 00:00:18,020 --> 00:00:20,040 as we're now using MKDocs for the website. 10 00:00:20,860 --> 00:00:22,740 Tod, what's your first one for us this episode? 11 00:00:23,740 --> 00:00:25,300 - This is about getting faster Raspberry Pis 12 00:00:25,500 --> 00:00:26,760 by ditching the SD card. 13 00:00:27,640 --> 00:00:29,980 If you use Raspberry Pis regularly 14 00:00:29,980 --> 00:00:32,259 running off micro SD card have I got a treat for you. 15 00:00:32,619 --> 00:00:36,780 Short version, use the RPI clone script to a USB thumb drive. 16 00:00:37,330 --> 00:00:39,540 You may know that Raspberry Pi is running off SD cards 17 00:00:39,540 --> 00:00:40,740 can get slower over time. 18 00:00:40,920 --> 00:00:43,060 SD cards can get flaky with age too. 19 00:00:43,840 --> 00:00:45,900 But SD cards are so easy to get a Pi going, 20 00:00:46,000 --> 00:00:48,920 just write it with the imager and boot it up 21 00:00:48,960 --> 00:00:49,520 and you're gone. 22 00:00:50,160 --> 00:00:52,400 But with a modern thumb drive and the RPI clone script, 23 00:00:52,680 --> 00:00:54,100 my Raspberry Pi that I depend on 24 00:00:54,160 --> 00:00:55,220 is faster than it's ever been. 25 00:00:55,380 --> 00:00:56,080 It's amazing. 26 00:00:56,650 --> 00:00:59,019 I run a small group of Raspberry Pis for testing 27 00:00:59,020 --> 00:01:00,980 of my products in various CircuitPython builds. 28 00:01:01,620 --> 00:01:03,920 One critical Raspberry Pi has four different 29 00:01:04,120 --> 00:01:06,140 CircuitPython boards permanently hooked up to it 30 00:01:06,620 --> 00:01:07,640 that I use to test different, 31 00:01:07,880 --> 00:01:09,680 how the different CircuitPython firmwares work. 32 00:01:09,740 --> 00:01:10,900 And when I'm doing CircuitPython development, 33 00:01:11,380 --> 00:01:13,980 I copy to it and I do it all remotely. 34 00:01:14,840 --> 00:01:15,900 It's just on a rack somewhere. 35 00:01:16,000 --> 00:01:18,120 I actually don't look at this computer very much. 36 00:01:18,520 --> 00:01:19,580 But over the last couple of months, 37 00:01:19,620 --> 00:01:22,500 I've noticed the server has been getting increasingly slow. 38 00:01:23,080 --> 00:01:24,660 Get checkouts took twice as long. 39 00:01:25,020 --> 00:01:27,180 Even logging in via SSH took a few seconds. 40 00:01:27,340 --> 00:01:29,140 Normally, we just log in. 41 00:01:29,700 --> 00:01:30,940 There are no errors in the logs, 42 00:01:31,020 --> 00:01:33,880 and the microSD was a high-endurance one. 43 00:01:34,020 --> 00:01:35,640 I replaced it only about a year ago, 44 00:01:36,360 --> 00:01:38,020 but I have been using this Pi a lot more lately. 45 00:01:39,000 --> 00:01:41,040 So I know, I know, all the real hackers 46 00:01:41,140 --> 00:01:43,420 that have been booting their Pis off external drives forever 47 00:01:44,040 --> 00:01:45,220 are raising their eyebrows at me. 48 00:01:45,580 --> 00:01:46,320 What took me so long? 49 00:01:46,840 --> 00:01:48,360 Well, I imagined it would be a daunting task, 50 00:01:48,560 --> 00:01:51,780 needing extra components like an NVMe hat 51 00:01:52,240 --> 00:01:54,060 or an ungainly external drive enclosure 52 00:01:54,340 --> 00:01:55,200 hanging off the back. 53 00:01:55,780 --> 00:01:57,940 Fortunately, I'd just seen a YouTube video 54 00:01:58,060 --> 00:01:59,320 by the awesome Jeff Geerling, 55 00:01:59,780 --> 00:02:02,540 where he offhandedly showed his RPI clone script 56 00:02:02,940 --> 00:02:06,240 to turn an existing SD card-based Raspberry Pi 57 00:02:06,340 --> 00:02:08,100 into one that boots off in external storage. 58 00:02:08,740 --> 00:02:11,039 I thought, "Well, it seems pretty easy, let's try it out." 59 00:02:11,039 --> 00:02:13,480 So I got one of those small USB 3.1 drives. 60 00:02:13,720 --> 00:02:14,500 Those are pretty fast. 61 00:02:15,040 --> 00:02:18,420 The one I got was a $15 Samsung 128 gigabyte, 62 00:02:18,460 --> 00:02:21,620 which is like four times the size of the SD card 63 00:02:21,680 --> 00:02:22,860 that was currently in the Pi. 64 00:02:23,560 --> 00:02:25,239 And it's so small, it's just a little nubbin 65 00:02:25,240 --> 00:02:25,820 when it's plugged in. 66 00:02:26,040 --> 00:02:27,340 It looks like one of those little keyboard, 67 00:02:27,860 --> 00:02:29,280 Logitech keyboard adapter things. 68 00:02:29,780 --> 00:02:31,160 It's not something hanging off the back of the Pi, 69 00:02:31,220 --> 00:02:31,660 which is nice. 70 00:02:32,260 --> 00:02:34,680 After you plug in your external drive or the thumb drive, 71 00:02:35,280 --> 00:02:37,080 I downloaded the RPI clone script, 72 00:02:37,280 --> 00:02:38,160 ran it according to the README. 73 00:02:38,620 --> 00:02:39,460 It chugged for a bit, 74 00:02:39,520 --> 00:02:42,380 formatted the thumb drive with an appropriate file system, 75 00:02:42,560 --> 00:02:44,240 the XT4, I think, 76 00:02:44,660 --> 00:02:46,420 and copied over the Pi's file system, 77 00:02:46,420 --> 00:02:48,520 the existing Pi's file system on the SD card 78 00:02:49,020 --> 00:02:50,560 to the external drive, to the thumb drive. 79 00:02:51,100 --> 00:02:52,740 And when done, I just powered it on the Pi, 80 00:02:52,800 --> 00:02:55,160 remove the micro SD card, turn it back on, 81 00:02:55,320 --> 00:02:56,300 and hey, look, it boots. 82 00:02:56,380 --> 00:02:58,680 It boots off this new little USB drive. 83 00:02:59,260 --> 00:03:00,960 This Raspberry Pi server that I've been using for 84 00:03:01,240 --> 00:03:02,960 five years feels like a whole new computer. 85 00:03:03,060 --> 00:03:05,080 It's like I got a free CPU upgrade. 86 00:03:05,720 --> 00:03:06,820 To prevent this thumb drive from 87 00:03:06,980 --> 00:03:08,560 degrading faster because it's not an SSD, 88 00:03:08,760 --> 00:03:10,640 it's just another flash drive. 89 00:03:11,540 --> 00:03:12,820 It's like an SD card. 90 00:03:13,460 --> 00:03:15,460 I'm going to be putting the logs directory into 91 00:03:15,520 --> 00:03:18,160 a RAM disk using the log to RAM program. 92 00:03:19,020 --> 00:03:20,700 One of the things that wears out a lot of 93 00:03:20,560 --> 00:03:26,080 these solid state drives the fastest is how much all these various programs that are running 94 00:03:26,160 --> 00:03:29,660 on Unix write their log files to the disk. 95 00:03:29,740 --> 00:03:34,400 And so you can minimize that by having the logs written to a RAM disk. 96 00:03:34,700 --> 00:03:36,940 There's this file system format called tempfs. 97 00:03:37,780 --> 00:03:42,740 And log2ram will create this RAM disk, but then it will also sync periodically, like 98 00:03:42,800 --> 00:03:46,500 once an hour or so, it'll sync the RAM disk to your persistent storage. 99 00:03:46,500 --> 00:03:48,900 So you can actually go back and look at the logs if you need to. 100 00:03:50,120 --> 00:03:54,800 But doing one big write is much less of a wear on the drive 101 00:03:54,800 --> 00:03:56,800 than doing thousands of little tiny writes. 102 00:03:58,060 --> 00:04:00,080 And then I'm also looking into tiny SSDs 103 00:04:00,080 --> 00:04:00,960 for my other Pi servers. 104 00:04:01,660 --> 00:04:05,900 For Pi 5, there's an official NVMe SSD hat I might try. 105 00:04:06,280 --> 00:04:10,440 I've also found there's some other smaller NVMe SSD hats. 106 00:04:11,110 --> 00:04:14,100 So now I'm on a quest for what's the tiniest SSD solution 107 00:04:14,140 --> 00:04:17,480 for Pi 4s and other Pis that I've got 108 00:04:17,579 --> 00:04:19,579 'cause I'm just blown away. 109 00:04:19,640 --> 00:04:21,480 It's like I should have done this so many years ago. 110 00:04:23,020 --> 00:04:24,060 Links to all this will be in the show notes. 111 00:04:24,700 --> 00:04:26,360 - I knew about the SSD hats. 112 00:04:26,520 --> 00:04:28,880 I had no idea that you could use a USB flash drive 113 00:04:29,100 --> 00:04:31,480 as a bootable disk for it. 114 00:04:31,620 --> 00:04:33,300 And I know I've got a Raspberry Pi 115 00:04:33,380 --> 00:04:34,480 that sits on my desk full time 116 00:04:34,480 --> 00:04:37,020 and even SSHing into that takes a second or two. 117 00:04:37,140 --> 00:04:40,420 So I'm wondering if my performance is starting to degrade 118 00:04:40,580 --> 00:04:41,400 and if it's that easy, 119 00:04:41,500 --> 00:04:42,860 I think I know what I'm doing this weekend. 120 00:04:43,780 --> 00:04:47,579 - Yeah, I mean, I think this was like the third SSD card 121 00:04:47,580 --> 00:04:51,840 I'd used for this pie just over the years and I kept getting trying to get like the ones that 122 00:04:52,220 --> 00:04:55,420 were recommended by the various Raspberry Pi tip sites that said oh 123 00:04:55,500 --> 00:04:59,960 This is the high endurance micro SD card to use but over time it just seemed to get slower and slower and like 124 00:05:00,380 --> 00:05:05,120 You know this this Raspberry Pi is not doing anything weird. It's using is running the standard Raspberry Pi OS 125 00:05:05,460 --> 00:05:08,640 There's no fancy programs installed, you know, except for Python 126 00:05:11,600 --> 00:05:13,459 All right, Paul, what's your first one for this week 127 00:05:13,820 --> 00:05:15,480 My first one is inventory. 128 00:05:15,960 --> 00:05:21,800 Back in episode 17, I shared Inventory, an open-source inventory system for makers and 129 00:05:22,080 --> 00:05:24,380 manufacturers that had just released their 1.0 release. 130 00:05:25,230 --> 00:05:30,080 Thanks to Alec Delaney, aka Tech Trick, I came across an app called Inventory, a play 131 00:05:30,120 --> 00:05:35,440 on the word "inventory," which also just released their 1.0 release after eight years of active development. 132 00:05:36,600 --> 00:05:43,800 Inventory includes a number of features, including organizing your parts and sorting them into 133 00:05:43,800 --> 00:05:48,100 related to each part, stock locations, which are real world 134 00:05:48,840 --> 00:05:52,020 physical location for your parts, and bill of material 135 00:05:52,260 --> 00:05:54,880 management, allowing you to define a list of parts to make an 136 00:05:55,020 --> 00:05:58,200 assembly. And then you can create custom reports about your 137 00:05:58,380 --> 00:06:01,420 inventory based on a number of templates, and it uses HTML 138 00:06:01,660 --> 00:06:03,820 templates to create PDF reports for you. 139 00:06:04,920 --> 00:06:07,920 It also has a full-featured API using the Django REST 140 00:06:08,140 --> 00:06:10,860 framework and allows you to programmatically interact with 141 00:06:10,800 --> 00:06:11,300 your inventory. 142 00:06:11,920 --> 00:06:14,420 The documentation includes examples of how to interact 143 00:06:14,460 --> 00:06:16,660 with the API in both JavaScript and Python. 144 00:06:17,920 --> 00:06:20,780 Inventory also includes a robust plugin ecosystem. 145 00:06:21,580 --> 00:06:23,320 There are plugins maintained by the core team 146 00:06:23,320 --> 00:06:24,260 as well as the community. 147 00:06:24,880 --> 00:06:26,360 There are plugins for just about everything. 148 00:06:26,640 --> 00:06:28,580 There's integration for DigiKey and Mouser. 149 00:06:28,740 --> 00:06:31,100 There's a plugin to locate your physical stock locations 150 00:06:31,160 --> 00:06:33,080 with WLED, which is pretty neat, 151 00:06:33,720 --> 00:06:35,980 and a bunch of plugins to use with your printer. 152 00:06:37,080 --> 00:06:39,360 Inventory is written in Python using the Django web 153 00:06:39,360 --> 00:06:41,780 framework and plugins can be written in Python too. 154 00:06:42,540 --> 00:06:46,080 There's also excellent documentation covering everything you might want to know. 155 00:06:46,660 --> 00:06:48,720 It's detailed and covers all of the features. 156 00:06:49,400 --> 00:06:52,700 And lastly, if you want to take inventory for a spin before installing it, 157 00:06:52,750 --> 00:06:54,760 they have a full featured demo instance. 158 00:06:55,130 --> 00:06:58,040 I logged in and tried it out and came away really impressed. 159 00:06:58,940 --> 00:06:59,820 Wow, that's really awesome. 160 00:06:59,830 --> 00:07:01,780 I wish I could use one of these. 161 00:07:01,840 --> 00:07:06,340 Like when you talked up the inventory program back in episode 17, 162 00:07:06,760 --> 00:07:09,500 I was like, I'm going to really try this out and I didn't. 163 00:07:11,360 --> 00:07:14,540 And I'm sure it's daunting from a setup perspective of trying to get all your 164 00:07:14,700 --> 00:07:16,440 stuff into, into the database. 165 00:07:16,800 --> 00:07:20,180 But once it's there, the payoff is probably worth it. 166 00:07:21,020 --> 00:07:25,400 Yeah, no, I just, just yesterday I was rooting through my sort of geologic 167 00:07:25,580 --> 00:07:28,260 filing system of like, you know, basically what's on the bottom is the oldest, 168 00:07:28,640 --> 00:07:32,140 trying to find some, some low profile headers that I knew I bought a year ago. 169 00:07:32,400 --> 00:07:32,540 And. 170 00:07:34,420 --> 00:07:38,300 See, and you could have a stock location that tells you exactly where you stored them. 171 00:07:39,000 --> 00:07:51,480 Now, and I love the I love the WLED integration, like it sort of assumes you have some sort of LEDs rigged across your racks and you could just like have something light up to indicate where approximately the thing is. 172 00:07:51,520 --> 00:07:52,040 That's wonderful. 173 00:07:52,540 --> 00:07:53,840 Yeah, I'd love to see that in practice. 174 00:07:53,980 --> 00:07:56,420 Someone's got to have a YouTube video of doing that already. 175 00:07:57,660 --> 00:07:58,760 What's your next one for us? 176 00:07:59,380 --> 00:08:03,920 I'm going to talk about a little, this is a sort of a mini review of the framework 12 laptop. 177 00:08:04,010 --> 00:08:07,640 I don't normally do just straight up reviews of products, but this has been really impressive to me. 178 00:08:08,240 --> 00:08:11,300 So if you're looking for a Linux laptop, I highly recommend the framework 12. 179 00:08:11,480 --> 00:08:12,700 It's their smaller computer. 180 00:08:12,700 --> 00:08:14,780 They have a 16 and a 13 inch, I think as well. 181 00:08:15,500 --> 00:08:16,220 This is a 12 inch. 182 00:08:16,700 --> 00:08:18,720 You can buy it fully assembled or as a kit. 183 00:08:19,310 --> 00:08:25,720 And if you can see I'm using quote fingers, where kit means you just install the RAM, SSD and expansion cards. 184 00:08:26,050 --> 00:08:26,640 More on that in a bit. 185 00:08:27,020 --> 00:08:32,200 The assembly is super easy, but it does give you a chance to see the inside of the laptop and the care that went into it. 186 00:08:32,680 --> 00:08:36,340 You can see that the framework company designed the whole machine for repairability. 187 00:08:36,440 --> 00:08:44,300 Like everything is screwed down, you can remove bits and pieces, you know, if like you break a jack or something, or you can even upgrade the motherboard. 188 00:08:44,840 --> 00:08:55,340 Like in fact, their older Framework 16 laptop, they just introduced a new AMD Ryzen mainboard with an integrated NVIDIA RTX GPU that you can just swap in if you already have a Framework 16. 189 00:08:56,020 --> 00:08:59,400 So to assemble my new laptop, I got a beer ready and everything. 190 00:08:59,720 --> 00:09:02,920 I mean, I say everything, but they included the one screwdriver needed. 191 00:09:03,240 --> 00:09:06,020 I only got about two sips into the beer before I was done. 192 00:09:06,300 --> 00:09:09,300 You install the RAM and SSD from the top by lifting the keyboard out. 193 00:09:09,740 --> 00:09:14,280 You just plug in the RAM and SSD into the little standard RAM socket 194 00:09:14,340 --> 00:09:16,880 and the standard NVMe socket. 195 00:09:17,600 --> 00:09:20,380 And the keyboard connects via pogo pins and magnets. 196 00:09:20,500 --> 00:09:23,500 So you can just kind of lay the keyboard on top and it'll connect 197 00:09:24,060 --> 00:09:25,220 and you can then test it out. 198 00:09:25,380 --> 00:09:30,740 Once you're sure you're done, you can then secure the keyboard with a couple screws on the bottom that are captive screws. 199 00:09:31,100 --> 00:09:34,120 That's another cool thing. All the screws in this laptop are captive. 200 00:09:34,340 --> 00:09:40,440 So once you remove, once you unscrew something, the screw stays with the part or it stays on the computer. 201 00:09:40,560 --> 00:09:41,900 So you're never losing screws. 202 00:09:41,980 --> 00:09:48,700 You're never getting screws mixed up because you know how some companies, Apple, will use like slightly different length screws for things. 203 00:09:48,800 --> 00:09:51,160 And if you swap them, you could really damage something. 204 00:09:52,520 --> 00:09:53,240 It's really nice design. 205 00:09:53,260 --> 00:09:55,580 And the laptop, once you've got it all assembled, 206 00:09:56,080 --> 00:09:59,060 it's still only as thick as my main MacBook Pro. 207 00:09:59,540 --> 00:10:02,780 So, it's like, even with the sockets 208 00:10:03,080 --> 00:10:05,420 for all this replaceable stuff and the screws and stuff, 209 00:10:05,460 --> 00:10:07,740 it's still the same thickness as my MacBook Pro. 210 00:10:08,380 --> 00:10:08,940 That's just amazing. 211 00:10:09,400 --> 00:10:11,100 There are many YouTube videos 212 00:10:11,160 --> 00:10:12,320 that deep dive into this laptop, 213 00:10:12,830 --> 00:10:14,180 its features, how it performs. 214 00:10:14,720 --> 00:10:15,740 I'm not gonna go into those aspects. 215 00:10:16,520 --> 00:10:17,760 It seems to perform about as well 216 00:10:17,760 --> 00:10:19,340 as any other Intel i5 laptop, 217 00:10:19,540 --> 00:10:20,720 and it costs about the same, I think. 218 00:10:21,180 --> 00:10:22,260 I'm using Linux on it. 219 00:10:22,320 --> 00:10:23,380 You can get it with Windows. 220 00:10:23,620 --> 00:10:25,820 But one of the cool things is they support Linux 221 00:10:26,320 --> 00:10:29,160 pretty heavily and they've got three different distros 222 00:10:29,340 --> 00:10:32,900 that they recommend, Ubuntu, Fedora, and this other one, 223 00:10:33,200 --> 00:10:33,920 I forget what it's called. 224 00:10:34,500 --> 00:10:36,860 I chose Ubuntu 'cause Ubuntu's Debian-based 225 00:10:36,860 --> 00:10:39,300 and it's the most like Raspberry Pi OS 226 00:10:39,340 --> 00:10:42,120 and the other Debian-based OSs that I'm used to. 227 00:10:42,880 --> 00:10:47,080 When you install the Ubuntu 25 that they recommend, 228 00:10:47,140 --> 00:10:48,080 which is regular Ubuntu, 229 00:10:48,180 --> 00:10:49,980 it's like not a special framework version of Ubuntu, 230 00:10:50,780 --> 00:10:52,500 all the peripherals are recognized. 231 00:10:53,340 --> 00:10:55,280 And when I plug in class compliant USB devices, 232 00:10:55,480 --> 00:10:57,680 like USB audio or MIDI adapters, they just work. 233 00:10:58,620 --> 00:11:01,120 It's just, as someone who's used Linux laptops, 234 00:11:01,540 --> 00:11:02,160 this is kind of weird. 235 00:11:02,660 --> 00:11:03,920 I've been using it for a little over a month 236 00:11:03,920 --> 00:11:04,620 and haven't had a problem. 237 00:11:04,970 --> 00:11:07,580 I use it mostly for doing things like web browsing, 238 00:11:08,380 --> 00:11:10,460 video playing, code editing, compiling, 239 00:11:11,420 --> 00:11:13,340 doing little test compiles, PDF viewing. 240 00:11:13,460 --> 00:11:15,060 I have it on my bench as basically the thing 241 00:11:15,120 --> 00:11:17,280 that I have next to me while I'm working. 242 00:11:18,020 --> 00:11:20,179 There are two things though about this laptop 243 00:11:20,180 --> 00:11:20,860 it really stand out. 244 00:11:21,360 --> 00:11:23,820 And I've been trying Linux on laptops since the 90s. 245 00:11:24,280 --> 00:11:27,920 Like parenthetically, anyone remember linuxonlaptops.com? 246 00:11:28,320 --> 00:11:31,720 It was where we huddled in the cold sharing campfire stories 247 00:11:31,720 --> 00:11:34,560 of almost getting audio working on corporate Toshiba 248 00:11:34,820 --> 00:11:36,140 satellites or Dell Inspirons. 249 00:11:37,400 --> 00:11:39,800 Now we have Linux first companies like Framework, 250 00:11:40,240 --> 00:11:41,620 MNT, and System76. 251 00:11:42,480 --> 00:11:44,180 But if you're scarred from past attempts 252 00:11:44,220 --> 00:11:45,660 to get Linux working on a laptop, 253 00:11:46,120 --> 00:11:49,120 and you have an old ThinkPad or Dell for the last few years, 254 00:11:49,460 --> 00:11:50,980 there's a good chance it'll work great today. 255 00:11:51,480 --> 00:11:53,840 And it'll seem much faster than the Windows that was on it. 256 00:11:54,260 --> 00:11:56,540 So try that out if you wanna get back 257 00:11:56,560 --> 00:11:57,720 into the Linux on laptop thing. 258 00:11:57,760 --> 00:12:00,020 I think that's kind of a solved problem in many ways. 259 00:12:00,680 --> 00:12:03,260 Anyway, the first really cool thing about the Framework 12 260 00:12:03,380 --> 00:12:05,700 is that besides just being a fully working 261 00:12:05,940 --> 00:12:06,940 modern laptop on Linux, 262 00:12:07,340 --> 00:12:10,060 is the four expansion card slots on the sides. 263 00:12:10,600 --> 00:12:13,040 These are essentially recessed USB-C ports 264 00:12:13,480 --> 00:12:14,979 and the available expansion cards 265 00:12:14,980 --> 00:12:19,400 either expose that USB-C port or USB-A or Ethernet, 266 00:12:19,839 --> 00:12:22,100 HDMI, extra audio, SD card, 267 00:12:22,280 --> 00:12:25,220 or storage like a little built-in thumb drive or something. 268 00:12:25,720 --> 00:12:28,020 It's really neat. It totally gives that 269 00:12:28,140 --> 00:12:29,740 I'm plugging a cartridge in vibe 270 00:12:30,420 --> 00:12:32,460 for those of us that grew up with cartridge-based video games. 271 00:12:33,480 --> 00:12:35,420 Unless you customize the laptop how you want, 272 00:12:35,920 --> 00:12:39,660 if you want to have a bunch of extra built-in storage, you can. 273 00:12:40,340 --> 00:12:41,860 If you want to have a whole bunch of 274 00:12:42,060 --> 00:12:43,500 extra audio outputs, you can have that. 275 00:12:43,740 --> 00:12:48,000 My current setup has two USB-C ports, 276 00:12:48,460 --> 00:12:50,900 a USB-A port, and HDMI out. 277 00:12:51,620 --> 00:12:54,280 Then any USB-C port is also a charge port, 278 00:12:54,380 --> 00:12:55,300 so that's how you charge the laptop. 279 00:12:56,679 --> 00:12:58,920 You can swap these out anytime you want, they're all hot swap. 280 00:12:59,200 --> 00:13:00,760 I've also got an Ethernet card, 281 00:13:00,820 --> 00:13:02,100 and so when I was playing around with doing 282 00:13:02,240 --> 00:13:03,740 wired Ethernet to get really fast performance, 283 00:13:03,780 --> 00:13:05,500 I just swapped out one of the, 284 00:13:05,600 --> 00:13:10,200 I think the USB-A, and plugged in the Ethernet card and did Ethernet. 285 00:13:11,120 --> 00:13:13,200 The other thing about the Framework 12 is that 286 00:13:13,120 --> 00:13:15,480 the screen folds over and onto the back 287 00:13:15,540 --> 00:13:16,560 and it turns into a tablet. 288 00:13:17,000 --> 00:13:19,620 I wasn't even really aware about this when I got it. 289 00:13:20,320 --> 00:13:22,100 And the touch screen even works in Linux. 290 00:13:22,560 --> 00:13:24,380 Even though most of my uses aren't touch compatible, 291 00:13:24,520 --> 00:13:26,760 it's really handy to have an instructional video 292 00:13:26,960 --> 00:13:29,660 or schematic on the tablet screen while I'm working. 293 00:13:30,300 --> 00:13:32,220 They just introduced a stylus that works with the laptop 294 00:13:32,540 --> 00:13:33,200 when it's in tablet mode. 295 00:13:33,280 --> 00:13:34,140 I've not tried this out yet. 296 00:13:34,520 --> 00:13:36,120 I don't even know if it's supported under Linux, 297 00:13:36,220 --> 00:13:37,000 but it's 60 bucks. 298 00:13:37,520 --> 00:13:39,220 So I might get it just to see what it can do. 299 00:13:40,359 --> 00:13:42,160 KiCad absolutely flies on this thing. 300 00:13:42,740 --> 00:13:45,900 Using a stylus on KiCad on Linux would seem very sci-fi to me. 301 00:13:46,640 --> 00:13:47,000 (laughs) 302 00:13:48,000 --> 00:13:49,560 So this review isn't sponsored in any way. 303 00:13:49,600 --> 00:13:51,180 I'm just happy to have a good portable Linux box 304 00:13:51,300 --> 00:13:52,380 next to my, on my bench. 305 00:13:52,710 --> 00:13:54,140 It's made by a company that seems to care 306 00:13:54,200 --> 00:13:55,780 about repairability and upgradability, 307 00:13:56,040 --> 00:13:57,880 which seems to be in short supply a lot nowadays. 308 00:13:58,510 --> 00:13:59,280 So thanks, Framework. 309 00:13:59,520 --> 00:14:02,280 And I've got some links in the show notes, 310 00:14:02,360 --> 00:14:05,220 one of which is my very abbreviated 311 00:14:05,740 --> 00:14:07,360 three-post live assembly thread. 312 00:14:07,370 --> 00:14:08,800 I did when I first got this, 313 00:14:08,860 --> 00:14:10,380 thinking it was gonna be like a long thing, 314 00:14:11,160 --> 00:14:12,480 But no, it was only like three posts. 315 00:14:13,220 --> 00:14:13,520 (laughs) 316 00:14:14,140 --> 00:14:16,320 - I used Linux full time for about 10 years 317 00:14:16,640 --> 00:14:19,040 and I'm with you where the stuff just sometimes works, 318 00:14:19,140 --> 00:14:20,040 sometimes didn't. 319 00:14:20,560 --> 00:14:21,740 So this is very tempting. 320 00:14:22,680 --> 00:14:24,960 You're an Ubuntu guy, I'm a Fedora guy 321 00:14:25,580 --> 00:14:28,420 and there's a distro called Project Bluefin 322 00:14:29,140 --> 00:14:32,100 from Universal Blue that inherits all of Fedora 323 00:14:32,620 --> 00:14:34,160 and then it's cloud native. 324 00:14:34,280 --> 00:14:35,400 So they've got a lot of tools, 325 00:14:35,440 --> 00:14:36,620 they've got home brew built in. 326 00:14:36,840 --> 00:14:38,780 But since it inherits from Fedora 327 00:14:38,860 --> 00:14:40,180 and Fedora supports this, 328 00:14:40,320 --> 00:14:42,280 it's got framework support right out of the box. 329 00:14:42,380 --> 00:14:44,220 So I've been keeping an eye on that distro 330 00:14:44,800 --> 00:14:46,960 for a little while and tempted to get back 331 00:14:47,040 --> 00:14:48,060 into Linux on the desktop. 332 00:14:48,740 --> 00:14:52,140 So that's pretty cool that just everything just works. 333 00:14:52,800 --> 00:14:54,280 - Yeah, on their Linux page, 334 00:14:54,420 --> 00:14:56,800 they list a bunch of distros, I think 10 total. 335 00:14:57,280 --> 00:14:58,980 And it's like, they have three that are like, 336 00:14:59,400 --> 00:15:00,940 this is the easy version of Linux. 337 00:15:00,980 --> 00:15:02,260 And then like the other ones are, they're like, 338 00:15:02,320 --> 00:15:04,540 this works with a couple of asterisks. 339 00:15:04,680 --> 00:15:06,780 And I think, I'm not quite sure what the asterisks are, 340 00:15:06,860 --> 00:15:08,260 but I think it's like something pretty minor. 341 00:15:08,400 --> 00:15:11,480 'cause most of the hardware support is in the Linux kernel. 342 00:15:11,600 --> 00:15:13,300 That's not something that different distros 343 00:15:13,400 --> 00:15:14,540 would be that different from. 344 00:15:16,019 --> 00:15:17,820 Anyway, what's your next one for this time? 345 00:15:18,460 --> 00:15:20,600 - My next one is one of my favorite pieces of tech 346 00:15:20,640 --> 00:15:22,580 in my house, and it just keeps getting better. 347 00:15:23,160 --> 00:15:24,620 If you're like me, you probably subscribe 348 00:15:24,620 --> 00:15:27,340 to a bunch of streaming services like Netflix, Peacock, 349 00:15:27,500 --> 00:15:29,360 HBO Max, Hulu, or Paramount. 350 00:15:29,960 --> 00:15:31,160 Throw in a cable TV bill, 351 00:15:31,160 --> 00:15:32,860 and it gets expensive really quick. 352 00:15:33,460 --> 00:15:35,759 One option is to cancel your cable bill 353 00:15:35,760 --> 00:15:37,920 and get your local channels via an antenna. 354 00:15:38,540 --> 00:15:41,560 I've tried a number of solutions over the years since then 355 00:15:41,660 --> 00:15:43,260 for watching live TV with an antenna, 356 00:15:43,480 --> 00:15:45,140 including Myth TV, Kodi, and MB, 357 00:15:45,700 --> 00:15:46,900 but there's one piece of software 358 00:15:46,980 --> 00:15:48,700 that I think does it better than any of them, 359 00:15:48,740 --> 00:15:50,420 and that's an app called Channels, 360 00:15:50,840 --> 00:15:52,980 which is available at getchannels.com. 361 00:15:53,660 --> 00:15:55,000 First, you'll need to get an antenna 362 00:15:55,080 --> 00:15:56,140 to get over the air stations 363 00:15:56,260 --> 00:15:58,720 that you hook up to a device called the HD Home Run, 364 00:15:59,160 --> 00:16:00,760 which is a digital network tuner. 365 00:16:01,340 --> 00:16:02,780 You plug the antenna into that, 366 00:16:02,960 --> 00:16:05,400 and the TV signal is now available over your network. 367 00:16:06,240 --> 00:16:08,700 Antenna prices vary and an HD Home Run box 368 00:16:08,760 --> 00:16:10,780 will run you about $100 to $150 369 00:16:11,280 --> 00:16:12,640 depending on which model you choose. 370 00:16:13,400 --> 00:16:15,480 If you visit rabbitears.info, 371 00:16:15,840 --> 00:16:18,180 it will show you a list of all the channels in your area 372 00:16:18,260 --> 00:16:19,380 that you can get via antenna. 373 00:16:19,920 --> 00:16:22,640 And you'll probably be surprised how many channels there are. 374 00:16:23,180 --> 00:16:25,880 Next, you'll need to subscribe to channels for $80 a year, 375 00:16:26,040 --> 00:16:28,160 which is $10 more a year than Plex. 376 00:16:28,860 --> 00:16:31,360 Then you download the channels DVR server software, 377 00:16:31,580 --> 00:16:34,040 which is available for Windows, Mac, Linux, Docker, 378 00:16:34,360 --> 00:16:36,440 and a number of network attached storage devices, 379 00:16:36,680 --> 00:16:39,560 including Synology, Netgear, TrueNAS, and a lot more. 380 00:16:40,360 --> 00:16:42,200 So there's a little bit of cost getting started, 381 00:16:42,360 --> 00:16:44,280 but if you're cutting the cord and getting rid of cable, 382 00:16:44,630 --> 00:16:47,560 you probably will recoup it in just a matter of months. 383 00:16:48,380 --> 00:16:50,180 Now you need to provide it with your source, 384 00:16:50,420 --> 00:16:51,380 which is usually an antenna, 385 00:16:51,920 --> 00:16:54,480 but if you do have a cable subscription with TV Everywhere, 386 00:16:54,840 --> 00:16:55,860 that works too. 387 00:16:56,520 --> 00:16:59,160 What's really neat is even when using TV Everywhere, 388 00:16:59,380 --> 00:17:00,520 which is streaming over the internet, 389 00:17:01,080 --> 00:17:03,460 channels will automatically detect and skip commercials 390 00:17:03,600 --> 00:17:05,060 when recording via TV everywhere 391 00:17:05,459 --> 00:17:06,819 and when you use an antenna. 392 00:17:08,160 --> 00:17:09,760 The only catch with channels 393 00:17:09,959 --> 00:17:11,420 is that if you wanna watch it on a TV, 394 00:17:11,540 --> 00:17:13,839 you're going to need an Apple TV, Android TV, 395 00:17:14,100 --> 00:17:15,560 or an Amazon Fire Stick, 396 00:17:15,980 --> 00:17:18,339 which I can understand might be a non-starter for some. 397 00:17:19,100 --> 00:17:20,520 The apps to connect the channels 398 00:17:20,560 --> 00:17:21,939 and watch it on your phone or tablet, 399 00:17:22,100 --> 00:17:24,000 on iOS or Android are all free. 400 00:17:24,620 --> 00:17:26,199 And they make it super easy to watch it 401 00:17:26,220 --> 00:17:27,780 on the go away from home 402 00:17:27,880 --> 00:17:30,060 and just stream it over the internet to your device. 403 00:17:30,720 --> 00:17:33,500 The iPad app also runs on Mac OS, which is nice. 404 00:17:33,640 --> 00:17:35,380 I'll sometimes watch it on a second monitor 405 00:17:35,540 --> 00:17:36,660 when doing something else. 406 00:17:37,800 --> 00:17:39,460 But it's not just a DVR. 407 00:17:39,820 --> 00:17:42,860 You can manage all of your personal media on it as well. 408 00:17:43,400 --> 00:17:45,100 I have a large physical media collection 409 00:17:45,240 --> 00:17:47,320 with a ton of DVDs and Blu-rays that I've ripped 410 00:17:47,440 --> 00:17:49,240 and I've imported them all into channels. 411 00:17:50,020 --> 00:17:51,880 Those are all the features you would expect 412 00:17:52,080 --> 00:17:54,540 in a DVR and a home media server, but that's not all. 413 00:17:54,640 --> 00:17:56,620 They continue to innovate and add features. 414 00:17:57,360 --> 00:17:58,140 A year or two ago, 415 00:17:58,220 --> 00:18:00,060 they added what they call virtual channels. 416 00:18:00,480 --> 00:18:03,180 you can create your own channels with your own content. 417 00:18:03,760 --> 00:18:05,960 For example, I created a Star Wars channel 418 00:18:06,060 --> 00:18:07,760 that streams 10 of the movies, 419 00:18:08,260 --> 00:18:10,760 or an action channel where I added the Matrix trilogy, 420 00:18:10,980 --> 00:18:12,360 the John Wick movies, and more. 421 00:18:13,060 --> 00:18:14,380 Now when I browse my channels 422 00:18:14,410 --> 00:18:16,040 and can't decide on something to watch, 423 00:18:16,360 --> 00:18:18,140 I'll sometimes just watch one of those channels 424 00:18:18,140 --> 00:18:19,700 and pick up a movie halfway through, 425 00:18:19,820 --> 00:18:21,700 just because I can't decide on what I want. 426 00:18:23,020 --> 00:18:26,140 They also recently added in the beta, multi-view. 427 00:18:26,500 --> 00:18:28,940 So you can put two channels on side by side, 428 00:18:29,080 --> 00:18:31,420 which is fun on Sundays when watching football. 429 00:18:31,700 --> 00:18:33,640 I can play both games at the same time. 430 00:18:34,620 --> 00:18:36,040 And the newest feature is the ability 431 00:18:36,180 --> 00:18:38,300 to skip intros and credits at the end, 432 00:18:38,500 --> 00:18:40,380 a la Netflix, which is a nice touch. 433 00:18:41,220 --> 00:18:43,900 There may be cheaper solutions out there for your DVR, 434 00:18:44,340 --> 00:18:46,200 but few are as polished as channels. 435 00:18:46,660 --> 00:18:47,840 I've been using it for years, 436 00:18:47,920 --> 00:18:49,260 and it's one of my favorite apps 437 00:18:49,300 --> 00:18:50,680 that I use almost every day. 438 00:18:51,660 --> 00:18:52,380 - Wow, this is really cool. 439 00:18:53,240 --> 00:18:54,180 Like it was so many years ago, 440 00:18:54,320 --> 00:18:57,880 gave up standard broadcast TV because, you know, 441 00:18:58,560 --> 00:19:00,120 It was during that time when everything was switching 442 00:19:00,200 --> 00:19:03,940 to digital and I didn't have a digital receiver yet. 443 00:19:04,040 --> 00:19:06,660 And it seemed like I was getting the sort of standard, 444 00:19:06,780 --> 00:19:08,980 substandard service from just analog, 445 00:19:09,520 --> 00:19:11,800 but like all the transmissions are digital. 446 00:19:11,840 --> 00:19:14,500 If you can put up a little rabbit ears or whatever, 447 00:19:14,740 --> 00:19:18,160 you can now have that stream to kind of any of your apps 448 00:19:18,220 --> 00:19:18,620 in your house. 449 00:19:18,660 --> 00:19:20,060 That's pretty cool using the HD home run 450 00:19:20,440 --> 00:19:21,820 and then record it all with channels. 451 00:19:21,940 --> 00:19:22,700 That's pretty cool. 452 00:19:23,540 --> 00:19:23,740 Yeah. 453 00:19:24,800 --> 00:19:25,940 - What's your next one for us? 454 00:19:26,900 --> 00:19:31,320 All right, so synthesizers again, me and the synthesizers. 455 00:19:31,780 --> 00:19:34,180 If you've ever played with Eurorack modular synths, 456 00:19:34,400 --> 00:19:36,460 you'll know the name mutable instruments. 457 00:19:37,460 --> 00:19:40,180 Mutable instruments was created by Emily Gillette 458 00:19:40,230 --> 00:19:42,780 back in 2009, and every one of her synth modules 459 00:19:42,880 --> 00:19:43,800 was interesting and useful. 460 00:19:44,290 --> 00:19:46,780 They ran the gamut from oscillators and filters 461 00:19:46,850 --> 00:19:50,360 and reverbs to envelopes and utility modules like mixers. 462 00:19:51,340 --> 00:19:53,900 And now you can run some of them in Arduino 463 00:19:54,280 --> 00:19:55,620 on a Raspberry Pi Pico. 464 00:19:56,440 --> 00:19:58,280 Friend of the show and previous guest, John Park, 465 00:19:58,360 --> 00:20:00,900 has an almost complete collection of the Mutable Modules, 466 00:20:01,020 --> 00:20:02,580 and it fills up about two racks of space. 467 00:20:03,040 --> 00:20:05,240 I think there's like 60, not 60, 468 00:20:05,440 --> 00:20:07,560 like maybe 20 or 30 modules, it's a lot. 469 00:20:08,000 --> 00:20:10,040 He can create such wonderful noise with all of them. 470 00:20:10,120 --> 00:20:11,680 I mean, he'll occasionally send me little videos 471 00:20:11,780 --> 00:20:16,380 of crazy little evolving soundscapes, 472 00:20:16,680 --> 00:20:17,760 and they're just wonderful. 473 00:20:19,040 --> 00:20:22,080 So because the Mutable Modules are so useful and beloved, 474 00:20:22,110 --> 00:20:24,420 they became the standard kit for anyone doing modular. 475 00:20:25,040 --> 00:20:27,180 And because all of her designs are open source, 476 00:20:27,700 --> 00:20:29,200 several other best book manufacturers 477 00:20:29,340 --> 00:20:31,780 made versions of her modules in different form factors 478 00:20:31,940 --> 00:20:32,780 or with added features. 479 00:20:33,340 --> 00:20:35,580 I've got a few mutable modules and a few clones. 480 00:20:35,760 --> 00:20:37,900 For instance, I have a clone of the reverb module, 481 00:20:38,240 --> 00:20:40,700 the cloud reverb module called Supercell 482 00:20:41,320 --> 00:20:42,900 that adds extra knobs and inputs 483 00:20:42,900 --> 00:20:44,740 to control even more of the reverb sound. 484 00:20:45,360 --> 00:20:47,020 Like one of these you can use, you can freeze the reverb. 485 00:20:47,140 --> 00:20:49,000 Like it's got like sort of the echo 486 00:20:49,100 --> 00:20:50,500 that's happening of the reverb. 487 00:20:50,520 --> 00:20:53,380 You can kind of freeze that and add noises to it 488 00:20:53,360 --> 00:20:54,520 and reverse it and all that kind of stuff. 489 00:20:54,920 --> 00:20:56,460 I also have a clone of Braids, 490 00:20:56,880 --> 00:20:59,380 which is one of Mutable's most popular synth modules. 491 00:20:59,520 --> 00:21:01,160 It's got all these wave tables in it. 492 00:21:01,260 --> 00:21:02,680 All the wave table stuff that I've been doing 493 00:21:02,680 --> 00:21:05,200 in CircuitPython is very much influenced from Braids. 494 00:21:05,740 --> 00:21:07,920 The clone that I have is a much smaller size. 495 00:21:08,040 --> 00:21:10,580 Braids came out, it was a fairly large module, 496 00:21:11,140 --> 00:21:14,240 and in a modular synth rack, every amount of space counts, 497 00:21:14,280 --> 00:21:15,180 and so I wanted a smaller one. 498 00:21:15,840 --> 00:21:18,540 Some of Emily's algorithms made it into professional synths 499 00:21:18,540 --> 00:21:21,200 like the Korg MicroFreak and the Polyant synth. 500 00:21:21,760 --> 00:21:23,180 So you may not know Mutable, 501 00:21:23,600 --> 00:21:24,800 but I bet you've heard the sounds. 502 00:21:26,340 --> 00:21:30,160 So back in 2022, Emily shut down Mutable Instruments, 503 00:21:30,720 --> 00:21:33,120 but her and her modules legacy lives on 504 00:21:33,120 --> 00:21:35,460 and all the modules, repos, and inspiration 505 00:21:35,840 --> 00:21:37,420 her circuits and algorithms have created. 506 00:21:38,040 --> 00:21:38,500 Thank you, Emily. 507 00:21:38,620 --> 00:21:41,080 I've learned a lot about analog electronics from you. 508 00:21:42,240 --> 00:21:43,620 I've long wanted to poke around 509 00:21:44,180 --> 00:21:46,280 the synth and effects algorithms that she's created, 510 00:21:46,700 --> 00:21:49,320 but most of her modules are written for the STM32 chips, 511 00:21:49,440 --> 00:21:51,360 a chip that I'm not that experienced with. 512 00:21:52,280 --> 00:21:54,860 Fortunately, Mark Washam, aka Potaster on GitHub, 513 00:21:55,400 --> 00:21:56,860 has ported some of the mutable modules 514 00:21:57,020 --> 00:21:58,400 code to Arduino on the Pico. 515 00:21:58,860 --> 00:22:00,580 This is great. I know that well. 516 00:22:01,000 --> 00:22:02,440 It's one less barrier for me and I've 517 00:22:02,480 --> 00:22:04,100 just started poking around trying stuff out. 518 00:22:04,180 --> 00:22:05,340 It's really easy to get started. 519 00:22:05,840 --> 00:22:07,360 If you want to start playing with this stuff immediately, 520 00:22:08,419 --> 00:22:11,240 Potaster/Mark also has a little Pico-based synth board 521 00:22:11,260 --> 00:22:12,820 he sells on Tindy called Scarp 522 00:22:13,360 --> 00:22:15,400 that he targets for his mutable porting experiments. 523 00:22:15,840 --> 00:22:17,220 It's got an OLED, two pots, 524 00:22:17,460 --> 00:22:18,560 eight buttons, and LEDs. 525 00:22:19,100 --> 00:22:25,920 I was pleased and surprised to see my name called out as he based some of the design of Scarp on the various synth boards I've made over the years. 526 00:22:26,440 --> 00:22:31,380 Thanks, Mark. I can't wait to get deeper into the mutable synth code and links to all this stuff in the show notes. 527 00:22:31,900 --> 00:22:36,180 So on the Pico, is it copying specific mutable modules? 528 00:22:37,000 --> 00:22:42,020 Like, is there a code base for this module and a code base for that module that you flash? 529 00:22:42,070 --> 00:22:43,560 Yeah, yeah, yeah. Exactly. Yeah. 530 00:22:43,600 --> 00:22:46,200 So there's kind of two parts to these things. 531 00:22:46,300 --> 00:22:48,000 There's the core algorithm that, like say, 532 00:22:48,340 --> 00:22:49,240 in the case of braids, 533 00:22:49,320 --> 00:22:51,480 like he's got a version of braids that he's ported. 534 00:22:51,900 --> 00:22:56,000 There's the core algorithm that's generating the synth noises 535 00:22:56,380 --> 00:22:58,440 and then there's the user interface of like, 536 00:22:58,500 --> 00:23:01,580 you know, what knobs exist, what display, if any, exists, 537 00:23:01,920 --> 00:23:02,880 what LEDs exist. 538 00:23:03,300 --> 00:23:05,320 And so one of the nice things that, 539 00:23:06,560 --> 00:23:08,440 I don't know if Emily did this or if Mark did this, 540 00:23:08,500 --> 00:23:10,940 but there's sort of two different folders. 541 00:23:11,100 --> 00:23:13,580 There's one that's just the algorithm 542 00:23:13,580 --> 00:23:18,280 and others like, oh, here's the algorithm being used by, for instance, his scarf board. 543 00:23:18,960 --> 00:23:22,780 So you have a concrete example of like, oh, here's how I might map a knob to control this 544 00:23:22,980 --> 00:23:28,020 parameter. Here's how I might reflect this parameter on an LED or something. So yeah, 545 00:23:28,120 --> 00:23:32,400 so it's both. And the fact that both are there are really handy, because just having one of the 546 00:23:32,500 --> 00:23:38,080 others is, you know, not as helpful. All right, Paul, what's the last one for this post? 547 00:23:38,460 --> 00:23:41,920 My last item is dissolvable 3D printed circuit boards. 548 00:23:43,040 --> 00:23:46,600 Researchers at the University of Maryland have developed a new type of circuit board 549 00:23:46,780 --> 00:23:51,380 using polyvinyl alcohol, which is 3D printable and which can dissolve in water. 550 00:23:52,360 --> 00:23:57,840 To create the wiring on the PCB, they inject a gallium-indium metal alloy into the circuit 551 00:23:58,000 --> 00:24:02,160 board's channels in liquid form and then manually place the components on the board. 552 00:24:02,760 --> 00:24:07,220 They then apply a polymer glue to seal the circuits before drying the device for an hour at 553 00:24:07,580 --> 00:24:12,760 60 degrees Celsius. Using this process, the researchers created working versions of a 554 00:24:12,820 --> 00:24:18,500 Bluetooth speaker, a fidget toy, and an electronic three-finger gripper. A splash of water won't hurt 555 00:24:18,580 --> 00:24:23,800 the circuit board. It takes up to 22 hours at room temperature to dissolve, and the researchers 556 00:24:23,900 --> 00:24:29,780 were able to recover 99% of the dissolved polyvinyl alcohol. The article goes on to say that 557 00:24:29,900 --> 00:24:36,779 according to a 2022 United Nations report, Asia generated 600,000 tons of used circuit boards 558 00:24:36,780 --> 00:24:39,280 while recycling only 17%. 559 00:24:40,080 --> 00:24:42,600 Europe and North America generated 300,000 tons 560 00:24:42,980 --> 00:24:47,260 and recycled 61% in Europe and 44% in North America. 561 00:24:48,160 --> 00:24:51,200 Imagine how many hobbyists create PCBs for prototyping 562 00:24:51,200 --> 00:24:52,920 and what happens when you get something wrong 563 00:24:52,920 --> 00:24:54,220 and have to throw the board out. 564 00:24:54,840 --> 00:24:57,180 This process might start to address that. 565 00:24:57,660 --> 00:24:59,900 Not to mention that if you can do this with a 3D printer, 566 00:25:00,020 --> 00:25:02,960 you can speed up prototyping processes by a huge factor. 567 00:25:04,039 --> 00:25:05,539 Unfortunately, you'll need a subscription 568 00:25:05,540 --> 00:25:10,060 to read the article either on Apple News or at the New Scientist website, but I've linked 569 00:25:10,100 --> 00:25:11,120 to both in the show notes. 570 00:25:11,960 --> 00:25:12,560 This is really amazing. 571 00:25:12,660 --> 00:25:17,620 I mean, like, because isn't PVA, polyvinyl alcohol, isn't PVA the standard dissolvable 572 00:25:17,920 --> 00:25:22,200 filament people use when they print with soluble supports in 3D printing? 573 00:25:22,240 --> 00:25:24,120 I think it is, now that you mention it. 574 00:25:24,200 --> 00:25:25,200 I didn't even put that together. 575 00:25:26,340 --> 00:25:30,180 I mean, I've not used it yet, because I don't have a printer that can do that really, but 576 00:25:31,020 --> 00:25:31,620 this is incredible. 577 00:25:32,160 --> 00:25:33,480 Yeah, it's really a shame. 578 00:25:33,540 --> 00:25:38,140 It's like I've got this big shoebox full of PCBs 579 00:25:38,140 --> 00:25:40,940 that I'll never use, 'cause if you're getting a PCB made, 580 00:25:41,320 --> 00:25:42,640 the minimum order is five. 581 00:25:42,680 --> 00:25:45,620 And so even though maybe if you want one to test with 582 00:25:45,660 --> 00:25:47,640 and one to be your actual one, 583 00:25:47,640 --> 00:25:48,820 you now have three left overs. 584 00:25:49,280 --> 00:25:49,680 (laughs) 585 00:25:50,320 --> 00:25:52,280 - Well, hopefully it comes to market sooner 586 00:25:52,400 --> 00:25:53,020 rather than later. 587 00:25:53,920 --> 00:25:54,460 - Yeah, it's cool. 588 00:25:55,000 --> 00:25:56,340 Yeah, it's a... 589 00:25:56,340 --> 00:25:57,100 (laughs) 590 00:25:57,300 --> 00:25:59,920 Man, just don't let it sit out in the rain. 591 00:26:00,419 --> 00:26:00,820 - Exactly. 592 00:26:01,440 --> 00:26:01,840 (laughs) 593 00:26:03,340 --> 00:26:04,120 Well, that's our show. 594 00:26:04,580 --> 00:26:06,560 For detailed show notes and transcripts, 595 00:26:06,700 --> 00:26:07,900 visit thebootloader.net. 596 00:26:08,320 --> 00:26:10,800 And if you're enjoying the show, please leave a review. 597 00:26:11,060 --> 00:26:12,280 It really does help the show. 598 00:26:12,980 --> 00:26:14,720 Until next time, stay positive.