I need to produce an Ethernet-capable embedded device (including
TCP/IP stack) for about $50 in low quantities (think perhaps qty 100).
I can get a 2-layer board in these quantities for $13, so that leaves
only about $40 for everything that goes on the board. The good news
is that by far, the dominating resource consumption will be from the
TCP/IP stack, and whatever OS overhead there may be; my application
actually does very little. I don't need a full 10Mbps throughput
through the stack; in fact, 500kbps average would be plenty. The
other components on the board for my particular I/O requirements are
very cheap. Reliability and convenience (for me, the developer) is
more important than blazing-fast performance.
I have a fair amount of experience with AVR chips, but have always
rolled my own "OS" (put in quotes because these are hardly real
operating systems, more like development libraries). I've never
hooked an AVR up to Ethernet or tried to implement any protocol as
complex or resource-intensive as TCP/IP on it.
So after a bit of searching around my first inclination is to use
Nut/OS, the operating system designed for the Ethernut
(http://www.ethernut.de/). I would not use the Ethernut hardware
design exactly, since I need different types of I/O on my board, but I
would do essentially the same thing with respect to the Ethernet
MAC/transceiver and external SRAM. Anybody have experience with the
reliability of Nut/OS?
But then there's also the option of beefing the whole thing up a bit
and going for Linux on an ARM chip, and given my experience with
Atmel, my first choice would be an AT91 chip, probably something very
cheap in the 55MHz range, where there seem to be several choices
priced comparably to the AVR Mega128, which is what I would use for
the Nut/OS route. I have a lot of experience with desktop/server
Linux, but no experience at all with embedded Linux. So, I have a few
questions:
1) How much hardware is necessary to run Linux with a TCP/IP stack, in
terms of off-chip RAM and Flash storage (for the OS and
applications)? How many support chips would I need? Can I do it
on a 2-layer board? Is this going to totally blow my budget?
2) I have no money, nor personal desire, for commercial software
liscensing or proprietary development environments. How much of a
pain is it to get free Linux running on an ARM7 chip, assuming a
Linux-based PC development environment with the right
cross-compilers? Are there particular support components (Ethernet
chips, memory chips, etc.) I can choose that will make it work out
of the box? Do I have to roll my own distro, or is there a good
free distro for highly constrained environments? (I just need
something that handles basic system initialization and starts my
application processes. Something that manages firmware updates
would be nice but not essential.)
3) Is there really any advantage to Linux vs. the AVR+Nut/OS solution,
which seems a bit simpler to me? If Linux ends up being more
reliable, that would be a good enough reason for me. But bigger is
not always better, as I'm sure many on this group would agree.
Thanks very much for any advice. Recommendations of options I haven't
considered would be welcome as well.
--
Randall
Reply by linnix●September 2, 20052005-09-02
Randall Nortman wrote:
> I need to produce an Ethernet-capable embedded device (including
> TCP/IP stack) for about $50 in low quantities (think perhaps qty 100).
> I can get a 2-layer board in these quantities for $13,
Sound expensive for 2 layers (qty 100), unless you have a very big
board. But, you would probably need at least 4 layers for ARMs.
Mult-layers will be smaller, so end up with similar cost.
> So, I have a few questions:
>
> 1) How much hardware is necessary to run Linux with a TCP/IP stack, in
> terms of off-chip RAM and Flash storage (for the OS and
> applications)?
128M SDRAM preferred. They can be recycled from old PCs for peanuts.
> How many support chips would I need?
One data flash, Two SDRAM chips and Three voltage regulators, etc.
> Can I do it on a 2-layer board?
Diffcult and inefficient use of PCB space.
> Is this going to totally blow my budget?
Multi-layers are not that expensive for productions, but more for
prototypes.
Reply by Repzak●September 2, 20052005-09-02
"Randall Nortman" <usenet8189@wonderclown.com> wrote in message
news:oX_Re.5674$9i4.3877@newsread2.news.atl.earthlink.net...
>I need to produce an Ethernet-capable embedded device (including
> TCP/IP stack) for about $50 in low quantities (think perhaps qty 100).
> I can get a 2-layer board in these quantities for $13, so that leaves
> only about $40 for everything that goes on the board. The good news
> is that by far, the dominating resource consumption will be from the
> TCP/IP stack, and whatever OS overhead there may be; my application
> actually does very little. I don't need a full 10Mbps throughput
> through the stack; in fact, 500kbps average would be plenty. The
> other components on the board for my particular I/O requirements are
> very cheap. Reliability and convenience (for me, the developer) is
> more important than blazing-fast performance.
check freescales NE64 micro controler with lan interface..
Kasper
Reply by David Kelly●September 2, 20052005-09-02
In article <4318b600$0$18639$14726298@news.sunsite.dk>,
"Repzak" <repzak@GEDhotmail.com> wrote:
> check freescales NE64 micro controler with lan interface..
I'm currently going down this exact same path. Happy with AVR but
published price for the NE64 of $9ea/1000 via dependable distribution
vs. questionable sources for Realtek and everything other than CS8900.
Ethernut and kin present a license problem. Decided it would require a
non-trivial effort to sort out the parts infected with GPL to ensure my
finished product hand none. Its perfectly fine to build with GPL tools
or link LGPL code, but not GPL code.
Freescale OpenTCP was a big disappointment. After downloading,
registering, install, update, of the free 32k version of CW 3.1 for '12,
opening the FSOTCP project complained that its 2004-dated files were
created with newer tools than I had. So it reset those parameters to
default. And didn't tell me what it thought it was changing.
Wading thru compile errors and warnings the worst was a missing .h file.
The forums at Viola (home of OpenTCP) are broken, full of porn, and
useless. Their contact email address bounces as non-existent. The same
email address used to send your registration welcome.
And for using their abandon-ware you have to list their copyright along
with your own. As if its not bad enough having to fix their software
first.
Pretty much committed to the NE64. Its a good part. Two commercial
TCP/IP protocol stacks are available starting at $5500. Free evaluation
copies are available, in source. Much better looking & organized code
than Viola's OpenTCP which uses Freescale's driver for touching the
hardware.
My need for networking is minimal. Just got to get a little bit of
command data in and result data out. No embedded web server. No embedded
mail server. No filesystems. Just a little data. And it has to be on a
VLAN. So today I took Freescale's good NE64 Drivers, which loads without
error in CW31, but compiles with some warnings which code comments say
will happen. Ran it thru GNU indent with my .indent.pro to bring it into
my style. And finally checked it into my CVS server.
Freescale's NE64 example driver has little more than ARP and enough ICMP
to ping. I expect to do UDP and TCP myself, doesn't look that hard in
the Stevens books. :-)
The default project included in the NE64 drivers includes an ANSI
library at 7k bytes and everything else is about 3k. Its built for
banked memory, which I intend to disable. Also intend to remove the ANSI
library. But maybe not. I don't plan on needing all of the 64k.
Now if you can wait 6 months things should get interesting with
Microchip's 28J60 MAC/PHY. When it finally ships. When there is some
body of non-Microchip software to make it sing. I really wish I could
stay with my Unix Makefile and avr-gcc rather than Codewarrior bloat and
eye-candy.
Reply by Richard H.●September 3, 20052005-09-03
David Kelly wrote:
> Pretty much committed to the NE64. Its a good part. Two commercial
> TCP/IP protocol stacks are available starting at $5500. Free evaluation
> copies are available, in source. Much better looking & organized code
> than Viola's OpenTCP which uses Freescale's driver for touching the
> hardware.
Thanks for the commentary - I've been very interested in this MCU, and
this is good info.
Perhaps you know... can you actually buy the tiny PCB they use in the
marketing photos? Thats about all I need for one project, but according
to TI it doesn't actually exist as a product / demo board.
As for Microchip's upcoming Ethernet controller, take a look in this
newsgroup for posts at the time of their announcement. One of the very
telling facts was the power consumption, which seems to be way out of line.
But if your power budget isn't tight and you don't need a lot of speed,
it sure will cut down on the number of pins and the size / complexity of
your boards. A large section of my current project is just bus traces
for the Ethernet controllers...
Richard
Reply by Richard H.●September 3, 20052005-09-03
Randall Nortman wrote:
> I need to produce an Ethernet-capable embedded device (including
> TCP/IP stack) for about $50 in low quantities (think perhaps qty 100).
>I need to produce an Ethernet-capable embedded device (including
>TCP/IP stack) for about $50 in low quantities (think perhaps qty 100).
>I can get a 2-layer board in these quantities for $13, so that leaves
>only about $40 for everything that goes on the board. The good news
>is that by far, the dominating resource consumption will be from the
>TCP/IP stack, and whatever OS overhead there may be; my application
>actually does very little. I don't need a full 10Mbps throughput
>through the stack; in fact, 500kbps average would be plenty. The
>other components on the board for my particular I/O requirements are
>very cheap. Reliability and convenience (for me, the developer) is
>more important than blazing-fast performance.
[snipped]
What about a Wiznet 3100A based module together with an AVR ?
You can get a module NM7000 (W3100A + Phy) for US$ 26 is single
quantities. The NM7010B (W3100A + Phy +Mag-Jack) for US$ 34.
Add a small AVR for US$ 6, and you should have enough for a
2 layer PCB.
To get basic TCP/IP going with the Wiznet module is trivial. Products
such as Bascom-AVR and Codvision already has libraries to support
this chip.
Regards
Anton Erasmus
Reply by Paul Taylor●September 3, 20052005-09-03
>
> But then there's also the option of beefing the whole thing up a bit
> and going for Linux on an ARM chip,
Maybe something like eCos would be more appropriate - you wouldn't need to
beef up the hardware as much as you would to run Linux. I can't think of
anything linux would give you that eCos wouldn't for the sort of thing
that you are looking to do.
http://sources.redhat.com/ecos/
Regards,
Paul.
--
Remove _rem_ before replying by email.
Reply by Frank-Christian Kruegel●September 3, 20052005-09-03
>Thanks very much for any advice. Recommendations of options I haven't
>considered would be welcome as well.
Try this:
http://www.zilog.com/products/partdetails.asp?id=eZ80F910200ZCO
with this microcontroller:
http://www.zilog.com/products/partdetails.asp?id=eZ80F91
Development is very easy - the developer kit (99$) comes with everything you
need - including JTAG/ZDS debugger, IDE with compiler/assembler and RTOS
with TCP/IP, HTTP/SMTP/FTP/SNMP/... The controller is about 12$ and gives
you Fast Ethernet.
Mit freundlichen Gr��en
Frank-Christian Kr�gel
Reply by Repzak●September 3, 20052005-09-03
"David Kelly" <n4hhe@yahoo.com> wrote in message
news:n4hhe-EC1D0E.20031202092005@ispnews.usenetserver.com...
> In article <4318b600$0$18639$14726298@news.sunsite.dk>,
> "Repzak" <repzak@GEDhotmail.com> wrote:
>
>> check freescales NE64 micro controler with lan interface..
>
> I'm currently going down this exact same path. Happy with AVR but
> published price for the NE64 of $9ea/1000 via dependable distribution
> vs. questionable sources for Realtek and everything other than CS8900.
>
> Ethernut and kin present a license problem. Decided it would require a
> non-trivial effort to sort out the parts infected with GPL to ensure my
> finished product hand none. Its perfectly fine to build with GPL tools
> or link LGPL code, but not GPL code.
>
> Freescale OpenTCP was a big disappointment. After downloading,
> registering, install, update, of the free 32k version of CW 3.1 for '12,
> opening the FSOTCP project complained that its 2004-dated files were
> created with newer tools than I had. So it reset those parameters to
> default. And didn't tell me what it thought it was changing.
Hey
I am using Uip on my NE64 and have my homepage on a MMC card...
There is not added write support, but the configuration of the server is
placed in a file on the mmc card s� IP adress etc can be changed without
changeing firmware :)
Kasper
Signal Processing Engineer Seeking a DSP Engineer to tackle complex technical challenges. Requires expertise in DSP algorithms, EW, anti-jam, and datalink vulnerability. Qualifications: Bachelor's degree, Secret Clearance, and proficiency in waveform modulation, LPD waveforms, signal detection, MATLAB, algorithm development, RF, data links, and EW systems. The position is on-site in Huntsville, AL and can support candidates at 3+ or 10+ years of experience.