Loading ...
Sorry, an error occurred while loading the content.

6357RE: [nuttx] Future of NuttX

Expand Messages
  • Wagner Batista
    Jul 28, 2014
    • 0 Attachment
      Hi All,

      Really the NuttX build is not for newbies. It's not a hard work for someone that developed applications on another RTOSs like FeeRTOS and uCOS-II. It's not only a good documentation that make a RTOS easy to use but the build enviroment too. I believe that to make the things more accessible, a Linux Live CD could be made with all tools(cross compiler GCC,IDE,...) or a plugin for some IDE like eclipse to choose the compilation options. Noone wants waste lots of days building an enviroment ans after some days trying compilling in a text based tool. I believe that NuttX scene must provide a way to minimize and make these great RTOS more friendly to anyone.

      Regards.

      Wagner Batista




      From: wagner.bsilva@...
      To: nuttx@yahoogroups.com
      Subject: RE: [nuttx] Future of NuttX
      Date: Mon, 28 Jul 2014 20:14:42 +0300

      Hi All,

      Really the NuttX build is not for newbies. It's not a hard work for someone that developed applications on another RTOSs like FeeRTOS and uCOS-II. It's not only a good documentation that make a RTOS easy to use but the build enviroment too. I believe that to make the things more accessible, a Linux Live CD could be made with all tools(cross compiler GCC,IDE,...) or a plugin for some IDE like eclipse to choose the compilation options. Noone wants waste lots of days building an enviroment ans after some days trying compilling in a text based tool. I believe that NuttX scene must provide a way to minimize and make these great RTOS more friendly to anyone.

      Regards.

      Wagner Batista




      To: nuttx@yahoogroups.com
      From: nuttx@yahoogroups.com
      Date: Mon, 28 Jul 2014 07:20:02 -0700
      Subject: [nuttx] Future of NuttX

       
      Was "RIOT OS"

      Hi, Max,

      I will change the topic because this doesn't make sense under "Re: RIOT OS"

      > Greg, what do you think about the future of Nuttx ?
      > I mean do you have a long term strategy or do you follow you mood or else does it depend on what you are working on ?

      I have a general strategy.  But you understand that this is an open source project; it is not a business and it is not funded in any way.  I do this for my personal sense of accomplishment.  So my strategy is lax and focused on what is of interest to me rather than any kind of marketing objective.

      [ I do have a small engineering serveices business that supports NuttX, nx-engineering.com.  But that is primarily because support is a required.  I do not make any significant amount of money doing that.  I would probably make more if I swept floors at the local school. ]

      In the world of embedded RTOSs, I see three, maybe four classes of RTOSs:

      1. The very tiny like FreeRTOS, ChibiOS, etc. that are suited for very small platforms, people who do not very much complexity, and people who do not want to go through the learning curve.  These tend to be little more than schedulers with some bolt-on modules (like chip vendor libraries, networks, file systems, etc.).

      2. At the high end is Linux, of course.

      3. Then there is the middle level where the RTOS provides a complete operating environment like Linux, but is small enough to work in embedded MCUs.  NuttX is in this group.  So is eCOS, uC/OS-II, Nucleus, etc.  There might be another group of higher level RTOSs that still smaller than Linux including QNX, VxWorks, INTEGRITY, and perhaps others.  I have not really done the research to classify these well.

      So as a general strategy, I would like to stay in the lower part of this middle group:  Small enough for the tiny MCUs (Alan de Cavalho de Assis got NuttX working in 20KiB on a Cortex-M0) but scalable enough to work with in richer environments as well (I am currently working with a Cortex-A5 graphics project and the complete demo NuttX binary is almost a half megabyte!).

      I think that this middle group is advancing, however.  And I think that NuttX has to grow with the group becoming more Unix like over time.  So being scalable and growing more Linux-like is the general strategy.

      There are a lot of features that I have on my To-Do list.  Here are a few of the larger ones:

         1. IPv6
         2. USB audio class driver(s)
         3. Video sub-system
         4. Bluetooth / BLE
         5. IEEE 802.11g
         6. USB hub support
         7. NFS server
         8. Multi-NIC support

      Notice that these are mostly network related.

      > In fact, i think that Nuttx lack in documentation and friendlyness for newbies. As i have a long experience in linux kernel hacking and compiling, i was not much disoriented.

      I have heard these things before too and believe that they are true.

      I would say that the complexity for bring-up is approximately the same as for Linux (especially an older uCLinux).  I also have a background in Linux development so this all seems normal and natural to me.  But I understand the confusion that it causes other people.

      I have not addressed documentation improvements in several years.  I used to write a lot of new documents.  I still maintain them and keep the content up to date, but I have not substantially improved them in years.

      There is a lot of information available, in documents, Wiki page, README files.  That is good reference material, but it is not organized and not useful for getting newbies up to speed.

      I believe that what is need is a complete book, like the one that was written for uC/OS.  If anyone is interested in taking the lead and has connections with publishers, I will gladly contribute!

      > But maybe you need help in some domains, i think this project is a lot of work and if you need a helping keyboard you are welcome.

      I do get many contributions such as yours.  But there is really no one working on this project be me.  And according to Ooloh (now openhub), it has grown to about 1.5 million lines of code.  That is too much for one person to maintain, develop, and document.

      I like doing the job myself, but yes the reality is that I could use some help to avoid the kinds of shortcomings that you mention.  I often think the at small group of developers would be a better solution.  Do you think that other people would be interested in being developers?  How could that work?  How could we maintain standards and quality control?

      > My domain is mainly tiny microcontrollers and i use Nuttx to give them more connectivity, but with hard real time response time.

      I don't think of the LP17xx as too tiny.  I think it is nearly optimal for NuttX.  I think of tiny like AVRs and most Cortex-M0's.  On some of those platforms, there is not enough memory to justify the luxury of a middle-range RTOS.

      Thanks for asking.  You let me take out my "soap box" and blather a bit about NuttX.  One of my favorite things to do.

      Greg




    • Show all 3 messages in this topic