Newer posts are loading.
You are at the newest post.
Click here to check if anything new just came in.

September 26 2011

Getting physical with Android, NFC and the ADK

Android is rapidly extending beyond the phone and becoming a hardware hub, with capabilities that allow a wide range of applications and interface possibilities. Features like Near Field Communication (NFC) and the Open Accessory Development Kit (ADK) are opening new arenas for developers.

Brian Jepson (@bjepson) is an O'Reilly editor and hardware hacker who's recently been focusing on making things with technologies like Arduino and Android. Jepson and Tyler Moskowite (@tmoskowite), a programmer and engineering intern at Make Magazine, will be presenting a workshop on "Getting Physical with Android: Open Accessories & NFC" at the upcoming Android Open Conference. I recently spoke to Jepson and Moskowite about the convergence of Android and hardware hacking, and what it might mean for the Android ecosystem.

Our interview follows.

What does Android's openness allow developers to do?

Android logoBrian Jepson: I think the biggest thing is that it allows developers to experiment. On iOS, you have to spend money to even deploy apps to a phone that you own. And unless you put an app in the App Store or sign up for the Enterprise or Academic programs, you can only distribute apps to 100 devices total. It's cumbersome. I love that you can "sideload" apps on Android: make an app, distribute it outside the Android Market, and people can use it.

Tyler Moskowite: Allowing developers to reproduce their own versions of the Android operating system has resulted in many custom versions of Android. The most notable one is Cyanogen Mod, which provides the base for lots of custom Android systems.

What kinds of things are makers building with NFC, the Accessory Development Kit, and Arduino?

Brian Jepson: I haven't seen much being done with NFC, though I did a wacky demo with it that involved Processing, Arduino, and Twitter. But there have been lots of cool things done with the ADK. I've seen everything from tablet-controlled dancing robots to a cell-phone-controlled ball maze inspired by the life-size labyrinth at Google I/O.

There have been interesting projects going on with Arduino since before the ADK. In fact, I built a variation on Tero and Kimmo Karvinen's Soccer Playing Robot (from Make: Arduino Bots and Gadgets) and brought it to Google I/O. This combined Android and Arduino, but they communicated over Bluetooth instead of a cable, the way the ADK currently works. Tero and Kimmo's robot is one of my favorite Android/Arduino projects. Amarino is also very cool, though it's more of a platform for connecting Arduino and Android.

How big a problem is fragmentation in the Android ecosystem?

Brian Jepson: It's more noticeable to me because I work with things like NFC and ADK that require a very recent version of Android. I don't know how big a deal it is for lots of other folks. I can look at the fragmentation dashboard, and yeah, it's not pretty. At least Android 2.x is dominating. But it's a problem and a headache for developers. I figure Google can mitigate the problem, but I don't see them ever making it go away.

Tell us a little about the Mini Maker Faire event at Android Open. What kind of makers are you looking for?

Brian Jepson: We are looking for anyone who has made something cool using Android and related technologies. We'd love to have a broad spectrum of crafts, electronics, robots, and so forth.

Android Open, being held October 9-11 in San Francisco, is a big-tent meeting ground for app and game developers, carriers, chip manufacturers, content creators, OEMs, researchers, entrepreneurs, VCs, and business leaders.

Save 20% on registration with the code AN11RAD


May 16 2011

Google I/O 2011: 5 things to keep watching

All the robots ...

More than anything else, I'll remember the robots at Google I/O 2011 — from the minuscule Arduino bots at the After Dark party to the massive PR2, a full-sized humanoid robot. Perhaps I'm biased because of my daughter's participation in FIRST Robotics (go Apple Pi 2067), and perhaps it's just because robots are among the coolest toys possible, but it was hard to avoid robotics. And the cute Hasbro Androids rolling around while balancing on two wheels were hard to resist.

PR2 robot
The PR2 robot at Google I/O 2011

But that's getting ahead of the story. This was my fourth I/O. As I've come to expect, it's a high-energy, exciting conference with a lot of first-rate technical content. The keynotes were less ambitious than the last two years, and with good reason. After all the excitement around Wave in 2009, Google has dropped it (though ideas from Wave are starting to reappear in other Google apps), and after wowing us with Google TV last year, that product is off to a slow start at best. So Google limited themselves to less ambitious announcements and demos — wisely, I think.

Android housekeeping

The keynotes started with a series of minor announcements that were necessary, and important to Android developers, but not particularly exciting. Google will be providing some tooling and library improvements that limit the problem of Android API fragmentation. Android has fragmented because it has succeeded, and to that extent I think whining about fragmentation is just that. Would you rather work on a fragmented platform with 100 million devices, or in a monoculture with a few hundred thousand? But tools to help developers deal with the problems of success are a no-brainer.

