school started on monday but i'm not quite ready for it. i'm becoming ever more desperate to avoid homework. today, i spent four hours putting an optical mouse into an altoids tin.
been hanging out with billy nickey a lot more since i got back from dc. it's been good, he's a good kid. i think we're gonna try to get a house together. the hard part is that we both want to be on the west side of the river for school. it'll take some searching to find an appropriate place.
i've spent the last few months working on a persistence of vision (pov) circuit for a bike wheel. this is my first foray into electronics and micro-controllers so, while it works, it's a bit of a hack. in fact, you might just want to skip on down to the "things to fix" section.
the project is based on two of lady ada's plans for pov projects, the minipov and spoke pov. the minipov uses only a single pic16f630 while the spoke uses an amtel micro-controller, an eeprom, and several 74x259 8-bit latches.
i wanted to enhance the minpov to display text on both sides of the bike wheel. i chose to use microchip's pic because they sold a cheap programmer and i had lady ada's working source code. the biggest challenge with displaying text on both sides of the wheel each side needs to read from a different end of the string. if you're displaying ABC the left side needs to start at C and the right side needs to start at A. that meant i needed 16 outputs, four more than the 16f630 has. to work around this i used an 8-bit addressable latch for each side.
the minipov project uses a simple bitmap to determine what to output. i wanted to have separate bitmaps for each character and link them together in a string. i started by modifying the minipov to use two jump tables. the first selected the character from the string, and the second returned individual lines in the character. once that was working, i started trying to figure out how to read it backwards. i wasn't able to think of anything cleaver so i decided to throw memory at it. i duplicated the code in and reversed order.
i went through a hell of a time finding the proper LEDs for this. trying to find bright LEDs that had a wide viewing angle and didn't cost a buck each was hard. i probably ordered ten different kinds from digikey. the ones below are 1500 mcd with a 70° by 40° viewing angle and only cost about 30 cents each.
| description | quantity | supplier | part number |
|---|---|---|---|
| PCB board | 1 | advanced circuits | custom order |
| PIC16F630 8-bit PIC microcontroller | 1 | digikey | PIC16F630-I/P-ND |
| 14-pin IC socket | 1 | digikey | AE7214-ND |
| 74HC259 8-bit addressable latch | 2 | digikey | 296-8291-5-ND |
| high brightness LEDs | 16 | digikey | 160-1620-ND |
| 3 volt lithium battery with soldering tabs | 1 | digikey | P201-ND |
| SPDT slide switch | 1 | digikey | EG1901-ND |
here's the PIC assembly code. to assemble it you'll need microchip's mplab IDE or the gnu PIC tools. you'll need something to program the PIC with. i threw down the $30 for microchip's pickit 1 flash starter kit.
the board layout was done using cadsoft's freeware version of eagle. you can download the board and schematic files by clicking on the images below.
this is the first board i've ever designed so i made plenty of mistakes :
in the next revision i've got several things i'm looking at changing :
i'll get some more photos up here when i'm making the next set of them.
update: stoked. i got linked to by hack a day. my 15 minutes of internet fame begins.
another update: people have emailed to ask me if i plan to sell these either assembled or as a kit. i do not. my feeling is that you shouldn't sell something unless you can stand behind it. this project is really just a prototype put together by someone who hadn't used a soldering iron since he was 12 years old (i actually had to go down to fry's and buy one). i'm learning it as i go. i was inspired by lady ada and the whole make crowd to stop staring at other people's cool projects on the internet and start making my own.
makeshiftmouth: so you all bax in the ptown?
koppernigk: yella
makeshiftmouth: awes
koppernigk: it's been a little wierd
makeshiftmouth: how so?
koppernigk: the whole problem with air travel is that it doesn't give you any concept of space
koppernigk: i feel like i should be able to just ride/walk to where i was in dc
makeshiftmouth: hehe yeah
koppernigk: abrupt changes in location. my life here was just put on hold and then i get to pick it back up. kind of like the last 2 months didn't happen, i just dreamed them.
makeshiftmouth: yeah i know that feeling
maybe i'll get around to summing up my time in dc. if my track record of doing so on previous trips is any guide i probably won't. a day back and it already seems like something that happened a life time ago.
To The Honorable David Wu,
I am writing to express my displeasure about The New Republic's report that you have signed a letter to Speaker Hastert supporting bankruptcy "reform". The Senate's bill does nothing to close the loopholes that let the wealthiest escape their debts, but will cause irreparable harm to those in the middle class. The credit card and banking industries make record profits under the current system of charging higher interest rates and fees to individuals they know may default.
Your constituents aren't asking for this "reform." In fact, those with blogs are puzzled at your decision to support it:
One of these constituent-bloggers went so far as to check the list of donors to your 2004 campaign looking for an explanation. They found strong support from labor but no money from the financial service sector. If you're not beholden to their money and why support this bill? What benefit will it bring to those of us in the 1st district?
Continuing to support this bill would be a mistake on par with your vote for Bush's Medicare plan. There is no reason to support this bill. Please consider your constituents, not the credit card companies.
Sincerely,
Andrew Morton
flickr seems to be going down more than jeff gannon. i'm getting pretty sick of seeing that "getting a massage" message. i just want to upload today's pictures before i go to sleep. maybe they'll add a flickr.state.ismassaged method to the API so we can keep track.
Had a pretty amazing day. I've declared it Dan Day. The weather is unusually good. Went and got falafel for lunch/breakfast from the New Amsterdam Falafel Shop, then had a cup of good coffee at Tryst. Went on a pretty epic bike ride to find a radio tower I'd seen and take its picture. Ended up seeing a lot of DC that was new to me.
I was beat from fighting headwinds so as I neared the apartment, I stopped for a 6-pack. Decided that rather than going home, I'd like to go drink in a park. Found myself a stretch of creek and worked my way through half of it. As I sat there enjoying what was probably one of the best days of my life, I realized that at just about ever point I'd been doing what Dan would have done. I miss that kid. I hope he's having the time of his life gallivanting all over the Americas. If I have to buy him a fucking plane ticket and find him a job to get him to move to Portland I'm gonna do it.
yesterday krista and i got a little sight-seeing in. she took half day of work and we went on the tour of the us capital building. i'd turned my id in on my last day so we stopped by the office and joined up with one that had already been scheduled.
after that, i rode down the mall to take some pictures. at the the vietnam memorial i locked up the bike and walked along it. more than any other memorial i've been to, it attacks you on a very low, gut level. as i started walking along, the wedge of granite slowly rises up. at first it was easy to read each individual name, but it became harder and harder to separate the names. they just run together. it's a struggle to remember that each name represents not just a person who died, but a family and group of friends with a hole in it. as the granite rose above my head i felt like i was walking into a grave. i came up to a photo that someone had left along the wall, it looked like a color photocopy in a cheap frame. i imagined someone left one like it every day or every week only to have it collected up by the park service every night. seeing only one or two more offerings reminded me of part of a pogues song.
And now every April I sit on my porch
And I watch the parade pass before me
And I watch my old comrades, how proudly they march
Reliving old dreams of past glory
And the old men march slowly, all bent, stiff and sore
The forgotten heroes from a forgotten war
And the young people ask, "What are they marching for?"
And I ask myself the same question
And the band plays Waltzing Matilda
And the old men answer to the call
But year after year their numbers get fewer
Some day no one will march there at all
in a way i feel like it's already happened. all those people in vietnam died for what? I sure don't know. all i could think about was those who've died in iraq, and i don't feel like we've learned a thing.
it was a pretty sobering experience. my reveie was broken when i realized that i had to get home because we were supposed to meet my cousin steve and his wife rachel to go see the wizards play the golden state warriors. we at a little and then metro'd over to meet them. it was quite a bit of fun, the wizards were horrible but the people behind us were shouting some pretty hilarious things. the best part was about five minutes before the end of the game. the wizards were already down by about 10 points and they kept getting distracted and leaving one warrior open and he kept nailing the 3-pointers. every time he'd get one a couple hundred people would get up and walk out. by the end of the game the stadium was half empty. on the plus side i got a wes unseld bobble head doll.
this trip has gone by so quickly i almost don't know what happened. today is my last day at work. i got the grip and grin photo with the congressman today on the east steps of the capitol. i'm really looking forward to getting the photo back. they're going to have a little going away thing for me in a bit. i was asked what i wanted to have at it but beer was, apparently, not the correct answer so i'm getting milk and cookies.
i've still got some time this and next week to go hit up the sights i haven't seen yet. then it's time to pack up, clean the apartment, ship the bike and get the hell out.