Python script migrates from dying Google Reader to Evernote

google-reader-to-evernote

We’re sure you’ve heard by now that Google has decided to close its RSS feed aggregator service called Google Reader. We’ve got to remember to get our list of thousands of great hacking blog feeds off of there before it’s gone. But just preserving the list is rather easy. [Paul Kerchen] has a bit different problem. He’s got hundreds of articles starred and he wants to preserve a way to find those pages again. His solution was to write his own Python script to migrate starred Google Reader articles over to Evernote.

We’re not here to promote the Evernote service. But just so we’re on the same page, it’s an archiving system that lets you save things like webpages and text documents for access on a wide range of different platforms. So all that really needs to happen is for [Paul] to get the list of links from his starred articles folder formatted for import on Evernote. It starts by using Google Takeout to download an archive of his account data. Within this dump is a JSON formatted file called ‘starred.json’. His script parses the data and imports each article into Evernote. There’s even rate limiting to manage the daily import maximum of free accounts.

Wiimote Controlled RPi Robot

Wiimote RPi Robot

[Brian] has brought together a powerful collection of hardware to build a robot. The end goal is to have a robot that’s controlled by a Wiimote.

The Wiimote communicates over Bluetooth with a Raspberry Pi, which is running a Python script. This script uses the CWiid Python module to communicate with the controller, and [Brian] has detailed instructions on getting the Wiimote working with a RPi. The RPi controls an ATmega based development board over SPI, which drives an h-bridge to control the two DC motors that move the robot.

[Brian]‘s code for this could be helpful for anyone looking to control their RPi with a Wiimote. Since Wiimotes and Bluetooth dongles are fairly cheap nowadays, this is a great way to drop in wireless control to any RPi project, or even to control your media center from the couch.

After the break, check out a video of the build in action

[Read more...]

Optical data transfer project at local school’s family science night

optical-data-at-family-science-night

[Dave] wanted to show off a project at his 4th-grade son’s school during their family science night. We haven’t heard of an event like this before but it sounds like a fabulous idea! He had a new laser he wanted to include in the project, and noticed that his son was learning about how ASCII maps letters to binary number when the idea struck. He ended up building an optical data transfer system that demonstrates binary code.

This presents a fantastic learning opportunity as the project invited the school kids to select encoded strips like the ones seen above to form a secret message. The laser is pointed at a photosensor which is being read by a Raspberry Pi board. The Python code looks for a baseline and then records increases and decreases in intensity. Since the translucent tokens have either holes or black lines for 0 and 1 the baseline approach does away with the need to clock in the data. [Dave] reports that everyone who tried out the experiment was fully engaged at the prospect of pushing pieces of tape through the sensor and watching their secret message appear on a monitor.

He was motivated to write about this project after reading about data transfer using an LCD screen and photosensor.

Python frontend is a GUI for different microcontrollers

python-frontend-gui-for-microcontrollers

[Navin] has been hard at work producing a GUI which works with different micocontrollers. The idea is to make it even easier to develop projects by simplifying the feedback and control you can get from the prototyping hardware. The best part about it is that he designed the software to interface with any hardware which can be programmed in C++.

The screenshot above shows the program communicating with an mbed board which has an ARM microcontroller. But the Arduino board (which uses an ATmega chip) is supported as well. Support for additional architectures can be added by writing your own configuration file for the chip. The Python program then asks for the com port it should be using for this session.

The source package, including the code which runs on the microcontrollers, can be found at the project repository. The functions used in the sketches are quite simple and should be a snap to drop into your own code projects.

WeMo without a smartphone

wemo-without-the-app

[Matt Galisa] decided to try his hand at setting up the Belkin WeMo outlet without using a Smartphone app. The hardware is a pass-through for mains voltage which allows you to switch the plug over the network. It has a built-in WiFi module which normally connects to your home network. But the first time that you power it up it announces its own SSID designed for an iOS (and recently Android Beta) app to connect to in order to enter your AP credentials.

He started with this Python script used for WeMo hacking. It was originally meant to issue commands to the outlet once it had passed the initial setup. [Matt] followed along but couldn’t get an answer on the port he expected. It turns out that the device listens on a different port until the initial setup is complete (probably so that you don’t mess up other outlets on the network that are already working correctly). His next challenge was to manually set the WPA credentials. This never really worked and he ended up using a virtual AP without password protection through DD-WRT. From there he was able to set up a Python script to turn on, off, and toggle the state of the outlet.

If you’re looking to dig deeper into the device’s security check out this project.

Minecraft for RPi Released

Minecraft for RPi

Mojang, the folks behind Minecraft, have officially released Minecraft: Pi Edition. This free version of the popular game is optimized to run on the Raspberry Pi hardware, and has an API that exposes the game’s internals to a variety of programming languages.

Mojang intends this release to be an educational tool for teaching and learning programming. Since the API provides instant feedback in the game, it could be an interesting way to make learning to code fun for people of all ages.

Having access to the API on a RPi also means that the game can be connected to the real world. For example, using Python and the RPi.GPIO, pins on the GPIO header can be used for output or input. This creates a slew of possible hacks that interface with the game.

Any ideas on what you’d like to do with Minecraft on a RPi? Let us know in the comments. Also, we coincidentally just printed a minecraft pick on our 3d printer. There’s a time lapse video of it after the break!

[Read more...]

Quantifying Cloudiness with OpenCV

What Can I see From the Shard?

The Shard is the tallest building in Western Europe, and has a great view of London.  The condos in the building are very expensive, and a tourist ride to the top of the building costs £24.95.

Since the value of the view is so high, [Willem] wanted to quantify the quality of the view at any given time. His solution is the Shard Rain Cam. This device combines a Logitech webcam with a Raspberry Pi to capture a time-lapse set of images. These images are fed to a Python script using OpenCV which quantifies the cloudiness.

[Willem] also had to build a weatherproof enclosure with a transparent window for the camera and RPi. ‘Clingfilm’, which is British for saran wrap, and mineral oil is used to improve the waterproofing of an IP54 rated enclosure.

The resulting data is displayed on www.whatcaniseefromtheshard.com, which provides an indication of whether or not the view is worth £24.95. All of the Python code is available, and is a good starting point for learning about image processing with OpenCV.