Apart from the nozzle why is it hard to manufacture and/or design?
Once that is said, it should be possible to work in a general-purpose open source 2d printer. The open community has achieved bigger goals. The biggest problem I can see is the entry barrier: to get a very basic printer, you have to invest thousands of time with a lot of knowledge in different areas, when a basic printer, even from the large companies, is not very expensive.
I think that one of the only chances we have for that to happen is that a company frees its designs and patents and community starts working from there.
Shouldn't anything relevant have expired years ago? The first laserjet came out in 1984 it seems. Prices have come down, but I haven't seen any real innovation in printers (not that I really need any- I just want them to print)- since 2000.
The business printers in 2000 had slow processors and more ram. It was significantly bad that printing PDFs spent more time processing the file than putting toner on page.
Finally, the interfacing for printers today is fantastic. I know this isn’t about toner on page, but having wifi connection, an LCD touchscreen interface, and them generally being a little smaller has made the experience better.
The only thing that was better about printing in 2000 is that back then printing was more useful because so many people wanted paper copies.
It'd probably be easier to make a nice block alphabet for a plotter and then just print your documents as biro drawings.
But again, feeding paper seems like a very fiddly problem.
Daisy wheel printers were slow, loud, and had huge limits (no kerning, single typeface, no printing family photos), but the print quality was good. And if you are the kind of person who likes mechanical keyboard sounds, the sound of a daisy wheel printer is pretty cool.
Printer paper came in long, laser-perforated sheets with tabs. You'd load in the start and one sheet pulls in the next.
https://en.m.wikipedia.org/wiki/Continuous_stationery
The crank you had to put into the front of the printer to get the steam-powered engine turning could jam in the transmission, though, and you had to watch the temperature of your coal-fired ink tank so it didn't over-boil. Those "electronic" printer guys thought they were so fancy.
"A reverse-engineered typewriter hack to make it into a printer. Using a simple MOSFET circuit and an Arduino (actually, a Light Blue Bean+ arduino compatible board), I reverse-engineered my IBM Wheelwriter 6 typewriter to print out text and some rudimentary graphics. The GitHub repository is here, and I'll continue to update it with schematics, etc., when I get some time: https://github.com/tofergregg/IBM-Wheelwriter-Hack"
Same user has a similar hack for a 1960s Smith Corona Sterling Automatic 12: https://github.com/tofergregg/smith_corona_printer
OTOH hacking an IBM Executive might have been something. Proportional spacing!! (but a much fiddlier mechanism)
And ink cartridges
The ink cartridges are good money, but it’s not where the money is at.
[0] https://www.rfdtv.com/story/42630937/global-ink-cartridges-m...
There isn't much return or expertise on building an open source 2D printer, as opposed to 3D printers.
Ink delivery is likely the main challenge (although I've seen some low-res attempts), combined with the speed and precision needed for a good printer - reaching a few hundred DPI requires positioning things quite precisely. Laser printers are interesting, but then you need specialized parts like the drum that I'd expect to be difficult to produce in single quantities.
Open pen plotters are a thing, but again not typically used for normal printing duties.
There's a massive growth curve too. If we could find a way to print on plastic, we could integrate this with a 3d printer and make decorated parts. I think this would be multiple stages of amateur R&D, but it would eventually happen (yes, I suspect someone will respond with all the technical issues why it can't work with current technology, ignoring all disclaimers -- I am aware this won't work right now).
I think of tons of other use cases.
I think the problem is as others have described. Making a printhead costs peanuts, but engineering one and NREs are astronomical. Ditto for paper handling, and many other parts of the printer. There used to be an printhead open enough for DIY (you could buy them in quantities of 1, and there was a spec sheet), but it's not sold anymore.
Those kinds of printers already exist commercially. The argument is the same: Printing on clothes or PCBs might be cool, but crappy DIY printers that can do that are even more niche than crappy DIY printers that print on paper.
Something pen-plotters don't do (they typically want paper to be placed down for them, or work of a roll of paper), and the maybe 3D-printer equivalent of preparing the print bed and removing prints from it is a well-known source of problems and manual work.
You'd never run out of toner at least.
Edit, answered at least one question: yes engravers do 500 dpi routinely. Here's one: https://www.troteclaser.com/en-us/knowledge/tips-for-laser-u...
Also, high power lasers are consumables.
Then how about a printer that can print on a large wall? E.g. with spray paint.
If there was a 2D equivalent, I'd be interested in tinkering with that, too. And yes, that would probably mean spending 5x ot 10x more than a cheap commercial printer to get a printer than underperformed said cheap commercial printer. But it would be mine, and I would understand it, and be able to mess with it. And fix it if it broke. And use weird inks with it. And so on.
You can probably adapt a printhead from a printer to your 3D printer today if you want a crappy DIY 2D printer and go from there.
Some of the documents that we previously received through FOIA suggested that all major manufacturers of color laser printers entered a secret agreement with governments to ensure that the output of those printers is forensically traceable.
Likewise for scanners. I want to just have a HTTP API or something like that where I just "GET" an endpoint and the scanner hands me a file in some reasonable format.
The drivers are always the worst part of devices that allow computers to interact with paper, so let's get rid of them altogether.
…like a bitmap? Turning documents into bitmaps is easy to do in the computer now. We’re a long way from the time when (due to limits on memory, processing, and bandwidth) you had to encode your document into a complicated command language which you could send to a printer.
> […] the scanner hands me a file in some reasonable format.
Like a bitmap?
I really don’t see how you’re disagreeing with me, here.
Requirements:
- laser printer that works with non-proprietary toners
- USB plug & play on all major operating systems
- Network printing via WiFi and ethernet
- No 2GB bloatware installation required, i dont want your shitty photo management software, just give me the driver
- Replaceable parts
Well, perhaps not the "replaceable parts", but that is doable with a 3D printer. I doubt Brother would come after you for printing a new output tray hinge or custom-colour button set ... and I doubt any other parts are likely to outright 'break' (my laser printers of various brands have lasted around two decades each). Any other parts, such as the image drum, would require too specialized fabrication to be done at home or at the local fab lab.
BUT, it's compute bound with modern print jobs, and is missing modern protocols like Bonjour.
What if someone open sourced a legacy printer? I'd love to re-brain this printer.
Replaceable NIC in printers are pretty great, especially when you can buy them for 1/10th of original cost on the used market.
If there is a newer network card or firmware that supports this printer, I’d love to hear about it.
I have a relatively modern LaserJet that does IPP (and Bonjour) over WiFi, but it doesn't do 5GHz WiFi, it doesn't do IPv6, so I have it plugged into a server over USB instead, and the server running CUPS exposes it on the network.
I’ve been meaning to explore server-side rendering, but haven’t got that far down my todo list.
One and only problem is that only the XP-windows Samsung printer drivers work truly well. But I have 2008 laptop for that.
I casually poked around to see if I could find some old HP LaserJets. Do some teardowns, get some part numbers, maybe transplant a Raspberry Pi for the brains.
It is the nozzle. Everything else is very simple to make because it is already done for 3d printers that are more complex than 2d printers(if you do not consider the nozzle).
5 years or so ago I made a 2d plotter with friends at my 3d printers community with the reverse engineering knowledge that we had about a specific cartridge with nozzles on it.
Printing with ink was easy, very easy. But we were interested in using it for 3d print wax, not so easy.
You need to manufacture nozzles, and that requires lots of money. That requires manufacturing plants. Very cheap in volume, but requires volume.
Open source has not volume in the millions, like big companies have, and those companies are not going to sell you the nozzles so you commoditize their professional field like linux did.
Second, decent reproduction of e.g. text at decent DPI requires more accuracy in head positioning than what you need for basic 3d printing.
So to me it seems that the big issue is not that a random cheap standard printer would be cheaper, but rather than the home-built version is likely to get worse results than what you can get in store for peanuts.
thinking there might be mileage in this idea. clearly a mod from a 3D printer design would be where to start. standardise ink delivery / modules for different materials with different characteristics. A standardised printer driver for Linux and other platforms would get a lot or re-us.
I had to buy a replacement drum unit in 2016, that was $22.59 (third party, of course).
I find it unlikely that an open-source DIY printer is going to result in something better or cheaper than what I've got.
The situation that always seems to happen to me is I need a printer ASAP. When shopping, I might find support for the Brother HL-2270DW in linux, but my local store might have a "Brother HL-2275DW" in stock (made up model number). So I'm wondering if the driver for the 2270 will work on the 2275, etc.
The author describes their work to make a very simple DIY inkjet printer for under $1000. While they are using a nozzle that they purchased, you can make a similar one yourself (check out the book "Microdrop generation" by Eric Lee).
All-in-all it's fairly complicated just to start printing droplets, to say nothing of scaling beyond a single nozzle or precisely moving the printhead.
What you are talking about I refer to as 2.5 axis machine vs the traditional 3 axis PLA/FDM printer. Aka a plotter. Using an inkjet cartridge or a laserjet toner on a piece of paper outside the context of the printer it was designed for seems foolhardy at best... but what about moving a pen up and down?
Shameless plug, I've been working on a project called Robot Draws You! (www.robotdrawsyou.com). I'm currently using an off-the-shelf machine and the software / cloud hoops it requires me to jump through were enough to convince me to build my own machine. For the proof of concept I'm using a Duet2 board, but eventually I want to write some code that will sit on a raspi and talk to the Duet to allow the machine a more granular drip-feed style control over the "printing" process". More on that later.
"Why is it hard?" The challenge starts with taking in a given SVG file, making sure it scales / fits within the bounds of a given writeable area, and then generating GCODE to send to the printer / plotter. Because there's no extruder, custom GCODE needs to get created to take advantage of the GPIO pins to move a servo up/down to control the pen. The software challenge is replacing the much-hated cloud interface I complain about. It may suck, but it does a lot and it actually works.
The more I use "the cloud", the more I am reminded it does not provide adequate controls/info on:
- The size of the rendered image relative to the writeable area
- The order in which the layers of the file get rendered
- Information about the progress / time left per layer
- Repeatability of failed layers without re-writing entire project
So crazy me decided "I'll make my own plotter UI and hardware!" It's slow going but it's really fun and I enjoy the challenge. The end solution is going to be a mix of hardware and software that allows you to upload an SVG / vector file to a web UI, start/stop/repeat layers and control the order of the rendering. I like to make drawings of people, and also want to use this to make gigantic maps as well.
There are tons of OS boards and software already developed around this problem, you don't have to do it all yourself.
There's 3D bitmap printers as well, like the SLA resin printers and laser sintering.
The bitmap thing at a high resolution requires higher precision equipment than a typical 3D printer which makes it more difficult to do as a hobbyist. Not impossible, but a factor.
Drawing a circle with X/Y stepper motors is more involved than you'd think. You can either resolve every step with a high resolution (command the steppers to move fractions of a millimeter at a time), or approximate the curve and let the printer do its own IK to figure out how to best represent them in real space.
Both have advantages/disadvantages. The high resolution approach can product more accurate lines, but can sometimes require more computation than the little MCU is capable of (which can cause inaccuracy of plotting as the printer fails to keep up)
But as others have mentioned, commercial printers are really cheap, especially for how complicated they are to replicate so there's not much motivation to make them.
It's doable but only among a group of very wealthy hobbyists.
People with this kinda money typically gravitate towards high vacuum projects and microwave electronics
A 2D printer needs to deal with four or more liquids (ink) or fine pieces of plastic (toner). Rather than just heating the ink up, a tiny electrical current is used to squeeze out a drop at a time. Everywhere the liquid touches can get dried up, and needs to be self-cleaned. And then you have to address the color mixing algorithm, calibration, ICC profiles, etc. There are waste ink absorbers, print heads, etc. many of which involve specialty materials that can only be made in a precision factory, which would not be available for open source development.
The software on the printers is whatever you buy. Some of them run on available print languages that you can code up your own driver for should you really want to.
And for the example cited, cartridges, Epson had offered a more expensive printer with a do whatever you want ink setup. And Brother lasers have so far accepted any carts I use without complaint.
As for hard to manufacture the entire printer is a molded plastic to reduce cost (massively) and a fabrication plant made printhead. Mass manufacture only for the huge price-break.
When it comes to 3-d printing I see two attitudes around me:
(1) People who are involved with "making" from a blue collar standpoint think that "3-d printing is cool but the quality of the product is subpar" (2) People around the engineering department at my local Uni who 3-d print everything they can
A lot of the 3-d printing market targets type (1) and enthusiasts. If those enthusiasts were inkjet enthusiasts they wouldn't mind getting prints spoiled with an ink explosion 5% of the time.
Open source 2D plotters do exist.
But how about the openwrt-approach? Keep the printer with the good nozzle and starting with the software such a cheap printer runs, trying to get that foss first - jailbreaking your printer if you will. Or swapping the board for a raspberry pi or similar? That would at least help against closed drivers, cartridge restrictions, page counters etc.
The 3D printers you are talking about are very simple. Those are Fused Deposition Modeling and StereoLithography printers.
But there are also 3D printers that work like 2D printers. For example Selective Laser Sintering and PolyJet printers. Just like 2D printers they are very hard to make. Those type of printers are also not available as open source choice.
cough I'll just leave this here. Want some coffee, two sugars, right?
Point being, there are quite a few alternative use cases that commodity printers have going on under the covers that no one tends to talk about all that much. There's forensic watermarking for one but also supposedly certain features hard-coded in where if it detects it in an input, it intentionally leaves it out as an anti-counterfeiting measure. The article for that one was floating around on HN a while ago. I'll see if I can dredge it up.
Making copies is one of those things where there are several opportunities for power consolidation to be had if you look hard enough.
It's like the whole issue with 3d printing of guns. No one in an authoritative position necessarily wants everyone to have the capability to generate at will perfect duplication of information due to the consequences that spells for several entrenched, high relative value use cases.
For something as inexpensive as 2D printers to really get some interest in the 'open' world, they'd probably need to start being as obnoxious as the mobile phone market. Think changing printer languages (i.e. PostScript and PCL) in backwards incompatible ways every year or two and requiring changes to 'new and improved' incompatible consumables (i.e. ink and paper) every so often while cutting off supply to existing customers of the old consumables well before the useful life of the printer has been reached.
The hardware works very well. The software is weird and inconsistent. It can do some very useful things if you access the scanning function in one, incredibly convoluted way, but not in other ways. It can scan to a network share, but you have to put the password in every time. It's frustrating because it's so good and so bad at the same time.
I would love to have an open source firmware in it.
On the other hand, 3d printed objects may only need to satisfy overall mechanical needs, or be suggestive of the shape that they model, to serve a purpose. Most 3d printing that I've seen needs a bit of hand tooling at the end, to really be useful.
Because you can print 3D printer with 3D printer. You can make paper templates with paper template.
[1] How he started the worldwide 3D printing revolution / Adrian Bowyer https://www.youtube.com/watch?v=VV0Tjwq7Uc0
And that's probably also why there's so much focus on pen plotters they look special like vynil discs. And that triggers interest.
GRBL Plotter Elegoo: https://www.youtube.com/watch?v=XYqx5wg4oLU
I'm afraid the answer is due to the fact that we live under a corporatocracy, and that this is the way things roll round here!
Good luck with anyone who is trying to get a open source version of whatever out there. Unfortunately, for one reason or another, I suspect it won't work out, but I have my fingers crossed for you!
I doubt I've printed out more than 100 documents in the last 20 years.
There are still a few legacy areas where nothing else will do like legal procedures and shipping labels but for the most part printers just don't seem like a broadly useful enough technology to interest most open source enthusiasts.
Imagine if everything in the world went open source. Then nobody would be getting paid, everyone would starve because they're giving away there work for free.
Most things in this world are profit oriented products produced as a direct result a capitalism. Open source is an offshoot phenomenon in software arising because software is both easier than other forms of engineering (see thousands of bootcamps) and also easily copyable.
However it should be known that most software developers need to have a job in closed source software in order to pay the bills.
Whenever you see something open source you have to know it's an offshoot phenomenon. These are side projects spawned by intense interest but ultimately still a side project to a person's main line of work which is ultimately profitable. Be surprised that there are 3D printers because it's abnormal. The fact that there are no open source 2D printers arises because there's lack of interest and because there's no profit in open source 2D printers.