A Minimum Viable Computer, or Linux for $15
bbenchoff.github.io
bbenchoff.github.io
> The ten thousandth one costs $15
As a software engineer, I'm used to being able to build essentially whatever I want, with the only cost being my time. I'm often unpleasantly reminded that software is an outlier in that regard and as soon as physical items are concerned, especially hardware, it turns out that manufacturing even a simple thing is prohibitively expensive if it's done at a small scale.
But yeah, going from prototype to production with hardware is much, much harder, I agree with you.
[1] the project changed scope and we had to do a large refactoring of the codebase as a result, if it had been based on microservices the refactoring would have been an order of magnitude simpler. Luckily the monolith was relatively well architected with separated service providers so it wasn't super bad.
You would just need to 3D print a case and somehow cast your own silicone keypad. DIY electronics is actually not too bad cost wise.
I hand-placed some 0.4mm QFNs before (LVDS to TMDS converter IC) (admittedly, only a ~90% success rate) so this has to be at least twice as easy.
Even PCBA companies usually just place and reflow the chip and may only use x-ray to validate the initial build- and then rely on process consistance + functional testing at the end of line.
Woodworking scratches many of the same itches as programming for me, with one key difference: it’s unforgiving of mistakes, so requires a lot more care.
At least if you have a grinder, welding can sometimes be more forgiving.
Their pricing and supply times factored in a pretty significant failure rate, and we were basically asking them for highly precise screws and nuts for a couple thousand each.
But to check THAT tolerance, you have these metal screws that they need to securely attach or be unable to attach to. And since the metal fittings will be used for batch testing entire production runs of life or death parts for years to come, they go a little overboard with specifications.
I'm not sure if it really needed to be THAT precise, but that's just what it was
I'm not sure if this command will work? Well I may as well just try it anyway. Something broke? I'll throw in a breakpoint and try out a bunch of dummy variables and alternative methods until the errors stop.
And while it's a common complaint that compile times force some extra care, with hardware that extra care needs to happen outside the medium itself, mucking around with CAD software and such, before sending designs off to workshops. It'd be like if the solution to avoiding compile errors was very carefully handwriting code on paper
> (Western Canada, slang) beset with unfortunate circumstances that seem difficult or impossible to overcome; screwed.
https://en.wiktionary.org/wiki/hooped
I’d love to know its origin. I picked it up from family.
But working with wood a crippling anxiety hangs over me.
So the software equivalent would be if you oursourced a large chunk of your project to someone else, and in that case, I think $10,000 might not be too far off.
The short answer is yes you can, but it's a PITA. Among other problems you have to deal with shrinkage and drooping. I'd only use that approach for a quick and dirty prototype that just needed to hold parts together and survive rough handling.
A better option is to build a case from parts you cut out of a sheet of plastic (anywhere from 1mm on up) that you then glue together. Once built, rounding the edges will make it a lot nicer to hold, but it will still basically be a box, and the glues you use are generally pretty toxic so don't breath in the fumes OR get it on your hands.
More involved would be making the case by vacuum forming a heated sheet. The forms (one each for the top and bottom instead of the two you need for injection molding) are typically hand sculpted or machined from wood, filler and primer rather than metal, and vacuum forming is something a hobbyist can accomplish at home with a DIY setup. You can get a case nearly indistinguishable from an injection molded part, at least from the outside. The more complex the shape the more labor intensive the fit and finish will be (for example, getting the edges of the case halves to match up).
However you make the case, there would be a lot of keyboard holes you'll need to carve out with something like a dremel rotary tool. It might be easier to make the case with a single large hole that you glue a thinner insert into that will be easier to cut holes in with a hobby or utility knife, but I've sliced my hands up a lot when doing this sort of work. A rotary tool seems scarier if you're not already familiar, but with as little as 30m of practice you'll probably have much better control than you would over a knife and lower risk of injury (as long as you use eye protection, etc. You really don't want the plastic shavings flying around getting into your eyes).
Not a bad way to go, but I found that for hand assembly, I had a really hard time with the glue out of control; I probably needed a better applicator than the default tube of epoxy.
Instead, I would go with VHB (Very High Bond) tape. Also weird to use, if you are using the thin 1mm width, but I can position the tape more carefully before I press it into place.
- machine a form out of wax or delrin (or clay), pour a silicone mold, and then pour liquid plastic into the mold, either a not-yet-polymerized resin such as a thin epoxy, or a molten thermoplastic;
- similarly, but use plaster instead of silicone and burn out the form in a kiln before pouring (not applicable for clay);
- 3-D print the case, and if you don't like the layer lines, smooth them out with either a coat of paint or by smoothing an ABS print with acetone vapor;
- 3-D print a form for molding.
Even for injection molding, you might start with an aluminum mold, which won't last as long as hardened steel but will cost a lot less.
But I don't know anything about this stuff so maybe it's not applicable to this case?
Unless there are products I'm not aware of, mostly thermo plastics require high pressure injection that isn't feasible for a hobbyist setup.
> a not-yet-polymerized resin
There are lots of products like this (a bewildering variety, really), but in general they aren't particularly convenient to use, and you'll have a lot of failures. Factors that can mess you up include temperature, humidity, air bubbles (so many air bubbles!), mixing ratios, over mixing, under mixing, contaminates on the mold surfaces or your mixing containers, pour holes too small, not enough exit holes, entry/exit holes in the wrong places, molds held together too loosely leading to leaks, too tightly leading to distortions, etc.
Except for the possible exception of relatively simple shapes and small items (like dice), just about everything you can imagine going wrong will, and you'll end up with a lot of waste before you get something you can use, and disposing of the failed attempts responsibly is another challenge.
There is a caveat though: if you're trying to make a soft part (whether in a hard or soft mold), the materials are generally a lot more forgiving of errors, but that's tangential to the challenge of making a case.
As far as thermoplastic molding goes, aside from the vacuum forming that someone else suggested, there seem to be a lot of experimental options. There is a YouTuber who has built a couple of DIY injection molding machines (http://www.youtube.com/user/AndysMachines), and Star Simpson did successfully mold recycled HDPE plasticized with vegetable oil in an open-top mold (https://www.instructables.com/HomemadePlastic/), but the results are not super smooth. My recollection from melting plastic cups in the oven as a kid (probably polypropylene) is that you end up with a puddle with a pretty flat and smooth surface except for whatever lettering or imagery was on the outside of the cups, so I feel like you might be able to get a smooth top out of an open-top mold, but I don't know which plastic that was, and melt degradation might be an issue. https://youtu.be/KA1UELu33FI shows some apparently successful open-top molding with powder made from recycled polypropylene (skip to the last minute of the video) but doesn't test it for strength. https://www.youtube.com/watch?v=2OYbyzgErvo recycled polypropylene into a two-piece water-cooled mold improvised out of aluminum baking tins, but seems to have suffered major melt degradation possibly due to overheating it in a can on an open fire. https://youtu.be/Ae8_OWju8RM recycled (probably heavily filled) HDPE into a billet in an aluminum can in a thermostat-controlled electric oven at 180 degrees and had a lot of porosity due to high melt viscosity, then turned the billet down on a lathe; the outside of the billet seems to have suffered enough melt degradation to make it machine much more cleanly than the center, which produces the kind of long stringy chips you'd expect from HDPE. https://youtu.be/blSvUqfuiuo makes an HDPE sort of gingerbread man in an open-top silicone oven mold, the kind you'd use to make gingerbread-man-shaped muffins, suffering melt degradation severe enough in parts to turn the HDPE brown, warping, and significant porosity due to high melt viscosity. https://youtu.be/-igxhoGEQFU shows really nice marbled results melting HDPE in a panini press with a silicone mold release, then pressing it into a billet in a particleboard mold with a bench vise, but still suffering some problems with porosity. By turning it on a wood lathe they are immune to problems of warping etc.
Polycaprolactone deserves a mention because above its glass transition you can mold the thermoplastic with your bare hands, but pouring it into a mold is out of the question because of its high viscosity, and as a result of that low Tg you tend to get a lot of creep, and parts become unusably weak in a warm room.
So I think you've convinced me that thermoplastic casting without injection molding equipment is not a practical option for making low-volume parts. Thank you for sharing your experience!
It is much easier to get good results with a bit of in-person guidance, and in a controlled environment. There are also optional materials (eg. mold release) and equipment (pressure pot, vacuum chamber, or vibration table, all of which help with both mold-making as well as casting) that make success easier which are harder to justify for a low volume or one-off project.
> Which I think implies a cost of first success well under US$10000?
Well, sure. But you aren't comparing like with like. If you outsource the production of a prototype to someone else using resin casting, it will also probably be cheaper than $10k for the first one (say, $1-5k, because resin casting more or less requires you to have built one with some other method before you can even make molds) but scaling up is going to be more expensive (dozens or hundreds of $ per unit), in part because silicone molds wear out quickly and have to be replaced after being used as little as 5-10 times.
Conversely, if you already have your own machine shop, you may be able to produce your own metal injection molds for much less than $10k and hand it to someone to do a small run.
The two methods trade off (access to) expensive equipment for expensive materials, and up front cost for per unit cost at scale, but if you really only want one neither is attractive.
Still, it is really hard to beat vacuum forming for approachability in making a one off: The only equipment you don't have laying around can be made with a few chunks of wood. If you have a small oven (even a toaster oven) that only limits the size of your parts. If you have a vacuum cleaner with crappy suction, that just means you can only form thin sheets.
BTW, all these techniques combine. In the case of resin casting, I mentioned that you really need to have made a one-off in order to create the silicone molds. In fact, I have in the past vacuum formed a blank shape (this was before 3D printing was a thing), sanded or machined it to more precise tolerances, added details (dedents, screw posts or holes, flanges, ribs, ridges, textures, etc.) and then used silicone molds and resin casting to make duplicates. Sometimes you actually do need several identical parts in order to just make one object...
In some cases I think there are materials that are a lot easier to shape to make a mold pattern than whatever you're going to make your final part out of. Wood is the traditional choice, except that wax is the even more traditional choice, and clay, styrofoam, foamed waterglass, and pumice also come to mind. I guess in theory polycaprolactone might work, too, and as you say, poly(lactic acid) is a popular modern choice, sometimes painted or sanded to smooth out the print lines. And I've been wondering if it's feasible to strengthen aluminum foil by spray-painting or cathodic mineral deposition in order to make such one-off items, because aluminum foil is very easy to form, usually too easy. Lots of stuff to try!
There are a couple of things you can try:
Squeeze the glue (of whatever sort) onto a disposable surface (a scrap of foil generally works for me) and use a wire or whisker of some sort to pick up and apply small amounts in a controlled fashion.
Tack the parts together with minimal dots of cyanoacrylate, and use gobs of the real adhesive to put it a fillet on the inside corner.
You can also use a jig of some sort to position the parts you're gluing.
Solvents instead of an adhesive are a bit more forgiving of accidental over application (you just spill it off and wait a moment for the excess to dry).
> Instead, I would go with VHB (Very High Bond) tape. Also weird to use, if you are using the thin 1mm width, but I can position the tape more carefully before I press it into place.
An interesting suggestion, and not one I've tried. Thanks, I'll keep it in mind.
You can overcome some of the scaling costs with 3D printers. It's pretty cheap to make fairly robust plastic parts with a 3D printer if you can do basic CAD.
Though the thing that does stick out to me as a software engineer is that you need parts and thus can't iterate on your ideas nearly as quickly. You can't just pull in a library or something, you have to order a part and wait for it to physically get to you. And the cost of any mistake is in actual real money because wiring something incorrectly can destroy things.
That's the same in software engineering. You are losing your own time. If you are just breaking your prototypes and not the machines to build them, your time lost is probably multiple times more valuable than the material.
I guess, once you have billed a certain number of hours to clients, the relation between time and money just ingrains itself so deep inside your mind, that you might as well start telling the time in USD.
Don't you still work for time? If you have achieved something, you can do it again or something similar you might enjoy. Unless what you are doing is completely directionless and you are basically just randomly soldering stuff together, I would say there is still esentially the same loss function as with money.
I give you that the abstraction often makes you feel less pressure in the moment itself. But in the end it is really just an abstraction. Money is just a virtually constructed number we use to control people's time.
> If it's your own project, your mistakes cost you nothing but you learn something from every one of them.
You also learn form professional mistakes.
The F1C100s is $5 for one piece on AliExpress, all the parts seem to be solderable by hand/manual reflow in an hour (the passives can be populated by JLC for like $30 for a batch of 5 boards, saving your time), the board would be $2/piece for a batch of 5 at JLCPCB (seems to be 2-layer), the enclosure can also be 3D-printed on a professional printer at JLC for tens of $, the only thing I don't have experience with is the conductive-rubber keyboard.
Then if you want to actually make a business out of it, another $500K for Lawyers, overhead, advertising, manufacturing contracts, headaches and so on.
But, the computer is very cute, and nice work. I was halfway expecting YARPIP (Yet another Raspberry PI project)
Very cool it was all done from scratch. Done that myself for a tablet prototype and it is a shit ton of work.
Two biggest limitations are RAM and wireless interfaces, or rather lack thereof. This thing has less RAM than my router (admittedly a $70 box), and has neither WiFi nor BT. It does not seem to have many GPIO pins, too.
With the amount of RAM installed, it's mostly a handheld terminal, and maybe a handheld console with emulators for old games.
While this is admirable as a proof of concept, I suspect that moving the price point up to, say, $30 could give a much more useful and hacker-friendly device.
I greatly appreciate the split keyboard and the replaceable NiMH batteries, though.
> While this is admirable as a proof of concept, I suspect that moving the price point up to, say, $30 could give a much more useful and hacker-friendly device.
I agree. I think this project proves that ultra low cost is viable. Now relaxing the constraints a bit to add RAM and WiFi could iterate it right into an optimal spot.
I wouldn't want to go much farther than RAM and WiFi, though. It's too easy to let these projects turn into a slippery slope.
If the pi actually is being used it'll definitely draw 2.5-3A, so a 2Ah battery won't last very long. I'm not really up to date on li-poly (the flat pack lithium style batteries), perhaps there's some that would be ok for a handheld with ~3A or more of draw, but again, it's another $20-$40 for batteries that are usable for a handheld. There is the pi arcade hAT or whatever, that's about $15+ iirc. 3d print a case, if you already have a printer that's just time and materials, otherwise you're gunna pay $20 for a case design and print that actually feels nice, again.
At a certain point, the steam handheld device might be a better bet, since it'll have a warranty (don't laugh!) and a support team (okay laugh a little).
All of this could be irrelevant because perhaps the pi zero does everything people want, and that's dirt cheap and also probably uses way less power.
LM2596 costs <$1 and it powers my rtl-adsb for 4 years so far (yes, this is in step-down mode, but you either want a 2S/3S battery anyway, or you use the similar step-up chip).
I have a bunch of "QC3.0/3A Buck converters" for 6-36VDC to USB-A, maybe i should try to run a pi on a SLA Gel 12V battery.
I have the intuition that integral wifi is table stakes for a general computing device.
USB dongles piss me off; specifically the Logitech Mouse USB dongles:
Why the heck hasnt a single manufacturer included the USB Dongle radio IN the mobo?
So with slim laptops you have few USB ports.
I currently am typing this on an HP Omen flagship gaming laptop... It has ONE USB-C port, which is under-powered (I have a USB-C Hub, that requires an external USB-C Power source... so I have to plug the uSB-C Hub into my machine's C port, then plug the power USB-C <--> USB-B port consuming TWO of my USB ports on my machine...
I plug in multiple USB-based monitors as well - and I can carry it all in my backpack...
But we need MORE USB ports than fewer... and Mice should not consume a port.
BT mice have never been subjectively responsive enough for me. For example, I can test-map-out my BT environment in my home by connecting to the BT speaker and moving around and it skips....
/rant
USB radio dongles are not standardized, that's what Bluetooth is for. (There used to be a Wireless USB standard but it was never widely adopted, and it has fallen out of use altogether.)
There are USB-C power bricks that also work as hubs, so you're not wasting your only USB-C port.
Anecdotally, I've experienced very few issues with the Logitech MX Master (both the original and v3) on my Mac via BT - every once in awhile (often enough to be aware of it, but infrequently enough that it's not something I'd consider a problem) the original would cut out for a few seconds, but other than that it tracked perfectly, and I haven't even had the periodic cutting-out issue with the Master 3 (yet; I've only had it for a little over a month now).
Of course, this is dependent on the BT implementation of both the mouse and PC being used, which is something to take into consideration (I've had way fewer BT connection issues in general with MacBooks than with any Windows laptops).
I wanted to like Bluetooth mice, but they just didn't work out for me. Some of the wireless mice these days are dual mode though; can run with proprietary wireless or switch to BT to avoid the proprietary dongle (some of the proprierary dongles also can act as a standard BT dongle, if your computer doesn't already have one). I know there was a line of mice that did wifi instead of BT too, because that makes sense.
That seems like a winning combination!
Its used in so many tracking methodologies for BT Unique IDs tied to real humans...
Unlike an RPi, this thing has a screen, a keyboard, a sleek case, a battery compartment. What are other devices that have these all, and cost, say, under $40?
https://powkiddy.com/products/powkiddy-v90-3-inch-ips-screen...
It seems like you can. Pico8 does have a raspberry pi (ARM cpu version) Through retro-arch? I’m not sure how it all goes together.
https://retrogamecorps.com/2021/02/01/review-powkiddy-v90/am...
This is an unofficial player.
It makes a fun little device that much better. Plus it's a good starting point if you want to try doing your own Linux stuff on it.
The display on this thing is the biggest limitation. 320x240? Is he fucking joking?
ZRAM did magic expanding the RAM to 24MB.
And under text mode you can do lots of things. With a framebuffer, say hello to 420p videos, PDF's and some web pages with images thanks to links -g.
You must use tmux+ash as your "interface", but it works.
It really doesn't take much else, you'd need a tcp stack where most of the memory usage is buffers. Maybe 15-30 kb, and you'd need to load some player into mem as well.
There are tiny embedded devices all over that have music running on them. I've seen lightbulbs and light switches that can stream music.
Idk why everyone thinks it takes 500mb to play an MP3. Maybe because the vast majority of compute power these days seems to go to all the shit the app puls in to sell ads and native programs are all just electron apps but it really doesn't have to be like that for most functions of a computer.
I could play music. Not waveforms, but MIDI-level.
- Direct file transfer between devices, with simplicity not comparable to wifi.
- Easy connection to the internet using a mobile phone (likely even the cheapest feature phone).
- Connecting a mouse (and maybe an external keyboard).
- Connecting a 2FA security token (may be important in the SSH terminal capacity).
Get off my lawn. With 8MB of RAM you could run Win95 AND a MP3 player.
After all Linux used to run on 486, BSD ran on 386.
Yes, but it wasn't easy, and only recently achieved. [0][1][2][3] Unfortunately, for both those examples, the WiFi module itself had to be disabled so that Linux had enough memory to function.
Though, of course, they should be able to do something like my favourite tiny Linux board, which wired in extra RAM. The 8bit Atmega [4], that only takes 4 hours to boot Ubuntu.
[0] https://twitter.com/xiaohui10556190/status/14163071689916047...
[1] https://whycan.com/p_66202.html
[2] https://www.cnx-software.com/2021/07/18/linux-5-0-esp32-proc...
[3] https://www.reddit.com/r/esp32/comments/dtlj7n/booting_linux...
[4] https://linux.slashdot.org/story/12/04/02/191203/gnulinux-ru...
Main issue with Linux on an MC is lack of MMU, though YMMV
Granted, that's going through SimH; it would be interesting to see if retrobsd or litebsd could be ported to run on ESP32 natively.
https://www.96boards.org/product/orangepi-i96/
Price isn't much higher than most ESP32 modules, and it can run plain Linux.
Jabber uses XML and I did it fine under a system daemon like Bitlbee AND an IRC client on top of that. 48MB overall on the Zipit z2, 32MB + compressed ZRAM. The total usage was about ~16MB with a tiny MUSL build, tmux, ash, bitlbee and sic.
SMTP, NNTP, Gopher... are protocols for 16 and 8 bit architectured computers. Go figure.
A Classic Mac with System 6 could do IMAP just fine, jcs wrote a client for it.
If you meant early-mid 90's, that's true.
I don't disagree with you on the wireless, it would be nice to have built-in. But, all the same, there is a USB port, so it's at least possible.
This would be great for plugging in in random places and making sure things work and initializing/configuring/troubleshooting various devices that for some reason cannot be reached over the wifi.
As far as complaints, I would go the other way -- why does it not have an Ethernet port. Yes you can use an Ethernet to usb adapter, but it would be so much more convenient if it had a port.
https://www.techrepublic.com/article/marrying-linux-and-the-...
Agenda VR3 specs : Processor: 66 MHz 32 bit NEC VR4181 MIPS; Memory: 8 MB of RAM plus 16 MB of Flash Memory
NOTE: This could play mp3's while running an FTP server.
https://web.archive.org/web/20030219081647/http://www.linuxd...
Zaurus packages : https://www.zaurus.org.uk/download/cacko/feed/
Zaurus specs : Intel SA-1110 StrongARM processor running at 206 MHz, has 64 MB of RAM and 16MB Flash
NOTE: This could play MP3's, MP4 at 320x240, run an SSH server, etc.
I'm surprised there aren't more systems out there, but a lot of these linux devices in the 2000's (the aught years) were just other systems cannibalized for linux like the iPaq line. Eventually some people put this together in to something called Familiar Linux and trying to standardize the whole thing. handhelds.org doesn't exist anymore, though.
https://www.drdobbs.com/packing-linux-on-ipaq/199200756
The whole openembedded (OE) system showed promise and came from the guy who made Gentoo, but it got mostly abandoned and merged in to other projects (YOCTO) when he went to work for Microsoft.
https://www.openembedded.org/wiki/Main_Page https://docs.yoctoproject.org/
I kind of gave up on this all when I started developing for iPhone OS 3. It just worked with regards to wireless, and I realized I was more interested in the application layer anyway. Before 2020, you could get an iPhone 5s for about $20 on ebay, so it really had all I wanted including GPS.
There was someone who put together a site called http://pocketworkstation.org/ which isn't in the internet archive (archive.org) that had a whole LaTeX system working in Window Maker on the various Zaurus models. It was a scaled down desktop with 7 bit fonts, but it could be VNC into and used. Fun times.
EDIT: formatting and specs for low end devices
If people says a 500Mhz and 16MB are not enough to play music, they couldn't be more wrong.
e: ran a search on my disk for "\.ipk" and got a few files. Emacs, gtk2, konqueror, minicom, nano, prism3 driver, xmms, XQt, Blackbox ... why did I have `make` for Zaurus!? There is no way I can satisfy GPL obligations but do anyone want these archived? Right now it's on a nonredundant storage.
There are dozens of snap-on expansion modules which can also be screwed on for permanent use, including a keyboard module, joystick/D-pad, expanded battery, prototyping breadboard breakout, ethernet and various wireless modules including cellular and LORAWAN. I have several of these along with a bunch of the modules and the system is ideal for prototyping up various things super quickly. Amazon sells their own Core2 bundle with an expanded battery module which is pre-programmed with their IOT prototyping platform firmware but you can just overwrite that back to stock firmware which supports FreeRTOS, MicroPython, UIFlow and Arduino frameworks.
https://shop.m5stack.com/products/m5stack-core2-esp32-iot-de...
https://www.amazon.com/M5Stack-Core2-ESP32-Development-EduKi...
https://www.robotshop.com/en/m5stack-faces-qwerty-keyboard-p...
Here's a kit with everything you need, and more: https://shop.m5stack.com/products/face?variant=1729043762389...
You can buy dev board ESP32 modules for as little as ~$10 but the M5STack comes with with a bunch of additional hardware that basic ESP32 dev boards don't. As you mention, the upside of the M5Stack Core2 system is all the extra hardware already integrated into a very well thought-thru expandable design. The fit and finish of the Core2 case and all the expansion modules I've gotten is also uniformly excellent.
Edit: is the sd card connector missing in the bom?
Cool project though.
Looking on AliExpress there are lots of unrealistically priced SD cards (1tb for $7!) so I wonder how many of these are just scams where they are formatted to appear bigger than they are, and also if that’s a realistic price that they are using.
Obviously smartphones are cool, I have one, I like it, but it annoys me that in some senses they're still not as good as a Windows 98 laptop from 24 years ago. Their version of MS Office isn't as intuitive, there's not the same level of programming language/compiler support, on iOS you're restricted to the App Store, etc.
The GPD Win was the first time I saw a good attempt at a "real" computer that fits in your pocket, and I have one and love it dearly for on-the-train coding, but sadly the pricepoint is a bit high for most people. If I can get something that feels like a real computer for less than $50, I'll be the first in line to buy it.
The most productive device I've had is an Acer Chromebook. For me it is the typing speed, and having a nearly full-sized keyboard makes a huge difference. Adding an SSH client (though you can instead install the Linux subsystem) allows me to access my remote servers where I do development.
While thin and light, the Chromebook doesn't fit in a pocket. But it is not as if I'm randomly hanging out in coffee shops these days trying to do work.
The GPD Win has been great because I can hold it and type with it with my thumbs, not wholly dissimilar to a smartphone, but I have full Windows 10 running on there. It's definitely not for everyone, but for me it's been a lot of fun to hack on Pico-8 during a two hour train delay two years ago.
I wouldn't mind seeing something with the same form factor as the GPD Win3, but using a relatively low-power processor for better battery life. I suppose that wouldn't drop down the price enough to make it desirable to most of the target market though.
If you don't mind the lack of gaming controls, they have some Pentium N6000-based models. The P2 Max (2022) with this claims 8 hours continuous 1080p playback.
Still expensive though - would be great to see a more terminal-focused version with a lower power CPU and screen for a few hundred, and presumably a battery life measured in days.
The Micro PC seems about right though with a 6in screen.
Apparently not for sale new anymore, and it seemed expensive when it was.
And the USB-C port of this phone can be used with a usual dock to connect it to a screen and wired peripherals.
I'm not sure. You still have the "Android ecosystem" interfering with common computer access that I'm using on normal Linux:
- There is no standard V4L2/camera access, only their camera library. I wanted to take photos into tmpfs (to be encrypted asymetrically with GPG and saved to the storage/sent over the network), but the thing still saved them "under the mountpoint" where tmpfs was mounted. There is no v4l2loopback - for example I needed to scan a QR code from a webpage (web.whatsapp.com) and instead of using v4l2loopback like on normal Linux, I had to literally get a physical camera to point at the screen (so something impossible to do remotely).
- There is no Alsa/PulseAudio. I have run alsamixer and the hardware froze when manipulating certain controls (on both Samsum Galaxy Ch@at with stock ROM and Nexus 4 with LineageOS). You cannot trivially add audio output to your scripts with "foo | aplay". Call recording is a mess (normally you would just hook the "monitor" output in pulseaudio). It's much more difficult to implement simple stuff like "when I'm home and it's dark, enter silent mode" - normally I'd just do iwlist scan to check if I'm on the home wifi network, capture a v4l2 frame to check if it's black, and mute the ringing app in pulseaudio.
- The lockscreen is not PAM. You cannot easily add a module (it's like 3 lines of shell using pam_exec on normal Linux) that will poweroff the device after N failed password attempts/entering a special password. If you want to unlock the screen remotely, you literally need to fake the input (https://stackoverflow.com/questions/23529460/is-there-a-way-...). All the we-are-reinventing-PAM is littered with WTFs https://android.stackexchange.com/questions/28689/install-ca...
- The storage encryption is something custom, not a standard LUKS/cryptsetup. It was not possible to set different password for a lockscreen vs. the storage encryption, except by a special command-line API. There were several versions of such APIs, if you have used the wrong one, it silently set the wrong key and it was impossible to unlock. Recovery was not possible even when I had the master AES key, as it's not standard LUKS, so you cannot recover with cryptsetup --master-key-file or header backup.
- The way the storage is implemented, full system backup, or configuration backup and versioning is terrible. I simply user "rsync /" on my normal Linux systems.
- You need to run an X-server as an app, so there is no xmodmap to easily change the keyboard layout etc. There was no video player that could do reasonable speed scaling without pitch shifting, and running it from a chrooted system on the X-server app is terrible performance-wise. (I have now learned that there is a native MPV port. Hopefully it's better than the VLC port, and hopefully things like socket control work...)
- There is no VNC server (like x11vnc) except for some paid apps. You can use scrcpy, which always streams the entire screen (VNC transfers only changed rectangles).
And the list goes on and on (note that some of these are a few years old, I'm not using Android since then as I have evaluated this to be unusable. Maybe the situation has changed.)
You can almost certainly do better than $30 on local marketplaces, or by asking friends if they have a disused smartphone sitting around.
reusing is absurdly cost efficient
I do love the look of the form-factor though. Want to need it.
I've got plenty of old shit phones around that barely respond to touch (or whose displays are just outright unusable) but I'm here considering a new rpi for my next project instead of repurposing one.
There's also a ton of leftover supply of these things, and they have built in power backups, networking, and often lots of shared platform parts (ie, target just one snapdragon based platform and get a swath of compatibility in the galaxy s3 era or whatever).
Peripherals using proprietary drivers being the obvious offenders.
Good for proof-of-concepting tho, I bet.
Keyboard Featherwing: https://www.adafruit.com/product/4818
Linux-capable Feather: https://www.crowdsupply.com/groboards/giant-board
Add a lithium polymer battery of your choosing to compute on the go. (Also possible to add WiFi or SMS with a Featherwing for people that are interested in that. https://www.adafruit.com/product/4264 etc.)
OK, it's not really off the shelf. No doubt many hours involving pulling out your hair to set up the device tree are involved before you can do anything fun.
The keyboard becomes very cumbersome.
(source: found out the hard way when brought toys that require two hands or all fingers to play with, in worn-torn countries.)
<!-- DO HN STUFF HERE
<script>
if(document.referrer == "https://news.ycombinator.com/") {
window.location = 'https://bbenchoff.github.io/images/Brogrammers.png'
}
</script>
-->
Nice.As a non-brogrammer, a battery-powered, pocket Linux/BSD computer without a "phone" built into it that boots from SD card/USB stick is exactly what I am looking for.
No GUI required.
Willing to pay more than $15.
https://www.cnx-software.com/2018/03/30/allwinner-s3-camera-...
> I’ve been told V3, V3S, S3, S3L, R11 are all the same chip, but with packaging variations.
The big initial expense, as far as I can tell, is the custom enclosure and keyboard. Maybe there's an interim design that doesn't require injection molded parts?
I bet it wouldn't take too much work to port the Miyoo Custom Firmware [2] over to it.
Also, the CPU can be overclocked to 700-800mhz pretty trivially. It gives a nice little bump in performance and it doesn't even have much effect on the power draw.
I'm not clear on why the first one would cost $10k. The enclosure, maybe?
If he were going to sell these, the rule of thumb I heard was to charge the cost of parts x 10. (Edit: maybe a factor of 2? I forget.)
PCBs are pretty cheap at this size, and the components wouldn't be THAT much more expensive to grab in smaller quantities.
If someone would get a group buy started just for the components and 3d case files I'd hapilly sign up and 3d print the thing.
Same with the plastic enclosure.
You might want to make a top-level comment, like "This is the author, ask me anything".
With a $15 BoM cost, using a domestic contract manufacturer, this would probably come out to be no cheaper than $30/unit with very decent volumes, and that doesn't factor in your profit. Need to remember to pay someone to assemble it and test it.
https://pocket-reform.ghost.io/
weirdly the most info is in LinkedIn
I realize this might be due to some combination of constraints, but $15 or $1500 - the form factor matters.
I figured it would be one of these parts, at this point they are pretty old, but capable. And available apparently.
Alibaba has some 800x480 displays for as low as $4.5-6.5 (@1ku), I wonder if those are just bullshit or is there some catch. They don't have SPI interface, so driving them might be bit more involved? But the SoC should have the hardware for that, so its just a matter of writing drivers?
https://www.alibaba.com/product-detail/800x480-resolution-5-...
https://www.alibaba.com/product-detail/5-inch-6-O-clock-view...
This idea's been kicking around in my head since the OLPC was announced, but nobody's delivered yet. Chromebooks are too expensive.
For the same actual cost I'd go on EBay/Craigslist/FB Marketplace and buy an unlimited number of old computers with 1000x the specs of this one that are going to be otherwise placed into a landfill.
Admittedly, having the whole system on a single package for the most part makes this decidedly simpler. Up until this point the hardest thing for me was doing the SoC <-> DDR3 traces in KiCad. They're remarkably less forgiving than PCIe, but I guess that is the curse of modern RAM chips not using differential IO. That and figuring how how to solder BGA. Making my first attempt with some cheaper FPGAs and a hotplate pretty soon.
A device, kind of like the SideKick (remember Danger invented Android, got bought by Google - then the founder was paid ~$90,000,000 severance from Google for coercing a female colleague to be his 'sex slave' -- Yeah, that Danger, Andy Rubin.)
but I just want a device that only sends and receives SMS and thats it.
Can this machine accept a SIM in a future iteration?
(I interviewed with Danger back in the day... but I had the freaking flu and felt like death, and I failed the interview as I was reeling from the flu. It was super stupid of me to go to the interview whilst sick, but I REALLY wanted to work at Danger...)
For an OS you have nuttx, but for the memory size, Oberon ports (A2) might be feasible.
Safety first. Ha!
What would be the expected build time? Days? Months?
I'd say a day at max if it had enough memory.
A Zero 2 W with wireless is half that or less including the case, SD Card and power supply.
get a pi, an sd card, a power supply, and a cardboard box to shove it into. you don't need any of the other stuff they include.
also get an old pi, not one of the most recent. maybe ask around, lots of folks have a box of older pis. i'd certainly love to get rid of all of the 1s and 2s i've got.
This has no internet support, but who cares as I can just rsync the NNTP dir from/to slrn in my laptop and read good stuff offline, and just answer over the laptop, too. Or, well, an Atheros dongle would work fine.
For coding, JimTCL with or without SDL2 is fun, and, for gaming, text adventures and roguelikes would rock here.
At the end of the article he talked about upgrading to a 640x480 display which would make the 80x24 terminal a real possibility. The surprisingly expensive 800x480 display would be even better, you would have the possibility of running a square 9x9 font, or more likely increasing the console resolution to 100x24.
But the Z2 Nethack build was patched to support a ~64x16 res (68x20 I think), so that worked well among some forth interpreter and well, gopher clients and IRC.
The custom Slashem I built didn't have that patch, (and the patch was doable for sure), but I was lazy and just ran setfont.
Z machine games were perfectly playable on 64x16.
Personally, my ideal handheld would be something like my old Nokia E61, but with open hardware, mainline Linux, at least .11n WiFi, and isolated 4G/5G cellular. https://en.wikipedia.org/wiki/Nokia_E61
I really like their blog on how the moulds etc. were made too.
Also iirc the firmware is now open.
If you do a couple of prototypes it's fine. If you want to make a thousand or two, you are in a world of pain.
https://www.hardkernel.com/shop/odroid-go-advance-black-edit...
and it does come with a more digestible price tag
- monocoque anodized aluminum housing with coin screw o-ring battery port that houses an 18650; -silicon gasketed polycarbonate faceplate held with stainless hex button head screws, waterproof to 100 meters - tactile clicky button keys beneath a silicone membrane for waterproof-ness. - detachable rubberized wifi antenna.
A feller can dream...
Pro-tip: Get help and factor in delays when making stuff :-)
If you don't remember that time, then I guess I'm getting old.
In any case, it's nearly a useless question these days: very few things with a chip are so dumb they can't run Doom.
We need a new metric.
2/ As per the very start of the article — and this is off topic I’m afraid but… — let’s say I did want to root a prepaid Android phone. What is the best phone I should go for?
This is the fork that I've worked with: https://github.com/MiyooCFW/gmenunx
Edit: here is the original: http://mtorromeo.github.io/gmenu2x/
No doubt there's a better way.
[0] https://www.techytalk.info/send-receive-sms-using-gsm-modem-...
what's 'long enough'? i'd love a on-the-go linux with e-ink and very low power chip so i can use it for a week.
so far I have no idea where I need it
"the mechanical keyboard mafia" is the most startlingly accurate phrase I have read today.
If I bought an OSHW product and it shipped with this as the controller, or I saw one of these just hanging out running an irrigation system, I'd say "Yep, they sure did an awesome design there.
I would ditch the SD card as part of the BOM. I don't trust that $2 SD card for anything but read only root operation. Lots of people would rather use a SanDisk they already have, so I'd say the cheap card should be an optional addon.
With the money saved from that, and maybe by just bumping up the price a tiny bit, could you tack WiFi/BT?
This sounds slightly insane, but what if you slapped an ESP32 module on there?
Not only could it serve as a WiFi and Bluetooth interface, but the power draw can be microscopic.
You could have the option to have it always running. That means it could be the real time clock.
RTCs are needed more and more for various security related things, and are very important for data logging.
Instead of breaking out GPIO for the "shitty ad-on" connector, break out ESP32 GPIO.
Now that add-on can run IN LOW POWER MODE!!! You could make an incredibly low power thing that logs to RAM, and wakes up once a day to 4G upload it!
It could also serve as the battery level ADC monitor if you don't already have one.
It could serve as the USB device for the C port, so you could plug it in to a a host machine AND have the spare USB-A port.
It would also let you really deeply control and test network access. Since you can write your own ESP firmware, and it has GPIO, potentially you can implement your own IP-over-LoRa hackery with addon modules or something, that works transparently.
It's large RAM could also be exposed as a filesystem for tiny frequently updated things, that only need to be semi-persistent.
Plus, you could give it a debugging firmware and use it as a USB to serial interface for debugging. The whole platform kind of becomes software defined!!
You might need some kind of recovery jumper in case bad ESP firmware told the main processor to shut off, preventing you from fixing it. But that could just be a DIP switch to disable the ESP, which would also act as an RF kill.
Going eeeevvven fuurrrtherrr*, that NiMH is probably the second biggest weakness here.
I think there would be more demand if you swap it for an 18650 or lithium AA, even if it cost more.
If you look around, a lot of people really love that form factor. You could save a bit of money by just letting people use their own 18650.
Or, even better, you could use a 2.4V LTO battery. These are $3.30 in QTY10 on AliExpress. They can be float charged. They have a linear voltage curve. Incredibly safe, and they can last 7000 to 20k cycles.
Set your step down regulator for the float voltage and you are good to go if it's accurate enough. Use an IO pin that can turn it off and you can terminate for extra life.
With a simple dumb charging regime, you will have no oddities when running right off a solar panel through a 12v to USB converter.
Now you have the perfect offgrid tech tool!
If the extension interface has a good mechanical connection(Like a screw) and 3D-printable addon modules, a lot of standalone devices could go away.
OBD scan tool? Multimeter? Geiger counter? Nope, just sell these in a kit with a preattached module.
For niche hardware it might actually be cheaper to rebrand these than to do your own interface, and these are way more flexible.
Lastly, the ESP32 can handle audio, and audible alerts are important.
But beyond that, walkie talkies EPICALLY SUCK. It would add cost, but the thing could almost totally replace FRS radios, and have 10x the battery life and as much range as you want with Wi-Fi mesh, with just a tiny speaker and mic, or even without one, just using bluetooth.
Plus, sound is pretty essential for use in a game console.
Currently, there are basically no devices in this class since things like the Zipit Z2 went away. So I am super excited to see how this goes!!
I already have some ideas for a menu system that could make this usable for non-hackers, without going to a full GUI.
Loving it! What orange website could they be talking about?
I wonder what would be achievable, around the $15 mark WITHOUT needing a minimum order of 1000? (Presuming access to a 3d printer and a reasonably cheap PCB fab company)
In case that's a serious question: what website has an orange theme, and an aggressively enforced rule against editorialising submission titles?
if (document.referrer === 'https://news.ycombinator.com/')
window.location = 'https://cdn.jwz.org/images/2016/hn.png'
Or something along those lines should work. <script>
if(document.referrer == "https://news.ycombinator.com/") {
// Mess with HN users here...
}
</script> <!-- DO HN STUFF HERE
<script>
if(document.referrer == "https://news.ycombinator.com/") {
window.location = 'https://bbenchoff.github.io/images/Brogrammers.png'
}
</script>
-->[1]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Re...
Articles that go deep into technical subjects generally stay on the front page for half of the time of trendy lightweight posts.
I wouldn't know, my topcolor is B5DB5D.
A Raspberry Pi Zero?
P.S. The RPi Zero does not come with a display and keyboard like the computer in this article does. So, we are talking about two different types of computers.
Look at the price of "WH" version with superficial changes that cost pennies to add (wifi chip and 0.1" header), and (used to be) easily obtainable with no limit on the order size. Or, at least that was the status quo before the the great chip shortage of 2021.
⸻
1. We can ignore inflation adjustments because computer prices have generally stayed flat or gone down (the rule used to be that the PC you wanted was around $2000–3000 and nowadays if we're talking about a desktop system, assuming one even specs such a thing, it's less than that).
Raspberry Pi actually did that. [0] The RPi 400 is right around that $100 mark, fully assembled, and is basically a keyboard with a bunch of ports for the people who end up with it.
The only other option is a ZXSpectrum Next (Kickstarter that is having trouble with supply chain right now for the latest batch). It's freaking awesome though. You can directly download new spectrum games from the internet or just use the SD card. Someone wrote a new assembly language book. There is a BBS app...so many cool things going on. The commander x-16 will also be cool if it ever comes out.
It’s plenty capable, especially as compared to other sub-$250 options and has power supply, battery, screen, keyboard, trackpad, speakers, camera, and microphone included.
Besides, I found it's better when I don't take HN too seriously; I now often enjoy HN the way I "enjoy" Curb Your Enthusiasm
1. Often as a top comment too! A lot of inaccurate, stripped-of-nuance or outright ignorant hot takes get voted up if they confirm the biases of the majority of HN users.
Though I generally would not catch nonsense about an 40-year old Microprocessor or some newfangled K8s setup.
So perhaps I should phrase the claim differently. The "quality" of nonsense on HN is remarkably better than other social sites.
It might be worth pointing out that you are dismissing a comment discussing a page that is (likely) making a criticism of the HN rules by implying - without good reason - that it is instead a criticism of the community, and not a critique of the site rules and the kinds of content it promotes.
Unless you're only meaning the "don't sneer" part - which is difficult to police among intellectuals, and if it's only policed at HN-directed criticism, is probably bad form.
In short: "Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something."
*'network.http.referer.spoofSource' in about:config : "true = send the target URL as the referrer"
?
Pretty much a possible competitor. I have several OrangePi boards...and they run linux and cost me around $15.
Printer filament itself costs about $10USD per pound. And then there is the inevitable one or two misprints.
Not to mention the time needed to print the item.
If you looking for cheap, low volume 3D printing ain't it.
>the orange site
>the bird site
Are these pet names? Is this passive aggressive contempt? Or is this an inside joke that I don’t get?It's basically:
That den of capitalist hubris, the Mart of Wally
For a new era.
For a few reasons.
Firstly, sometimes a shot needs to be taken at said websites and there are people who work there who will be reading it.
Secondly, because inside jokes are the best jokes.
This one isn't new to me. My old boss used to call it that.
I can't even buy a keyboard for $15 anymore since inflation took off.
So yeah if in fact this is a real product I'll throw a few bucks at it to help make it happen.