 The T2 tile project is building an indefinitely scalable computational stack. Follow our progress here on T Tuesday updates. Our top stories this week, a lot of stuff to talk about. Nano Remo National Nauvel Writing Month is done in November. I worked on a novel, a science fiction novel I'm calling Best Effort. The goal of Nano Remo is to produce 50,000 new words in a month. I did not achieve that. I reached 30,000 words. Some of them are terrible, a lot of them need a lot of work, but really turns out to me the hard part is just getting enough plot out there, moving it along, rewriting it. I can definitely do in burying little hints and foreshadowings and foreboding and stuff like that. I have confidence I can go back and do, but if I don't actually get to the big events, the big plot of twists and so on and so forth, then they just don't get written. They're computing that I'm producing about 1,000 words a day, which is what I was computing as well. At that rate I'll be done on December 21st, but I'm not going to work at that rate. I got my 14-day badge for updating, I could have updated it with zero words, and it still would have given it to me. Anyway, it's fine. It's funny though how completely meaningless little badges, you get invested and they mean something. This is my own data for the entire month of November and continuing on. I have now split my linear fit, so we have 998 words a day for the month of November and now December and on is being done separately. My goal is 2,000 words a week on the novel best effort until it's done, or until volume one is done, or until some way that we can declare an ending and go back and then try to actually finish it, get past a draft, date something that might actually be something that could be circulated in some reasonable fashion, we'll see. So on the bucket list, finish writing a novel, cannot check that off. I haven't worked on writing day in and day out like I did in November since I was finishing my dissertation in 1987. It's been quite a while and I'm sort of a different person in the world, a different place, everything is different. Writing fiction is different. It was very interesting experience. I feel like I learned a lot about how I work and how I can work steadily and so forth. But it did not feel like I could just continue to do that when advancing the T2 tile project, getting to intertile, establishing .9 air, whatever it turns out to be, you see the number one item on the bucket list for me. I need to move that forward so I'm pushing the fiction writing into the background a little bit but I'm not going to give up on it because I absolutely want to finish something there. So that's Nano Remo. The great refreshing thing that I talked about last week is let's deal with all of the cleaning up and the stuff that I was trying to sweep under the rug by trying to sprint to the end. The sprint has turned into a bit of a marathon so one of the biggest things was to upgrade to a newer version of Linux and I decided to make a new Keymaster and I was printing it in the red PETG. This is the first time we've made a case in PETG, all the other ones are PLA. Once again, it's fine, it works good, you know, here it is. It hasn't got a screen on it. You know, it's screen just sitting here loose somewhere, this is the red Keymaster screen or at least it will be hopefully soon because the newer version of Linux, we know we're close to being able to even light up the screen yet, that all has to be refigured out. There I've managed to get it plugged in with the serial cable so you can see what's going on. Oh yeah, and so one of the other things I wanted to mention, as long as I was doing stuff, 3D printing design again, there had been an issue that I had a long time ago. So you know, we've got these little feet that go on the bottom of these things. Remember these? And I made up a little wrench to go with them that fits over the feet. But the problem is since then, we got these little plastic grids to cover up the exposed solder pins on the bottom of the board. And now that makes it so that it's really difficult for the wrench to get flush enough to actually catch the threads. It's possible, but you have to really do it. So I said, well, what the heck, maybe we could go back and invent an improved wrench especially for this purpose. So I'd spent a little time on that. Here's what the first thing I came up with. The key point, and here it is as well. The key point is that it's got these cutaways around the wrench head to actually fit into the corresponding cutaways around the, I don't know what to call this, the back cover, I guess we'll call it the back cover. And that worked pretty well. But now it meant that, so here's that little wrench with its little dings. The only thing that's problem with that is that it ends up with the, you know, the wrench has to stick off at a weird angle in order to do it to clear the thing. And I said, well, geez, you know, well, couldn't make it something even a little more custom designed for this purpose. So I kept on going. And so the idea is you can, you could make a wrench that would just go right around that corner of the thing instead of going off in a big long direction. We don't need a lot of leverage for this thing because we're going to strip the feet if we think we have leverage. So that's fine. So I printed some of them up and, and okay, that's the next one, but let's take a quick look at this. So this is, this is the current version of the foot attaching and detaching wrench. It has the same little cutaway to fit in the thing. But now it goes over very nicely and you just sort of hold on to it any way you like and you can, I don't know if we can actually see this, well, trust me, there you can see I'm turning it from the back. It works very nice. It could be improved a little bit more, but it was fun to actually make a little something that just made my life easier instead of saying, okay, now we have to make up another story that makes my life harder. All right. So about the progress on getting the new version of Linux going. I knew this was going to be, or I was anticipating this being a huge pain in the butt. To some degree it has been, although there's been one good, aha, that I finally got. So yeah, I was digging through old files in the last week. This is a bumper sticker that one of my students who took software engineering for me at UNM, Nathan Rackley, who's a cartoonist and so forth, you know. It's always difficult to see how people see you. Apparently that Ackley guy was not very happy. Anyway, doing stuff that people do. That's my slogan for what science is, but it applies to almost everything. It applies to software engineering. So the goal is to get to Debian 9.9 2019 instead of Debian 8.7 from 2017. In the IoT Internet of Things version. I hate that abbreviation. I hate the whole idea of Internet of Things, but here we are. So the goal is to make a new micro SD card. I'm labeling it R for the refreshing that's going to be the flasher that we're going to plug into these things and it's going to burn itself in a new version. I tried using this startup disk maker that came with Ubuntu to do the copying to the SD card just because I hadn't really refreshed my brain on how all this worked. And that got you sure you want to write it yet will be writing disk image. And then it was like, wow, this is actually taking quite a while. So I started looking around and trying to remind myself of the other issues. And the single issue that I was most worried about was this whole thing called U-boot overlays. U-boot is the universal boot loader. It's the thing that runs before Linux even boots. And the change from Linux 3.8 to Linux and whatever heck it is, 4.14 on the ARM tile, on these TI Texas Instruments chips that are in the Beagle Bones is that it completely shifted how there's a thing called a device tree that is how you describe the specific hardware you have on your little embedded computer. Because this is one of the things you have to deal with. Linux is being used on everything. Some things have serial ports. Some things have two serial ports and so forth. The device tree is described the hardware to Linux so it can figure out where to find things. And the idea is is you have layers of additional ones. So you have sort of common stuff and then you have stuff that's customized to your particular thing. So U-boot overlays changed from they used to be loaded by Linux to being loaded by U-boot. That was terrifying to me because I'd never used U-boot for anything. So I was reading about that. The disk was still getting written as playing semi-x meal. And okay, so it finally finished. Take the card and put it in the thing. Oops, let's get over here. There we go. Push it in. Yeah, and so you can see how the serial port connector actually blocks access to the SD card even if you have the case off. So you really have to get into it in order that you go. But it actually was booting up okay. And then, you know, we're off to the races. There we have, you see, 4.14. That's the new version that we're looking to be using instead of 3.8. But then it was not actually working. You know, I was trying to get the latest versions of all the files. That turned out to be obviously just me being stupid because I hadn't plugged in the Ethernet cable. So then that was all right. Do the upgrade, you know, another 280 megabytes of archives. So we do that, we reboot. The rebooting actually had a problem and it was recovering the date, the file system, which is not good. I think that was just a temporary thing. At the same time, I was looking in this pro cookbook. Mark Yoder teaches courses at Rose Holman. He teaches embedded systems and he uses Beagle Bones. And he's produced this great thing. Pru, it's the program of real-time units. That's the stuff that we're using for our six-way communications throughout through the tiles. So I thought I could just take some of that. He's got it all up on GitHub. I checked it out. You know, quick little examples. Just do this, do this, get the LED to blink. Tried to do that and I realized I'm going nowhere until I got an Emax installed on this. So I went and got an Emax going and so forth and trying to figure out exactly how to do the whole U-boot business. I had to start searching through my Google groups and my Gmail stuff, looking for Robert Nelson. Robert Nelson is the guy that a bus hits him than the Beagle Bone Project is in trouble because he's the one that produces all the kernels and so forth. As far as I can tell, there's a few other people involved in the project, but he's the one that's in there the most. And so things like this. I had similar problem with a BBG, Beagle Bone Green. That's what we have. Running 4.9 had to revert to 3.8. We're talking about 4.14. That's later than 4.9 and so on. So issue after issue after issue, I will spare you the details. I was trying to say, okay, how am I gonna get this U-boot? If I'm gonna have to update the U-boot in order to use U-boot overlays, what do I have to do with U-boot? And eventually I managed to say, okay, there it is. You know, in that U-boot 2017, that's the one that is on my actual tile, the Beagle Bone Green, it's ancient. And if that thing boots, it doesn't know how to do U-boot overlays. So it has to be updated. So, you know, I messed around with it and I turned out I was doing it all wrong because I was updating the bootloader on the SD card and not on the EMMC, not on the flash that is on the Beagle Bone Green itself. So lost a lot of time in that, figuring out what's going on, I've updated this, updated that and so forth. And the key there is, oh, I'll save you that story. Yeah, there it is. I was sending the output file to MMC block zero. That's the wrong one, it should have been MMC block one. Didn't hurt anything, it just didn't accomplish what I wanted to accomplish because MMC block zero is eight gig. What does that mean? It's the SD card because the EMMC on the Beagle Bone Greens is only four gig. So I make it into a flasher. So it takes everything on the SD card, copies it to the thing, reboot it, set it up, the flashing happens. It all started working, it stopped, it started again. And we actually got as far as doing the big update of downloading all the zillions and zillions of packages. While that was happening, I was watching this YouTube video by Peter Norvig that was recommended by a curious reader who came into the Gitter and was pointing this out to me. It's actually an interesting kind of talk. I'll put the link in the thing below. It still comes from a sort of standard computational spin, but Peter Norvig is a great AI guy with a lot of experience working at Google and so forth. So he sort of worked his way towards getting, and this was the point of the curious reader who was bringing it up is that it reminded him of Robust First and I can see where he was feeling that. So yeah, so what is a data scientist and so forth. Eventually I got here, and this is the end of the story for this week, got to actually building my kernel modules and they no longer compile. A variety of errors, copy to user, well that turned out to be easy to fix, but there was a bunch of other things as well. And so, you know, it's time to Google them. So copy to user, under find that, well, that turns out you just have to use a different header file. So I fixed those already, but the class adders pointer is long depreciated. I love how people cannot keep deprecated and depreciated a part is about to be removed. So that is gonna have to be rewritten. I haven't figured out how to do that yet. So that'll be going forward for the coming week. So that's the long and the short of it. Some more interesting stuff from Peter Norving from that same talk and so forth. And then the key idea, I realize I do say and so forth too much, I have to work on that. Peter Norving is ending up with the idea of you shouldn't run an app, you should have sort of an agent for you in the middle that does services for you, which is very much in the microcomputome spirit, which is very much in the stuff that we're talking about in best ever, the science fiction novel, and the stuff that I think the T2 tile is ultimately destined to be helping out with. It's down the road, but there we go. All right, this is running long. So I'll stop here. Hope you had a good Thanksgiving. We had a good Thanksgiving. I will see you next week. Thanks for being here.