A servo driven pendulum gets a robot swinging attached to an anchor via a cable winch on any canvas. A 2-axis canvas is created which could scale to any size of canvas with the only expense of the cable while only one anchor needs to be attached to the canvas. Indoor (whiteboard) and Outdoor (building walls) use are possible. The robot will carry different sets of tools, options include air brushes (RGB for mixing colours), spray cans, crayons, markers, optical laser for cutting material, etc. Images uploaded to be printed will be compiled depending on the toolset in use.
What do you think?
At the time of writing this, it actually already printed 68 tweets from all over the world.
However, since this is a project that will probably never be 100% done, here are my upcoming optimization tasks:
- For whatever reason the USB WiFi dongle on the raspberry pi burnt. Replace to have ultimate mobile experience.
- Streaming through my phone is not optimal. Best setup would be using a USB webcam driven by the raspberry pi which could stream up to a service that is capable of many viewers (sound / almost realtime)
- Newlines are now done by me pushing a button, since I need to change the paper and be in power of the roller that brings in the paper for that. This should be optional and make the new lines by itself.
- Endless paper is needed and attached to the cartridge to actually be fully automated.
Any thoughts on this / hints for streaming, please leave me a comment.
I totally forgot that just having a web video stream of what is happening on the typewriter is not enough. What if actually a few people want to watch it at the same time? Bummer, have to investigate that. So far tests showed not even enough frames come out of that android IP cam app I am using right now to show the actual experience of the typewriter typing by itself. Any ideas for a solution? Please let me know.
Also I fried another one of the tiny motors with gears that make the new lines. I had an extra one and started just printing one letter per row. So since I did not get the cartridge return working, I just disabled the spring that would push the cartridge further and the typewriter would just print on the small cashier paper roll one letter a line. A workaround I am not happy with.
I will need to get some more supplies now to connect all keys and make sure the tweets to @lepetiteprinter will end up in the print queue on the server so the raspberry pi can grab them from there. So from there on we can at least print in a straight line until I have the cartridge return figured out. Any new ideas what to try for that? Actuators that can pull about 20 cm?
See yourself in the following video.
For now I just use a web interface to add the jobs manually but soon the jobs will come in from twitter via a hashtag or tweets towards the typewriter. It’s a Ruby on Rails App hosted on Heroku with a password protected API to make sure only the typewriter himself picks up the new jobs. Also as soon as the typewriter picks up a new job, its status changes. So based on that I can let people know when their job started / is done.
More Good News. All keys are connected now (no numbers though) and are WORKING!!
Just not at the same time yet. Reason for that is that I have been trying to solder up a better control board and failed again on the design. Why I wanted to have a soldered up control board was to make it easily and quickly replaceable (modules). So a 16 pin cable would come from the raspberry pi and plug into the control board while a 32 pin cable feeds the solenoids while another one feeds the new line motor and another one the page return. Besides being able to replace things easy, I thought it would cause less issues if the table is moved since everything is soldered up and no pins can move (compared to a breadboard setup).
That said, I will just use breadboard for now, since I lost too many parts already in soldering up control boards. I guess I am bad at that.
I changed the ribbon, got it at Stables, no problem. Had to roll it over to the typewriters wheels by hand though. What I hear from people that worked with typewriter before (back in the days) I can roll this ribbon back and forth a few times before it will run out. Not just once. That’s good.
Camera to stream the printing process
Although I thought I would use a webcam (USB to raspberry pi) to make things easier (compared to a network camera because of being able to time things from the raspberry pi rather than the web app), I just had the idea to use an HTC smart phone I have sitting around (it’s actually a good phone, I use it whenever I am back in Europe). Sure enough, there are many apps around to turn that, just via WiFi, no SIM card needed, into a good network based camera. So 20 min after the idea, I got it working via “IP Webcam” and now have a stream that is good enough to go on the website to show people their tweets coming out of the typewriter.
Things to figure out from here
- Cartridge return is still a challenge. I am at a point where I just want to use the backspace and therefore got a very strong solenoid to do the job, but now need another voltage level to make it happen. (Workaround, really)
- Paper Size, I do like using the small cashiers rolls, since they do not need a lot of cartridge movement to set it back to the start. For tweets that is okay, since I fit about 25 characters on it anyway. If we want to get more serious, there is bigger rolls (for fax machines I have seen so far) but don’t want to worry about it too much right now.
- Hiding or Showing? There is now a lot of electronics involved. What is nicer, not to see any of them or show them all right away? Right now the typewriter table scares me.
As always, if you have any ideas how to make this project better or have any questions, feel free to comment here or contact me directly.
A python script on my Raspberry Pi is now typing on my typewriter, not optimized yet, but working. Yeah! zzzzzzzzzzzzzz
I am turning an almost hundred year old typewriter into a Twitter printer.
An update is needed here, since a few things changed, not as much progress as wanted was done though.
I decided for the future of the project to use a Raspberry Pi to operate the typewriter and the connected webcam.
Arduino WiFi Shields are expensive compared to a $10 WiFi USB dongle. Also I can plug in a fairly cheap webcam via USB to the RPi to show images of the actual print job without bothering a network camera. However, I had an RPi around and got the needed python script to read from an API (the typewriter API) and send according signals via a cobbler board going within half an hour.
The RPi runs a python script that does nothing else than grab a string from an API.
So it basically just gets a string, like “print me this please” and will then according to the characters, send the right signals to the shift registers that control the transistors that will trigger the solenoids. Also it makes a cartridge return and new line when needed based on settings, like every 10 characters.
Compared to having the web based print queue push jobs to the typewriter via arduino and probably bother it too much if stuff goes wrong, the RPi python script only asks for jobs if it is okay to do so, but does not have to worry about anything else, other than the paper size.
That also means if I need to reload paper or whatever happens, I just unplug the RPi and fix the typewriter while the online print queue can keep growing.
Also the API will only have jobs in the print queue if the web app decides to put them in there, so it can be from there configureable if hashtags from twitter, or just retweets from one account actually go into the queue.
Therefore there will be an interface to maintain the print queue (auto fill print queue because of name / hashtag, delete tweets, prioritize tweets, easter eggs, etc)
Furthermore, the web based print queue manager can send out tweets/ reminders / emails 5 min before your job is coming into the typewriter so you can watch it happen and after it is done send you the link where to find the screenshot of your print being done.
Considering my last post, I did move on quite a bit:
- Tested the shift registers (but new challenge with the raspberry now) need to to it again.
- Laser cut pieces are wonderful but I got at some point cm and inches mixed up, no biggie, but will do it again some day. The solenoids are not working right now anyway, I switched to fishing string, it has therefore a little play that won’t trigger the key enough to do the trick. I will need to go back to wire when the solenoids are sitting exactly under the keys.
- Cartridge return I tried a few things now. Some very promising, some just crazy. Undecided what to go for.
Anyway, most of the software got figured out, since I had to step away from the hardware for while to brainstorm again about the hardware.
If you have ideas, let me know. Cheers, michael
I am converting an almost 100 year old typewriter into a printer that will print your tweets to it on paper while you can watch it on a webcam.
It has been a good week for the typewriter to printer conversion project.
- Andrew helped me put together a table I designed for the typewriter. Basically I just went to Home Depot and bought 3 pieces of lumber ($15) and figured out how to cut them to get what I need out of them. Turned out pretty stable. Maybe I should build more of them anyway, quite good size for a standing-work desk and dead cheap.
- SolenoidsI bought turned out to have enough power to pull the key down enough to strike. This showed though, that they will all need to be individually adjustable, since each key has a little different resistance.
- I finally got almost all the electronics I need (another motor probably for better cartridge return), so I started soldering the control board and it works very well with the arduino. (right now still connected to a computer to read from keyboard and send pull to according solenoid. At some point I will use a WIFI arduino to make have the least cables possible go into the table to make it moveable)
- Configured an old network camera to show what the typewriter is doing on the web. Important to show people what is printed after they send their tweet to the typewriter
- Jane helped me figuring out how the online representation should be. We will open a site called something similar to “le petite print shop” and give the typewriter its own “business” where you can get your tweets printed.
- check the shift registers (74HC595), in a daisy chain for 32 different outputs. I found a source for them at Creatron here in Toronto because of Jon who is working on a very cool flipper project.
- Finish soldering the control boards (2 boards with each 16 transistors and 2 shift registers to control 32 “actions” all together.
After above two steps are done, the electronics soldering part should be done, just a few pins from an arduino will go into the shift registers and control all keys. Not sure yet if also the cartridge return and new line motors will / can go through that or if they will be connected directly to the arduino. However – should not be an issue.
- Laser cut 3 pieces that will let me move the solenoids up and down and fix them in position with a screw. Will do this at site3 here in Toronto, a really cool spot to build hardware.
- Fix motor with gears on new line gear (this is all moving with the cartridge return, therefore not that easy)
- Find new motor for cartridge return, maybe same one as new line anyway?
- Make sure it is easy to move and setup (just one cable to plug in and WIFI setup on arduino / also setting twitter hashtag or account on the web server to line up tweets) so we can actually take it somewhere to show people during events or at places.
Feedback / Ideas – let me know!
Remember those really cool time-lapse videos on educational kids TV about how a seed started growing? Things moving too slow for us to recognize in our fast pace.
However, I am still fascinated how a simple fast forward of something changing so slow we would not recognize it, gives insight about how things actually change.
Researching ways of making time-lapse videos, I learned that is an expensive and time consuming hobby, if you want to make high quality videos.
So I started visioning what would be needed to make it very simple and cheap.
Introducing the TIME-LAPSE-CUBE
A small, cheap, simple to use and weatherproof time-lapse gadget.
- Just 3 settings (1min, 1h, 1day)
- Solar or battery powered
- SD card for raw photo storage
- ‘good enough’ quality of photos
Imagine, an under $50 dollar device that does nothing but take photos at a set time for as long as the battery lasts or until you stop it.
Put it anywhere you want and pick it up way later and get surprised when it spits a fast forward version of the things it has seen back at you. Placing it on your patio to watch this close by construction site go up, next to your flower bed, at a wedding party in the corner, in your car, wherever you can imagine.
Later you can download a time-lapse from it that potentially caught funny moments, just beautiful development of nature or whatever else that was to slow to be recognized. Put it in your backpack, keychain, bike, anything.
So what do you think? Crazy? Useful? At least funny?
Hardware development has not started yet but there is already tons of ideas to make it as easy and cheap as possible.