Building The Slimmest Raspi

slim_pi

[Colin], AKA [Domipheus], was working on a project to monitor a thermostat with a wall mounted Raspberry Pi and a touchscreen. Simple enough, but the Pi has a problem: The plugs are all around the perimeter of the board, and with a TFT touch screen shield, it’s a bit too thick to be wall mounted. What followed is a hack in the purest sense: [Domipheus] removed and relocated components on the Pi until the entire Pi/display stack was just a hair over 10mm tall.

A Raspberry Pi Model A was used for this build, meaning the Ethernet jack was gone, and there was only a single USB port to deal with. Still, the highest components – the RCA and audio jacks – were too tall and needed to be removed; they weren’t going to be used anyway.

After these components were gone, [Domipheus] turned his attention to the next tallest parts on the board: fuses, caps, and the HDMI port. For fear of damaging the surrounding components when removing the HDMI connector the right way, this part was simply hacked off. The large tantalum cap near the USB power connector was removed (it’s just a filter cap) and the large protection diode was moved elsewhere.

Slimming down a Pi is no good without a display, and for that [Domipheus] used this touchscreen thing from Adafruit. Things got a little complicated when the project required the ability to remove the LCD, but you can do amazing things with a DIP socket and a file.

The end result is a Raspberry Pi with touchscreen display that’s just a smidgen thicker than a CD case. It’ll fit right up against a wall in its repurposed enclosure, and the end result looks very professional.

[Thanks Luke via reddit]

Simple Touch Controller Frees Up USB Port

touch screen demonstration using text

[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.

Emulating Touchscreens In Python

DOS

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.

Hackaday Links: September 8, 2013

hackaday-links-chain

“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.

Critter Cam Hacked From An Old Cellphone.

critter-cam-hacked-from-old-cellphone

[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.

LEGO Stylus Solves Ruzzle Tablet Game

mindstorm-ruzzle-solver

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”

Touchscreen Control For A Reprap

display

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.