Building a small microcontroller based laptop

Go To Last Post
6 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi, I'm just beginning to learn about microcontrollers and starting to work with them, so some of these questions might be ignorant.

I want to construct a very small simple laptop based on an AVR microcontroller running linux. My goal is to find a microcontroller that has either ethernet (and connect it to a wifi bridge) or wifi built in, and connect it to a small LCD panel. The only thing I want to be able to do with this machine is ssh into other machines.

Is this possible? I understand it's probably a pretty long term project, but what kinds of things should I start looking at or thinking about in advance?

Any guidance is greatly appreciated!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Good grief!! Given the scope of your project, I would find it challenging and I've been working with microcontrollers since the early 1970's. Yes, what you describe is possible (for Linux you probably want to look at the AVR32 family rather than the AVR family), however, you might want to learn to crawl before you try running a 4 minute mile. How about starting out with a few very simple projects where you simply learn how microcontrollers work, how you create source code given a particular tool chain, and how you debug your project to create a finished product. Once you have the basics down, then you can tackle a more complex project with a higher level of confidence. Otherwise, you will run into what seems to be an insurmountable hurdle (which really wouldn't be if you had more experience) and give up in frustration. Take a look at some simple projects (such as www.avrbeginners.net) on getting started and then build from there.

Dave

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

8-bit microcontrollers are very limited to support full TCP/IP stack. There are projects based on avr with ethernet support (look for ethernut) but these applications running better in larger MCUs like ARM (look latest ethernut boards).
Linux is another story. Linux is running only in larger MCUs like ARM, MIPS, AVR32, x86, etc.,,, with minimum 4MB Flash and 8MB RAM.

If you want to stay with Atmel chips you have to select either an ARM9 cpu or AVR32. Both of them support linux.
Easiest and cheaper way for your project is to buy a NGW100 board with AVR32, and to use it as a base for your development.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

True Linux requires an MMU so AVR32 and ARM9 (and beyond) are possibilities. ARM7 (for example) does not have an MMU. For smaller CPUs that have no MMU you would need to be using uCLinux but even that needs a more "meaty" processor than an AVR8

http://www.uclinux.org/ports

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Somehow this post seems appropriate here: :roll:

https://www.avrfreaks.net/index.p...

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

AVR8 is not going to get remotely close to achieving what you want. Even if you have unlimited time and funds you will not get linux to run on an 8 bit MCU like AVR.

AVR32 Network gateway for ~$100 is a good choice, as it ships with linux pre-installed.

AVR32 STK100 would be an even better choice for ~$400 as it also has a lcd.

There also are lots of ARM development boards that come with linux installed. I am sure someone here can suggest a good arm-linux dev board if that is what you want. ARM is probably the best choice for running linux as there is a much stronger user community than AVR32.

I am not really sure what kind of resources atmel devotes to AVR32 and how much they are trying to pimp it. The documentation really has not changed since it was first released a year or 2 ago and I have yet to see and popular consumer device with AVR32 in it.

Alternatively you could find a PDA like device that has linux on it, Nokia N770,N800,N810 come to mind. The nokia stuff is also open source and comes with a strong developer community.

Embedded linux is really exciting, I am also trying to get my feet wet but since linux is not a real time operating system it significantly reduces its use for many embedded applications and that has curbed my enthusiasm.