[typ.o] was working on a Raspberry Pi project and found himself running short on USB ports. The project required a touch screen interface, which takes up one of the ports. Since he was only using the screen in text mode, he decided to ditch the original USB controller and make his own.
The ever popular Attiny85 is deployed to handle the task, and is interfaced between the resistive touch panel and the Raspberry pi, using only three pins from the GPIO port. The Attiny85 runs off the 3 volt supply from the raspi, so no level shifter is needed, helping to keep his board super simple.
The calibration and calculation of the touched character location is done by a Python script running on the raspi. [typ.o] is a fan of the KISS principle, and it shows. Be sure to check out his site for all source code, schematics and a video demonstrating this simple but effective solution.
Software, especially DOS-based software meant for CNC control lasts forever, but hardware most certainly does not. When faced with aged and decrepit hardware meant for controlling a CNC machine that was slowly dying, [Oliver] needed something that would emulate 3M Microtouch touchscreen. Not wanting to go the hardware route, he decided to emulate a touch screen in Python.
The Python code is fairly simple, taking mouse input and translating it to the serial protocol the 3M Microtouch, and thus the old DOS CNC app, uses. Writing the Python to capture mouse clicks was only half of the problem, though. [Oliver] also needed a way to send these mouse clicks to an old DOS application. Virtualizing an old machine running DOS created a few timing problems, but a solution was eventually found with DOSBox and the Virtual Serial Port Emulator that can connect two applications with serial ports.
[Oliver] was finally able to get everything working, bringing this equipment back to life for at least another 30 years. Let’s just hope all the code is well documented and archived for the next guy.
“I’m sorry Dave, I’m afraid I can’t open the dorm room door.” Does your dorm room have a peephole? Take [pjensen’s] lead and turn it into a mini HAL 9000 using a red LED.
Mix a little work in with your hobby skills. [Vittore] needed to build a video looper to drive some TV screens for a Hotel contract job. He grabbed a Raspberry Pi and got to work. The final product (translated) even uses a shared folder on the hotel’s network as the source slides.
We’re not sure if anyone noticed last Monday (it was Labor Day in the U.S.). We had a little fun with coffee themed posts. [Tom] wrote in to remind us about the HTCPCP: Hyper Text Coffee Pot Control Protocol. If you don’t have time to read it all, he suggests you don’t miss his favorite, error code 418.
Maybe funny reading isn’t your thing right now, but we have some more helpful stuff to offer. Check out [John Chandler’s] Commandments for using PIC microcontrollers from a few years back.
[Andy] has some old smart phones which he is using in his projects. His beef with the touchscreens is that there’s no tactile feedback. Since these are going to be dedicated displays he’s outlining the touch controls with tape to let your finger know what it’s doing.
If you’re living in your first home in America there’s a really good chance it’s a 1950’s ranch house considering how many of them were built after World War II. Bring its infrastructure into the information age with a cable retrofit. [Andrew Rossignol] just did so and posted a lot of pictures of the process.
If you liked [Ken Shirriff’s] post about the Sinclair Scientific Calculator we think you’ll love his continuation of a Z80 reverse engineering series.
[Art Barrios] kept having night-time visitors who were raiding his dog’s food storage bin. It’s a plastic tub with a lid that latches but the critters were knocking it over and popping that lid off. He wanted to find out which animal was the culprit so he hacked together an automatic camera system using an old cellphone.
You can see the majority of the hardware he used in the image above. There’s an Arduino on the left. This monitors a switch which he added to the lid of the food storage container. It triggers the system when opened, switching on an LED light and snapping pictures.
The touchscreen button is used to trigger the shutter. That’s what all of that tin foil is about. Some experiments led [Art] to realize that a metal ‘finger’ could register on the screen if there was enough foil attached. To move the metal bracket he uses a solenoid. The last problem he faced was keeping the cellphone screen awake. He figured out that power cycling the charger does the trick. The Arduino manages this using a mains-rated relay.
The system successfully captured images of a family of raccoons feasting on the tasty morsels.
This grid of letters is a puzzle game for tablet devices called Ruzzle. The contraption attached is an automated solver which uses LEGO Mindstorm parts to input the solutions on the screen. [Alberto Sarullo] is the mastermind behind the project. As you can seen in his demo video after the break he has a flair for the cinematic. But he makes you work a little bit to discover the details of his project.
His post gives a general overview of how this works. A Linux box takes a screenshot of the Ruzzle board. After processing the graphics with Imagemagick he uses Tesseract — an Optical Character Recognition program — to figure out which letter is on each square of the playing area. From there NodeJS is used to discover all possible words with the help of a dictionary file. The final solutions are pushed to the LEGO parts to be traced out on the touch screen with a stylus. The nice thing is that he published all of his code, so you can drill much deeper into the project by pawing through his repository.
Continue reading “LEGO stylus solves Ruzzle tablet game”
After you’ve got your Reprap running smoothly with acceptable resolution and good quality prints, the next order of business for any 3D printer hobbyist is headless printing. While the greatest and newest 3D printers come with controls to allow jogging, homing, temperature control, and printing from an SD card, the home-built versions will require an add-on attached to the electronics board. [Marco] has been spending his time improving the character LCD control panel projects we’ve seen for Repraps with an awesome graphical version that emulates the control interface found in the Pronterface control software.
The biggest problem with adding a control interface to a Reprap is the number of pins available on the electronics board. While an electronics board like RAMPS has enough spare I/O pins to drive a display, other boards such as the Sanguinololu and the Melzi are extremely limited in their expansibility. To get around this limitation, [Marco] used a 4D Systems serial touchscreen display.
This display only requires two pins to fully interact with a printer running the Marlin firmware; the graphical processing, communication, and SD card access is handled by the on-board PICASO micocontroller, leaving the ATMega on the electronics board free for important things like printing stuff out of plastic.
[Marco] has a git full of modified Marlin firmware and firmware for the 4D Systems display. There’s also a neat printed case for the display, making a very professional-looking standalone controller a weekend project instead of a months-long ordeal.
Thanks [Antonio] for sending this one in.
This little device is a prototype cellphone based on the ATmega128 microcontroller (translated). It boasts a 2.4″ touchscreen display which serves as the keypad, and uses the SIM100S module which takes care of the GSM radio communications. But the hardware isn’t the only attractive part. Judging from the screen shots a fair amount of time went into building the user interface too.
We seem to have a bounty of cellphone builds recently. This one is quite clean, and boasts a smaller footprint, and larger screen than this barebones example. There is a white paper available if you’re interested in digging a little deeper than the overview post. But it’s written in Czech and we didn’t see a way to provide a machine translation other than copying the text from the PDF file and pasting it into a translator.