Author Topic: What microcontrollers offer good/great Linux toolchain support?  (Read 21126 times)

0 Members and 1 Guest are viewing this topic.

Offline andyturk

  • Frequent Contributor
  • **
  • Posts: 895
  • Country: us
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #50 on: March 03, 2014, 05:18:37 am »
If you want to give such a high importance to arcane and counter intuitive technologies like Unix Make it is your perogative.   ;-)

http://freecode.com/articles/what-is-wrong-with-make

Compare it for example with a more modern build system with a rich library of task oriented rules

http://ant.apache.org/manual/index.html

I've used both ANT and Make, but wouldn't really consider ANT for firmware builds because it pulls in a bunch of "moving parts" related to Java. ANT is great for server-side Java work though.

The "What's wrong with Make" has a few good points--the tool ain't perfect. But if you can standardize on GNU make, it's possible to have makefiles that are fairly portable (if you're willing to dip into semi-obscure conditionals and functions). The biggest problem I've had with cross platform make is getting it to work well on Windows. Some ports of make will bring a Windows box to its knees while trying to figure out which rules to apply. Oddly enough, the one that comes bundled with TI's Code Composer Studio works pretty well.
 

Offline calin

  • Regular Contributor
  • *
  • Posts: 239
  • Country: us
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #51 on: March 03, 2014, 05:56:49 am »
If you want to give such a high importance to arcane and counter intuitive technologies like Unix Make it is your perogative.   ;-)

You're missing the point.  While I can't speak for calin, I can speak for myself, and I have the same rule.  It's not about testing whether or not they know make, make isn't the end-all of build tools, and any decent programmer should be able to adapt to whatever environment they're placed in.  It's about testing their programming experience level and comfort with standard build tools.  As I have found (and I assume calin has also found), most "programmers" who only know IDEs (and usually just one specific IDE) and have no experience with vi, emacs, make, gcc, etc. aren't actually programmers.  They suck at algorithm development, troubleshooting, working through problems, etc.  They google for a command, plug it in verbatim in the IDE, and when it doesn't work they run back to their supervisor to ask for help.  It's like hiring a mathematician who needs to use a symbolic math tool to solve for 2x=4.

True ... i could not have said that better myself . How anyone can call himself a C or UNIX/Linux developer wen he is not able to write a makefile ? answer is simple .. the guy is giving you bull^@% for sure.

 And yes ... i have a say in the hire process; where I am now you pass by me and you are in. And I am not a manager, nor i ever behave like one now or in future .. just that i am decent at what I do and my say matters a lot. Lucky .. :)

yes, make suks but still is the most used build tool for C/CPP by far; sooner or later you will have to "make" something no matter how much you dance around. ..use scons, cmake, .. use ant .. use whatever your heart likes.
« Last Edit: March 03, 2014, 06:04:16 am by calin »
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6460
  • Country: nl
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #52 on: March 03, 2014, 08:04:26 am »
Depends on the job, in our line of business we never hire a c programmer if he can't read and understand an electronic schematic, without electronics knowledge he is useless as a close to the hardware, embedded software programmer. Does not matter if he can make a makefile, enough other people to do that, as long as he can get his specific job done. I agree linux programmers are a different ballgame.
 

Online nctnico

  • Super Contributor
  • ***
  • Posts: 26891
  • Country: nl
    • NCT Developments
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #53 on: March 03, 2014, 10:56:27 am »
About 2 decades ago I was asked to write a makefile as part of a test. After a bit of brain crunching I came up with this:
Code: [Select]
all:
cc in.c -o in.exe
It was a bit frowned upon but they had to admit it would work  O0 Today I'd still need to use a manual to put a makefile together if I want to use the more advanced option. Most of the software I encounter uses a (generated) makefile to build. Oh and I didn't take the job; I found something more interesting.
« Last Edit: March 03, 2014, 10:58:01 am by nctnico »
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline dannyf

  • Super Contributor
  • ***
  • Posts: 8221
  • Country: 00
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #54 on: March 03, 2014, 12:32:16 pm »
-our line of business we never hire a c programmer if he can't read and understand an electronic schematic, without electronics knowledge he is useless as a close to the hardware, embedded software programmer. -