It's also good to hear that Google has a plan to bring carriers in line about device upgrades. Getting carriers to upgrade devices promptly is a serious problem. I'm skeptical about whether Google has really solved the problem; network carriers can be awfully recalcitrant. We'll see. Finally, it was good to hear that Android 3.1 ("Ice Cream Sandwich") will be released as open-source code by the end of the year. I'm not terribly religious about open source, but it is A Good Thing, and Google's reluctance to open source Honeycomb has been an unnecessary distraction.

Android Open, being held October 9-11 in San Francisco, is a big-tent meeting ground for app and game developers, carriers, chip manufacturers, content creators, OEMs, researchers, entrepreneurs, VCs, and business leaders.

Save 20% on registration with the code AN11RAD

Movies and music: OK, but unimpressive

Google's movie rental service and Music Beta were OK, but unimpressive.

Google will have to go to some lengths to compete with Netflix for streaming movie rentals (though the ability to "pin" downloads for offline viewing is a nice feature). And while Google's cloud capabilities are second to none, including Amazon, they really only supply cloud storage, streaming, and a more capable player. That would be enough if Amazon didn't already offer a streaming music service for virtually any device, along with the ability to purchase music. Yes, I understand that Google is at a disadvantage; according to one engineer, they had the software ready a year ago, but have been unable to reach an agreement with the music labels.

Google Music BetaAmazon is risking being taken to court by the record labels, but they have one huge advantage that Google lacks: they already account for the lion's share of CD sales. Google has to move forward with or without the labels, and the music industry may well decide to sit on the sidelines and pout about "theft" rather than build new business models that might actually work; but it still makes for a product that's less than it could, and should, be.

The Accessory Development Kit is a big deal

The Accessory Development Kit (ADK) for Android was the most important announcement on the first day, if not of the entire conference. And yes, most of those robots wandering around were controlled by Android phones. The time is ripe for a wave of creativity around interfacing external devices to phones and tablets. It's a game changer. A phone or a tablet can become a personal data collection device, a general control, whatever you can imagine. While I don't use an exercise bike, using a phone to record and track your progress, save exercise programs, and so on, is a compelling application.

By choosing Arduino as the hardware platform for the ADK, Google has chosen to make Android hacking as easy as possible, as open as it can be. As Phil Torrone points out, there are already more than 300,000 Arduinos "in the wild", and a corresponding number of developers already up to speed and ready to hack. I said a "wave of creativity," but it's not going to be a wave, it's going to be a flood. Furthermore, the accessory API takes Android into territory that the iOS world is unlikely to explore. I cannot imagine Apple allowing an iOS attachment that is not Apple-branded.

Chromebook and developers

The second day's keynotes focused on Chrome, ChromeOS, and Chromebooks. I never got one of last year's experimental CR48 Chromebooks; the unit they'll be sending to attendees later in the year sounds much more impressive. I find the Chromebook vision compelling, because it delivers on something I've long thought was necessary. I have several laptop, desktop, and tablet computers in my household (more than there are people), and I also take care of my mother's computing needs (limited to email). All this hardware requires a lot of local management: backups, virus protection, software installation, updates, all the hassle that we're all familiar with. In an ideal world, all of these tasks would be handled by professionals. I know few users, even the most sophisticated, who have adequate backups. I also know few users who haven't lost photos, music, documents, whatever when a disk suddenly fails. I survived my last disk failure unscathed, thanks to Apple's TimeMachine. But the answer isn't better backup software and better backup devices, particularly when computing equipment is so mobile. The answer is to put these functions back where they belong: in a data center, managed by professionals. ChromeOS is very much the right vision.

Whether or not Google will succeed with ChromeOS is an open question. ChromeOS doesn't look like an environment where you can write a whole lot of Java or C code and compile and install the results, so it isn't immediately useful for developers. Google's route to adoption runs through the software development community. If software development on a ChromeOS device is difficult (and I don't just mean development for the device itself), Google will have an uphill battle, regardless of whether the device is a better fit for my mother.

