-
SD Card Breakout Board Testing​ 2
11/14/2021 at 15:13 • 0 commentsI was able to get the board to stop resetting the entire system by hooking it up to 5 volts. I also finally got the SD0 overlay working and confirmed the pins are configured correctly in software. I was unable to get the card to mount, and no activity light action on the breakout board. I'm starting to suspect there is a hardware problem with this breakout board. The overlay is set up to use all of the data pins of the SD card, not just the two that are broken out on this board. I'm going to order a simpler SD breakout board for the next round of testing. I was very frustrated with the lack of progress on this, but I have the software sorted and am happy with that. I'm hoping to have an SD card working over GPIO shortly after the new SD breakout board arrives. If that's the case, this project can move forward onto the software development stage. As much as I want to skip ahead to hat and start making games and programs for this, I don't want to get distracted and put off the hardware aspect, as it's the most important part.
The problem I was having with the software was my own dumb fault. I put the sd0 overlay file in "/boot/" instead of "/boot/overlays". That caused it to fail to load. I was also playing around with different overclock settings and such, which I reverted to the original settings. The pins are now configured properly and the OS tries to mount the SD card over SDIO at boot, but fails and starts the OS afterwards.
I still have the 512MB SD flash chip I'm not using. It uses the SPI interface, which I have no idea how to use with the Raspberry Pi OS as a mounted drive. I may just use the SPI interface for saving configuration files and data I don't want the end use to mess with. I'd include documentation and ways to modify it of course.
Still many important decisions to make, but progress has been made. The first step after getting the SD card working over GPIO will be performance testing. I need to know just what I can do with this card. I'll start with simlpe benchmarks, then move onto real word testing, such as streaming high bitrate video files from it. Read speed is most important to me for this project. I don't have a working SDIO SD flash chip yet, just the SD card itself. The datasheet for the chip claims class 10 performance, I believe. I will just have to get a similar SD card for initial testing an confirm with the flash chip when I get one working.
-
Initial SD Breakout Testing
11/14/2021 at 13:26 • 0 commentsA few days ago I started testing with the two SD breakout boards I got. One is a micro SD card breakout board, the other is an SD flash chip breakout board. I got the device tree overlay in place as well as turning on polling so it would check for a card inserted every second. When I boot the Pi up, it gives an error saying device timed out and unable to mount, but that's to be expected as I couldn't physically connect the card to the GPIO. When I hook up ground and power the Pi reboots immediately. I couldn't figure out why for a few days, but I have a theory to test now: Too much current draw. That could be a major problem. I don't believe I had the breakout boards powered directly from the 5 volt pins which can provide far more current than the 3.3 volt pins that were recommended in the document I was following. I have a 5 volt tolerant micro SD breakout board, so I'll start with that. If that works, I'll have a second SD card over GPIO and a working proof of concept for this project. That would be good enough for me to move onto software development.
I'm going to post this quick update before I try to hook it up so I don't crash the system again. I'm running the latest Raspberry Pi OS (32 bit) from a Samsung Bar 32GB flash drive on a USB 3.0 port to avoid the corrupted SD cards I've been having trouble with lately. I had a 256GB SD card I was going to use for extra storage and backups on the Pi, but it got corrupted so badly I couldn't save it. Ordering a new 512GB soon.
I'll post another update soon with the test results.
-
Pi 400 Everyday Use Experience
11/10/2021 at 15:54 • 0 commentsI've had this for a few days now and really enjoy it for the most part. I have a Pi 400 inside the Pidock 400 as my everyday computer as well as the development kit for this project. It is very good so far. My main issue is with the software. I'm having trouble with OS reliability. It crashes randomly and I haven't had the chance to figure out why. I'll keep using it and try to make this my primary PC. I made the switch to Linux in 2018 or so, and have been using it exclusively since. I hope to do the same with the Pi 400. I don't really need much more from an every day computer. I feel it's worth the effort to figure out how to make it more every day friendly. I do need more processing power for video editing and re-encoding, but I have a minimalistic plan for that as well. I'm considering ordering the Minis Forum HX90. It's a very powerful and portable pc that would handle the heavy work the Pi 400 can't. I can even use the Pi 400 as a keyboard and mouse for it, as well as use the Pidock 400 as the monitor, as it has a standard HDMI input. This would let me use my Pi 400 laptop exactly as I already do, but with a very powerful PC running behind the scenes. I plan to travel the country on a motorcycle soon, and don't want to give up a proper desktop PC or my Raspberry Pi projects. This solves many of my issues all at once.
Overall I love the Pi 400 and Pidock 400. The keyboard is good enough for me, it's portable and powerful enough for my everyday research and programming, and I love the fact that I have such an interesting and useful laptop now.
-
GPIO Audio Output
11/10/2021 at 15:25 • 0 commentsAs I research and work on this from my Raspberry Pi 400 laptop, I realised that the Pi 400 has no audio output aside from HDMI. That's fine for most use cases, but not all. I would love to have a headphone jack on the Pi 400 for times when I want privacy, to drown out the noise of the world, or to stop from being rude or annoying people. This would be useful for children as well, so parents don't have to listen to the annoying, repetitive sounds that kids seem to love so much. I'm n exception; I spent much of my very young years annoying the hell out of the adults around me. A small onboard speaker would also be useful as well. The headphone jack would be great for listening to music while working as well. I know my headphones won't reach the TV's headphone jack.
I'm havng trouble finding a solid way to get a headphone jack working on the Pi400 right now, but I worked 14 hours straight yesterday, so I'll give myself an excuse this time. I could probably buy some sort of HAT for audio output, but I want something I can integrate into the board as a standard feature or add on. I'll do more research on this later and maybe order a few audio boards for testing. I want to keep it all simple and open enough that people could tinker with the audio themselves as well. This reminds me of adding an audio card to a vintage PC. Some didn't have any audio output, or maybe just a beeper. I think it would be quite fun to integrate an audio card into one of these carts.
The best I've found so far is Pimoroni's Pirate Audio Headphone Amp. It's rather expensive at $25, but would give me a good place to start.
Another good option, though lacking an amplifier for headphone use is the UDA1334A I2S Stereo DAC breakout board from Adafruit.
Of the two options I've found, I prefer the simple and cheap Adafruit breakout board. I can learn with that, then integrate the design into a board and add an amplifier chip if needed for headphone use.
Good audio is important to me, and I prefer to hear the world through my in ear monitors these days. Mee M6 Pro for anyone interested. My Pidock 400 takes HDMI audio from the Pi 400 and breaks it out to a headphone jack, so I've been quite spoiled by the set up so far. Not everyone is going to have one of them, and I want to see a headphone jack on the Pi 400. I'll put that task on the low priority list and focus on such luxury features after the base memory cart is working. I was curios as to what it would take to get a headphone jack on the PiCarts, and now I have a good idea. I don't have the skills to implement it yet, but I'll get there in time.
-
Prototype Hardware Ordered
11/05/2021 at 00:14 • 0 commentsI ordered the GPIO extension cable, prototyping hat with EEPROM, SD card breakout board, and SD flash chip breakout board from Adafruit recently. That's just enough to get me a single cart with an SD card socket connected over SDIO and a 512MB SD flash chip connected over SPI. The extension cable is needed so I can connect Pi HATs while my Pi 400 is in the Pidock. I wish I were more excited about all this, but I haven't had the time or energy. When the parts arrive, I'll solder everything together and start testing it out. Software will probably be the hardest part for me. It's my weak point so far. I think there are libraries out there for the Pi to use SD cards over both SPI and SDIO. If so, I'll install them and get started developing a very simple test program to read and write. From there it's just a matter of adding the features I want and creating an easy way of installing the software. I haven't touched Python in quite a while, so I'm sure it's going to take me a while to get it going. I've been playing with Arduino lately, so my C++ is decent enough. I was able to write an entire relay test program for the Raspberry Pi Pico, from memory,on the first try. That was a nice milestone. Let's hope Python comes back to me so easily.
More updates soon after the new hardware arrives.
-
New Pi Day: Pi 400 and Pidock 400
11/03/2021 at 19:22 • 0 commentsPlease pardon the low quality picture. My nice phone is no more, and I'm using my cheap phone. I'm also lazy, so there's that too.
I've just gotten this awesome Pi 400 laptop set up, and I love it so far. The keyboard is better than I thought it would be, ad the screen is surprisingly great. I wasn't expecting much from this, but I'm happy so far. I received it this morning, but only had time to unbox, assemble, and pack it away in it's travel case it came with. It shipped with Raspbian Buster on the SD card, so I need to upgrade to Raspberry Pi OS when I get home. The wifi at Panera is dreadfully slow. The Pi itself runs well enough for me and I'm typing this up on the Pi. There's o way I'd want to set up a Pi 4 at a coffee shop, so this is a game changer for me. When I hit the road to travel again, I'll be able to take my Pi projects with me quite handily.
I haven't started any of my project work yet, as I want the latest OS ad updates installed. I'll place an order for the new cartridge hardware here soon so I can get to work. Adafruit actually has a 512MB SD flash chip on a breakout board that I can work with. It uses the SPI interface, so is slow, but that's ok. They also have micro SD breakout boards so I can just use an SD card as a substitute for the actual flash chips I ruined trying to solder them. They even have FRAM chips in both SPI and i2C interface options that I can play with. I'll grab one of each of those two boards, a 512MB SD board, an SD card board, and some prototyping boards. That should give me plenty of memory options to work with and covers the three main interfaces I had been exploring for this project: SPI, 2C, ad SDIO. I'll order a GPO extension cable so I can still use Pi HATs with this crazy laptop thing. Another exciting addition to this device is a 3.5mm audio jack for headphones and such. I can listen to my music instead of everyone elses' while I work in public. Can't wait to get the new hardware in. I may order just a few of the pieces today and the rest next payday to be safe. Don't want to be dipping into savings. I had to pick up MORE gloves for work as I keep leaving them on the bed of the tow truck and driving away. It was $60 for 3 pairs of gloves today, which was money for this project.
I will be using this Pi 400 with many different SD cards and operating systems. I have a 256GB I'll use with Ubuntu Mate, which will be my main system with all my music and movies on it. Just personal stuff. The card that came with this will have Raspberry Pi OS and be kept stock for development on this project. I'll install Android(Lineage OS) on another for access to my Android games and such if I can get it to work. I'll have another card for retro games as well. I already have a very nice SD card case, just need to fill it up.
I could ramble on, but I need more time with this. All I know so far is that I really like it as a laptop, and I love the fact that it's a Raspberry Pi. I think this is exactly what I needed. Plenty more updates to come soon.
-
1GB Prototype Board Also Dead
11/02/2021 at 15:19 • 0 commentsI've officially given up on these damn SD memory chips for now. I don't have the skill, patience, or the steady hands to work with them. I couldn't get the adapter board unsoldered from the prototype HAT, and just broke the board and threw it away. I'm so sick of every little thing being such a massive struggle. I hate soldering and don't want to deal with it anymore. I can't justify or afford a desoldering gun right now and my crappy little pump is nearly useless. I'm out around $50 worth of hardware and multiple frustrating hours of work so far. I'm going to order new prototype HAT boards, SD cards, and SD card breakout boards so I don't have to deal with these tiny SD memory chips anymore. I wish there was a breakout board for them already. They're new enough that no one seems to have bothered. I can't physically manage those tiny chips anymore, so I'm giving up on prototyping with them until I can order a custom PCB with them on it. This makes me very sad and frustrated. It all comes down to the loss of my steady hands. I'm turning 29 soon, but I feel far older. Physically overworking my body since I was 14 is taking it's toll on me. Everything is catching up. I've traded most of my youth so far just to survive. I want to get into software and hardware development so I can do something more fulfilling and easier on my body. I'm driving a tow truck to fund my journey into better work, but it's not easy. It makes me so very sad to look back on my life and realize how much of it was wasted. I refuse to waste much more of it though. I will finish this project, even if it means working with SD cards instead of the cheaper and far more interesting SD memory chips during the prototyping phase.
I won't have any hardware to work with when my Pi 400 arrives tomorrow, but I still have plenty more work to do. I could just solder jumper wires to an SD card adapter and plug that into the GPIO pins directly for testing if I want. I've got all the parts for that laying around. I think my shaky worn out hands can manage that bit of soldering. I'll still order more hardware for prototyping though.
Just got a call and need to go tow a car. Annoying interruption, but at least I'm at a decent stopping point. Let the stupid begin...
-
8GB Prototype Board is Dead
11/02/2021 at 14:58 • 0 commentsWell, I tried to solder the 8GB memory chip to the adapter board and failed miserably. My hands shake so badly these days that I just couldn't do it. Two of the pads underneath got bridged and I couldn't fix it. I don't have the tools, skill, knowledge, or steady hands to unsolder the chip and try again. My shaking hands are making me really upset. I've always worked with my hands and they've never let me down until today. I ended up so frustrated and upset that I snapped the board in half and threw it away. I'm not proud of this and I normally wouldn't share such things. I think it's important to share failures though. This one is particularly painful for me as I realize I'm getting older and the damage I've done to my body over the years may be catching up to me. I can hardly solder DIP packages anymore. These SOIC chips are just too much for me. I think I'll just get an SD adapter board and use that for software development until I can get a custom PCB designed and pay someone to assemble the damn things for me. It's the same thing, just a different and more expensive form factor. I want an SD cart anyway to add a second SD card to the Pi over GPIO. Most of my work lately has been big stuff requiring tons of strength, so I didn't notice how shaky my hands have gotten. Maybe my hands are just weak. Thankfully I have one chip soldered and a back up plan.
This project is very exciting and frustrating at the same time. I still have to desolder the entire adapter board and rotate it as I screwed that up a while ago. I'm starting to realize that I'm not interested in the hardware assembly anymore. I'd rather design the hardware then write code for the finished device. Once my Pi 40p laptop thing arrives, I'll start learning PCB development and just outsource it all to a fab house and be done with it. I don't really have the time these days to do prototyping myself anyway. Once the snow hits, I'll probably be working 80+ hours a week as a tow truck driver. I'll have plenty of money but no time or energy. I'll happily outsource as much of this as I can to get it done. Maybe I'll outsource the board design for the prototypes as well, just to get development hardware in hand immediately. I have plans to build up a touring motorcycle and live out of that in the Western US, which would free up plenty of time in the future. That might be a year or so away, so I'll just have to outsource what I can now. I'm excited to have endless days to tinker with this.
This was a good, but stressful event. I'm out probably $20 worth of hardware, but that's a cheap way to finally be honest with myself and realize I don't want to do this part anymore.
-
First Prototype Board Assembly Started
11/02/2021 at 14:20 • 0 commentsI FINALLY got around to soldering one of the memory chips to the adapter board. I'm not good at soldering, my soldering iron sucks, the tip is messed up, and my hands shake very badly, but I got one of the two done. This was actually a very sad endeavor for me. I've never had my hands shake like this when working before. My dad has Cerebral Palsy and he can't even manage a fork most days. He's known for his hands shaking so bad that it scares children. I don't think I've got it, but you just never know. It worries me. I suspect it's either the coffee I had, nerves for the project, or maybe something to do with my body. I've been driving a tow truck a lot lately and it messes up my body quite badly. It's hard to say, but it shows me that I'm not going to be assembling these boards by hand for any sort of production run. More motivation for me to get a custom PCB designed and manufactured. I'm quite excited for that part. It will be nice when I can just place an order and have a stack of carts arrive instead of hand soldering and wiring prototypes.
I've got the SD memory chip soldered to the adapter board, which was already soldered to the prototype HAT board. I haven't wired it up yet. That requires me to map out the wiring. These HAT boards aren't designed for the Pi 400, so I have to verify the pinout. I should just do that now, but I'm quite tired and soldering that expensive, tiny chip was surprisingly stressful. I've never soldered TSOP chips before, so that has much to do with it.
My Pi 400 and Pidock 400 should arrive tomorrow, so I'll get started on the wiring sometime after it arrives. Right now I've got the 1GB chip soldered, and I think I'll try the 8GB chip next. I started with the 1GB as it was cheaper. If these work well, I'll place another order for more of the memory chips and prototype boards so I have a bunch to work with. I've got so many ideas for this project that it's overwhelming at times. The best place to start is with just getting one of these to work. After that I'll figure out how to install a Linux program to the memory chip and get that running over the GPIO port without installing any local files. Even if I have to use a portable version of a file, it will be nice to get in an easy win right away. I need those when working on projects of this scope and scale. I'm no expert in any of this, just figuring it out as I go.
While taking my hour long walk to pick up my tow truck today, I had an idea relating to this project. I'd like to work my way up to building a VR headset for the Pi and developing some games. I may be able to make it a simple USB device, but could have it connect to a special cart if needed as well. Just a fun thought that wouldn't have occured to me had I not decided to walk today. Driving a tow truck destroys my body and clouds my mind, so the walk helps me reset things. These projects of mine help keep me sane and busy. Otherwise I find myself rather depressed and overwhelmed. I'd love to bring VR to those who can't afford a fancy setup. Even without fancy graphics it would be fun. Minecraft on a VR headset with motion sensing headset and controllers comes to mind. I used to play VR games with a friend at his house. I spent 7 hours playing Vanishing Realms one day. I was so immersed and content that I forgot I was playing a game. It was weird and fun. I'll have to make a whole new project page for this idea if I get around to it. That just requires me to know what the Pi hardware is capable of, what technology is available, and to acquire more programming skills. All of that will come with time as I work on this project.
I think I'll make a new project page for every cart and accessory I make for the Pi once I get the fundamentals finished on this one. I could just keep adding to this page, but it's not simple updates. Some game carts will have special hardware, such as atmospheric pressure sensors that will change the weather in the game based on real conditions. That's worth documenting on its own page.
Anyway, I've got one cart prototype nearly complete and I give it a 50% chance of working based on my terrible soldering job. I'll have my Pi laptop tomorrow and will start researching the wiring needed to connect the adapter board to the GPIO pins and get the software installed for basic SD functions. If it works, I'll start software development and PCB development. I suspect these memory chips are obscure enough that the global chip shortage may not effect them too much. I'll also develop an SD cart to be safe. SD cards are very easy to get and it would be nice to add a second SD card to the Pi without hogging a USB port. Much progress has been made, and I feel better about this project than ever. I haven't actually been happy and excited about something in a very long time. It's a sign that I'm doing what I'm supposed to with my life.
As I was proofreading this post, I looked at the prototype board and realized that I soldered the TSOP to DIP adapter on facing the wrong way. The pins across from one another are connected together. I can either desolder it and turn it, or cut the traces. I have my iron hot and my knife handy so both are simple options. I'll desolder it and do it right though. Such a dumb mistake I suspect was made out of excitement. I didn't familiarize myself with the board before I stuck the adapter on it. I'm still working on managing my emotions, though excitement is quite a nice one to have. Just gets in the way of serious business here and there. Oh well. Easy enough fix. I'm not retaking the pictures, so the ones above will not be accurate. I've got no idea when I'll have to go out and tow, so I just want to get this published and the boards fixed as quickly as I can.
More updates coming very soon.
-
Pi 400 Ordered
10/29/2021 at 14:51 • 0 commentsI've been wanting a Pi 400 since it released, but haven't been able to bring myself to pick one up. I even had one in my hand at Microcenter in Cleveland Ohio a few months back. I always felt too guilty to get myself anything in my life, and that was true of the Pi. I finally decided that I just need to do it already. I had a good paycheck, all my bills are covered until next pay, I really want to start working on this project, and I know if I don't do it now, I may never do it. It's gotten far easier to justify though, since Vilros released the Pidock 40p that turns the Pi 400 into a laptop. It lacks a battery or speakers, but has everything else I need. Seeing as I'm looking to travel the country, I need a compact and convenient way to carry a Pi 400 with me. I could have used the 7" touchscreen and a Pi 4, but that's not the intended platform for this cartridge format. I need actual hardware. Carrying around a Pi 400 and a portable monitor sounds like as huge hassle to me, which is a major reason I've been hesitant to get anything.
The Pidock 400 requires 12 volts, which isn't as common as 5 volts from USB, but it means I have plenty of power options. Renogy makes a massive power bank that outputs 5 volts through USB as well as 12 volts. It's 72,000mah capacity is collosal and could run the Pi 400 for maybe 24 hours if my crude math is correct. Add the screen of the Pidock and it will probably be something closer to 12 hours. Still, 12+ hours on a charge would be fantastic. I could easily spend an entire day working out in the desert or mountains somewhere, and. It worry about power. It can also take in 100 wats from a solar panel, so I'll be buying a panel for it as well. I haven't ordered the battery bank as it's about $180, and I don't need it right now. I really like that the system takes 12 volts. I can easily pull that from a solar panel, motorcycle battery, battery bank, vehicles, and anywhere else that harbors 12 volts DC. The battery bank can charge from 12 volts DC as well, which means I could just plug it into the motorcycle and let it charge while I ride. Very exciting stuff.
I should have the Pi and Pidock in less than a week. I'll get it set up and updated, as well as get some more updates posted. Next up is a soldering iron so I can finish assembling my prototype carts. I'd love to test the carts in the next few weeks so I can get started on development. I've kept extensive notes on ideas, problems, and solutions since I began this project, so it's a matter of getting them out and reading back through.
The current plan so far goes as follows:
Get Pi and Pidock working with stock Raspberry Pi OS image.
Solder memory chips onto the PiHAT prototyping boards.
Test memory chips on Pi 400.
Flash EEPROM on PiHAT boards to tell the Pi what pins to use and how to set them up.
Set up Pi to load cart EEPROM without rebooting, if possible.
Develop test program to be stored on and loaded from cart.
Develop cart management software to be run on the Pi and handle loading, saving, backing up, and other file operations of carts.
Develop PCB for custom carts and order a test batch.
Develop case for carts using PCBs, order test batch.
Develop advanced cart with extra hardware such as microcontroller and environmental sensors.
Continue developing software and cartridges.
This is a massive project for me, but ordering the development hardware is the biggest step I've taken so far. It was $360+ for the Pi 400(full kit), the Pidock 400, and shipping. I don't spend that kind of money lightly, but I want to get back to this and finish this project. Spending that kind of money will force me to take it seriously, and give me a default activity aside from sleeping and watching tv. I don't have much to be excited for when I get home every day, so I finally gave myself something. I plan to use this Pi laptop as an every day computer as well. I already use a laptop from 2013 running Linux, so it's really not much of a jump to the Pi 400. I've used a Pi 4 as an every day computer and it was fine. YouTube playback wasn't great, but I know ways around that. Like using my phone. I want to simulate real world use of the Pi 400 as I develop for it so I can find any sort of weird problems. It would be easy to develop on a clean system image, but that's not realistic, and not how I want to do things. I plan to develop for the Pi 400 just as it comes out of the box, aside from updating the default software. I'm incredibly excited and can't wait to post the big update when the hardware arrives. Off to choose a soldering iron now. One of the last missing pieces.