bingo!

that's knowing what is important about ones value-add.

make or not, I need a guy who can code to the job. Nothing else matters.
================================
https://dannyelectronics.wordpress.com/
 

Offline ve7xen

  • Super Contributor
  • ***
  • Posts: 1192
  • Country: ca
    • VE7XEN Blog
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #55 on: March 03, 2014, 12:54:24 pm »
IMO, beginners should start with 32-bits now unless they have a very specific reason to use a rinky-dink, legacy processor.

Not sure I agree. Getting a simple LED blinker is much much more difficult on a small ARM than on AVR or PIC. To build code that will run at all, you need to write a linker script for your target. Depending on what libc functions you want to use, you may need to provide implementations of stubs like kill and putc. You need to initialize clock distribution, power management, possibly watchdogs and PLL to get full clock. The chips, and build environment are a lot more complicated to set up. Once set up, I agree, but as a hobbyist with a comp sci education it took me at least a day of hobby time to get it all working together the first time around, which was pretty close to giving up and using something I was familiar with already.

Of course if you use the vendor's tools, you don't have to do any of that, or it will be mostly automatic.
73 de VE7XEN
He/Him
 

Offline dannyf

  • Super Contributor
  • ***
  • Posts: 8221
  • Country: 00
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #56 on: March 03, 2014, 01:02:35 pm »
- a simple LED blinker is much much more difficult on a small ARM than on AVR or PIC. -

absolutely true. Getting the tools up, understanding the environment, going through library documents and chip documents and be familiar with the registers and having your own framework to coding are difficult for a newbie.

 

-of course if you use the vendor's tools, you don't have to do any of that, or it will be mostly automatic. -

equally challenging with a commercial tool.
================================
https://dannyelectronics.wordpress.com/
 

Offline GiskardReventlov

  • Frequent Contributor
  • **
  • Posts: 598
  • Country: 00
  • How many pseudonyms do you have?
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #57 on: March 04, 2014, 06:20:58 am »
What 32-bit uC can plug directly into a breadboard? I did a quick look and don't find any.  Don't know if that matters to the OP but it's worth considering.  There are adapters, but they are expensive, that allow those packages to go into a breadboard. The drawback to those all-in-one demo boards is that it's a one-chip pony. Now there's a lot of technology in those chips so might keep you busy for a long time but it is a limitation.
 

Offline ve7xen

  • Super Contributor
  • ***
  • Posts: 1192
  • Country: ca
    • VE7XEN Blog
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #58 on: March 04, 2014, 07:09:53 am »
What 32-bit uC can plug directly into a breadboard? I did a quick look and don't find any.  Don't know if that matters to the OP but it's worth considering.  There are adapters, but they are expensive, that allow those packages to go into a breadboard. The drawback to those all-in-one demo boards is that it's a one-chip pony. Now there's a lot of technology in those chips so might keep you busy for a long time but it is a limitation.

http://www.nxp.com/products/microcontrollers/cortex_m0_m0/lpc1100/LPC1114FN28.html

Not sure why they'd choose to do that, but hey, it's pretty cool. About the same price as an ATmega8, programmed via UART with built-in bootloader. Haven't tried one yet, but pretty nifty, then you can easily migrate to another LPC111x for production in SMD.
73 de VE7XEN
He/Him
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6460
  • Country: nl
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #59 on: March 04, 2014, 08:09:58 am »
What 32-bit uC can plug directly into a breadboard? I did a quick look and don't find any.
embeddedartists.com and Olimex.com boards most of them have the standard 2,54mm headers on the sides, solder a row of pins in and you are ready to go. Not all signals are available though.
ah misunderstood the question.  |O
« Last Edit: March 04, 2014, 10:14:40 am by Kjelt »
 

