Archive for the ‘make’ Category

Hello Fun-A-Day 7!

Tuesday, February 15th, 2011

For this year’s Philadelphia Fun-A-Day project I decided to write “Hello World” programs. “Hello World” is a traditional programming tradition where a programmer encountering a new language writes a trivial program which displays the phrase “Hello World”.

This introduces the programmer to the basic syntax of the language and demonstrates that their development environment is set up properly to work with that language.

Much of our current environment runs on software, which is generally invisible to us, except when a failure impacts our lives. However, software generally starts as human-readable written text, albeit in a highly defined form using specific vocabulary.

This project attempts to make software visible, in at least a trivial way. The words and structure may differ between languages, but each program is a series of instructions to achieve some end – here to issue a friendly “Hello Fun-A-Day 7!”. Hopefully this can serve to demystify software to some degree, and remind us that software, at some point, has been written by a person.

The programs here demonstrate a Fun-A-Day variant on Hello World in several languages. I made an effort to explore historical and modern languages, compiled and interpreted languages, console and graphical programs, but avoided esoteric languages which are often difficult to understand by design.
(more…)

Using Arduino in Xcode

Saturday, February 28th, 2009

While the Arduino IDE (Integrated Development Environment) is relatively simple way to program the Arduino hardware, I found myself getting frustrated by it’s limited features after spending time using Xcode and Eclipse. There are some simple tutorials available online which demonstrate how to set up Xcode for programming the Arduino, however these didn’t “just work” for me, and were targeting arduino-0.10.

I made a few (simple in hindsight) changes to the project which has worked well for me so far. (more…)

feeling productive…iPhone glove

Thursday, February 19th, 2009

after another rough week of classes, planning and discussions about projects without actually making anything, i needed a quick productivity break. iPhone gloves.

dsc03409some quick background. the touchscreen on the iPhone and iPod Touch (as well as the older click wheel iPods and trackpad on Macbook/Pro’s) use the capacitance of skin to track touches. gloves generally prevent these type of sensors from reading (except perhaps very thin gloves). taking off a glove to use the phone is frustrating, especially when trying to momentarily check something that would only take a few seconds (text messages, e-mails, etc). (more…)

(Signal to) Noise meter + Mail

Friday, January 16th, 2009

emaildayoff_snippet(ITP 4-in-4 day 4+1, or how i learned to stop worrying and love blowing deadlines)

to complete the signal to noise meter previously posted i wrote up an apple script which calculates a ratio of messages in my mail inbox to the junk messages which have been caught. the apple script then sends that ratio via serial to the signal to noise meter. i’ve set up a rule in mail.app to trigger the script every time a message comes in. the serial output (ascii only, it seems) is thanks to SerialPort X.

it’s certainly not perfect…having a lot of read messages stagnating in the inbox brings the ratio down…but i’m posting the code below so maybe someone can figure a better way.

also, the script wasn’t triggering when called directly from mail’s rules…my workaround was to have a launcher script run ‘do shell script “osascript ” signalToNoise.scpt’. for some reason this worked when the launcher script was triggered by mail – YMMV.

oh! it just when off as i was writing this entry…the light came on, and the needle swung high….i need to clean out the junk mail!

code after the break (i always wanted to write “after the break”)

(more…)

(Signal to) Noise meter, ITP 4in4, day 4

Thursday, January 15th, 2009

For today’s project I wanted to do something with the analog decibel meter that Tymm gave me on day one. My idea is to calculate some kind of signal to noise ratio in my email inbox and to display the value on this physical meter. Since I already get a lot of noise in there, maybe the value won’t change very dynamically, but be a steady din. Perhaps I could tie into the junk mail filter to show just how much work it’s doing, like a tachometer. Who am I kidding, really, I’m likely going to jump into what all the cool kids are doing and just come up with some type of Twitter visualization… (more…)

Meggy pixel video display. 4-in-4, day one.

Tuesday, January 13th, 2009

Spent most of the day at Tymm’s house, pretending to participate in 4-in-4, but mostly drinking coffee and watching videos. I did eventually get around to tinkering with my new Meggy Jr RGB from Evil Mad Scientist Laboratories. The Meggy is a pixel game platform built around a vivid 8×8 LED matrix running an Arduino compatible ATMega168. EMSL has also released a simple to use library for managing the display, buttons and speaker. It’s really a great kit.

I decided to ignore all the nice easy stuff (more…)

meggy! MEGGY! (and nyc resistor)

Friday, January 9th, 2009

meggy boardnyc resistor had one of their craft nights last evening, where they invite folks to come in to work on just about anything “so you don’t have to make stuff by yourself.” i had been missing my community fix now that ITP is on winter break, so heading over there to assemble my new meggy jr rgb kit from evil mad scientist seemed like the things to do. (more…)

elmo hacking

Sunday, December 14th, 2008

this saturday i participated in the elmo hacking workshop at eyebeam. adrianne wortzel , a resident at eyebeam, has a project which involves synchronizing the movements of 50 tickle-me elmos. mike gazes and soyoung park realized adrianne’s idea by reverse engineering the elmo’s and creating a new control unit based around an atmel atmega168, using the arduino development environment. wireless communication is through xbee radios (so many (more…)

(big surprise) i like the Wii.

Tuesday, October 14th, 2008

Inspired by Johnny Lee’s wiimote hacking, but disappointed that the code sample was written in C# I decided to use the available libraries for connecting to the wiimote and write a head tracking sketch in Java (Processing libs in Eclipse).

Most of the struggle is that I’m not really proficient in pure Java (more…)

Hardware.

Thursday, January 31st, 2008

I went to the January meeting of Make Philly last week (or so). After watching the neat presentation by VJ No-Carrier on hacking Nintendo NES carts I somehow got recruited into a group using RFID tags for an audio/visual installation. So now I’m learning to play with RFID tags.

At the moment I have the Parallax reader communicating nicely with an Arduino, and then to a multimedia computer via serial. The project requires multiple readers, however, and I’m debating ways to get them all speaking with the software which is going to drive the show (written by someone else in Max/MSP). Any ideas?

I’m thinking of wiring multiple readers to one Arduino and tacking on some kind of reader ID byte to the RFID tag’s 10 byte ID. That way the software can sort out what to do when each reader reports a tag number. Alternatively, it would be easy to connect each reader to a USB chip, but then we’d need to run everything through USB hubs and the software would have to deal with multiple serial connections (right?).

There’s also the issue of cabling. We don’t know the size of the venue(s) for the installation yet. As far as scalability is concerned, in both the number of readers and spacial relationship, it might be best to go wireless…maybe with the Xbee radios? Something else to learn.