Mailing List Archive

Creating a gentoo based system for embedded
Hi,

I am on the way to build a gentoo based system for embedded application
(machinery)

There will be a compact flash to store the system :
A minimal linux system will be installed

The major poroblem is in the creation of this system , because of linux fast
evolution we should be able to update this system every six months.

Furthermore , the system may stay in a readonly partition , but we have to
plug our application in this system that should be setted up on a separate
partition because we should be able to send updates for it . and the user may
load save files on it .


What are the gentoo tools to allow that ?


Best Regards
Steph

--
gentoo-embedded@gentoo.org mailing list
Re: Creating a gentoo based system for embedded [ In reply to ]
Hello,

Am Donnerstag, 7. Oktober 2004 16:47 schrieb stephane ancelot:
First, sorry for my bad english, hope you understand me.

> There will be a compact flash to store the system :
> A minimal linux system will be installed

No prob. Take a hard disk for development, and then swich over the system to
the cf-card.

> The major poroblem is in the creation of this system , because of linux
> fast evolution we should be able to update this system every six months.

This could be a problem.

> Furthermore , the system may stay in a readonly partition , but we have to
> plug our application in this system that should be setted up on a separate
> partition because we should be able to send updates for it . and the user
> may load save files on it .
>
> What are the gentoo tools to allow that ?

They do. I build a gentoo-embedded system with an old stage of Ned Ludd and
Peter (lost his christian name, sorry)(BIG THANKS to both of them for their
work!!!) uclibc-stages on a Via-Epia bord with 256MB Ram and 256 MB CF-Card.
I buiilded the hole system without X, but mini_httpd and ssh. We would use it
for streaming diferential GPS-Data form an serial sender to an
TCP/IP-Network.

I used to build a second Computer (an oridinaery PC) which contains all the
gentoo stuff, like /usr/portage and /var/edb. This PC builds all new Packages
(in an chroot) Then, I make an rsync over the whole /root-Partiaion (with
some exculsions, like /etc) to get the update on the embeded system. I used
to have nearly all stuff, like gcc, python, perl.... on the embedded too, so
the size of the embedded system is around 150 MB at all.

I used to mount the entire file-system ro and store alle the variable date
(such as /var /tmp and /home) in tmpfs ram-disks.

If you have some more questions, mail me.

cu Daniel


--
gentoo-embedded@gentoo.org mailing list
Re: Creating a gentoo based system for embedded [ In reply to ]
On Thu, 2004-10-07 at 14:43, Daniel Frickemeier wrote:
> Hello,
>
> Am Donnerstag, 7. Oktober 2004 16:47 schrieb stephane ancelot:
> First, sorry for my bad english, hope you understand me.
>
> > There will be a compact flash to store the system :
> > A minimal linux system will be installed
>
> No prob. Take a hard disk for development, and then swich over the system to
> the cf-card.
>
> > The major poroblem is in the creation of this system , because of linux
> > fast evolution we should be able to update this system every six months.
>
> This could be a problem.

One solution here for him could be to use squashfs + jffs2.
I wont explain how to do that. But it's probably worth his time to
research it. The openwrt project is making use of this type of setup now
to make failsafe systems that live on flash. http://openwrt.org

>
> > Furthermore , the system may stay in a readonly partition , but we have to
> > plug our application in this system that should be setted up on a separate
> > partition because we should be able to send updates for it . and the user
> > may load save files on it .
> >
> > What are the gentoo tools to allow that ?

sys-fs/squashfs-tools-2.0_p2
sys-fs/mtd-20040825

>
> They do. I build a gentoo-embedded system with an old stage of Ned Ludd and
> Peter (lost his christian name, sorry)(BIG THANKS to both of them for their
> work!!!) uclibc-stages on a Via-Epia bord with 256MB Ram and 256 MB CF-Card.
> I buiilded the hole system without X, but mini_httpd and ssh. We would use it
> for streaming diferential GPS-Data form an serial sender to an
> TCP/IP-Network.

This link was just passed onto me. Thought I'd share it as I see your
using 256 sticks.
http://www.amazon.com/exec/obidos/tg/detail/-/B00005AC8J/002-5495224-0712017?v=glance&me=ATVPDKIKX0DER

For my needs I only need a <=16M sticks but the price here is cheaper
than what I've been paying for viking 32M flash.