Offline westfw

  • Super Contributor
  • ***
  • Posts: 4199
  • Country: us
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #60 on: March 04, 2014, 09:37:26 am »
There are quite a few PIC32 chips in DIP28.
And a bunch of modules for otherwise SMT chips.
 

Offline ElektroQuark

  • Supporter
  • ****
  • Posts: 1244
  • Country: es
    • ElektroQuark
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #61 on: March 04, 2014, 09:47:43 am »
What 32-bit uC can plug directly into a breadboard?

Some of the PIC32 range.

Online nctnico

  • Super Contributor
  • ***
  • Posts: 26891
  • Country: nl
    • NCT Developments
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #62 on: March 04, 2014, 10:23:42 am »
I'd go for a module if you need a dip layout. A high speed CPU in a DIP package is asking for power supply decoupling problems.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline GiskardReventlov

  • Frequent Contributor
  • **
  • Posts: 598
  • Country: 00
  • How many pseudonyms do you have?
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #63 on: March 04, 2014, 06:52:09 pm »
Haven't tried one yet, but pretty nifty, then you can easily migrate to another LPC111x for production in SMD.

That is nifty, good find, very cheap!

I only did a search for atmel and stm so didn't find any.
 

Offline GiskardReventlov

  • Frequent Contributor
  • **
  • Posts: 598
  • Country: 00
  • How many pseudonyms do you have?
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #64 on: March 04, 2014, 07:12:33 pm »
There are quite a few PIC32 chips in DIP28.
And a bunch of modules for otherwise SMT chips.

Ok, lots of options!

Right now I want to avoid modules for two reasons, price and DIY.  As a naive enthusiast it's hard to learn about the subtle aspects of this craft. I feel in my bones that when I buy pre-made I miss out on acquiring those little bits of knowledge you get from DIY that you might not get right away with pre-made.
 

Offline GiskardReventlov

  • Frequent Contributor
  • **
  • Posts: 598
  • Country: 00
  • How many pseudonyms do you have?
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #65 on: March 04, 2014, 07:19:48 pm »
A high speed CPU in a DIP package is asking for power supply decoupling problems.

I'm not sure what you are talking about. But here's what I think you mean. You're saying that due to the coarse nature of a breadboard that a chip operating at high frequencies might go too fast for the power supply to respond and thus introduce "craziness" into your breadboard circuit and thereby limit the usefulness of laying it out on a breadboard. i.e. a failure from the start
Am I close?

I guess the question becomes at what frequency does the breadboard become a hindrance? 50MHz?
The atmega32 I have runs at 16MHz and I haven't done anything other than blinking LEDs.
 

Online nctnico

  • Super Contributor
  • ***
  • Posts: 26891
  • Country: nl
    • NCT Developments
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #66 on: March 04, 2014, 07:52:28 pm »
A high speed CPU in a DIP package is asking for power supply decoupling problems.

I'm not sure what you are talking about. But here's what I think you mean. You're saying that due to the coarse nature of a breadboard that a chip operating at high frequencies might go too fast for the power supply to respond and thus introduce "craziness" into your breadboard circuit and thereby limit the usefulness of laying it out on a breadboard. i.e. a failure from the start
Am I close?
Yes very close. You might get away with soldering a 100nf MLCC capacitor to the power supply pins directly but it's still far from ideal. You may end up chasing problems caused by using a breadboard.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline Rigby

  • Super Contributor
  • ***
  • Posts: 1476
  • Country: us
  • Learning, very new at this. Righteous Asshole, too
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #67 on: March 04, 2014, 08:09:31 pm »
I guess the question becomes at what frequency does the breadboard become a hindrance? 50MHz?
The atmega32 I have runs at 16MHz and I haven't done anything other than blinking LEDs.

