Help getting started porting to eInk prototyping platform

tim Rowledge tim at rowledge.org
Fri Nov 25 18:50:33 UTC 2005


On 25-Nov-05, at 10:17 AM, Bob Courchaine wrote:
>
> I have a prototyping platform from eInk
> (http://www.eink.com/kits/index.html) that uses a Gumstix SBC to  
> drive a
> specialized display driver connected to the electronic paper.
Neat! Nice to see something becoming available at last. Ouch! $3000 !

>
> Given Squeak's exceptional portability, I'd like to use it to build a
> demo to run directly on the device.
Jon Hylands has already shown that the gumstix can run Squeak, though  
I think he went for headless. So the basics of finding the right  
library/option settings should be easy to copy.


>
> I'm gearing up to port Squeak to the device starting with the existing
> Linux port (the Gumstix comes w/ Linux running on it). But I'm not  
> sure
> how to get the VM to send output to the eInk-supplied API (source code
> included) to the electronic paper driver.

Is the display set up as a framebuffer, or as some sort of external  
interface you have to copy pixels to? Either can be handled but  
personally I prefer a frame buffer mapped into main memory space for  
prototyping stuff like this. Until and unless there is some sort of  
useful graphics acceleration it is much easier to use plain old  
memory. Hopefully you will find some decent support library provided  
with the kit (at $3k I'd damn well hope so) to provide the metrics of  
base address, width, height, stride, etc.

A few years ago I did a quick port rather like this for the DEC Itsy  
prototype (which was pretty much the mother of the iPaq line) which  
was very similar to a gumstix with a fb screen. Tricky bits were the  
screen handling and cursor displaying since at that point nobody had  
written any sort of abstraction for them. I was lucky to be on loan  
for a couple of weeks to DEC WRL and sharing an office with  the guys  
that built it which makes getting a library written so much simpler.

You will have to copy from the Squeak display bitmap to the actual  
screen memory and convert from Squeak's big endian pixels to little  
endian - probably. Although technically ARMs can do bigendian I've  
never actually met one that was setup that way. You might have some  
work to do to make a 4bpp display mode work acceptably in recent  
images since I doubt anybody has used such for a while and bitrot may  
well have set in. You might be able to use an 8bpp Squeak dispaly and  
compress during the copy-to-paper (I was going to say glass, but it  
isn't, is it!) operation.

It sounds like you're going to have some fun here Bob.


tim
-- 
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim





More information about the Squeak-dev mailing list