Still, though, Google finds friends in unlikely places. If solid state disks don't become a lot more reliable, if Apple persists in requiring developers to download a 4 GB XTools package from their store (the $5 charge isn't a big deal, but the size of the download is), and if Google can build a cloud-based general-purpose software development environment, I can imagine a 4G-enabled Chromebook becoming the darling of the developer community. Light, with broadband wireless, USB and HDMI, and a (hypothetical) suite of software development tools: what's not to like? Chromebooks could also be compelling as remote enterprise devices: bigger, easier to use, and less limiting than tablets, while much less expensive than Windows laptops. I don't see the Chromebook as a "windows killer" any more than I think it's an Apple killer. To challenge Microsoft, Google would need significantly more enterprise adoption for their cloud services. Currently Google apps are at best a tolerable replacement for Office. But again, it's a possible future, and an intriguing one.

JavaScript is a first-class programming language

Of course, the importance of Chrome isn't just ChromeOS. In keynotes and in sessions, Google demonstrated many improvements in HTML5 and JavaScript performance and features. While server-side software isn't an important topic at I/O, it's important that their V8 JavaScript engine is the enabling technology behind Node.js, which is now revolutionizing web development. With tools like V8, the Closure and Traceur compilers, and their involvement in the development of HTML5, Google has led the way in making JavaScript a first-class programming language, not just a bit of glue for web pages. I wouldn't necessarily say that JavaScript is being used any more than it was, but if you've been watching, you've probably noticed that the way JavaScript is used has changed and matured in the last year.

A few more thoughts on I/O

I won't say much about the giveaways beyond this: When a $400 conference ticket gets you $1,000 worth of hardware, conference registration turns into a feeding frenzy. Google has created a problem for themselves.

I do want to point to one important development that wasn't represented. Just before the conference, Jacek Ambroziak released his eCarrel ebook reader in the Android store, for both tablets and phones. I've had an early version on my phone since February, and it's by far the best reader I've seen. It was good on the phone, but reading a book on a cell phone is uncomfortable at best. On the tablets, eCarrel is a great experience. If readers are the killer app for tablets, eCarrel is a glimpse of the future.