This is where a pulse/function generator and an oscilloscope would come in handy.  I don't remember where, but I seem to remember reading or hearing that breadboards are useless starting at around 1GHz.  That seems high to me, and it might have only been 1MHz.

If you have a function gen that can go to 1MHz or more, and an oscilloscope, you can test it.  Pop a square wave on two adjacent channels on a breadboard, then, as far away as you can, and still be in that channel, hook up a scope probe.  Put channel 2 as near to the function gen as you can.  Then, I would put CH1, CH2, and the difference between CH1 & 2 on screen all at once.  Observe as you turn up the frequency.  When the squareness of CH1 goes away or the signal is attenuated by 3db or more, you've exceeded the bandwidth limit of the breadboard.

I honestly don't know what frequency this would be.  I'm going to test it tonight and see.
 

Offline Rigby

  • Super Contributor
  • ***
  • Posts: 1476
  • Country: us
  • Learning, very new at this. Righteous Asshole, too
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #68 on: March 04, 2014, 08:09:55 pm »
.. I think.  Anyone correct me if I'm wrong on that measurement technique.
 

Offline suicidaleggroll

  • Super Contributor
  • ***
  • Posts: 1453
  • Country: us
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #69 on: March 05, 2014, 04:56:55 am »
This is where a pulse/function generator and an oscilloscope would come in handy.  I don't remember where, but I seem to remember reading or hearing that breadboards are useless starting at around 1GHz.  That seems high to me, and it might have only been 1MHz.

It's definitely higher than 1 MHz.  I'm working on a programmable load that's currently breadboarded up, and the SPI link between the uC and the DAC/ADCs is running at 4 MHz without issue, even through a couple of daisy-chained 6" jumpers.  The uC itself had no issues running at 16 MHz flipping a couple of pins, but once I added the display and started flipping entire ports at once I started to get some fluctuations in the power supply that kept the display from working properly.  Some extra decoupling caps and moving the linear reg right next to the uC all but fixed it.  I still get the occasional hiccup now, but it's running well enough to test and develop the firmware before moving to the final PCB.

While the breadboard and DIP uC did complicate things a bit, it was by no means a dealbreaker.
« Last Edit: March 05, 2014, 04:58:50 am by suicidaleggroll »
 

Offline GiskardReventlov

  • Frequent Contributor
  • **
  • Posts: 598
  • Country: 00
  • How many pseudonyms do you have?
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #70 on: March 07, 2014, 08:21:19 pm »
Some extra decoupling caps and moving the linear reg right next to the uC all but fixed it.

Can you share a picture of your setup? I've heard they're worth a thousand words. You can consider I have just started using a breadboard within the last month so seeing different setups helps a lot.
 

Offline dannyf

  • Super Contributor
  • ***
  • Posts: 8221
  • Country: 00
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #71 on: March 07, 2014, 08:31:11 pm »
Quote
It's definitely higher than 1 MHz.

I have breadboarded (digital) circuits running off 50Mhz oscillators.

I think this side of 10Mhz is fairly easy. North of 32Mhz, you want to be careful with those wires.
================================
https://dannyelectronics.wordpress.com/
 

Offline suicidaleggroll

  • Super Contributor
  • ***
  • Posts: 1453
  • Country: us
Re: What microcontrollers offer good/great Linux toolchain support?
« Reply #72 on: March 07, 2014, 09:29:40 pm »
Can you share a picture of your setup? I've heard they're worth a thousand words. You can consider I have just started using a breadboard within the last month so seeing different setups helps a lot.

Picture a rainbow-colored rats' nest with a 128x64 graphical lcd in the middle, and you're 95% of the way there.  I typically don't bother cutting and trimming every wire to the exact length when I'm breadboarding, since it's just a temporary setup anyway, and I'm usually rearranging things pretty often.

I'll see if I can grab a decent shot tonight.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf