One of my more prized positions
is was a Chumby prototype, right off the desk of it’s hardware designer. I won it in one of the designer’s monthly Name That Ware contests. The idea behind the Chumby was to have a box on your desk or nightstand running casual applications to tell the time, weather, photos, or other entertaining data. A back-end service made it easy to download new apps, which were written in Flash (this was in the late 2000’s, Flash was still a thing then). It was beautifully designed, featuring graphics by Susan Kare and a classy soft leather case.
But Chumby, Inc. died. A combination of bad timing (missing Christmas in 2007, followed by the global economic meltdown in 2008) and the introduction of the iPhone – the gadget to end all gadgets – made it tough for Chumby to find a market. Kudos to Duane Maxwell for keeping the remaining Chumbys on life support.
Recently Tingbot introduced a Raspberry Pi based computer with a small LCD display in a nice desktop case. It immediately reminded me of the Chumby.
Tingbot was launched with a successful Kickstarter. They delivered about three months later than promised, not bad by crowdsourcing standards. For about $65 (Kickstarter price – about $75 now) you get a touchscreen LCD display board, a simple plastic case exposing most of the Pi’s ports and four pushbuttons. The Raspberry Pi, SD-card and power supply are not included, so you’ll spend an additional $50 or so for the complete system.
The system arrives as a kit, packed in tiny, annoying, clingy, styrofoam pellets. Assembling it is easy, and requires nothing more than a small Phillips screwdriver. The simple plastic case exposes most of the Pi’s ports (the exceptions are the headphone and HDMI ports). The LCD display is 320×240 pixels, 3.2″, with 16 bit color and a touch-screen. It plugs directly into the Pi’s GPIO header. A thin auxiliary board holds the four push buttons and the micro-USB power port.
A big loss is any sort of sound output. The Tingbot has no means of getting your attention, limiting its use as an alarm clock, desk calendar or gaming box. Even a cheap piezo buzzer would open more possibilities. The Pi’s 3.5mm audio jack is awkwardly placed at the bottom of the screen, so you’ll likely need to build a custom cable to mod the Tingbot to have sound output.
Tingbot provides their own Raspbian distribution with their software built into it. This includes drivers for the Tingbot’s devices (buttons & LCD), a simple shell for selecting applications, and interfaces for their Tide development app. This distro is downloaded directly onto the SD Card you’ll insert into the Pi. Before moving the SD card from your computer to the Tingbot, you download their Tide development environment. Tide has a clever option to set the Tingbot’s WiFi settings (SSID & password) on the SD card from your computer. This way, everything is set up and ready to go when you stick the SD card into the Tingbot and boot it up. It’s the easiest Raspbian setup you’ll ever experience.
Tide Developer tools
Tide is an Arduino-like development app running on a host computer (Windows, Mac and Linux are all supported). It makes it incredibly simple to start writing Python applications for the Tingbot. A few basic example applications are built into the app as templates. A single click on the ▶ button sends the code over to the Tingbot and starts running it. Clicking on the ▲ button installs your app on the Tingbot. There’s not much extra in the way of debugging tools, but print statement output is displayed directly in Tide’s console pane that pops up when apps are running. This, coupled with the quick turn around should be sufficient for most tasks. A pop-up menu lets you select a target Tingbot, or the Tingbot simulator, a window that pops up and lets you click virtual buttons with your mouse.
A Python library provides function decorators to run your routines for button presses, the touch screen and an update loop. The graphics library is very primitive: just text, lines, rectangles and images on integer coordinates. It’s less functionality than Macintosh QuickDraw or Windows GDI had in the 1980’s. If you’re used to a rich graphics API like HTML5’s Canvas you’re going to be frustrated. There’s also a hook for responding to posts to their website. A separate file specifies the app bundle, including external Python libraries and an icon.
The Tingbot is nifty package for a Raspberry Pi. If your Pi is monitoring something and a small LCD display works, this is a great package for it. The lack of any sound output limits its use as an appliance. The Tide development tools are incredibly easy to use, and make Python programming on the Tingbot fun.
But a Chumby, it’s not. The low-res screen, crude graphics library and lack of sound preclude the sorts of apps the Chumby ran. For that we’ll need the Tingbot Plus, with a VGA screen, Chrome browser based graphics, and a speaker plugged into the Pi’s audio jack.
Footnote: This review was originally written last summer. Both my Chumby and Tingbot were lost when my office caught fire.