Author Topic: Getting started with Embedded Linux?  (Read 7937 times)

0 Members and 1 Guest are viewing this topic.

Offline ChristopherTopic starter

  • Frequent Contributor
  • **
  • Posts: 429
  • Country: gb
Getting started with Embedded Linux?
« on: March 20, 2015, 05:19:39 pm »
Back in a previous life (or job) I was a linux software engineer for desktop applications.

Then I became an electronics guy working on MCUs and analog... Now I want to join the two together.


I want to design from scratch (for fun!) a modular embedded linux system, so no OpenWRT etc. Basically I don't wanna start with something like a raspberry pi and remove software features, I want to start with a simple buildroot and build on it.

--

My first step is to choose a simple board. My requirements are not too taxing: just an ethernet socket and some GPIO. The Carambola 2 uses a Atheros AR9331, for which I can only find OpenWRT.... Is this a good choice?

Any tips?
 

Online ataradov

  • Super Contributor
  • ***
  • Posts: 11260
  • Country: us
    • Personal site
Re: Getting started with Embedded Linux?
« Reply #1 on: March 20, 2015, 05:41:43 pm »
Here is a good tip. Go with an evaluation board from a chip manufacturer. You still will be able to do stuff yourself, but you will also be able to get help long the way in case you need it. After all that's what those boards are for.

