2 clicks for more privacy

To address privacy concerns regarding Facebook and similar I use a plugin that prevents the transfer of casual servers to third parties. The technique was developed by heise.de and was implemented as a wordpress plugin by Helmut-Peter Pfeufer.

The concept is simple, instead of the usual buttons for Facebook, Twitter etc. a simple image is shown that looks similar to the original button, but grayed out. Upon click on the button the “real” button is loaded and replaces the image. This is the first time data about the visitor is transferred to the corresponding site. A second click on the button sends the recommendation.

The user has the option to keep the buttons for the sites always enabled, so they will act as normal buttons.

New project: Wordclock

For some time now I was intrigued by wordclocks. Sadly, all clocks I found so far are quite pricy, so I decided to build my own, using an Arduino for the electronics. The clock is going to be a gift, so I’m going to keep these posts private until the gift is given, so all related posts are going to appear at once.

Yesterday I ordered the first parts for the project, an Arduino Mega 2560 along with a set of white LEDs. Originally I wanted to use an Arduino Nano, but while I was doing the concrete planning of the electronics I realized that would mean quite an excessive amount of soldering on my part. The Nano has only 14 digital pins, but for a minimal german word clock I need to control 19 individual lights, I’ll have 21. My first idea to use a logic gate fell short when I calculated the logic gate.

es ist fünf zehn viertel
zwanzig  nach  vor  halb
eins zwei drei vier fünf
sechs sieben  acht  neun
zehn   elf   zwölf   uhr

There are just too many things that can go wrong here, additionally this would be using quite an amount of space. So I’m going for the Arduino Mega, which has 54 digital pins. A little excessive, but way easier to build. I’m going to add an DCF77 radio clock module so I won’t have to bother with the functions to set the time. The module will reduce the available pins on the Arduino further when it’s connected. Integrating it shouldn’t be too hard, a library to access it from an Arduino already exists.

This is how I want to build it: The top is going to be a layer of acrylic glass, with the words being cut out somehow. I’m not sure yet how I’m going to do this, I have a couple of ideas to try. Below that I want to use a layer of diffuse acrylic, to spread the light from the LEDs more evenly. Maybe I can merge these two layes, I’ll have to try it.

Things to figure out: how to separate the LEDs from each other, how to build the case (probably thin PVC). But first things first, I’ll have to wait for the first parts to arrive. Then I’ll start playing with them.

Void

Not much happening here right now, I tried various combinations to get the motors running, but to no avail. I tried motors on M1 + M2, M3 + M4, just to make sure it’s not a bad soldering joint. I tried piggybacking both L293 ICs to allow for a higher current. I tried the motors on M1 + M3, to spread the current of the two motors evenly. The result is always the same, more or less. The motors turn for a couple of seconds, then they stop. The ICs are becoming very hot, adding a heat sink doesn’t really help.

From what I gathered by reading through the adafruit support forum my best guess is that the motors need too much current for the ICs to handle. I can’t confirm this right now because the motors are not marked in any way, so I have no idea about their specifications. I ordered a new multimeter, currently I’m waiting for it to arrive. I hope I can do some helpful measuring when it’s here.

Syntax highlighting for Arduino code [Update]

If anyone wants to post Arduino code with syntax highlighting on a WordPress site, that is quite easy to set up. You need only two things:

The plugin needs to get installed and activated. The language file needs to be placed in $WPROOT/wp-content/plugins/wp-syntax/geshi/geshi. After that the code can be easily marked as preformatted text with
<pre lang="Arduino">
// arduino code
</pre>

Update 15.11.2012

I just noticed that the language file was missing in the GeSHi directory of my installation. I assume that it got deleted when I updated the plugin. Something to keep in mind for future updates.

Current setup

Just to be thorough I thought it would be good to document the current setup I’m working with.

  • one Arduino Duemilanove
  • one Motor shield from adafruit
  • two DC motors
  • one 12V power supply from an old switch
The motor shield is stacked on top of the Arduino. The motors are connected to M1 and M2 on the motor shield. The motor shield draws power from the 12V PSU, for testing purposes it is configured not to share power with the Arduino. The Arduino draws power from the USB cable which connects it to my laptop.

It works … sort of

Okay, piggybacking the IC seems to improve the performance.

I’ve been trying to run this code:

#include <AFMotor.h>
 
AF_DCMotor motorR(1, MOTOR12_1KHZ);
AF_DCMotor motorL(2, MOTOR12_1KHZ);
 
void setup() {
motorR.setSpeed(200);
motorR.run(RELEASE);
 
motorL.setSpeed(200);
motorL.run(RELEASE);
}
 
void loop() {
motorR.setSpeed(200);
motorL.setSpeed(200);
motorR.run(BACKWARD);
motorL.run(BACKWARD);
}

The motors start turning enough to turn the screws as well. After about 5 seconds the screws stop, but I can still hear the motors trying to turn them. Currently I have no idea why they can’t.

The L293 ICs are becoming quite hot, so I grabbed the first heat dispenser I could find in my assortment, it may be oversized but it should suffice.

Heat dispenser for the L293 ICs, a little oversizedThat’s it for today, let’s see what I can do about it over the weekend.