When I worked in the new main panel, I did rewire the INA219 so that the charge port is on the “output” side of it. Initially I thought feeding power in from the output side would damage it. It can actually read the reverse current though. Granted It can only take so much current, but the charger won’t charge the battery at that high of a current, well it “should” never. The fuse is inline still, so hopefully it would blow before the INA219 was damaged if something goes wrong.
I ordered a Raspberry PI Keyboard when I placed an order at Digikey as they were in stock and not a horrible price. I knew they were “close” to the same case as the Pi400. Also the Pi500 “looks” to be the same shape of case. I was going to by a Pi500, but decided against it at this time. Below you can see the Pi Keyboard fits in the plate. You can see it is not a perfect fit, but it this is the second Revision print. I knew it wouldn’t fit perfectly into it, as the Pi400 didn’t either. With the third revision of the plate the Pi400 fits much better, and therefore the Pi Keyboard will too, it does show the dimensions are the same, the port placement is good too. Based on that, I do expect the Pi500 will fit as well. The Pi500 would be a better fit than say a Pi5 due to heat, but the Pi500 doesn’t have the PCI Express support right? It would be best powered with some other power solution though, as I believe at 5V it is throttled. I guess a Pi3 (or earlier) or a Zero 2 or such could be used in conjunction with the Pi Keyboard. You could also use another 5V Powered SBC..
Speaking of the Third revision of the main panel, below are some pictures of the third print of the panel. You can see I installed the Magnets, and those yellow rectangles are the back side of some 2 sided adhesive on metal plates. The plates then had the backing paper taken off and were attached to the Pi400. It does fit the Pi400 better now.
You can see the bottom of the panel, that is the Revision 2 print before I removed the battery, speakers and touch pad while I was switching over to the new print. The last picture above is the internal below the plate. From the bottom the Revision 2 and Revision 3 print are the same. I did not install the threaded inserts around the speakers, and the two below the keyboard opposite of the battery compartment as none of those are used. It is a bit sloppy and messy. The 5V Regulator on the left is stuck down with velcro, the RTC as well, and the current and voltage sensor. The 2.5″ SSD is just loose as well as the fuse holder. The cables plug into the Pi400 ports, except the Battery power connectors.
That photo was before rewiring the battery connections and INA219. Doing that, connects the Charge port to the Main Power switch instead of only to the battery. That does mean there is no fuse between the 5V Regulator and Monitor. It though does mean that the charger port power goes into the INA219’s “output” side, and that it can now read the Negative Current, or the fact that it is charging. It also means that the Charging into the battery now is fused as the fuse is between the INA219 and the Battery. So the fuse is protecting the charging and discharging of the battery. Where previously it was only protecting the discharging of the battery.
Something I had found building this project up is that while the new switches look just like 30+ year old switches, the plastic they are made with is not very heat resistant. It melts easily. The terminals on these switches are big and thick just like the old switches, and they take some heat, and reworking the wiring is very likely to melt and destroy the switch. I had to replace a couple of them when I tried to redo the wiring on them as they melted apart. The old switches where hard and brittle almost like Bakelite? I almost used some vintage switches, but I didn’t have enough of them as I found some I had were cracked and not usable. They also had a different thread type, meaning I couldn’t use the Black Rubbery caps.
Below are some photos of the Revision 3 panel. If you look at the other photos of the Revision 2 print of the main panel, the Pi400 generally has some of the “raspberry” color showing on the left side, because it is not properly seated in the 3d print. Below you can see that only the upper White portion of the Pi400 is above the 3d printed panel. It is also much more difficult to remove as I can’t get a grip on it, because the seam between the upper and lower panel can’t be reached. It is down in deeper and does have the small metal plates and magnets under it.
I found the RTC module has a Red LED on it, that made me wonder why such a thing would be on it. I might look at removing it. You can see the LCD backlight is lighting up the inside of the upper panel, because there is no light blocking in there. I thought of putting in a black coating or cloth on the inside of the top, as the top is largely exposed metal. That may lower brightness of the screen if enough of it is actually reflecting back toward the lcd. I am not sure what difference if any would be noticeable.
I have worked with the Meshtastic LoRa radio setup some. I am still not happy with how it is operating. I did find a few things, one is an installer script utility/gui to install Meshtastic D on the Pi. That helps verify that it is all installed properly. I also tried out MeshSense on it, which is Beta on Pi. This is the only LoRa device I can currently use MeshSense on. I ran it for a long time the other week, and it seemed to work fine. I ran it yesterday and it kept cutting out after less than an hour I stopped getting any thing come in on it, and my other Meshtastic node showed it had went offline.
Initially when I saw the pi400 come out several years ago, I was really looking forward to it. That was until I purchased one and started using it. It was lacking in several areas. It is nice in that it is compact. With it being so compact and light, and having to having a number of small cables connected, I found it messy and was concerned with it sliding around with use that may cause either the power or hdmi etc to come loose while using it. I ended up building my AMpi4 to tick all the boxes on changes I wanted for it. This left me with some pi400s in my stash with nothing to use them for.
I’ve liked the CyberDeck ideas. I like aluminum hardcase briefcases. My goal is to make this a fully portable self contained Pi400. I looked around for the largest reasonable display to use. I then looked around and found a touch pad to include. I then looked around at possible cases to use that I should be able to fit the equipment into. I also looked at options for a battery to power everything. The LCD runs at 12V, and is 13.3″ with a 1366×768 resolution, the resolution will be a problem later though. The battery is a 12V 5200mAh pack rated to be at 9V when drained, and 12.6V fully charged. The case is a 15″/10″/4″ case, this turned out with my choice of setup to be just about the minimum size case due to depth. My primary focus initially was to work out if and how I could fit everything into the case. I wanted the pi400 keyboard about flush with the lower thicker portion of the case, and then the LCD bezel had to sit just below flush in the top so they didn’t hit one another.
So the primary parts are above, the case, the battery, the touch pad, the 13.3″ LCD and the Pi400. There are many more components, but these were the first past to start to verify I could fit them in the case properly.
The case it a bit large, so I can’t print the panels in one piece. I did work out that I could do a 300mm wide that would hold the Pi400 portion fine, which is about the max of my S8 3d printer can handle. I found a 3d model of the Pi400 listed as intended to make cases etc, then modeled the touchpad. I did a test print, it worked for fitting, but neither the Pi400 or the touchpad fit properly.
First FitWallFeetProtopanel
The various other items I have been working on fitting in include some power switches, volt meters and leds. I also worked in a .96″ I2c LCD and RJ45 keystone jack into the lower panel. I recessed the control panel on the right so it would have clearance to the top. The switches are for the main power switch at the top, then 5Volt supply in the middle and the 12V supply on the lowest switch. Each switch has an LED to show it is on. The various status LEDs are wired up with 2.7k resistors. The volt meters are for the 5V and 12V supplies, there is a difference with mounting them. I had to use “smaller” threaded inserts and screws, they are salvaged M2.5 Inserts from broken Laptop cases. The 4mm Diameter M3 inserts were too large there to line up with the screw holes in the volt meter pcbs. There is a vented wall connecting the two panels together, and feet that contour to the case to keep the panel at the proper depth. The holes on either side of the touchpad will be speaker grills, as I am relocating the speakers from the back panel of the LCD case.
The LCD needed a nice way to mount as well as to be thinned down. I just didn’t have the clearance the keep the original case back for the case. The Speakers needed to be relocated, and the best place for that was down in the main case by the touchpad, to do that I made up an extension cable for the speaker wires. They really should be run with a shielded cable, unfortunately I didn’t have a 4 wire shielded cable to use, this does have a bit of a noise out of the speakers from interference. I may swap the wire out for a shielded cable once I come up with one. I also had the relocate the buttons, as they were on the back of the LCD case, and needed to be accessible. The Power/Status LEDs for the LCD are very small SMD parts, and were not practical to relocate, and the IR Receiver is on back of the button board as well. I was going to relocate the IR Receiver, but I have nice slot vents around the LCD and the IR Remote still works with it on the back of the Button PCB. Removing the back of the LCD case let me keep the Bezel and use the old mount points to connect it to the new upper panel. I did have to make some standoffs and find some longer screws to mount the bezel with due to the standoffs. The Button pcb is using the original screws. The LCD Controller pcb had been mounted to the back case, so I had to design up a mounting plate for it.
The other portions I added to the top panel were an RCA port for Composite Video input, and a 3.5mm Audio input jack. That did not work out, but some pictures here show that layout. I wired the 3.5mm into the audio in on the monitor, but that doesn’t connect when in Composite Video selected, I think it is for the VGA in. The audio doesn’t play if there is no Video signal either. I later changed the setup there. I also have added an Adafruit RFM95W LoRa Radio to setup Meshtastic on the pi400. For that I also added a power switch and status LED for the LoRa radio. The radio runs on 3.3-5V, with 3.3V IO, I am powering it from 5V. The Antenna mount is also in the panel, and fitted so it can stay attached when the case is closed, with it to the right of the toggle switches. The top panel also has a 4Port USB 3 hub, when installed it bottoms out back to the case top for support, and the usb cable just comes down through an opening into another opening in the lower panel, the primary issue is things are quite tight and I needed to use a 90 degree extension as there wasn’t enough clearance for the regular usb connector. The USB Hub is not actually secured very well. I did reuse some of the cloth tape from the LCD Monitor’s case that held the wires in place. I was going to use zip ties to grip around it, but there is no clearance, I was going to make a 3d printed band or strap and use threaded inserts in the front panel around it to grip it, but no clearance for that either. It could be taped in tighter, it could be glued in, even possibly using the holes I made for threaded inserts for points for the glue be it hot glue or epoxy or other glue if it turns out to be too loose. I left in a square hole to the right for the LoRa wiring, speakers, 12V Power for the LCD and potentially the HDMI connection for the monitor. I put that wiring all through a wire loom bit that I salvaged. I went with a HDMI Ribbon cable, so there is a small slot (larger than required) that lets the ribbon come down from the top panel into the lower panel.
Speaker ExtensionYes the Speakers are unplugged yet.LCD Standoffs
The second print of the panel for the pi400 and Touchpad fits mostly. The pi400 is still too tight, which is why it looks a bit “popped out” in the picture above. I reworked the speaker grills, which I like better than the square ones that I had before. In the photo the battery is external as I haven’t worked out the internal mounting for it. This second print of the panel was printed face down, where the first prototype was printed face up.
Fixing the Resolution: You may not see but in the photo above the image is going off the edges of the LCD, you have to use a custom resolution 1360×768 to prevent the image going off the edge of the display.
To use the custom display, you have to edit the “/boot/firmware/cmdline.txt” At the end of the line add ” video=HDMI-A-1:1360×768″ or ” video=HDMI-A-2:1360×768″ depending which HDMI Port you have attached the monitor to. Save the file and reboot, you should see the screens on startup have changed to the new resolution. When you get into the GUI, the resolution will change back to what it was set to previously. Go to the menu, and find “Screen Configuration” under the Preferences menu. You should now see 1360×768 as a selectable resolution and be able to change to it. Then the overscan works properly and image is no longer going off the edges of the screen.
To power the pi400 and LoRa radio, as well as anything else 5V, I am using a 12/24V to 5V step down regulator unit that I have had for awhile and it is kept in place with Velcro so I can easily enough remove it. I ended up not using it for another project. It seems to give just a bit over 5V, which is what the pi400 likes. I have run it for quite a few hours without any issues. I made up a USB C power only cable to connect it up. The 13.3″ LCD power goes to a 5.5mm barrel power jack to make it easy to remove. The LoRa radio is mounted with some double sided mounting tape, which I put some Kapton Tape on the bottom of the LoRa radio board before putting the mounting tape on it, as I wanted to make sure I could get it off without damaging the board if I ever need to.
The USB Touchpad needed the cable modified. It was a bit too high up on the side of the case, and extra long. I ended up removing the cable and installing a shorter usb cable. It is a heavier cable, being shielded, but it was just about the perfect length. It also had a short usb connector so it has clearance to plug into the Pi400 USB 2 port without right angle adapter.
I do wish the touch pad had a middle button, as it is handy. Still I can use a mouse instead either by Bluetooth or USB. I am using Bluetooth Mouse with the PiCase, but the Touchpad does work well. While I don’t like Touchpads very much, but I included it because it makes for a complete and usable device without additional bits of hardware.
Above you can see the bottom panel and a closer view of the control panel when they were nearly complete. I did swap the wiring for the Voltmeters, as I wanted the 12V at the top and the 5V at the bottom meter. I also rewired the “charging” jack wiring when I was doing some other changes later. The charging port was rewired so that the current sensor can now monitor when the charger is connected and charging the battery. You can see the Speakers are hot glued in, they were originally glued into the LCD Back case. I had made it with M3 inserts around the speakers, but I didn’t feel like making frames for them. The Speaker mount area is larger than the speakers as I have some very similar larger diameter speakers I wanted to allow for, still in the end the original ones work very well. You may notice 4 more M3 inserts along the bottom edge of the pi400 opening. I had added those expecting that the panel may flex, but for now it seems rigid and doesn’t need supports added below. I will use two of those four inserts to mount the battery holder. Due to the fit of the Pi400 in the main lower panel, I did print revised panel to replace it. On that third main lower panel, I only installed the 2 threaded inserts that the Battery Holder is attached with, the speakers are again attached as seen here with hot glue. You can also see the various “feet” around the panels. I am still debating gluing at least some of the feet into the case so the panels can’t slip out. All of the feet have M3 inserts in them and are screwed in through the panels, 1 has a screw into it through the wall that connects the two levels.
The panels fit well into the case, I still have some things I am working on with the panels, so I will not be gluing any feet into the case at this time. Right now it is just regular Raspbian OS 12 Bookworm. I have connected in the .96″ LCD and set it up for a status screen. I have also wired in and setup the LoRa radio for Meshtastic with limited success. I’m looking to add a Realtime Clock module, and also a Current module and battery status widget. I had some ideas on a GPS module and maybe an RFID module. I will make another post going over the LoRa Radio, the 3.5mm headphone jack, the .96″ LCD, the Battery mount, and battery status and RTC module and some other things to finalize. When I get finished up, I also plan to post the 3d model files for the case parts. I am still making various mostly small alterations. The last main thing should be working out the Battery mount.
I am not certain, but there is a good possibility that a Pi500 would fit this build, also possibly the official Raspberry Pi Keyboard that is largely the same case design and using an more traditional Pi of your choice or another small SBC. There is plenty of room under the Pi400 for a different choice of battery pack. The power draw of the setup varies around 0.900A to 1.25A. I fully expect that under heavier load it will go up, it is on the low end with a MicroSD card, and then with a USB3 attached SSD it is in the 1.25A range, the LoRa radio does put more load on as well when it is in use. Using a Pi5/500 may be best making a different battery and regulator choice. I would get a Pi500, or stick in my Pi5, except this build is to “use up” a spare Pi400. I really don’t like the Pi400/Pi500 as a stand alone design, so I don’t want to invest in a Pi500 at this time, or rework the power setup. I might see about getting a Pi Keyboard at some point if I am placing an order for other parts and test fit it though, but isn’t happening in the near future though. I really don’t expect to see anyone else build one of these units based on my build and models, although that would be cool to see.