I have worked on arduino UNo board and now i'm migrating onto Arduino DUE .Is there a way where we can run an embedded linux such on an ARDUINO DUE BOARD ? .
If yes please let me know the steps for the same .
I read a web page where someone ran Linux on an arduino and SD card. It took 5 hours to get to the password prompt so for all Intents and purposes you can't.
How much slower is the Due compared to a 50-60 MHz PowerPC 750 based board? I have seen Embedded Linux running on such boards before (remember U-boot, Denx Linux, etc.?). This not desktop Linux running 2.26 (?) kernel. You pick and choose the individual software components to build the kernel.
I remember the memory sizes for the boards where I saw embedded Linux and they typically had 8MB onwards of flash for program storage and in excess of 8 MB in SDRAM for data. Not that those boards were much faster or slower but it is the memory of Due that will present problem for embedded Linux.
I believe Graynomad is right. It would take way too much effort to do it. Here is why :-
Need to do something about the 8U cpu controlling the PC interface (Programming Port). The 8U has a boot code already programmed in factory. Would it be possible to do it by ourselves? (Then someone could try improving the upload speed!)
Need to attach SDRAM or NAND Flash to the I/O pins of Due. The quality of routing will be inferior to a board designed with the SDRAM/NAND sitting extremely close to the Sam3xA8E part. So, ext memory would suffer from speed issues.
Mem interface requires a good number of pins. Are these pins available in Due pin mapping?
What about power budgeting for the ext memory? (Total 130mA counting all I/O pins)
Did the hardware designers of Due ever envisioned having ext memory for this type of usage?
The principal advantage to a board vendor using embedded Linux is the complete freedom from royalty. That comes at the cost of having extra memory. Memory is generally cheaper than royalty. So, if someone is designing a new board with Sam3xa8e part, it would be a viable solution. With Due, as it is, I doubt it.
Mem interface requires a good number of pins. Are these pins available in Due pin mapping?
No, IMO the Due designers royally cocked up by not implementing the external memory feature, worse still they essentially stopped anyone else from doing so by using one of the pins (A5 or 6?) for no good reason.
I really think that allowing for even just 1MB of external SRAM would have been great, no good for this discussion but more than enough for most embedded Arduino-style applications.