>
> I used to build a second Computer (an oridinaery PC) which contains all the
> gentoo stuff, like /usr/portage and /var/edb. This PC builds all new Packages
> (in an chroot) Then, I make an rsync over the whole /root-Partiaion (with
> some exculsions, like /etc) to get the update on the embeded system. I used
> to have nearly all stuff, like gcc, python, perl.... on the embedded too, so
> the size of the embedded system is around 150 MB at all.
>
> I used to mount the entire file-system ro and store alle the variable date
> (such as /var /tmp and /home) in tmpfs ram-disks.
>


> If you have some more questions, mail me.

Or mail the list. These questions come up fairly often and it's nice to
see other users answer other users questions in a public setting (thanks
Dan). It's most helpful when we don't have to. And having an archive
online helps others.

>
> cu Daniel
>
>
> --
> gentoo-embedded@gentoo.org mailing list
--
Ned Ludd <solar@gentoo.org>
Gentoo (hardened,security,infrastructure,embedded,toolchain) Developer
Re: Creating a gentoo based system for embedded [ In reply to ]
Hi,

I know and I agree with every one this is possible to generate this system
, BUT the main problem is in the possibility to make evolve this system and
the tools to create and maintain it .(I think this is the awaited added
value)

Gentoo seems a good choice , because you may be able to upgrade your system.

I know there are tools that have been developped like catalyst. Is it a good
choice in this case ?

Building an embedded system from scratch will work, but you are faced to
evolution problem.I agree that embedded system must not evolve every day, but
every year our customers are requestings for new features in there machines.
we should be able to add these new features with the today 's tools and
technologies (ex : wifi was not really implemented fin industry ew years
ago....)

Thanks for your replies.

I will try catalyst and will give you my feedback .


Best Regards
Steph


Le jeudi 7 Octobre 2004 20:43, Daniel Frickemeier a écrit :
> Hello,
>
> Am Donnerstag, 7. Oktober 2004 16:47 schrieb stephane ancelot:
> First, sorry for my bad english, hope you understand me.
>
> > There will be a compact flash to store the system :
> > A minimal linux system will be installed
>
> No prob. Take a hard disk for development, and then swich over the system
> to the cf-card.
>
> > The major poroblem is in the creation of this system , because of linux
> > fast evolution we should be able to update this system every six months.
>
> This could be a problem.
>
> > Furthermore , the system may stay in a readonly partition , but we have
> > to plug our application in this system that should be setted up on a
> > separate partition because we should be able to send updates for it . and
> > the user may load save files on it .
> >
> > What are the gentoo tools to allow that ?
>
> They do. I build a gentoo-embedded system with an old stage of Ned Ludd and
> Peter (lost his christian name, sorry)(BIG THANKS to both of them for their
> work!!!) uclibc-stages on a Via-Epia bord with 256MB Ram and 256 MB
> CF-Card. I buiilded the hole system without X, but mini_httpd and ssh. We
> would use it for streaming diferential GPS-Data form an serial sender to an
> TCP/IP-Network.
>
> I used to build a second Computer (an oridinaery PC) which contains all the
> gentoo stuff, like /usr/portage and /var/edb. This PC builds all new
> Packages (in an chroot) Then, I make an rsync over the whole
> /root-Partiaion (with some exculsions, like /etc) to get the update on the
> embeded system. I used to have nearly all stuff, like gcc, python, perl....
> on the embedded too, so the size of the embedded system is around 150 MB at
> all.
>
> I used to mount the entire file-system ro and store alle the variable date
> (such as /var /tmp and /home) in tmpfs ram-disks.
>
> If you have some more questions, mail me.
>
> cu Daniel
>
>
> --
> gentoo-embedded@gentoo.org mailing list

--
gentoo-embedded@gentoo.org mailing list
Re: Creating a gentoo based system for embedded [ In reply to ]
Hi,

I know and I agree with every one this is possible to generate this system
, BUT the main problem is in the possibility to make evolve this system and
the tools to create and maintain it .(I think this is the awaited added
value)

Gentoo seems a good choice , because you may be able to upgrade your system.

I know there are tools that have been developped like catalyst. Is it a good
choice in this case ?

Building an embedded system from scratch will work, but you are faced to
evolution problem.I agree that embedded system must not evolve every day, but
every year our customers are requestings for new features in there machines.
we should be able to add these new features with the today 's tools and
technologies (ex : wifi was not really implemented fin industry ew years
ago....)

Thanks for your replies.

I will try catalyst and will give you my feedback .


Best Regards
Steph