I recommend Atmel ATSAMA5D3 Xplained (http://www.atmel.com/tools/ATSAMA5D3-XPLD.aspx) it is cheap and has all the software support you will need. I do work for Atmel, so my opinion is biased, but the board is neat nonetheless.

Alex
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: Getting started with Embedded Linux?
« Reply #2 on: March 20, 2015, 08:38:45 pm »
The Carambola 2 uses a Atheros AR9331, for which I can only find OpenWRT.... Is this a good choice?

no
 

Offline ChristopherTopic starter

  • Frequent Contributor
  • **
  • Posts: 429
  • Country: gb
Re: Getting started with Embedded Linux?
« Reply #3 on: March 20, 2015, 08:41:51 pm »
Atmel ATSAMA5D3 Xplained
Not bad. Only £60 from farnell. Shame none are in stock though..  I tried to get a sample board through work from Future Electronics a few weeks back but no dice.


The Carambola 2 uses a Atheros AR9331, for which I can only find OpenWRT.... Is this a good choice?

no

Any reason?  I am only looking the run a lightweight web server or some basic python scripts on the box.
 

Online ataradov

  • Super Contributor
  • ***
  • Posts: 11260
  • Country: us
    • Personal site
Re: Getting started with Embedded Linux?
« Reply #4 on: March 20, 2015, 08:46:51 pm »
Not bad. Only £60 from farnell. Shame none are in stock though..  I tried to get a sample board through work from Future Electronics a few weeks back but no dice.
There is a new batch in production right now.

Element14 has 492 in stock in UK.
Alex
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26906
  • Country: nl
    • NCT Developments
Re: Getting started with Embedded Linux?
« Reply #5 on: March 21, 2015, 01:52:37 am »
An iMX6 board costs just the same:
http://nl.farnell.com/embest/mars-board/imx6-dual-cortex-a9-mars-dev-board/dp/2362785
This one has got a lot more CPU power than the Atmel board.

 I recommend using Debian or Ubuntu from a regular (Sata) hard drive. I wouldn't invest in learning buildroot nowadays because cross compiling still is a world of pain. The platforms available have so much processing power and memory that you can compile on the target itself.

This one is a little more expensive but has a SATA connection. I have used it to develop a product with a SATA SSD:
http://nl.farnell.com/freescale-semiconductor/mcimx6q-sl/i-mx6-quad-sabre-lite-dev-kit/dp/2124398
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline Jane

  • Frequent Contributor
  • **
  • Posts: 381
Re: Getting started with Embedded Linux?
« Reply #6 on: March 21, 2015, 01:21:51 pm »
@Christopher:
Quote
I don't wanna start with something like a raspberry pi
.
Why don't you like Rasberry? From the beginning I did not like Raspberry either( because Broadcom is closed company regarding datasheets) but nowadays a lot of people use Raspberry and it means a good chance to receive help when needed.
 

Offline Dago

  • Frequent Contributor
  • **
  • Posts: 659
  • Country: fi
    • Electronics blog about whatever I happen to build!
Re: Getting started with Embedded Linux?
« Reply #7 on: March 21, 2015, 02:32:40 pm »
Checkout the Yocto project: https://www.yoctoproject.org/

It is a Linux build system for building custom (minimal) embedded Linux distros.
Come and check my projects at http://www.dgkelectronics.com ! I also tweet as https://twitter.com/DGKelectronics
 

Offline donotdespisethesnake

  • Super Contributor
  • ***
  • Posts: 1093
  • Country: gb
  • Embedded stuff
Re: Getting started with Embedded Linux?
« Reply #8 on: March 21, 2015, 03:20:44 pm »
Here is a good tip. Go with an evaluation board from a chip manufacturer. You still will be able to do stuff yourself, but you will also be able to get help long the way in case you need it. After all that's what those boards are for.

I recommend Atmel ATSAMA5D3 Xplained (http://www.atmel.com/tools/ATSAMA5D3-XPLD.aspx) it is cheap and has all the software support you will need. I do work for Atmel, so my opinion is biased, but the board is neat nonetheless.

Wow, that board has taken a price hike, I am sure I bought one for around ~£30 before. With current price, there are many cheaper/better alternatives.
Bob
"All you said is just a bunch of opinions."
 

Offline kamtar

  • Regular Contributor
  • *
  • Posts: 62
Re: Getting started with Embedded Linux?
« Reply #9 on: March 21, 2015, 04:17:29 pm »
If you like making your own things from scratch then you could make your own linux board. For example i.mx233 is ideal you can use olimex open source boards as reference.
« Last Edit: March 21, 2015, 04:19:12 pm by kamtar »
 

Offline diyaudio

  • Frequent Contributor
  • **
  • !
  • Posts: 683
  • Country: za
Re: Getting started with Embedded Linux?
« Reply #10 on: March 21, 2015, 04:21:36 pm »
An iMX6 board costs just the same:
http://nl.farnell.com/embest/mars-board/imx6-dual-cortex-a9-mars-dev-board/dp/2362785
This one has got a lot more CPU power than the Atmel board.

 I recommend using Debian or Ubuntu from a regular (Sata) hard drive. I wouldn't invest in learning buildroot nowadays because cross compiling still is a world of pain. The platforms available have so much processing power and memory that you can compile on the target itself.

This one is a little more expensive but has a SATA connection. I have used it to develop a product with a SATA SSD:
http://nl.farnell.com/freescale-semiconductor/mcimx6q-sl/i-mx6-quad-sabre-lite-dev-kit/dp/2124398


@nctnico What board would you recommend for doing computer vision experiments ?

 

Online Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: Getting started with Embedded Linux?
« Reply #11 on: March 21, 2015, 05:08:48 pm »
... cross compiling still is a world of pain. The platforms available have so much processing power and memory that you can compile on the target itself.

Indeed, although it's perfectly possible to get a cross compiling environment up and going, it's an awful lot of noise and effort when you could be being productive compiling directly on a board. In that respect alone for example, the RPi 2 is so much better than the original version because native compiling is so fast now. The cross compiling for the RPi at the best of times was a continually changing environment, making it even harder. The Beaglebone seemed to me to be far more mature in that respect.

I do like your description, "a world of pain", pretty much sums it up: unless you live and breathe this sort of thing at this level, almost certainly better to take a prebaked distro and compile natively.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26906
  • Country: nl
    • NCT Developments
Re: Getting started with Embedded Linux?
« Reply #12 on: March 21, 2015, 06:02:14 pm »
An iMX6 board costs just the same:
http://nl.farnell.com/embest/mars-board/imx6-dual-cortex-a9-mars-dev-board/dp/2362785
This one has got a lot more CPU power than the Atmel board.

 I recommend using Debian or Ubuntu from a regular (Sata) hard drive. I wouldn't invest in learning buildroot nowadays because cross compiling still is a world of pain. The platforms available have so much processing power and memory that you can compile on the target itself.

This one is a little more expensive but has a SATA connection. I have used it to develop a product with a SATA SSD:
http://nl.farnell.com/freescale-semiconductor/mcimx6q-sl/i-mx6-quad-sabre-lite-dev-kit/dp/2124398
@nctnico What board would you recommend for doing computer vision experiments ?
I'd choose the Freescale iMX6 platform. But that is mainly due to the fact I have used it before. The alternative is TI's Omap (Beagle board) but last time I looked the image compression/decompression is done using a DSP where the iMX series have hardware accellerators for image/video compression/decompression and color space conversion.

@Howardlong: my biggest beef with cross compiling is that many packages don't support cross compiling very well (needing to patch makefiles, automake files, configure files) and dependancy on software available on the host. I recently upgraded to a new PC but it appeared the versions of GCC and Python which come with Debian nowdays are not fully backwards compatible which breaks a lot of stuff.
« Last Edit: March 21, 2015, 06:05:47 pm by nctnico »
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline diyaudio

  • Frequent Contributor
  • **
  • !
  • Posts: 683
  • Country: za
Re: Getting started with Embedded Linux?
« Reply #13 on: March 21, 2015, 07:34:30 pm »
An iMX6 board costs just the same:
http://nl.farnell.com/embest/mars-board/imx6-dual-cortex-a9-mars-dev-board/dp/2362785
This one has got a lot more CPU power than the Atmel board.

 I recommend using Debian or Ubuntu from a regular (Sata) hard drive. I wouldn't invest in learning buildroot nowadays because cross compiling still is a world of pain. The platforms available have so much processing power and memory that you can compile on the target itself.

This one is a little more expensive but has a SATA connection. I have used it to develop a product with a SATA SSD:
http://nl.farnell.com/freescale-semiconductor/mcimx6q-sl/i-mx6-quad-sabre-lite-dev-kit/dp/2124398
@nctnico What board would you recommend for doing computer vision experiments ?
I'd choose the Freescale iMX6 platform. But that is mainly due to the fact I have used it before. The alternative is TI's Omap (Beagle board) but last time I looked the image compression/decompression is done using a DSP where the iMX series have hardware accellerators for image/video compression/decompression and color space conversion.

@Howardlong: my biggest beef with cross compiling is that many packages don't support cross compiling very well (needing to patch makefiles, automake files, configure files) and dependancy on software available on the host. I recently upgraded to a new PC but it appeared the versions of GCC and Python which come with Debian nowdays are not fully backwards compatible which breaks a lot of stuff.

@nctnico thanks, leaning towards the i.mx6 as well, the the demo watched on youtube running open-cv was "okay" not the fastest, there was still noticeable lag.

 
 

 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26906
  • Country: nl
    • NCT Developments
Re: Getting started with Embedded Linux?
« Reply #14 on: March 21, 2015, 09:53:59 pm »
A lot depends on your processing needs and how well an algorithm is implemented. For some processing you don't need high res pictures so downsizing an image 4 times before processing reduces the number of pixels that need to be processed by a factor of 16.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline andersm

  • Super Contributor
  • ***
  • Posts: 1198
  • Country: fi
Re: Getting started with Embedded Linux?
« Reply #15 on: March 22, 2015, 10:44:01 am »
Most Linux cross-build environments make it easy to cross-compile applications under development. I used Buildroot a some years ago, and don't remember it being difficult at all. Exporting your development directory as an NFS or Samba share also makes it really easy to run the software on the target hardware, without having to copy everything over every time you recompile. I would also recommend getting your application to run on the desktop as well. Many things will just be far simpler and quicker if you don't have to go through the target hardware every time.


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf