The Simputer
A Programmer’s Perspective
The Simputer has arrived! Whether metaphorically or not, I am not too sure, but yes, the Simple Computer (or Simputer in short), hitherto existing only in the reams of newsprint dedicated to it, is definitely a reality. Labeled the poor man’s messiah by some and ‘vaporware’ by others, this much-awaited and much-hyped about handheld is finally shipping to bulk-order customers and developers.
First, a short history of the Simputer (a longer version is already available at smaller.com). The Simputer was developed as an alternative for the PC, to cater to the rural areas, by a team at the Indian Institute of Science at Bangalore, India. The incipience of this device was motivated by the need for an instrument affordable to the rural community which could truly harness the potential of the IT revolution. The Simputer comes closer to the poor man by virtue of its price, and attempts to showcase the essential features (within confined limits of course!!) through its text-to-speech and IML (Information Markup Language alias Illiterate markup language) facets. The Simputer trademark and its unique Simputer GPL (more on that later) is managed by the non-profit Simputer trust. Currently, two companies, Encore and PicoPeta are producing and selling the Simputer.
At the heart of the Simputer is the Intel StrongArm SA1110 processor running at 166Mhz. The StrongArm is a feature packed processor equipped with ARM technology and the Simputer is empowered to host a USB, IrDA, SDRAM and Flash Memory support in addition to audio/mic due to their integration into the processor itself. Designed exclusively for handheld devices, the SA1110 packs a lot of processing capability in a small, low power consuming package which explains why it is fast becoming the processor of choice for many handheld developers. The Compaq iPaq for one uses this processor. In fact, with the newer versions of iPaq boasting of 64MB RAMs, many have begun questioning the Simputer’s philosophy. Palm is also migrating to the ARM platform due to its higher availability (over the older Motorola 68k processors) and the expandability it offers.
Apart from the USB and IrDA options, the Simputer also comes with an RJ11 jack for you to plug in your telephone. Connectivity is provided through a software modem. This feature itself sets the Simputer apart. Other peripherals include a Philips (?) Smart Card reader and 320x240 (monochrome/color) touch display. The idea behind including the Smart Card reader is to enable people to devise a billing mechanism based on Smart Card to ensure that the Simputer can be used by an entire community. This apart, the high-resolution screen is indeed a luxury on a low cost device. It runs on 2 rechargeable AAA batteries or directly off the mains.
Aesthetically, the Simputer is a disaster. Not even the most ardent supporter of the Simputer can call it beautiful in a purely physical sense. It is bulky, and it is clumsy (a fact hidden very well by its photographs). Besides, the finishing leaves a lot to be desired and the stylus looks like a strip shaved off from the bark of the nearest tree and it doesn’t even fit in its slot on the Simputer!! The Simputer measures 5”x3” which is pretty acceptable but it looks much bigger. A promise to all those who pan the Palm m100 for its bad looks that one look at this device will leave you in utter praise for the Palm. Of course, people might argue that looks were the least of the Simputer team’s worries, but hey, they got to count for something!
In short, though it cannot be called top of the line today (it may have been when it was conceived), the hardware of the Simputer definitely scores high. But one point of worry is its price, which, though less, is not less enough to compete with its counterparts. The Simputer which was initially estimated at sub-$200 is currently estimated at $300 (for a 16MB SDRAM, 24MB Flash Monochrome model). The fact that one can get a top order iPaq which beats the Simputer on each hardware count at a slightly higher price is definitely something PicoPeta and Encore need to look at.
A unique feature of the Simputer is the Simputer Open License. It permits people to freely download and examine the Simputer’s hardware specs as well as the images required for the fabrication of various components and then, on payment of a small royalty, produce their own versions of the Simputer. Modeled along the lines of the GNU GPL, the idea is to foster competition and hence reduce the Simputer’s price by cutting down on the time to market by giving ready-made technical information. The Simputerized devices will have to be put in the Open Hardware domain after one year. Unfortunately the Simputer is difficult to manufacture in small quantities as it requires large capital (the motherboard is a 12-layered PCB which is pretty expensive to make in a small fab), this will greatly hinder the original vision of the SGPL.
One area the Simputer is really expected to score is in the software department. Running the standard linux kernel (with patches specific to the ARM architecture), it was expected that the software available for the Simputer would be large because most of the existing software written for linux can easily be recompiled and run on the Simputer. Also, the open source community was counted upon to help in designing and tailoring new applications for the Simputer. This anticipated onslaught of applications for the Simputer has however not really happened primarily because of the delay in the shipment of the device. Even today the device is not being retailed and hence been responsible for people not writing software for it. Although no emulators are required and applications coded in Perl or C will run as they do on the x86 (Pentiums), software developers like to see their programs run on the actual machine.
We have the PicoPeta Simputer, furnished with an IML browser. IML, a language designed to be the front end for Simputer applications is a mini-HTML. It is quite simple and the learning curve pretty smooth. However, it is not yet mature and hence buggy. The lack of comprehensive documentation has prevented us from actually coding in IML. We use C and Perl/Tk for most of our Simputer programming. The PalmOS API/POSE in contrast is very mature and heavily documented and hence even though the learning curve is steep it is not a hindrance to programmers. Also, the piece we received (it was an early release and hence bugs/features in our device might not be present in subsequent releases) had a precompiled IML browser (called IMLI) and hence we couldn’t add our application icons in the startup screen. Encore, we hear, does not preload their Simputers with IMLI. They have an application framework available for download which makes heavy use of GTK. The overall application development for the Simputer is not really very different from that of the desktop model, yet the absence of the device visibly affects application development.
The Simputer also boasts of a Text-To-Speech (TTS) engine which has been developed in-house at IISc. A more powerful TTS engine is under active development at the Language Technologies Research Center (LTRC) at the International Institute of Information Technoloogy (IIIT), Hyderabad. The TTS engine for Indian Languages is by and large a feature programmers can feast on. Our Simputer came loaded with this engine (called Dhvani) as well as with tap-a-tap (a text entry system similar to graffiti), Dillo (an HTML browser), Scratchpad, software mp3player (surprise!!) and little else (in terms of pre-loaded software).
Theoretically, one can load any linux application (compiled for the ARM) and run it on the Simputer, although the bulk of the 10MB Flash (6 of the 10MB was made read-only and kept by the OS) is occupied by various system libraries (to aid in our application development). Come to think of it, loading programs on the Simputer is an experience we can never forget! The day we got the Simputer along with the serial to USB cable and the charger (notice, no manual) we pounced on it and decided to load our application. Very soon we were made conscious of the non-presence of HotSync or its likes in our device. One night and the better part of a day later we figured out how to get our damn app on the device. Our experiments included writing a custom transfer application (and typing it directly on the Simputer using the soft keyboard) which quite obviously didn’t work. Ultimately, after lots of brain wracking and exploring, we found a program called rz hiding inconspicuously in the corner of one directory. The Simputer uses the zmodem (rz – receive zmodem) protocol, an ancient serial communication protocol (comes with HyperTerm in MS Windows) for file transfer.
The PPP module and the Softmodem module were missing, so we couldn’t test the connectivity offered by the Simputer. Initially the Simputer was pretty fast but gradually everything slowed down. We attributed it to the fragmentation of Flash (we experimented quite a lot, deleting and adding files at random), though we expected the OS to manage defragmenting.
In conclusion, it should be said that the Simputer is an innovation of value. Its future lies in the direction the people at Encore and PicoPeta decided to take now. The Simputer is facing stiff competition and criticism; and the pressure will increase sizably after handhelds based on the new Xscale architecture become more prevalent and offer much more than the Simputer (or any other current handheld) in terms of power, features, convenience and economy. For the Simputer to hit big time, it needs to leverage the advantages of the Open Source community both in hardware and software, for if it can offer economically viable utility, it has the ability to become a force to be reckoned with.
Shaurya Arora (,
M. Prashanth Varma. (,