Portable Typewriter
11/21/2024
Admittedly, its been some time since I've tinkered with this particular project. But I do have an exciting development. I've teamed up with a very talented electrical engineer and we are in the process of starting up a LLC. Among some other unrelated projects, we hope to restart development on this little type writer full time. Albeit, with a few notable changes. Most notably moving to a transflective LCD panel and shrinking the overall size even more (~20-30%). I'll share more once we get deeper in development, but there are several features I'm excited about. Our end goal is a simple affordable completed unit or DiY kit. The focus being affordability and functionality.
And don't worry, we still plan on releasing things publicly for those who will wish to build it completely from scratch at home.
We are in the process of securing private funding for the venture. And I may be jumping the gun with this little announcement, as there are few more pieces that need to fall into place. But I'm excited to dig back in and get this across the finish line. Again, very early stages of development, but I hope once we hit the ground things will progress more quickly. We got finish up some administrative stuff first.
I'll share some very rough concept ideas. Bare in mind these are very rough concepts, and more than likely the final product will look very much different. However, I hope this will give you an idea of the direction we are heading in.
10/24/2024
This year has been quite busy for me, so this project has been partially shelved. However I have released the CAD files publicly in case someone feels the inclination to continue the project or start their own. The project can be found on Printables
I have received a lot of interest in this project. And I'd like to continue with it when I finally find some breathing room. Turns out that a consumer ready clam-shell writer utilizing Eink display is a rather ambitious project. And between my actual job and other pressing personal projects I'm just not able to dedicate as much time as I want to bring it fruition in an adequate time frame. There are some great alternatives making their way to the market including the ZeroWriter and the MicroJournal. I have personally backed the ZeroWriter project, and I'm excited to dig into their hardware and open source software once they are released in a few months.
I've been considering making a fork of this project, utilizing less 'exotic' components such as RLCD screens, adurino, and etc. Something more established and easier for those who are more novice software developers (like myself). This would also significantly reduce the development time overall and hopefully, the final cost. The 'Eink' version will be worked on separately as a different version. This 'non-Eink' version is still in the concept phase. An electrical engineer friend has joined the 'team' and we are casually working on a hardware proof-of-concept.
9/9/2024
Did some more refinement on the prototype housing. The Contra keyboard PCB arrived, so I wanted to hone in on the fitment of that. Was able to shave a whole 3mm from the thickness! Also made some additional refinements to the hinge ears to help print accuracy and alignment (some more tweaking needed I think).
Did a lot of tweaking with the front bumper seal channel (and more may be needed). I may have to use a bit of glue to keep it falling out, but I'll keep testing designs to see if I can come up with a passive design that holds it in tighter. Aside from that, the closing 'thunk' feels so much more substantial; it feels nice.
While I'll keep refining the enclosure moving forward, I'm now starting to focus on the electronics portion of this project. There are several challenges involved in this, but I'm breaking out the bread boards to start testing stuff. I got a bunch of testing PCBs I'll be experimenting with. Once I have a working system, I may even get a custom PCB designed that incorporates all the need functions in one board.
9/5/2024
Major Updates:
Moved to a "Contra" keyboard PCB. This will make things easier in future if I decide to make significant changes to the PCB, as this is fully open source. This design is also a 'bare bones' keyboard, so no LED's or crazy features. This means cheap to build and lower power consumption. I will need to do some soldering, but that shouldn't take that long. I'm also moving to OUTEMU medium-low profile switches, which shaves a tiny bit off the total thickness. In future I may consider modifying design to move to ultra low profile switches, hot-swap plugs, and etc.
I also redesigned the contact point between the lower and upper. The 3D printed 'lip' I had before felt cheap, and the grinding plastic when closing didn't feel great. The new design uses a small Buna-N gasket cord that runs along perimeter of upper; albeit simpler, this is similar to many laptop designs. I'm dialing in the dimensions of the channel and corner radii to ensure it can be installed without adhesive but not easily removed. This should cushion the closing of the lid and provide a much better seal against debris.
The lower tray has been completely redesigned. Refined the hinge ears and outside profile to be more streamlined. I also added a mounting tray for a 18650 lipo battery. Once I finalize component selection, I will work to add the proper mounts, wiring channels, and etc for the internal electronics components.
Other Updates:
Tightened tolerances of torque hinge slots to eliminate minute screen wobble
Tightened tolerances of all 2mm heat insert holes
Simplified rear texture on upper portions
Updated magnet hole diameters.
Refined lower tray hinge ears.
Next Up
There are couple major pieces of the puzzle I'm waiting on in order to really progress forward.
First is keyboard PCB from Keebd. I have already gathered the various other electronic components I want to test with. In order to really finalize the lower tray, I need to finalize what's going into it. Once I finalize the electronic components needed, I may also design and produce a single unified PCB with everything on it (power step up, USB -> serial, and etc).
Second is the more tedious part, the software/coding portion; getting everything actually functional. My experience here is far more limited, so it will take me some time to find a good solution. Right now, I'm hoping to incorporate the open source code from the ZeroWriter project. This will likely become available sometime in the coming months. I'm excited to work with them on this, I think a good open source solution in this niche area is sorely needed and I'd love to help push the adoption along.
So while I wait on those things, I will continue to make small refinements the enclosure. I will also be breaking out the bread board to start testing and experiment with hardware configurations. I expect progress to slow down, or at least not be as drastic.
Now that (hopefully) the major changes to the enclosure are complete, I'm working on fully complete renders.
8/29/2024
Things are finally starting to look like a finished product! Still a lot of to do, but its nice to see things come together.
I have mainly been working on finalizing the hinge design. Instead of having the cable pass-through being 100% printed, I opted instead to use a 4mm x 25mm aluminum tube. This makes the print far easier, and strengthens it the assembly up quite a bit. It's very easy to assemble and the rotation is buttery smooth. I need to tweak some dimensions here and there, but I'd say the design is pretty close to completion.
I finally added in the keyboard as well! The mounting system for the keyboard definitely needs a rework. Things don't fit in as nicely as I would like, but its the first draft. I also need to pickup a couple keycaps of the proper size, I had to substitute a couple.
There are several tweaks of the lower tray needed as well. Now that the upper is essentially completed, I can shift my focus towards towards refinement of the lower. I'd really like to attempt to make it a bit thinner and refine/smooth out everything out.
Once I have a nearly complete upper and lower, I'll move towards the real testing. I'll be getting everything wired up and move towards getting this actually functional.
8/25/2024
The first of the torque hinges arrived along with, surprisingly, the keyboard PCB!
The torque hinge works beautifully, and 0.1Nm is the perfect torque for this application. My first design technically worked, but it was challenging to assemble, align, and I found only one torque hinge was really necessary. So I went back and updated the design, moving the pass-through hinge to over and replacing one of the torque hinges. I also expanded the pass-through hinge to superficially fill the center gap between the two hinges.
I also found, that if the tolerances are tight enough, I can eliminate the heat insert in the hinge ear on the upper assemble. Once the upper hinge ears are slid perpendicularly into the lower hinge ears, it can held in place with a single heat insert and screw on the lower hinge ear. This also eliminates overhangs in a smaller and more complex area where cheaper budget printers might have issues.
I'm printing the V2 of the entire housing assembly, I suspect there will be a few more iterations before things start to finalize. I will post some pictures once that's finished up. But I throw up a rendering for now.
The keyboard PCB is decent enough for the prototype/proof of concept. However I wasn't impressed with the quality, and I found out that low profile key switches, unlike their full sized cousins, don't have an industry standard. So every manufacturer's 'low profile' switches have their own little foot print. Also, low profile MX switches does not mean its the same footprint as full size MX switches. So the Kahil switches I bought did not fit. I had some MX brown switches and those worked, so I bought some more. Luckily I can still use low profile caps.
I want to get this as thin as possible so it's important to get a PCB that uses low profile switches. The creator behind the ZeroWriter, mentioned before about power consumption of the keyboard. They developed a custom diodeless design for this; they're runtime numbers are impressive. While I don't plan on matching the runtime of the ZeroWriter, I do want at least ~20hr run time if possible. A lot of that will also come down to programming and any auxiliary boards (power distribution, HID microcontroller and etc). But when it comes to the keyboard, I expect ~.01w from a basic mechanical PCB (no backlight). TLDR: I have testing to do.
I'm not sure how I feel about it yet, but I may do some exploratory research into a membrane system. If I can find a relatively affordable option that is easily repairable/replaceable and actually feels good to type on, I may try it. I could make the device even smaller.
I've briefly discussed HID integration with the ZeroWriter creator, and it turns out HID (human interface device) support is exactly easy with the Inkplate. So the easiest solution is have an intermediary micro-controller to manage keyboard input. From what I see, there isn't a dedicated 5v output pin on the Inkplate, but there looks to be some 3v outputs, I will confirm with a multimeter, but if this is the case, I will also need a step up pcb (if the microcontroller can't do it). All that to say, I plan on getting a custom PCB made up that handles power, has the microcontoller, and etc once I test the design.
8/23/2024
The first of the cylinder torque hinges arrive tomorrow. Printed a prototype of the latest revision, along with some printed examples of the hinge itself and the purposed cable pass through to do a preliminary fitment test. Unsurprisingly I had couple pieces snap, but things seem like they will fit.
At 0.28 print layer height, there are some edges that could be optimized more for higher quality print, but overall everything seems pretty solid. Will continue to tweak the design to make as easy to print as possible. I also added the magnetic locations for reference, in the final version they will be embedded during the print. I'm also sliding the outer magnets over closer to the edge.
The biggest change is the front plate, which has been expanded. Of course it's always subject to change, but I found this design to be the easiest to implement while still having access to the side IO and have the entire keyboard covered when closed. Reminds me a of tiny thin panel desktop monitor. I tried an offset screen, but I personally found it uncomfortable to look at. Added some raised texture on back mainly to add some visual interest but it may have some functionally as grip point (ie help when removing device from bags/sleeves/etc). I may try a few different patterns in future.
8/21/2024
I believe I may have a finalized hinge design; just waiting on components to confirm. I've tried several hinge designs both commercially available ones and ones I've designed to be printed. I found a manufacturer of a variety of neat little embedded tension hinges, they're in the mail. If they work how I'm hoping, they are perfect for this application. Finishing up adding on the cable pass-through next.
I ordered several with a variety of tension amounts, from 0.1-0.3Nm. In some previous testing, I found a 0.5Nm to be a little too much tension, so hopefully I can dial in the perfect amount.
I also picked up a set of replacement hinges for the MacBook Pro (13" A1278). Probably won't use them unless they drastically outperform the other ones, but I thought I'd give them a go.
Mac Hinge
I'm mainly waiting on the keyboard to continue to the bottom tray design.... But I've tinkering with the upper enclosure making small refinements in my free time. I'm starting prototype prints with the new hinge design, more than likely will have to make some tweaks to accommodate for some lower tolerance overhangs.
Added hinge ears for one of the new tension hinges.
Button improvements (hopefully less wiggle). May revisit this or try installing foam pad or membrane of some type on the back of button
IO cutouts tweaked, rounded out, and internally raised to remove internal gap (will cont. to adjust to reduce debris ingress via ports)
Re-shaped exhaust vent cutouts to hopefully improved print quality
Added embedded 5x3 magnets for closure latch
heat vent old
New
8/19/2024
Enclosure
Spent a couple days refining the Inkplate 5 enclosure and working on concepts for hinges/wire pass through. Since I don't yet have my keyboard assembly (in the mail!) I'm resisting the urge to design too much of the lower keyboard tray portion until I can really take measurements. As you may notice, the enclosure is only the size of the screen, and won't fully cover keyboard when closed; this is temporary, as I'm undecided what solution I want to go with. I've considered a few options like offsetting screen to one side and having a thin swap-able back plate. Whatever I decide, it'll be easy to modify in, so I'm not focusing heavily on it yet.
The only outstanding modification (other than minor refinement tweaks) left really on the enclosure portion is hinge/pass-through integration. The next few revisions will be focusing on that.
Hinges
It's been a balancing act between designing something super refined and slick, and something more user friendly to build for the average DIY. With that in mind, I'm testing a couple of off-the-shelf friction hinges (0.6 in.-lbs. torque).
I'm waiting for keyboard to really integrate the 'wire pass-through hinge'. But I have designed a stand-alone prototype to test the concept. I have yet to finalize what size/type of wiring I will be using for the screen power/data input, so there may be tweaks later on. However, the functionality test using a simple 18awg wire work very well. The hinge rotated smoothly with minimal stress on the cable itself. Using a more pliable jacket (ie silicone) will make things even smoother. Since (as of right now) that hinge will not actually be supporting the screen, I believe it should be pretty reliable.
Current Focus:
While I wait for components, I plan on shifting focus to getting the Inkplate wired up and testing functionality. This should put me into a good position once the actual keyboard arrives. It should also clarify the best method of hooking up power and data lines, and size requirements of the pass-through hinge diameter.
I'll also be continuing refining the Inkplate enclosure further. I'm not totally set on the hinge design, so I'm gonna to tinker with a couple of ideas.
8/15/2024
I'm still waiting for my Inkplate and keyboard PCB to arrive. So I've been spending my time drawing up CAD designs and printing prototypes. The open source platform of Inkplate has saved me a lot of time here, allowing me to take their 3d printed case design and modify it to fit my needs.
Current Focus
Finalize upper enclosure for InkPlate module including finalizing wiring runs.
Continue experimenting and testing hinge solutions
Once keyboard components arrive, finalize lower enclosure design.
Roughly assemble a battery and charging circuit (InkPlate may have necessary circuit built in, will need to research) for testing purposes
Enclosure:
I also decided (at least for the working prototype) to offset the screen. This primarily done to allow for easy access to Inkplate's buttons and controls without having to add button extensions and etc. We'll see how (if at all) this effects use-ability. I've been thinking of fun ways to utilize the blank space beside it (little digital clock module? paper note pad?), but I will focus on that later. There is a potential I re-work Inkplate's PCB design a bit to move IO some where else allowing the screen to be centered, but we shall see.
I also hope later revisions will incorporate a screen light as well, but I want to focus on the critical functionality first. I've developed a similar lighting system before for a commercial kiosk system, and although this will need to be significantly smaller in size and intensity the concept is relatively simple and should be easy to incorporate.
Hinge:
I've been mainly playing around a lot with hinge design. Wavering back and forth whether to design a simple pin/knuckle design or attempt to find an off-the-shelf piece of hardware. Like most folding electronics, the hinge needs to be some sort embedded constant torque hinge. While these are commonly used, finding a non-specialized component that is actually easily obtainable for the average consumer was more difficult than I thought. I found a couple potential candidates though, and I ordered some to test with. Whichever option I decided to go with I want to ensure that it's relatively accessible for the average DIY'er. I'd also preferred the final design to be relatively simple, robust and fairly easy to repair/replace. I do realize this may come at the expense of size and aesthetics.
For now, I'll continue working on various ideas and concepts in tandem with the enclosure design. I just don't want to get stuck and stall the project focusing on this particular portion. The hinge can easily be added to the design later anyways.
Keyboard:
With Portability being key, I'm going with a 40% mechanical keyboard + low profile switches/caps. This particular size is uncommon, and typically are custom built ($$$). I may design and manufacture my own PCB in future, but for now I purchased a cheap pre-soldered PCB kit from Aliexpress. I couldn't procure any technical drawings from the manufacturer (surprise surprise) so I have to wait for it to arrive before I can really complete the bottom portion of the enclosure. But I used some other drawings from similar products to get at least a semi accurate concept going. At least it gives an overall idea of the complete size of the unit.
Battery/Charging:
I'm researching battery options now. I have plenty of space to incorporate a fairly large pack, and off-the-shelf charging regulator pcbs are readily available. The Inkplate may already have this circuit built in, I need to dig through the documentation and determine. This portion is definitely going to shift a lot before I settle on a final solution, so I may just get a simple cheap 2000mAh lipo for now, more than likely I have a small lipo from other projects I can use temporarily.