udev rule for OpenOCD

If you are debugging a board using the Atmel ICE debugger with OpenOCD, you may want a udev rule so you don’t have to run commands as root.

This was the incantation that worked for me. I added the file /etc/udev/rules.d/42-openocd.rules with the following contents:

ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2141", ACTION=="add", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2111", MODE="666", GROUP="plugdev"

Then, reload your rules with:

sudo udevadm control --reload-rules

Unplug and plug back in the debugger and you should be able to enjoy non-root debugging.

nomnomnom — regularly eat your cookies from Chromium

Cookies on websites both suck and are incredibly useful. They are useful because it’s convenient to not have to re-enter usernames and other stateful pieces of data. They suck because cookies are used to track you and they remember things that the website considers useful but you may not.

By the way, if you don’t have the EFF’s Privacy Badger extension installed, go install it. Privacy badger does care.

Let’s say you like to read the NYTimes but you may find that the 10 article limit per month to be a bit restrictive. After all, you go to your local library and read the gray lady there but sometimes well, you also re-read them online. But instead of reading the article you receive a bunch of indistinguishable-from-malware popups about reading more than 10 articles per month. How to get rid of them?

Well, you can just go clear your cookies in Chrome/Chromium. But chrome stores cookies in a SQLite database so you could make a script to go into the database, and remove offending entries. If you were to go and do that, say on Linux, you might end up with a SQL file like this:

delete from cookies where host_key LIKE '%nytimes%';

If that file was called nomnomnom.sql, you could have a script called nomnomnom.sql that did

sqlite3 $CHROME_COOKIES < ~/bin/nomnomnom.sql

Then you could add this to your crontab to say, get rid of the nytimes cookies everyday. As an example.

Arduino libraries

Arduino libraries

I’ve been working on a few Arduino libraries lately. Since there is no package manager for Arduino1 you have to install libraries manually. Generally, this is not a big deal as you just need to plop the library in your /Arduino/libraries/ folder. If you are writing a library, spend the extra effort and make the library conform to the Arduino IDE 1.5 Library Specification. This will make it even easier to plop libraries in that folder and plus, your library and examples, will nicely display in the IDE.

This is an Arduino Library. Punny :)
This is an Arduino Library. Punny 🙂

However, the documentation is very sparse about what keywords are. Basically, keywords are used by the IDE to perform syntax highlighting and thankfully, this post provides some clarification. I also submitted an issue so hopefully they improve that page. I guess I could have edited the wiki directly, but I couldn’t find a link to the actual keyword definitions.

Lastly, if you do create an Arduino library, pretty please, with sugar on top, pick an OSI Approved License. It may be fun to pick something else, but consider that there may be somebody who wants to seriously use your library and unless you pick a clear license, it will be unclear how to incorporate your library with their larger work.

Enjoy the snow while it lasts.

  1. Feel free to run off with this good idea. 

Hacking the SAINTCON Badge

Hacking the SAINTCON Badge

SparkFun Electronics gave me a free pass to SAINTCON, a networking security conference in Odgen, Utah. How did I receive this? Well, social media addiction has its rare benefits and I was the first to respond to a tweet.

SAINTCON hosted a Hardware Hacking Village (HHV) this year and as the recipient of a SparkFun-sponsored ticket, I felt I should check out the HHV immediately. I sat down, soldered my badge, and then proceeded to complete all five hardware challenges; I was the first to complete hack the badge. That’s what happens when a SparkFun social-media-addict goes to a conference.

Completed badge with the blinky kit.
Completed badge with the blinky kit.

Continue reading “Hacking the SAINTCON Badge”

My book, BeagleBone for Secret Agents, is now available

My book, BeagleBone for Secret Agents, is now available. The title is slightly misleading as you need not be a secret agent to enjoy this book. 😉 There are five self-contained projects involving electronics, cryptography, and various software packages but I wanted to write a book that was more than just a collection of projects. In BBfSa, I tried to motivate the social and individual importance of using software like Tor, GPG, and OTR. While the projects are cool, IMHO, I’m hoping that readers will appreciate the need for and difficulty of developing privacy enhancing technologies.

I picked projects that were explicitly more detailed than one could describe in a blog post. Most of them combine hardware and software and I would describe the projects as challenging, but attainable. If you decide to buy it hopefully you not only enjoy it, but learn something as well.

The book is available as a DRM free eBook and as a bound collection of printed dead-trees. I’ve stopped reading with eBooks readers, but there are just over 100 references, most with URLs, and I can appreciate the convenience of using one. You can visit my BBfSa page to see its availability or buy it direct from Packt Publishing.

Thanks to the many people at Packt who helped with the direction, editing, and layout. I was lucky to have very talented reviewers. Lastly, thank you Nate for writing an incredibly insightful forward and to SparkFun, without whom the projects in this book would not have been possible.


I’m enjoying my ACM membership.  A few weeks ago, they offered a very interesting webinar on IPv6 Security.  Also the student magazine, XRDS, is well put-together.  The theme of this issue is: The Complexities of Privacy and Anonymity.  It’s a well-timed theme and complements my privacy class.  But the choice of back cover… oh the irony… it hurts…



Mad Men of Google+ turn you into an Ad

Google has automatically enrolled all Google Plus users in “shared endorsements.”  With shared endorsements, Google will use your profile picture in advertisements to your friends.  Then they discourage you from disabling the feature.  In protest, Google+ users are changing their profile picture to that of the Google CEO, Eric Schmidt.

While that is hilarious, I’d rather turn it off.  Go to Google+ settings -> Google+ and turn off shared endorsements.  Srsly Google?!

This is very annoying.  Obviously, if they defaulted shared endorsements to off, nobody would switch it.
This is very annoying. Obviously, if they defaulted shared endorsements to off, nobody would switch it.