embedding linux into a scanner

Oct 18, 2003 2 Replies

I'd really appreciate some help with a project I am about to embark on. I want to build a scanner with an LCD monitor that will hopefully scan an image and then maybe manipulate it and display it on an attached LCD monitor. I want to go down the route of installing linux on a small PC board and to then attach an interface from the PC board that will link up to specific hardware parts and control them. I understand this means I will require a graphics card to display to the LCD monitor and so on.



My question is what flavour of linux do I go for ? I guess it has to be minimalist ? I really want the OS to be hidden from the user. Secondly I was wondering how will I install linux so it boots and then goes straight to the application that will manipulate the scanner ? Thirdly although C is normally used to control hardware I was wondering if I can manipulate hardware using java's JNI because I would also like to write the applications that will manipulate the scanned image in java. Will this be possible or should i use C/ C++ through out. Any help would be appreciated, thanks Paul


Hi Paul,

I would suggest for your project, you get a normal PC, with any linux distro, and start from there. work through what programs and drivers you need, and slowly strip it down as small as possible.

you can easily start the scanner software (or windowing software, etc) that you need to run from inittab or the /etc/rc startup scripts.

If you use any kind of java in anyway to control the hardware, i'm pretty sure you'll still need an underlying IO driver layer, either in kernel or userspace, and if you do this in anything other than C/++ you'll just be making things difficult for yourself.

regards

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Damion de Soto - Software Engineer email: damion@snapgear.com SnapGear --- ph: +61 7 3435 2809 | Custom Embedded Solutions fax: +61 7 3891 3630 | and Security Appliances web: http://www.snapgear.com~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --- Free Embedded Linux Distro at http://www.snapgear.org ---

and

strip

you need

you'll

if you

yourself.

To create small customized Linux systems, I use any distribution LINUX for development, and then use the Linux From Scratch project and Busybox for the swiss knife of utilities. This allows me to create custom Linux turn-key packages that can be distributed with few floppy disks of runtime code. Using this technique, I have been able to get LINUX to operate with only 8-16 Megs of RAM, using no hard disk - but very limited in applications.

Steve Hathaway

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required