Educational/Interesting, iOS/iPhone/iPad, Mac OS X, Objective-C/Apple Development Apple, Bluetooth, iBeacons, iOS, objective-c, OS X, Retail
UPDATED!!! (as of 08-Feb-2014)
Lately, but not for very long (as of the writing of this article), there has been a bit of buzzy-buzzy around Apple’s iBeacon technology. It’s a mixture of software and hardware that allows iOS devices to receive one-way broadcasts from little Bluetooth “beacon” devices. It’s said to be the big “NFC killer” (NFC = Near Field Communications). I would add an asterisk to that statement: It’s an NFC killer as far as retail and point-of-purchase, but probably not as far as supply chain (container tracking), security (door fobs, badges) and other non-retail uses.
I didn’t think much about the technology at first. “NFC killer” seemed like a pretty bold statement. How can you beat the simplicity of just touching your phone to a thingie at the point-of-purchase (“PoP”)? It’s basically “tap-to-buy.” However, after some thought and discussions with business development peeps at the office, the possibilities beyond PoP started to become obvious. I started to realize just how flippin’ cool this unassuming technology really was. Lemme ‘splain…
What is (are) iBeacons?
iBeacons (the word or name) is a trademark of Apple (go figure, given the “i” in front of “Beacons”). As a side note, there’s also a “LIVE” trademark registration for the same name owned by a company in Canada, but for a slightly different concept. I don’t know if that trademark has been taken over by Apple or not. I’m not a patent/trademark attorney. It’s status is “live,” so I assume it is coexisting, at this point.
We first learned of iBeacons at the 2013 Apple World Wide Developer Conference. It was a little label on a slide during the keynote presentation that wasn’t really hyped at the time:
WWDC 2013 API Slide with iBeacons
Developers who are under the usual Apple Developer NDA and who attended WWDC’13 got to see more about iBeacons technology in the CoreLocation session. The iOS CoreLocation framework makes it pretty easy to work with beacon devices and beacon regions, as I’ve found out experimenting with them. More on that later…
Educational/Interesting, Miscellaneous capacitive, education, history, resistive, touch, user interface
I stumbled onto an article about touch screen technology through Twitter via Atmel. They gave a tiny little piece of history on touch screens and have a great infographic on it. I took one of the names and started searching and found cool little nuggets of useless but fun information on the subject and wanted to compile it here. Most of it is just regurgitating Wikipedia, but it’s still nice to have it all written up concisely and not so encyclopedically-sounding. If you’d rather read all this unfiltered, it’s at Wikipedia here (about touch screens in general) and here (about multi-touch). I’ve just reorganized and distilled it all. Accuracy is not guaranteed and was not at all verified. If I were to write a book about it, I’d go double-check all this stuff. This is a blog. It’s not worth the pixels it’s printed on.
As stated in the Atmel article, touch screens are EVERYWHERE now. So much so that children think screens that do not respond to touch are simply broken. A monitor without touch is, well, quaint. Remember that scene from the movie “Star Trek 4: The Voyage” where Scotty talks into the MacIntosh mouse? “The keyboard… How quaint.”
Tips and Techniques, Upgrades/Hacks hack, pine, recycle, shipping box, sparkfun, tip, wire
If you’re like me, and I know I am, you have spools of wire or solder sitting around. I generally put mine in the cabinet above my desk. Lately, with more projects going on, I find myself pulling them down out of the cabinet constantly. I had a collection of the most used spools sitting on the workbench cluttering it up.
Well, no more, I say! Here’s how I organized them and made it easier to pull pieces from them quickly:
Sparkfun Shipping Box Wire Dispenser
I have so many of those red Sparkfun shipping boxes sitting around. For some reason, I can’t seem to find a reason to break them down and recycle them. Turns out, two of them are the perfect size to hold FOUR spools of my 22 AWG colored solid core wire:
Sparkfun Shipping Box Plus Two Pieces of Pine Trim
Trim the flaps a bit, add two pieces of pine trim or dowel and poke some holes. Boom! Recycled wire dispenser. Works great at keeping my spools organized (and spooled). They stack nicely, too. More
Electronics, Tips and Techniques, Upgrades/Hacks avr, cheat, fitbit, meltmedia, servo
FitBit One – Tracks steps, distance, calories burned, stairs climbed and sleep.
I built a machine to walk my FitBit for me. I call it the FitBit Cheat-O-Matic! Why? Our office is having a FitBit competition this month (November 2013). In preparing for the competition I overworked my Achilles tendon and could not participate. So, I adopted the mantra:
If you can’t join ‘em, beat ‘em.
The FitBit Cheat-O-Matic is a machine that shakes my FitBit for me 24 hours a day, 7 days a week and does it faster than my normal walking pace. I suppose it’s actually faster than most people can run, for that matter. Sure it’s cheating! Not only is it cheating, but it’s cheating at a level that’s so blatant it can’t be mistaken for anything else! It’s fully disqualified from the competition, of course. But the point is no longer to win the competition, but to be totally ridiculous and to rack up outrageous FitBit stats and make people laugh or maybe shake their heads.
How It Works
Turns out you can simply shake (but not too hard) a FitBit in just about any orientation (which is pretty cool, actually) and it will register steps. Not rocket surgery, really, but took a little experimentation. After the minute or two it took to find the optimum rate, I was all set. Shaking something with a servo and an Arduino is child’s play.
At the heart of the machine there is one of my usual Arduino-compatible microcontrollers-on-a-breadboard (AVR ATmega328-PU, 16 MHz crystal, AVR ISP Mk II programmer, 3.3V switching regulator and supporting components) that controls the servo holding my FitBit out on its little arm. There is a potentiometer that allows me to adjust the speed at which the servo shakes the FitBit. Easy as that.
FitBit Cheat-O-Matic Control Circuit
Subtitle: Electric Imp, Keep an Eye on the Bathroom, Would Ya?
Official iPotti #2 Logo designed by Dave Woodruff
iPotti #2 is the latest incarnation of iPotti, the custom bathroom availability monitoring system I built for my employer, meltmedia. I started designing and building the original iPotti in 2010 and it went into operation in early 2011. At the time, there wasn’t anything like it that we were aware of. Lately, some other similar systems have popped up and their inventors have done some pretty cool stuff with them. I’ve found inspiration to reinvent iPotti. Plus, at meltmedia we’d like to use the device for marketing purposes in the near future.
Since 2011, meltmedia has outgrown its original office where iPotti (“number one”) is installed. At that time there were about 20-some-odd meltmedians. Today, there are over 60 of us and we now occupy TWO different office spaces on the same campus. On the plus side, with the growth in the number of meltmedians came a growth in the number of pottis at meltmedia to service those meltmedians. On the not-plus side, there is only ONE iPotti #1 and it only watches TWO of the 9 or 10 pottis across two buildings. This situation needed to be rectumfied. [snicker]
iPotti #2 Prototype in Action
iPotti #2 is in the fully functional prototype stage. Stick it near a light or a door and BOOM! Pictured above you see the light sensing iPotti #2 prototype. It’s not beautiful, but it works like a champ. I’m designing the new circuit board for the real thing right now, but I wanted to get this article out because what is working is pretty darn cool. I just couldn’t wait. It’s built entirely by parts purchased from one of my favorite sources, Sparkfun Electronics. Plus, it’s a different approach to how status is broadcast to clients as compared to the previous version. More
Over the past year plus, I’ve gotten a handful of emails about donations to StuffAndyMakes.com. I’ve also been offered payments for customizing PCB designs or even just making the files available. Some have requested kits of the Iron Man Arc Reactor for payment. I hadn’t taken the time to get it set up. Well, no more! I set up a Donate page, thanks to the amazing people at Stripe!
Stripe is a fantastic and ridiculously easy-to-use card processing system built specifically for developers. It’s easy to sign up, they take a little in fees per successful charge (2.9% + 30¢) and it even works in your mobile apps. Best of all: It ain’t PayPal! Woot!
From their website:
You don’t need a merchant account or gateway. Stripe handles everything, including storing cards, subscriptions, and direct payouts to your bank account. Stripe.js lets you build your own payment forms while still avoiding PCI requirements.
As of this writing, their website says U.S. businesses can accept Visa, Mastercard, American Express, JCB, Discover and Diners Club. Canadian businesses can accept Visa, Mastercard and American Express. For those readers elsewhere, please be patient. Or, I happily take payment, bribes, etc. in the form of bourbon.
Bourbon, Educational/Interesting, Tips and Techniques bourbon, distilling, Kentucky, liquor, whiskey
I put together a guide pamphlet for our group’s annual trip to the Kentucky Bourbon Festival and for the Kentucky Bourbon Trail. It included quite a bit of collected and learned information on my favorite adult beverage: Bourbon. Here’s the page that contains the “Bourbon To-Drink” checklist, if you’re interested! I thought I would reformat it a little and put it in a blog entry. Here goes…
What is Bourbon?
Woodford Reserve Barrels in Warehouse
Here’s my definition: Bourbon is a type of whiskey made mostly from corn that has a clear amber or brown color bottled at around 80˚ proof or more and has a complex flavor profile with generally vanilla and wood overtones. Or the quick answer I usually give: Bourbon is delicious sipping alcohol. I ain’t met one I hated, yet. Amen. More
Educational/Interesting, Electronics, Miscellaneous, Projects, Tips and Techniques atmel, avr, charlieplexing, led, microcontroller, pcb
This is the first in a two-part series. This first article made me realize there’s a lot of ground to cover and we’re already in the tl;dr territory.
UPDATE: The MAKE Magazine Blog asked me to make this into a Project so you can also read the adapted version over there: http://blog.makezine.com/2013/05/24/controlling-leds-with-charlieplexing/
How many times has this happened to you? You have a little LED project with an AVR ATmega328 microcontroller (or Arduino) at its core and you need to light up a boatload…. A dingyload of LEDs. Maybe it doesn’t happen a lot to you. It’s happened on three recent projects for me. My latest two LED projects are a timekeeping piece that illuminates 21 characters from behind and a simple LED chaser thing.
As usual I wanted to keep the component count down on these projects. I also tend to prefer not to use a ton of ICs with busses between them and whatnot, if I can help it. So much darn soldering and stuff. Meh. Luckily, back in 1995, so the Wikipedia story goes, a super-smart dood named Charlie Allen at Maxim Integrated devised a super-ingenius way to control a large number of LEDs using a not-so-large number of microcontroller pins. The method is called, “Charlieplexing” and it seems a but daunting, at first, but it’s not that bad once you figger it out.
The core of this concept is based on the fact that diodes only allow current to flow in one direction. The “D” in “LED” stands for “diode.” Ergo, LEDs are diodes. LEDs only light up when connected a particular direction. Put two diodes in parallel BUT in the opposite-facing direction and you can turn on one or the other simply by switching the polarity of the ends of the circuit. Fun! Diagram:
Two LEDs in Parallel
Let’s assume I have a 3V little coin cell running this thing and limiting resistors and CCRs are not our thing, today. Why not? Anyhoo… Looking at the diagram, you see I’m using GPIO pins from an Atmel ATmega168 AVR microcontroller (it was readily available in the library in Fritzing, the program I used to throw together the drawring diagram schematic thing above). If I configger A0 and A1 as outputs and then set A1 HIGH and A0 LOW, I can turn on LED1. If I flip the states of the two pins and make A1 LOW and A0 HIGH, LED2 will light. Here’s a animated GIF of how it works with direct connections from the LEDs to 3V lithium coin cell on a breadboard:
Parallel opposite polarity LEDs flipping state
Watch carefully and you’ll see that I switched the positive and negative to make one or the other LED light. Easy as pie. Imagine each wire from the battery is a GPIO pin from a microctonroller. All I’m doing up there is making one HIGH and one LOW and then flipping them back and forth.
Projects, Tips and Techniques, Upgrades/Hacks desk hack, ikea, meltmedia, office upgrade, standing desk
Today at the office, I walked by a coworker’s desk and something was different: She’d put an Ikea table and shelf together and set them on top of her desk. Nutty, at first glance. Purposeful, after 0.25 seconds of thought. Here’s what I saw:
Stand-Up Desk at meltmedia
Kristian came across this article from Colin Nederkoorn’s Blog with instructions on how to make your regular desk a standing or stand-up desk for only $22 with a couple of items from Ikea! Whatabargain! More
Educational/Interesting arduino, coding, electronics, hack day, meltmedia, microcontroller, MSP430, pelican case, pizza, rotary encoder
Every few months I organize a hack day at the office, usually on a Saturday. This past Saturday we had our 5th installment of hack/make/tinker day at meltmedia and the turnout was great! Attendance was 8, up from 3 the last time around. YESSS!
meltmedia East Kitchen Table Hacking
Nick put together a little video of the goings on:
Or click here to see meltmedia Hack Day | April 6, 2013 from meltmedia on Vimeo.
We had all manner of making and designing, but most importantly, around 1:30-ish, we had PIZZA!!
Fueling the Making with Pizza