All in all, I/O was exciting, if not as flashy as the past two years. Whether or not ChromeOS succeeds, it has the potential to bring "it just works" computing to a new level, and a class of users. The Android Accessory API takes the Android world into a new class of applications that could fundamentally change what we expect of our mobile devices. It's a future that's both more realistic than last year's TV-based vision, and more radical.


  • Why Google Choosing Arduino Matters

  • Arduino is a building block for the world to come

  • Fun with RFID and NFC at Google I/O BootC

  • Android Controlled 3D Printed Slalombot

  • Why fragmentation is a good sign for Android

  • May 13 2011

    The secret is to bang the rocks together

    "We'll be saying a big hello to all intelligent lifeforms everywhere and to everyone else out there, the secret is to bang the rocks together, guys." — "The Hitchhiker's Guide to the Galaxy," Douglas Adams

    Every so often a piece of technology can become a lever that lets people move the world, just a little bit. The Arduino is one of those levers.

    It started off as a project to give artists access to embedded micro-processors for interaction design projects, but I think it's going to end up in a museum as one of the building blocks of the modern world. It allows rapid, cheap, prototyping for embedded systems. It turns what used to be fairly tough hardware problems into simpler software problems.

    The Arduino UNO
    The Arduino UNO.

    The Arduino, and the open hardware movement that has grown up with it, and at least to certain extent around it, is enabling a generation of high-tech tinkerers both to break the seals on proprietary technology, and prototype new ideas with fairly minimal hardware knowledge. This maker renaissance has led to an interesting growth in innovation. People aren't just having ideas, they're doing something with them.

    Goodbye desktop

    The underlying trend is clear. The general purpose computer is a dead end. Most people just want gadgets that work, and that do the things they want them to do. They never really wanted computers. They wanted what computers could do for them.

    While general purpose computers will live on, like the horse after the arrival of the automobile, these systems will be relegated to two small niches. Those of us that build the embedded systems people are using elsewhere will still have a need for general purpose computers, as will those who can't resist tinkering. But that's the extent of it. Nobody else will need them. Quite frankly, nobody else will want them.

    The humble Arduino is the start of that. The board has multiple-form factors, but a single-programming interface. Sizes range from the "standard" palm of your hand for prototyping, down to the size of your thumb for the almost-professional almost-products now starting to come out of the maker renaissance. Arduino, and its relatives, will be part of everything from wearable versions like the Lilypad, sized and customized to be stitched into clothing, to mobile phone hardware accessories, to specially built boards launched into space on the new generation of nano-satellites built on a shoe-string budget by hobbyists.

    Every interesting hardware prototype to come along seems to boast that it is Arduino-compatible, or just plain built on top of an Arduino. It's everywhere.

    Maker Faire Bay Area will be held May 21-22 in San Mateo, Calif. Event details, exhibitor profiles, and ticket information can be found at the Maker Faire site.

    Things are still open. They're just different things.

    There has been a great deal of fear-mongering about the demise of the general purpose computer and the emergence of a new generation of consumption devices as more-or-less closed platforms. When the iPad made its debut, Cory Doctorow argued that closed platforms send the wrong signal:

    Buying an iPad for your kids isn't a means of jump-starting the realization that the world is yours to take apart and reassemble; it's a way of telling your offspring that even changing the batteries is something you have to leave to the professionals.

    I'm philosophical about the passing of the computer. What we're seeing here is a transition from one model of computing to another. We've seen that before and there were similar outcries for the death of the mainframe, as there has been for the death of the desktop. There is plenty of room for closed platforms, but the underlying trend is toward more openness, not less. It's just the things that are open and the things that are closed are changing. The skills needed to work with the technology are changing as well.

    What the Arduino and the open hardware movement have done is made hard things easy, and impossible things merely hard. Before now, getting to the prototype stage for a hardware project was hard, at least for most people, and going beyond a crude prototype was impossible for many. Now it's the next big thing.


    December 14 2010

    Four short links: 14 December 2010

    1. The Million Follower Fallacy (PDF) -- We found that indegree represents a user’s popularity, but is not related to other important notions of influence such as engaging audience, i.e., retweets and mentions. Retweets are driven by the content value of a tweet, while mentions are driven by the name value of the user. Such subtle differences lead to dissimilar groups of the top Twitter users; users who have high indegree do not necessarily spawn many retweets or mentions. This finding suggests that indegree alone reveals very little about the influence of a user. Research confirms what we all knew, that idiots who chase follower numbers have the influence they deserve. (via Steve O'Grady on Twitter, indirectly)
    2. Geocoding Github: Visualizing Distributed Open-Source Development -- work for the Stanford visualization class, plotting open source commits on maps over time. See this page for the interactive explorer. (via Michael Driscoll on Twitter)
    3. ArduPilotMega 1.0 Launched -- autopilot built on the Arduino platform. (via Chris Anderson on Twitter)
    4. Lessons of the Gawker Security Mess (Forbes blog) -- nice deconstruction of what happened. In the chat, Gawker’s Hamilton Nolan, after hearing that it is just Gawker users who have been compromised, remarks “oh, well. unimportant”. Gawker’s Richard Lawson wants to know if the breach is limited to “just the peasants?” Don't trash talk about your users in company channels. The business that forgets it lives and dies on its customers is a business that will eventually be hated by its customers. (via Nahum Wild on Twitter)

    October 04 2010

    Four short links: 4 October 2010

    1. Two Brothers Await Broad Use of Medical E-Records (New York Times) -- The Doerrs’ software company is only one of many hoping to cash in on the national mandate for digital medical records. The companies range from giants like General Electric to specialists like Athenahealth that cater to small physician practices. They, like the Doerrs, are betting that the law will help create a turning point for the economics of digital health records, opening the door to rapid adoption by doctors and a thriving business at last. NZ-based Orion Health is expanding at a great rate in the US, doing electronic health records. The tide is beginning to turn away from paper, thank goodness. (via DrChrisPaton on Twitter)
    2. On Feminism and Microcontrollers (Benjamin Mako Hill) -- We found evidence to support the suggestion that LilyPad is disproportionally appealing to women, as compared to Arduino (we estimated that about 9% of Arduino purchasers were female while 35% of LilyPad purchasers were). We found evidence that suggests that a very large proportion of people making high-visibility projects using LilyPad are female as compared to Arduino (65% for LilyPad, versus 2% for Arduino).
    3. Pomodoro Technique -- time management system. (via auchmill on Twitter)
    4. Lock-free Data Structure Library in C -- free library offering list, queue, ringbuffer, stack, ....

    August 04 2010

    Four short links: 4 August 2010

    1. FuXi -- Python-based, bi-directional logical reasoning system for the semantic web from the folks at the Open Knowledge Foundation. (via About Inferencing)
    2. Harness the Power of Being an Internet -- I learn by trying to build something, there's no other way I can discover the devils-in-the-details. Unfortunately that's an incredibly inefficient way to gain knowledge. I basically wander around stepping on every rake in the grass, while the A Students memorize someone else's route and carefully pick their way across the lawn without incident. My only saving graces are that every now and again I discover a better path, and faced with a completely new lawn I have an instinct for where the rakes are.
    3. Stack Overflow's Curated Folksonomy -- community-driven tag synonym system to reduce the chaos of different names for the same thing. (via Skud)
    4. Image Deblurring using Inertial Measurement Sensors (Microsoft Research) -- using Arduino to correct motion blur. (via Jon Oxer)

    July 09 2010

    Hardware hacking heaven

    OSCON this year will be a delight for anybody interested in working with hardware. A full open source hardware track offers a range of talks to get you started with hardware hacking, and gives a great insight into the current options for prototyping.

    Many software developers are astonished to find that there's nothing that hard about hardware, and a few basic skills can go a long way. Some have bemoaned that you can't hack your iPhone the way you used to be able to learn with an Apple ][, but that doesn't mean there aren't options out there.

    From microcontrollers such as Arduino, through to complete systems such as the SheevaPlug and BeagleBoard, there are now many accessible form factors to enable novices and experts alike to begin experimenting and prototyping hardware systems.

    Where to start?

    OSCON -
Save 20%The home is naturally a place where many of us get started with hardware hacking. At OSCON, father-and-son team Bruce and Matthew Momijan will discuss software control of home automation systems. Find out how to cron your washing machine and script your telephone.

    Taking things a step further and hitting the metal, "Hardware Hacking 101" will demonstrate how to build small single-purpose devices, and give an overview of what to look out for when starting to wrangle chips and PCBs.

    Hardware takes many forms, and it's not just about circuit boards. Hacking in Real Life: Crafting for the Modern Geek invites you to find out what happens when you mix fractals, 3D printers, robotics, open source, high-powered lasers, and non-orientable surfaces with wood, plastic, textiles, steel, cloth ... and lots of coffee.


    The little board that could has captured the imagination of many developers. It's responsible for demystifying hardware for many of my friends, seasoned software developers who never knew they could do hardware. If you've never met Arduino before, get introduced with a hands-on three hour tutorial, or follow a quick introduction, then stay for the fun.

    arduino.jpgParallel programming may seem too obscure for the everyday developer, but it makes a surprising appearance as a tool for artists and makers. In a session on the Plumbing toolkit, we'll hear how with six lines of code we can go from making simple blinkenlights to responding to environmental sensor inputs.

    Reaching out further into the environment, OSCON regular Russ Nelson will be talking about how he used Arduino and sensors to monitor water quality. For me, that really represents the power of Arduino: hacking the real world.

    The final piece of the sensor puzzle is of course to display your data. "Open Source Data Visualization on Open Source Hardware" is a soup-to-nuts tour, covering data acquisition to visualizations.

    Small-form computing

    If soldering isn't your scene, there's still plenty you can do with the progressive miniaturization of entire systems. The SheevaPlug computer is now the basis of several consumer devices. It runs Linux, is power-efficient, and very hackable. The Plug Computing Primer will give a tour of the strengths and weaknesses of using this device in practice.

    Taking it one step smaller, the BeagleBoard is a three-inch-square board from Texas Instruments that provides netbook-like performance with very low power consumption. Its hardware design is itself open source, opening possibilities for derivative design. "How to Boot Linux on the BeagleBoard" will introduce the board and its developer ecosystem.

    Hack the world around you

    With the current slate of tools, it's never been easier to write code that runs on low-power, small-format devices. And many of these tools are familiar to conventional software developers. The goal of the hardware track is to combine toolsets and inspiration so you can hack the real-world problems around you.


    OSCON will be held July 19-23 in Portland, Ore. Radar readers can save 20% on registration with the discount code OS10RAD.

    June 04 2010

    Four short links: 4 June 2010

    1. HomeSense -- an open user-centered research project investigating the use of smart and networked technologies in the home, with uber-Arduino-rockstar Alexandra Deschamps-Sonsino. (via titine on Twitter)
    2. Kelvin's Thunderstorm (Instructables) -- "create lightning from water and gravity". Simple and impressive science. (via Paul Fenwick)
    3. Graph Visualization Code in Javascript (Stack Overflow) -- good pointers to interesting libraries.
    4. ChEMBL - Neglected Tropical Disease archive -- a repository for Open Access primary screening and medicinal chemistry data directed at neglected diseases. CC0-licensed datasets identifying several tens of thousands of compounds active against the malarial parasite P. falciparum in an effort to lower the cost of drug creation for this neglected disease. (via Common Knowledge blog)

    Older posts are this way If this message doesn't go away, click anywhere on the page to continue loading posts.
    Could not load more posts
    Maybe Soup is currently being updated? I'll try again automatically in a few seconds...
    Just a second, loading more posts...
    You've reached the end.

    Don't be the product, buy the product!