ARM Cortex RTOS, which to choose. - Page 1
Forum section: electronics / general

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: June 26, 2014, 12:29:19 pm
content: Quote from: zapta on June 26, 2014, 02:30:39 amOh I was about to migrate to Chibios from FreeRTOS, when I saw this.So rather than hijacking another thread, what RTOS should I choose.I don't like reading licences, prefer to ignore them, but I want to write code for clients, most of which will want closed source.Which RTOS to choose, assuming I need one for my next project.Probably will use ST Micro F3 or F4 or even the new low power ones, but open to change manufacturer.

author: gxti
author_rank: Frequent Contributor
timestamp: June 26, 2014, 01:27:01 pm
content: You can't beat ChibiOS if you want working peripherals out of the box. The license isn't necessarily an issue, because it permits you to link your proprietary code against it, but if you need to make any modifications to ChibiOS itself those must be open-source. FreeRTOS also uses a copy-left license so migrating to that wouldn't help. However both OSes have a commercial license option available.Personally, I chose to ditch ChibiOS because of the license. I'm currently using CoOS (from CooCox) which is a decent core but does not have any peripheral drivers, so I had to write my own. It is BSD licensed so you can use it in commercial projects without issue. As for the OS itself, it works well enough but it's not amazing. I found a race condition in semaphores that I had to patch, but I haven't pulled in any new code from upstream for a year or two so it's probably been fixed by now.

author: mrflibble
author_rank: Super Contributor
timestamp: June 26, 2014, 02:04:00 pm
content: Quote from: HackedFridgeMagnet on June 26, 2014, 12:29:19 pmTo optimize for the "don't like reading licenses" + "clients prefer closed source" constraint see the short comparison matrix of what you can & cannot do with the licensing options:http://www.chibios.org/dokuwiki/doku.php?id=chibios:licensePersonally I'd think the listed licensing options would give you a workable spectrum of options to chose from depending on what a particular client wants. But in the end, it's your decision.

author: andyturk
author_rank: Frequent Contributor
timestamp: June 26, 2014, 04:17:22 pm
content: Quote from: mrflibble on June 26, 2014, 02:04:00 pmThey're probably workable in some sense, but the GPL mess just makes it more difficult (sadly) to choose ChibiOS because it involves lawyers. For hobby projects, it's a no brainer--use Chibi if you like it.But if you have to convince the corporate counsel that the "GPL Exception text" (and your promise to abide its the technical requirements) is what's keeping him and your employer out of court, well, that's a whole 'nother ballgame.

author: mrflibble
author_rank: Super Contributor
timestamp: June 26, 2014, 04:35:40 pm
content: Quote from: andyturk on June 26, 2014, 04:17:22 pmFor the more conservative there's always the commercial license. Which means paying money, which means offloading that cost to customers should they wish closed source.Anyways, it will be interesting to see what other RTOSes people suggest using in a commercial setting.

author: nctnico
author_rank: Super Contributor
timestamp: June 26, 2014, 05:38:32 pm
content: The commercial version of FreeRTOS?-ducking-