Le jeudi 7 Octobre 2004 20:43, Daniel Frickemeier a écrit :
> Hello,
>
> Am Donnerstag, 7. Oktober 2004 16:47 schrieb stephane ancelot:
> First, sorry for my bad english, hope you understand me.
>
> > There will be a compact flash to store the system :
> > A minimal linux system will be installed
>
> No prob. Take a hard disk for development, and then swich over the system
> to the cf-card.
>
> > The major poroblem is in the creation of this system , because of linux
> > fast evolution we should be able to update this system every six months.
>
> This could be a problem.
>
> > Furthermore , the system may stay in a readonly partition , but we have
> > to plug our application in this system that should be setted up on a
> > separate partition because we should be able to send updates for it . and
> > the user may load save files on it .
> >
> > What are the gentoo tools to allow that ?
>
> They do. I build a gentoo-embedded system with an old stage of Ned Ludd and
> Peter (lost his christian name, sorry)(BIG THANKS to both of them for their
> work!!!) uclibc-stages on a Via-Epia bord with 256MB Ram and 256 MB
> CF-Card. I buiilded the hole system without X, but mini_httpd and ssh. We
> would use it for streaming diferential GPS-Data form an serial sender to an
> TCP/IP-Network.
>
> I used to build a second Computer (an oridinaery PC) which contains all the
> gentoo stuff, like /usr/portage and /var/edb. This PC builds all new
> Packages (in an chroot) Then, I make an rsync over the whole
> /root-Partiaion (with some exculsions, like /etc) to get the update on the
> embeded system. I used to have nearly all stuff, like gcc, python, perl....
> on the embedded too, so the size of the embedded system is around 150 MB at
> all.
>
> I used to mount the entire file-system ro and store alle the variable date
> (such as /var /tmp and /home) in tmpfs ram-disks.
>
> If you have some more questions, mail me.
>
> cu Daniel
>
>
> --
> gentoo-embedded@gentoo.org mailing list

--
gentoo-embedded@gentoo.org mailing list
Re: Creating a gentoo based system for embedded [ In reply to ]
Hi,
A few notes about compact flash, I recently made a research about cflash
products.
The main safety in compact flash products is in the availability of the wear
leveling function (secure mode)
low cost cflash do not include this capability , for this reason , you will
need to use jffs2 , to allow sector repartition over the disk.

However more robust products (sandisk / lexar) include the wear leveling
function in the card and it is completely transparent from the user, you use
it as a single normal ide disk.
Furthermore, lifetime and throuput bandwidth of these products is faster than
common camera cflash.

If interested in I could give you more details on how to check if your cflash
card supports wear leveling .
Best Regards
Steph


>
> One solution here for him could be to use squashfs + jffs2.
> I wont explain how to do that. But it's probably worth his time to
> research it. The openwrt project is making use of this type of setup now
> to make failsafe systems that live on flash. http://openwrt.org
>
> > > Furthermore , the system may stay in a readonly partition , but we have
> > > to plug our application in this system that should be setted up on a
> > > separate partition because we should be able to send updates for it .
> > > and the user may load save files on it .
> > >
> > > What are the gentoo tools to allow that ?
>
> sys-fs/squashfs-tools-2.0_p2
> sys-fs/mtd-20040825
>

--
gentoo-embedded@gentoo.org mailing list
Re: Creating a gentoo based system for embedded [ In reply to ]
Hi,
A few notes about compact flash, I recently made a research about cflash
products.
The main safety in compact flash products is in the availability of the wear
leveling function (secure mode)
low cost cflash do not include this capability , for this reason , you will
need to use jffs2 , to allow sector repartition over the disk.

However more robust products (sandisk / lexar) include the wear leveling
function in the card and it is completely transparent from the user, you use
it as a single normal ide disk.
Furthermore, lifetime and throuput bandwidth of these products is faster than
common camera cflash.

If interested in I could give you more details on how to check if your cflash
card supports wear leveling .
Best Regards
Steph


>
> One solution here for him could be to use squashfs + jffs2.
> I wont explain how to do that. But it's probably worth his time to
> research it. The openwrt project is making use of this type of setup now
> to make failsafe systems that live on flash. http://openwrt.org
>
> > > Furthermore , the system may stay in a readonly partition , but we have
> > > to plug our application in this system that should be setted up on a
> > > separate partition because we should be able to send updates for it .
> > > and the user may load save files on it .
> > >
> > > What are the gentoo tools to allow that ?
>
> sys-fs/squashfs-tools-2.0_p2
> sys-fs/mtd-20040825
>

--
gentoo-embedded@gentoo.org mailing list
Re: Creating a gentoo based system for embedded [ In reply to ]
I too have done research on Compact Flash cards, and have come to the same
conclusion.

