 Welcome to escalated and house of floppies and pancakes It's true. It is. I've been a tall stack of pancakes and floppies. Yeah, it's been a it's been a floppy extravaganza Here at Shea fruit. I've been hacking a lot more on floppy stuff I'm kind of getting a little like did especially today I got a little bit like into the rat hole of floppy disc formats I'm also a bunch of board designs But why don't you want to show the videos to get people? Yeah, so let's get you caught up to where we're at with our progress of making it so Anyone can be an archivist for low-cost Microcontrollers can now do this and one of our goals is any type of removal media just shows up as a USB drive drag-and-drop things off of it in the usual easy ate a fruit way and You know get all that stuff that's rotting away in the basements and attics Online so folks can learn from it and share so here's the two videos that we did today We'll play these back-to-back, and then we'll see you on the other side This is I did find one single DOS formatted five and a quarter floppy, and this is my five and a quarter drive Clunk it's wired up to my feather with my floppy feather wing running my grease weasel emulation mode And what I got working was flux engine. So flux engine is another software that can read floppy disk drives with flux data and then parse it out and I did get this working earlier, and I just want to quickly show this is what was on it This is the image that I'm you know opening up on my computer So it's got all that now stuff that you're probably used to if you had a Windows computer running DOS back in the day and This is flux engine if you're interested in it's kind of a cool open-source flux reader And this is the poor quest that hopefully I'll be able to get merged in soon You spin me what round baby right round like a floppy disk Okay, so I've got my five and a quarter floppy disks not a good singer good engineer Got my five and a quarter drive wired up to my feather, and I'm now running the mass storage demo For TV USB, which means that this is actually showing up as a 360 k Double-density drive. I had to refactor a little bit here. I'll see you can tell it Hey for the MFM decoding you're expecting 360, but here's the good news It just shows up as a drive and if you're like hey, I want to know what's in this read me dot text It's a mouse driver for you know an old IBM PC, but it shows up just like a disk drive This is a good example of why you can't just use a USB floppy disk because there's no such thing as a 360 k IBM USB floppy drive, but now there is okay okay, so started off by getting flux engine support for The a different floppy grease weasel example So flux engine is is a piece of software that runs on a computer that Talks to the hardware and gets the flux data and then can convert it to to the format that you know Just decode the format for you and we did grease weasel a couple of weeks ago It grease weasels a python version and flux engine is in C and they both have slightly different functionalities So it's good to have both supported um The only difference is that um flux engine again is written in C So it's kind of like low level windows 32 file access and like learned a lot about like the differences between Um How python does calm file format reading and the way that um c does it but whatever um, I did I did get it working in the end and um even fixed a bug in flux engine, so um That's the good news and um Once I got flux engine working, um, I was like well I can try reading the five and a quarter inch drive because I only had Common or 64 and comma 64 Formatted five and a quarter inch floppies and like a couple apple twos And grease weasel can't read apple twos format or c64, but flux engine can and so I was like well Once I get that working I can start reading these discs and then actually was like I found one disc that said like mouse driver And it turned out I was like well, you know what like that's that sounds like it's probably an ibm pc DOS disc and uh, lo and behold it was I was able to use that as an example for um 360 k floppy so you saw in the video Um, we updated our mfm decoding to also support not just high density Which is what you usually use for three and a half inch But for five and a quarter usually have it's usually double density or like sometimes it's high density But it seems like a double density is quite popular. So that means that um half as many tracks half as many sectors so like the Square of flux that you read is like just that much larger Basically, it's like two times four times larger two times on each side And so such a refactor a little bit to know like okay the timing has doubled the number of sectors have the number of tracks It's halved or you have to like double You have to double step through the tracks or whatever um So sorry the drive itself is is only 40 tracks so every time you step you're only stepping you alternate What normally would be 80 tracks like you interleave them anyways So got that working and so um, yeah the mass storage stuff just worked It's funny is it doesn't show up enough with a floppy disk icon because um windows has a special thing that's like Oh, did your the disc is the the mass storage device you just plugged in You know 1.44 Megabytes, okay, I'm going to assume it's a floppy disk But if it's any other size it doesn't give you the cute floppy icon. It's a little bit of shame And we have to call it mass storage even though it's not Yeah, it's mass storage. It's not sauce. It's it. Well, it's the mass storage format Um, but yeah the all this all mfm IBM disc gets used the same, you know, there's there's You know 40 or 80 tracks there's nine or 18 sectors and each sector is 512 bytes and it's fat 12 So it just shows up on the computer and then I got into the Commodore 64 disks and The Commodore 64 is like really messed up um compared to mfm um mfm is weird, but at least it's like each Sector has the same number of bytes on it, right? You're like, there's nothing funky going on whereas Commodore 64 and early Apple disks You know the engineers there, you know looked at, you know, basically it's a circular format and we're like, well You know, it's like toroidal. It's like it's it's like a doughnut And so there's more data you can store on the outer rim of the disk than the inner rim And so there's different numbers of sectors um Depending on what part of the disk you're reading on the Commodore 64 which Which yeah, at least it's been at the same speed that god, right? But it does it does have slightly different amount of sectors. And so that is really exciting um, and it's also gcr not mfm um, so I'm I'm still I you know, I'm getting I have I'm getting data read from The drive into the Commodore 64 format the problem is is that the disk gets I have, you know Half of them are commercial games and you know like commercial programs And those disks actually read pretty cleanly because they were like Manufactured with like a really strong writer and then you know factory and it's like they're really well made And they only had one thing only written on them So there's like competing, you know old flux that may be not cleared off the other disks that are like user disks have like You know files and code on them um In like, you know user programs, but because they were written on a disk get drive They don't read very well like a lot of them have a lot of sector failures So, you know, I can read them, but I haven't I haven't gotten one Clean read whereas, you know, I have a copy of like there's a copy of a top gun game and jeopardy game and like You know track and field something something and those actually Almost all read very cleanly like I can get all the all the data out And it passes the crc checks But I I can't quite get it loaded into an emulator and it's like unclear why and it's like There's copy protection and then you can read like a g64 file But then how do you convert to that and it's like I'm in this I'm in like a place, you know, where I don't really know enough about this Yeah, I think I think also I might have to tweak a little bit of the the index pulse reading To make sure it's like either it's falling or it's rising I think it's important, you know For the mfm it was like it bullshit who cares like as long as I sort of say here It's sort of where the index track is but for the copy protection Stuff you need to really be very precise about where the index falls and rises on the on the flux reads so Um, yeah, I'm reading the data, but again, I can't actually load an emulator And I think maybe it's because of the copy protection or something so Um, or maybe I'm just like not doing it right. So that's that's that just get stuff. So um It's good news. Um, I do think, you know, I I need to revise the floppy feather wing to add level shifting um, I can really get away with it until Um, this five and a quarter, but the five and a quarter it does work, but I had to add a pull up on the index line um, it really, um You need to drive those inputs very hard and my controller is not really good at it So I think you know, I should put a little shifting on any ways to protect in case something goes in all out wrong You know, you don't want um, you don't want to be like leaked current from the five volt line coming in um But also I think I need to drive those Open drains a little harder than I expected and have like some pretty strong pull ups So, you know, put some big pull ups have an open drain shifter and um or buffer And uh, so i'm going to revise the the floppy feather wing uh shortly But if anybody here who's watching happens to be an expert not in the Commodore 64 But in Commodore 64 g64 file format generation from cryoflux or scp files types uh do comment um because I I have I have like this thing I have to convert to another thing and it's like Not clear how exactly you get from one to the other and I I want to I really want to use this this open source Toolchain as much as possible And I I really really do not want to start writing Commodore 64 file format generators I mean I can do it, but like I I got a lot of other things on my plate Um speaking of stuff on my plate. I also designed a couple boards. So first up the feather, um ESP sorry the feather ESP 32 v2 So we got these I did a little video which we don't have but we got these pico modules If people really want I can go maybe grab one. I don't think I have them here, but the the pico module Which we talked about last week is an esp 32 the original esp 32 not the s2 not the c3 not the s3 that has um eight megabytes of flash and two megabytes of ps where I'm built in And um it's on the chip itself, which is why I used it in the cutie pie design But they also made a little module version and the module is actually smaller than I thought Um, which kind of inspired me to finish up this feather esp 32 revision and the reason um I needed to revise it is because the cp 2104 is no longer available Being replaced with the cp 2102, which has this a slightly different schematic For use and it's like if you're going to revise If you need to add like two resistors to design you might want to redesign the whole damn thing Right because if you're going to redo it and you just new stencil you need a new pcb It's like here's a good opportunity to just go in and just clean the heck out of it. So um, I did a complete, uh, revision Let's do front Um, so I did a complete revision. So this is the pico module here And it is it's a bit of a let's see if I can turn on Too docu to show this a little bit better Where is um, so this is the module And I put a stem aqt like a vertical style over here And then um, I put a neopixel the old esp 32 doesn't have a neopixel and I'm using Pin 0 and pin 2 which are like unconnected, but you know as long as they're outputs It's fine. I'm using them to control the neopixel and the power For the uh, there's a little power regulator for the I squared c and for the neopixel There's an extra user button. There's like one input remaining at the end Um, so that's an input button. So you have a user button and then um updated to usbc Up here and uh, you know just tweak this now. This can be cb 2102 or cb 2104 Um, and I'm you know because the module is much smaller than the room I got to put a little bit more um capacitance on the board Um, these pads are a lot bigger now I had to kind of make them skinny because of the the room module was like right up against the edge of the um the pads I did have to change a couple pins around because of the ps ram usage The esp 32 pico actually has slightly different pins available than the esp 32 were room It's not a big deal. The only pins that got changed were like the uart pins And the I think mostly me so changed and I think scl sdh changed all the numbered Pins up here did not change and the analog pins didn't change. So You know if you have to recompile your code, but if you recompile the code um, even if you as long as you used like the Word sda or sdl not just like pin six or whatever or dpi o8 Um, it should be just fine. I think it's worth it I mean this is going to have double the flash and two megabytes of ps ram And I think I think that's a worthy update And um, it's still like a double-sided board seven seven rule. So I'm I'm pretty happy with this design And uh, you know, it's going to be it's going to be very compact. It's a good refresh of the um esp 32 feather very popular feather, but like You know, I always thought like I didn't really like that the module was so big So when the pico is came out I think he's been out for a bit, but I sort of like didn't notice Um, it's it's a lovely little update to to the board. So I'm happy about that So that's that and then um The other board that I designed was a little Game player for the cutie pie So, um, it's got, you know, the the dpad buttons here And then a and b buttons here and then there's actually four buttons over here And I thought maybe I could especially for the esp 32 An s3 cutie pie. Maybe it could get the um, uh, odroid go like emulation library example code working Um, I thought that would be really cool for it to uh To work on this and on the back um There's a little socket that you would plug in this is like a two by nine and another two by nine header And you see it fits quite nicely right before between the mounting holes And this is a cutie pie with a usb sticking out And then um, there's a micro sd card slot for games on off switch battery, um, which kind of like goes over the whole back, um display and um, a aw 95 23 gpio expander a really low cost expander that um Handles all the pins Handles the backlight, um because it has an led driver. That's really nice. Um handles like the card detect pan You know, basically everything that isn't like the tft spi and analog output like all the all the extra stuff and um, you know by using expander actually I have a lot You know, I have two pins extra left over on the cutie pie So you think like how many gpio is 11 that's so little but you can actually get away with 11 if you have an expander to take care of your user interface buttons So the only thing that I was kind of like not sure about is should I go with a speaker or Headphone and I ended up going with a little headphone output And I'm using a zero and a one those are the the DAC pins on most boards Although you can do also do high speed pwm and then Amplifying it out into The headphone so I think you could get you know, maybe better audio than a little speaker because I feel like I could do a speaker, but it'd be so small And then it's like I don't know. I sort of felt like usually I do a little speaker But I thought this time maybe I would do a headphone and that could that could be a little more fun Because then it could be something in your pocket And most people have headphones with them all the time for your phone or for your mp3 player or whatever So yeah, so that's that's the design and so the great search is going to be for that headphone amp because that's What I had to source this week So I don't know if there's joined your questions or you want to do them. Let's do the great search Okay The great search brought to you by aford and digikey every single week Lady of user power of engineering to show you how to use digikey.com search This week the great search is It's a capless stereo headphone amp. That's very small Right. I want to want to optimize for board size on this design So let's go to the computer and I'll show the schematic So for my design Um, I've got Let's see. I've got my board And it has audio out in this case. I only have audio on a zero, but I'm gonna change that in design There you go. Um, so audio output and I wanted to drive, uh, stereo headphone output and um, I want to have like a nice little amplifier and The thing that was most important for me Is I wanted a design that was capless and what that means is um if you look here, uh There is no DC blocking usually there's like 100 or 200 micro uh, ferret amp capacitors on the output of the amplifier into the headphone and that's because like you don't want to have any DC signal Um going in normally a class a or class a b has a or you know, even class D Whatever they have a DC offset right usually you're you have your ground and then your audio signal is above it Going up and down there's that DC offset But you don't want that DC offset going through speaker because it'll damage it And so usually have like big ass blocking caps Um that allow for the 16 or 8 or 32 ohm load Um and doesn't like diminish the spec of the frequency response Um, but you'll notice here there aren't any and for the design I'm doing it has to be so tiny You know if the whole thing is so small one capacitor would fit like here It would be just way too big. I wanted something that You know audio goes in maybe there's a couple or just there's some capacitors just for like You know, but you know just getting the signal in and um doing the um Uh volume gain select But for the most part I don't want those like big chunky caps because even ceramic ones They're just way too big or tantalum. They're just too big So this is a no cap Headphone amp design and the way it works is if you notice here, you're like, oh, what's this? There's a switch cap Uh converter Can't remember the name of the not a boost converter. It's like a Inverter basically and allows it to generate a negative voltage by using a switch cap And that way the signal that comes out here is referenced To a negative voltage as well as the positive voltage, you know from the 4 volt to 3 volt power. It's generating a negative rail so that the output is right centered through ground, which is like super cool. You're going to pale a bit more But usually these amplifiers are quite nice in general so Let's go to Digikey and I'm going to search for our headphone amp Okay, and um, there's a whole bunch of stuff, but basically you want the um, you know the the linear amplifiers And uh, so i'm going to go with I only want the active designs because I want to manufacture this I want normally stocking now it might not be in stock right now because of the chip shortage But like something that I can probably get in the next few weeks I also noticed by the way a lot of chips are sort of coming into stock in the next few weeks So if you've been waiting on something Um, and then I'm going to exclude marketplace products Okay, and first pass Yeah, so like let's say like oh wow here's one for 60 cents. Let's take a look at it. So when you open this up You'll notice this design doesn't have um that capless. It's like, oh, hey, you need you need some big ass On the output uh to remove the dc offset So we don't want to use this so that's that's no good and and there's no like thing you can signal Filter from that'll signal that it's capless um, although sometimes they have It's called like direct drive or like No cap You know, there's sometimes names for for pretty much you just have to look at every data sheet real fast and just They'll let you know very quickly um That said the size is very important for me too And so, um, I definitely want only surface mount There's only one that wasn't surface mount And I don't want a big ass package like eight s o i c or t sop is going to be too big It needs to be t d f n or q f n or t q f n. Those are the only ones that are going to fit So, um, I'm going to select only the packages that I think are going to fit. So d f ns I don't like bga. So I'm going to skip those No t sops More q f ns q f ns q f ns I think no more than 24 Like that's at the max anyways Okay, next up. I'm just going to check the voltage supply. You know, I'm running it off of three to six volts So, um, three to five volts. So I definitely can't run it off of the this 1.8 and 1.95 Volt version Not gonna happen Okay, so we only have like 19 options. That's that's much better um So I went through these and there's there's actually only a couple different families available. Um, but when I sorted by price um There were a few that weren't in stock the 488 was the one that needed the um The amplifier, sorry the other capacitors on the output And so the first one that was available that was in stock And also, uh, had that um, no capacitors required was the max 9724 this looks like a really, um, nice amplifier. It's got depop. It's got shutdown It's adjustable gain, you know, and it's like basically 60 cents When you buy it in quantity, so, um, this was the part that I picked so I have some on order and maybe by next week if I get the, um The PCBs in uh, we can hear how it sounds and hopefully it sounds pretty good But um, I like this. It's a nice little headphone amplifier I think this is I'll probably use just a couple other designs as well It's very simple, but I really like that it has that At negative voltage rail generator inside and this week is a special tree Yeah for the great search. We're gonna play a digikey 1991 promotional video. It's amazing To since we're doing all this retro stuff. I know let's check it out. All right put the floppy in the drive It's started in 1972 An idea a new concept in distribution Today digikey corporation represents one of the fastest growing electronic component distributors in the united states At digikey service is the key The success of this effort depends on a team of talents employees management and staff Committed to making digikey the best In its first 10 years digikey's marketing efforts were focused on the electronic hobbyist Then in 1982 they began targeting catalog mailings to the commercial market Okay, and uh, let's get to some questions and we're gonna bounce You ready? Okay question with the esp 32 is our refresh being v2 Will it have to have a separate Arduino listing since there's a small amount of changes Just curious on how that works. Yeah, I need to do another board variant But like express was really chill about it I submit board variants all the time and they just they pull them in as long as there's nothing like super weird in them Um, so yeah, there would be a new board definition because again some of those some pins were not available on the paco Um module they just aren't brought out. They're used for the ps where I'm interfacing And so I had to read like it's one of those things like if you're going to change If you're going to add one resistor to a design You have to redesign the whole board if you change one pin You might as well change as much as you want because it's like any change is going to require A new variant file. Okay On then one of the other shows you talked about esp 32 itsy bitsy introduction. Will it be able to bring out all the pins? The other itsy bitsy. I know it will have an antenna work around like the other 32 4 version do not Well, you'll you'll have the antenna at the end. I mean I kind of drafted it out but you know surprising The esp 32 does not have as many pins as you'd think a lot of them are input only and so like if they're kind of restricted Um, and there's a lot of strapping pins and I don't like to expose those because if you happen to connect something to those pins It could kind of like make your boot up weird Or your boot loader not work. And so um for the itsy bitsy design You know, it the pins aren't named the exact same thing because like pin 8 doesn't exist on the esp 32 Or like pin 9 or whatever pin 6. There's a couple that just don't exist Um, and there's no pin remapping on the expressive core either So like, you know in arduino On the original, you know, there's a remapping like On the samd 21 and samd 51 pin 3 Is it can be like pa 14 or it can be like pb 3 or whatever. It's mapped inside the arduino ide Espressif doesn't do that. So like gpao 4 is always pinned for it always has the same functionality. There's no you know map Table that converts pin to pin which is you know, it's all right Um, I kind of wish that folks would do remapping because it it's like one Table lookup thing. It doesn't add a lot of um slowdown And gives people a lot more flexibility and like having pin compatibility between formats It's one of the things I like about the cutie pies. It doesn't have any numbered pins. It only has named pins Um, it's like a 0 through a 3 and then sda scl rt Rx tx You know and the spi pins and the power pins. There's no there's no pin numbers. I could ever like trip you up. Um It'd be probably kind of you know, if I could go back in time I would probably change arduino to only have named pins and no numbered pins Um, we we solved that in circuit python. Um, because I really didn't like You know, I knew that this was going to be a problem, but I can't go back to fix arduino Just kind of how it is All right, and that is our show for tonight. We'll see everybody during the week Thank you. Um, uh, tuesday we have jp's Uh product pick Wednesday, we have show and tell and ask an engineer and also 3d hangouts with no impadro And then thursday jp's workshop and friday. We have deep dive at scotland videos all throughout the week Monday is a holiday. It's mark luther king jr. Day. It's a day of service So our team is taking the day off So if you place an order make sure you know that it will not be shipping until Tuesday, there's also a little bit of weather going on. I'm looking out the window right now. It's a little Snow dust in but it's not too bad and please continue to stay safe everyone. We are almost through this wave Uh, I've been telling our team that this wave is collapsing. Um Right or wrong The way we got through it, uh, folks got vaccinated Folks are testing positive, but it's not affecting them really At least that's what seems to be happening around here in new york and everyone's Ready to get back to uh, their lives and more. So just hang tight And uh, I hope to see some of you in person real soon Thanks for the support. Thanks for the orders. I'll see you next week. Thanks everybody. Bye. Bye