author: zapta
author_rank: Super Contributor
timestamp: June 26, 2014, 06:31:10 pm
content: Quote from: gxti on June 26, 2014, 01:27:01 pmMy interpretation of the license is that you if you modify the library (e.g. bug fix), you also need to open also application. That's the gotcha part of their licensing. Here is the offending caluse:Non-GPL Code permitted under this exception must only link to theunmodified code of this Programthrough those well defined interfaces identified as "Approved Interfaces"That's different from common GPL linking exceptions (http://en.wikipedia.org/wiki/GPL_linking_exception) and they use it to drive users to the payed license.GPL is like half giving. ;-)

author: janoc
author_rank: Super Contributor
timestamp: June 26, 2014, 07:40:00 pm
content: Quote from: zapta on June 26, 2014, 06:31:10 pmIf your change to the system is a bugfix, nothing is preventing you from contributing it upstream - that is finally the primary reason for (L)GPLs existence. It helps to foster an ecosystem around the library where people don't have to constantly reinvent the wheel.Then it will be part of the upstream code and you can use it in your closed-source code to your heart's content without violating anything.Quote from: zapta on June 26, 2014, 06:31:10 pmNice BS ... So someone gives you a high performance, open sourced RTOS with things like a USB stack working out of the box for free, allows you to use it even commercially and you call that "half giving"? Nobody is forcing you to use it, but this is really taking cheap shots at someone's terrific work only because you can't/don't want to use it. A bit of respect and less greed, please!

author: zapta
author_rank: Super Contributor
timestamp: June 26, 2014, 09:54:06 pm
content: Quote from: janoc on June 26, 2014, 07:40:00 pmYes, i can contribute my fix/hack but it's up to them to decide if to accept it and when to release it back to me so I can start using it. Until then I need to pay them in order to use my own fix with my closed code. This is an evil trap.Quote from: janoc on June 26, 2014, 07:40:00 pmYes, giving with strings attached is half giving. In this case, the library's license is not even LGPL.

author: nctnico
author_rank: Super Contributor
timestamp: June 26, 2014, 10:20:26 pm
content: Quote from: zapta on June 26, 2014, 06:31:10 pmI think this is a legal issue. If you contribute something to a piece of GPL code then you own the copyright on that piece. You effectively become a co-author of 'the work'. If the makers/maintainers of ChibiOS ever want to change the licensing scheme they would need your consent as well if they used the code you contributed. AFAIK OpenOCD went through such a process. They had to track down every single sole who contributed to OpenOCD and ask permission to change the license

author: remixed123
author_rank: Regular Contributor
timestamp: June 26, 2014, 11:08:49 pm
content: The way I see it (i.e in my humble opinion), you have 3 choices with an RTOS:-1. Commercial and ProprietaryExample:Mentor Graphics Nucleus RTOSAdvantages:Feature rich and powerful. Usually Portable..Disadvantages:Expensive.Note:Some of these vendors offer free version to small companies2. MCU Vendor SpecificExample:Texas Instruments TI-RTOSAdvantages:Usually free. Usually feature rich with great hardware and IDE integration.Disadvantages:Locked into a specific vendors tool chain and hardware.Note:Provides the quickest and easiest solution to begin coding.3. Open SourceExample:Free RTOSAdvantages:Free. Lots of community support and open source code available. Usually portable.Disadvantages:Licensing issues/confusion. Sometimes lacking features.Note:I am sure people have some very passionate opinions.Glenn.

author: zapta
author_rank: Super Contributor
timestamp: June 26, 2014, 11:17:56 pm
content: Quote from: nctnico on June 26, 2014, 10:20:26 pmThey will still choose what contribution they accept back to their main code line just as they do now, so I don't see how this affect the legal standing of the main code line they control.If I make changes to their code it's a derived work that doesn't affect their code line or license.

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: June 27, 2014, 12:53:24 am
content: Thanks for the tips.As usual the choice will actually depend on the project requirements.As I haven't snared my next project yet I will have to wait and see.In the meantime I will have a look at CoOS, it would be nice to have that ready to go if the need came up.

author: zapta
author_rank: Super Contributor
timestamp: June 27, 2014, 03:36:56 am
content: Quote from: HackedFridgeMagnet on June 27, 2014, 12:53:24 amAs long as you use Windows ;-)

author: Jeroen3
author_rank: Super Contributor
timestamp: June 27, 2014, 05:48:44 am
content: Pick one:FreeRTOSChibiOS?KernelBRTOSCMSIS RTOSKeil RTXMany more:http://en.wikipedia.org/wiki/List_of_real-time_operating_systemsYet, ChibiOS gives a nice midway between expensive commercial-only, and the average non-copyleft open source.With excellent quality as well.

author: Kjelt
author_rank: Super Contributor
timestamp: June 27, 2014, 06:53:40 am
content: Quote from: nctnico on June 26, 2014, 05:38:32 pmWhy not? It is called OpenRTOS , I don't get the joke?You can develop with FreeRTOS and when delivering to the company you let them pay for the OpenRTOS license, what am I missing?

author: miguelvp
author_rank: Super Contributor
timestamp: June 27, 2014, 07:14:35 am
content: Don't know but I'm craving Fritos since this thread started.

author: Scrts
author_rank: Frequent Contributor
timestamp: June 27, 2014, 08:47:36 am
content: Or maybe it's really worth to look at Nucleus? They are offering a free license on their RTOS if your business doesn't reach 1mln USD/year. When it does - you have to buy the license. So if you are earning more than 1mln, then it isn't so painful to buy the license, part of which you offload to the customer.I'm checking TI-RTOS at the moment with the CC3200, however this thread is really interesting to see what other developers use.

author: Kjelt
author_rank: Super Contributor
timestamp: June 27, 2014, 09:18:57 am
content: Quote from: Scrts on June 27, 2014, 08:47:36 amInteresting, however it is the question if non-companies such as private use hobbieists qualify?Quote

author: Scrts
author_rank: Frequent Contributor
timestamp: June 27, 2014, 09:49:48 am
content: Quote from: Kjelt on June 27, 2014, 09:18:57 amI doubt, because there's no legal way to check if your income reach 1mln USD/year. They can not do an audit on such occasion.

author: Kjelt
author_rank: Super Contributor
timestamp: June 27, 2014, 10:00:08 am
content: Quote from: Scrts on June 27, 2014, 09:49:48 amNo I meant if you do not own a business you have no business name and registration number

author: Jeroen3
author_rank: Super Contributor
timestamp: June 27, 2014, 10:08:23 am
content: Quote from: Scrts on June 27, 2014, 09:49:48 amOur law says you must release a year report to the authority of trade. Anyone can request these reports from them, if the company doesn't already have it on their website.Also, don't forget the differences between "Revenue" and "Profit". I guess the 1 mln boundary is on the revenue.

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: June 27, 2014, 11:36:45 am
content: Quote from: Scrts on June 27, 2014, 08:47:36 amWell I'm safe.

author: Scrts
author_rank: Frequent Contributor
timestamp: June 27, 2014, 01:04:42 pm
content: Quote from: Kjelt on June 27, 2014, 10:00:08 amI got you, so that's why I've said "I doubt".