MAKE engineering intern Nick Raymond can’t get enough of making. When he’s not at the Make: Lab building projects for upcoming issues of MAKE, he’s at his home workshop crafting useful objects like surfboard slip covers, light boxes, and this solid, classic wooden table, which he documented and shared with the community on Make: Projects. From the introduction:
Before moving off to college I wanted to build something that would be suitable as a kitchen table and double as my desk for studying. It needed to be sturdy and robust enough to last through college and for the years to come, yet I did not want to build a piece of furniture that would require four guys and a moving truck to move it up a flight of stairs.
Using mortise and tenon joints in combination with inexpensive kerf-mounted corner brackets, I was able to build an attractive and rigid table that can be disassemble and rebuilt all by myself.
When you’re ready to move, all you have to do is unscrew the tabletop from the frame and unscrew the eight nuts from the hanger bolts. Make your own following Nick’s how-to on Make: Projects. You can’t really go wrong with classic and convenient.
Don’t forget, entries for the prize drawing in our third Make It Last Build, the Drawbot, is ending tomorrow night at 11:59pm PST. To be eligible for some awesome prizes, all you have to do is load pictures to the MAKE Flickr pool, and tag them “makeitlast.” Unlike our previous judged contests in this series, this is a random drawing. So any pics tagged with “makeitlast” are eligible, even in-progress shots like the above, uploaded to the pool by Colin Faulkingham. We know some builders were having trouble with their bots and were concerned they wouldn’t have them done in time. No worries. Progress shots are fine.
Do a quick Google News search for “women in technology” and your results are sure to be bemoaning the lack of female bodies in the industry (or maybe just results for that White Town album). Last year both the NYT and the WSJ had articles related to the topic – and published within a few weeks of each other – with the WSJ’s title being “Addressing the Lack of Women Leading Tech Start-Ups” and the intro to the NYT piece setting the tone with: “It’s become a familiar lament: Where are the women in technology?” Likewise, the Wikipedia entry for “Women in Computing” focuses almost entirely on the decline of women in tech-related fields, the modern day fights against sexism in the industry, and has sections like “Attracting women in computer science” and “Gender theory and women in computing.” (Interesting side note: there is no entry for “Men in computing.”)
Very rarely do stories of women and technology vary in tone from the gender gap theme. Where are the women? Well, heck, we’ve been here all along – something we’ve recently pointed out in our Valentine’s Day piece about ENIAC. So, in honor of Women’s History Month and Ada Lovelace Day (March 24th), and all the women in tech, we’ve decided to pay homage by counting down the 15 Most Important Women in Tech History.
I love how many of the maker geniuses who work on our site are usually up to something behind the scenes — some new project, new product, Pinky and the Brain-type schemes for taking over the world. I was talking to new contributor Riley Porter the other night about the Make: Arduino page he’s been helping us with and fun things we could do on it. He said: “Hey, I have something that might be cool.” And then he proceeded to tell me about a new Arduino Shield he and fellow DC hacker (and MAKE contributor) Alden Hart have been working on. It uses the grbl (pronounced “garble”) motion control language and the Arduino Shield formfactor to create a cheap 3-axis motion control system that can plug into Arduino boards. “Do you think you’d like to announce this on the site?” Heck yeah!
Hexagons are cool but a bit of a pain because their spacing involves a root 3, a non rational number. This means you can’t lay it out on strip board, it needs a special PCB. That’s why I built my CNC project mainly to do this project.
The hexagonal spacing allows different sorts of sequencers to be built with sequencing tracks going off at different repeating rates. I have only just begun to explore the possibilities that this opens up. It also allows a more comprehensive way of generating a keyboard for music.
Mike will be showing off the Hexome at the UK Maker Faire on March 13th.
This Codebox shows you how to use the ZXing library (pronounced “Zebra Crossing”) to identify QR codes in a live webcam feed. (Although Processing has a great contributed library called QRCode, the ZXing is much faster and can do recognition in realtime.) The sketch looks for QR codes with an encoded O’Reilly books ISBN (ISBNs are standard book identifiers). When it finds one, it superimposes the book’s cover image onto the video over the QR code.
About QR Codes
Before jumping into the code, a bit of background. A QR code has two basic parts — the three positioning elements, which are the large square blocks at the three corners, and the data elements, which is everything else. The positioning elements help the software determine the QR code’s location and orientation. The data elements represent the encoded data. For example, it could be a product number, a URL, or (in our case here) an ISBN. The code also has some information used for error correction. The following image should give you the basic idea:
You can use a site like Kaywa to generate the code. Here’s an example of how to generate a code for “9780596510510,” the ISBN for Tom Igoe’s book Making things Talk:
Setting up the sketch
The first thing to do is download ZXing and use your Java compiler to create two files: core.jar and javase.jar. If you’re comfortable with Java, all you have to do is go into the “core” and “javase” directories and run ant to build the jar files.
If you’re not, I’ve compiled them for you. (But, don’t tell anybody — this probably violates some license requirement or the other. Just download javase.jar and core.jar. (A jar file like a zip file for Java that compresses and bundles multiple files.)
Once you have the jar files, fire up Processing and then use “Sketch -> Add File” to add them to your project. Then paste in the sketch code into the main code window. You can get it from the qr_codes.pde file or pull it from the following codebox:
Print off a few QR Codes for various O’Reilly books and start the sketch. When you show the codes to the webcam, you should see the cover image appear after a short delay. Of course, you can encode any other information you like.
The setup is similar to the one we’ve used in the posts on OpenCV. First, we set up a new reader object, like this:
com.google.zxing.Reader reader = new com.google.zxing.MultiFormatReader();
Then, we pass the reader an image that might contain a QR code. In this case, we’re just passing it the frames coming in from the webcam. It’s slightly more complex in that we have to do a couple of transformations on the raw image before we can use the decoder — this is all done in the draw() method:
LuminanceSource source = new BufferedImageLuminanceSource((BufferedImage)cam.getImage());
BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
Result result = reader.decode(bitmap);
Once we’ve called decode(), the reader object will have data about any QR codes it’s detected. The getResultPoints() method returns the coordinates of each of the position indicators, and the getText() method returns the encoded text. Assuming we found something, we then just try to pull off the corresponding cover from the O’Reilly site and display it. As one bit of a wrinkle, we keep track of the last ISBN we found so that we’re not constantly loading the same image on every frame.
This demo should give you most of what you need to do your own QR hacking with Processing. Have fun!
PS: Remember, it you’re using Windows, you’ll need to install WinVDIG and QuickTime to use the webcam in Processing.
Getting Started with Processing
Learn computer programming the easy way with Processing, a simple language that lets you use code to create drawings, animation, and interactive graphics. Programming courses usually start with theory,but this book lets you jump right into creative and fun projects. It’s ideal for anyone who wants to learn basic programming, and serves as a simple introduction to graphics for people with some programming skills.
Bart from buildlog.net wrote in to share his latest DIY laser cutter design, the 2.X laser. The mechanical parts are all either off-the-shelf or lasercut, and it can be controlled using a number of standard electronics sets. Oh, and did we mention it’s all available with a Creative Commons license?
The second generation open source laser cutter/engraver design from buildlog.net is complete. The new machine is called the Buildlog.net 2.x Laser. The name comes from the fact that this is the second generation machine and it is basically a 2 axis design. The third, vertical axis, is manually controlled with an optional upgrade to digital control. The 2.x Laser takes all the optimizations learned from the first laser and all the other lasers documented on buildlog.net forum.
The usable work envelope is 12” x 20” x 4”. The internal design has been optimized so the overall size of the machine is much smaller than the previous design and can easily fit on a small table. It is designed to work with 40W CO2 lasers sealed gas lasers. The frame is built from inexpensive 20mm aluminum T Slot extrusion and the skin is made from a painted aluminum and HDPE laminate.
Many an experimenter, hacker, tinkerer, & maker have heeded the call of the mighty matrix – and it’s no mystery why. A small army of LEDs elegantly wired in grid formation would be difficult for anyone with an appreciation for electronics hardware to pass up – even after considering the sometimes daunting wiring job that stands as prerequisite to entry.
Needless to say, I had a lot of fun working with LED matrices for this installment of the Circuit Skills series. Many folks have published code for their matrix projects and it was great to be able to try some of them out. Breadboarding a two-color matrix did end up being a pretty tedious task – interested experimentors can pick up a one-color matrix kit from Jameco which should prove much easier to work with.
Oh, and I’ll be posting some of the adapted code used for this project, once I have a few kinks worked out – stay tuned.
The 555 timer is configured as a pulse width modulator in a non-traditional configuration. If I used the standard approach and connected the input to the CV pin, the low impedance of the pin would prevent the circuit from receiving any radio signals. I had to invert the circuit and tie both high impedance analog pins, Threshold and Trigger to the radio signal input. This is the reason why the CMOS version of the 555 timer performs much better than the standard bipolar, which has higher input bias current.