My company uses Compact Flash (CF) as our storage for our OS and software on
our outdoor kiosk. Sadly I was forced to use Windows Embedded XP (XPe); the
software guys at my company are all windows guys (I'm a hardware engineer by
education and trade). Early on I did not use a "write filter"* on the
systems and I have had a couple of compact flash die because of to many
writes to the CF.

We also use DiskOnChips, which has had were leveling since the beginning of
there life.

You could partition the CF and mount the main partition read only and a small
partition read/write and have your application write to that partition only
when needed to store data. Or remount the root partition write only when
needed.


* the write filter is a XPe thing to limit the writes to the compact flash,
basicaly it creates a small ram disk and write are done there first and then
"flushed" to the compact flash later



heath holcomb



On Friday 08 October 2004 02:04 am, stephane ancelot wrote:
> Hi,
> A few notes about compact flash, I recently made a research about cflash
> products.
> The main safety in compact flash products is in the availability of the
> wear leveling function (secure mode)
> low cost cflash do not include this capability , for this reason , you will
> need to use jffs2 , to allow sector repartition over the disk.
>
> However more robust products (sandisk / lexar) include the wear leveling
> function in the card and it is completely transparent from the user, you
> use it as a single normal ide disk.
> Furthermore, lifetime and throuput bandwidth of these products is faster
> than common camera cflash.
>
> If interested in I could give you more details on how to check if your
> cflash card supports wear leveling .
> Best Regards
> Steph
>
> > One solution here for him could be to use squashfs + jffs2.
> > I wont explain how to do that. But it's probably worth his time to
> > research it. The openwrt project is making use of this type of setup now
> > to make failsafe systems that live on flash. http://openwrt.org
> >
> > > > Furthermore , the system may stay in a readonly partition , but we
> > > > have to plug our application in this system that should be setted up
> > > > on a separate partition because we should be able to send updates for
> > > > it . and the user may load save files on it .
> > > >
> > > > What are the gentoo tools to allow that ?
> >
> > sys-fs/squashfs-tools-2.0_p2
> > sys-fs/mtd-20040825
>
> --
> gentoo-embedded@gentoo.org mailing list

--
Heath Holcomb
Project Engineer
Texas Digital Systems

--
gentoo-embedded@gentoo.org mailing list
Re: Creating a gentoo based system for embedded [ In reply to ]
On Fri, 2004-10-08 at 02:55, stephane ancelot wrote:
> Hi,
>
> I know and I agree with every one this is possible to generate this system
> , BUT the main problem is in the possibility to make evolve this system and
> the tools to create and maintain it .(I think this is the awaited added
> value)
>
> Gentoo seems a good choice , because you may be able to upgrade your system.
>
> I know there are tools that have been developped like catalyst. Is it a good
> choice in this case ?
>
> Building an embedded system from scratch will work, but you are faced to
> evolution problem.I agree that embedded system must not evolve every day, but
> every year our customers are requestings for new features in there machines.
> we should be able to add these new features with the today 's tools and
> technologies (ex : wifi was not really implemented fin industry ew years
> ago....)
>
> Thanks for your replies.
>
> I will try catalyst and will give you my feedback .

catalyst probably needs some work in this area. (patches welcome)
Like the ability to create read-only cramfs/squashfs/jffs2/etc file
systems. I think currently it's setup to spit out an ext{2,3} file.
Re: Creating a gentoo based system for embedded [ In reply to ]
On Fri, Oct 08, 2004 at 02:41:03PM -0400, Ned Ludd wrote:
> catalyst probably needs some work in this area. (patches welcome)
> Like the ability to create read-only cramfs/squashfs/jffs2/etc file
> systems. I think currently it's setup to spit out an ext{2,3} file.
>

actually the default embedded target spits out cramfs.


--
gentoo-embedded@gentoo.org mailing list
Re: Creating a gentoo based system for embedded [ In reply to ]
On Fri, 2004-10-08 at 18:57, David Bryson wrote:
> On Fri, Oct 08, 2004 at 02:41:03PM -0400, Ned Ludd wrote:
> > catalyst probably needs some work in this area. (patches welcome)
> > Like the ability to create read-only cramfs/squashfs/jffs2/etc file
> > systems. I think currently it's setup to spit out an ext{2,3} file.
> >
>
> actually the default embedded target spits out cramfs.

excellent. Now we only await for your updates of that target that use
uClibc and a small intro.

--
Ned Ludd <solar@gentoo.org>
Gentoo (hardened,security,infrastructure,embedded,toolchain) Developer