Category Archives: Front Page
links for 2009-01-14
Twitter Weekly Updates for 2009-01-04
- First day at work in a week. It’s like I just got back from a vacation. #
- Need new year’s party! #
- Where are the good parties in Portland this New Year? #
- Sounds like Backspace/Ground Kontrol will be fun, as does Someday Lounge, and Saucebox has DJ Mr. Mumu and DJ The Perfect Syn. What else? #
- The portland indoor smoking ban is now in effect! Wish it were before my clothes got saturated with smoke. #
- Eating pho and watching Shogun. #
- Another night of Pho and Shogun! My life rocks! #
- Mmm.. Wiibrew. #
Powered by Twitter Tools.
links for 2008-12-31
links for 2008-12-19
links for 2008-12-11
The Wii Matrix Board
For dorkbotpdx last night, I made this little toy:
It’s an 8×8 red+green LED Matrix, driven by three shift registers driven by a Bare Bones Board Freeduino by Modern Device Company.
Before the meeting I just had it flashing fun patterns based on odd bit-math equations. During the meeting, I was urged to add some code to make it controllable by the Wii Nunchuk. So, I wrote a simple program that takes the X and Y of accelerometer and plots it on the matrix.
I drove the LED Matrix with three shift registers: One 74HC595 8-bit register gave power to the rows of the display, and one Maxim-IC MAX6969 sank current for the columns to the display. To turn on row 1, column one, you shift “B10000000″ into the row register, and “B10000000″ into the column register:
1 0 0 0 0 0 0 0 1 x o o o o o o o 0 o o o o o o o o 0 o o o o o o o o 0 o o o o o o o o 0 o o o o o o o o 0 o o o o o o o o 0 o o o o o o o o 0 o o o o o o o o
Altogether, it was about 30 lines of code to drive the matrix with some fun patterns.
Prototyping boards from uCHobby and Wright Hobbies
I just received this set of prototyping boards from ucHobby and their sponsor Wright Hobbies!! Hooray!
I’m psyched. I have some projects I want to do that these boards will be perfect for.
Electronic Birthday Candle
In order to encourage us to play with electronics more, JWA and I have begun doing monthly challenges. For our inaugural challenge, we decided upon an LED Birthday Candle. This is my entry to that challenge.
You blow the center pole towards one side, and the LED shuts off. To turn it back on again, blow it the other direction. It’s a circuit known as a bistable multivibrator, or “flip-flop”.
I do like that it’s so simple and cheap, though.
My parts list is simply:
2 – 10k ohm resistors
1 – 1k ohm resistor
1 – 220 ohm resistor
2 – 2n3904 NPN Transistors
1 – LED
3 – AAA batteries (this thing’ll last forever!)
Not including the batteries, this thing costs less than 15 cents in parts. If I could work out the “blow” mechanism a little better, I think this would be a marketable product.
Okay, now for some photos:
Before being shoved in the pill bottle:
I had originally wanted to be able to shove this thing into a fat straw, like you get with a bubble tea, so I made it as small as possible, and soldered the pieces together straight rather than using protoboard:
Next: Brighter LEDs!
This is a Blog entry…
Awed By The Beauty Of The Light
Arduino
I’ve recently become enraptured with a little microcontroller development board called the Arduino (pronounced “Arr-dwee-no”).
This little thing is a great way to get started with electronics. You hook some electronic component to it, write a little bit of C, upload it to the board, and “tada!”, you’ve invented some new Gizmo.
Healthy Hamburger Helper
1 box double cheese hamburger helper
2 cups nonfat milk
1 1/2 cups hot water
6.5 ounces whole wheat rotini
1 pound frozen chopped spinach
1/2 pound ground turkey
Prepare as per box instructions. Yum!
RPC/IPC and Messaging
Advanced Message Queuing Protocol
..An open protocol for messaging systems.
Some implementations of AMQP:
* Apache QPID
* RabbitMQ
* OpenAMQ
And some more information about it:
* http://www.amqp.org/
Potentially relevant JEPs to the System Management project
0142 – Workgroups
This is for sending messages to roles. Several entities may join a Workgroup queue, and other entities may request chats with the workgroup (which then routes to the different entities when the chat is accepted by one of them). So, for alerting, we can send to the “alerting” workgroup, which will route to an appropriate AlertAgentBot.
0095 – Stream Initiation
For setting up a binary stream between two entities. This is cool because it could let us push all system checks to the nodes over the JabberNet. So we have a core stub ManagementAgent on each managed node, and it just logs on, and bootstraps itself.
0137 – Publishing SI Requests
For publishing available binary streams (using pubsub). So now our binary distribution nodes can publish available code, and our ManagementAgent stub can see what’s available for pulling.
0135 – File Sharing
Provides a way for entities to publish files to other entities. This looks kinda like what 0137 does, except farther evolved.
Combined, a bootstrap would be something like:
* Agent starts
* Agent checks local cache for code, loading what’s necessary.
* Agent receives pubsub list of available code
* Agent downloads (and caches) what it needs.
0136 – Message Archiving
For using the Jabber server as a persistent message store. Provides a method of adding, updating , and removing items from the store. This could be used as an audit log for the Agents.
Patch Check Advanced (Solaris)
Solaris patching is, frankly, a pain.
Patch Check Advanced makes it less painful– even pleasant.
It’ll automatically download the patch list from Sun, correlate it against what you have on your system, and present you with a list of what needs to happen. You can tell it to install all recommended patches, all security patches, or all the patches that don’t require a reboot (saving those for special occasions).
Extremely cool tool.
New Photos
Fog
At dusk today, the fog rolled in.
Conserver and Sun X4100s
X4100s have a pretty cool integrated lights-out management card, but it doesn’t have an easily integrate with Conserver.
To fix, I created an expect script named “ilom-connect” like this:
#!/usr/bin/expect -f expect { "(yes/no)?" {exp_send "yes\r"; exp_continue; } "password: " {exp_send "\r"; } } expect "\\-> " send "cd /SP/console\r" send "start\r" expect "(y/n)?" exp_send "y\r"
Then, in conserver:
console x4100 { include sun-ilom; exec ssh -l admin x4100-m; type exec; initcmd "/usr/local/sbin/ilom-connect"; }
Slashfood
Slashfood is a delicious food blog, full of delicious looking food porn.
Yum.