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

NuttX-4.14

Expand Messages
  • Gregory N
    Today, December 2, 2009, I released version 4.14 of NuttX. This is the 46th release of NuttX. This release is available from Sourceforge:
    Message 1 of 9 , Dec 2, 2009
    View Source
    • 0 Attachment
      Today, December 2, 2009, I released version 4.14 of NuttX. This is the 46th release of NuttX. This release is available from Sourceforge:

      http://sourceforge.net/projects/nuttx/files/

      Detailed release notes and change log are available at this same location.

      This release further extends support for the STMicro STM32, Cortex-M3 MCU by adding an SDIO interface, adding SDIO-DMA-based MMC/SD support, and resolving several bugs in the DMA and USB driver logic. This new functionality was verified using the NuttX USB mass storage device class.

      The USB implementation is functional, but probably not bug-free. If anyone out there has a USB analyzer that can be used to verify the low-level USB transactions, I'd love to get that data!

      If anyone out there will be integrating this USB driver, let me know and I will be more than happy to work with you to resolve any issues.

      At this point, I think the NuttX support for the STM32F103ZE chip is complete and, unless someone has some great ideas, I will probably move on to some new NuttX project for the next release.
    • Gregory N
      ... USB analyzers are kind of pricey for the average hobbyist like me. Actually, I don t know of any specific USB problems with the STM32 NuttX port;
      Message 2 of 9 , Dec 2, 2009
      View Source
      • 0 Attachment
        I'll add this snippet of discussion from the st.com STM32 forum:

        > > The USB implementation is functional, but probably
        > > not bug-free. If anyone out there has a USB analyze
        > > that can be used to verify the low-level USB transactions,
        > > I'd love to get that data!
        >
        > For USB you should have a USB sniffer to see what hapening...

        USB analyzers are kind of pricey for the average hobbyist like me.

        Actually, I don't know of any specific USB problems with the STM32 NuttX port; everything works. But sometimes, with debug output off, I see timing issues that make me wonder??? Sometimes it takes awhile for Windows to recognize the mass storage device -- but then things work fine: I can read and write files on the microSD from Windows with no problems. That could mean some low-level USB issues that slows the device recognition and only show up when I disable debug output. Or it could just be Windows being confused when the device suddenly change from a DFU device to a mass storage device. The only way that I would know for sure is with a USB analyzer.
      • marktxx
        ... Is it possible to see the release notes and change logs without downloading the tarball?
        Message 3 of 9 , Dec 5, 2009
        View Source
        • 0 Attachment
          --- In nuttx@yahoogroups.com, "Gregory N" <spudarnia@...> wrote:
          >
          > Today, December 2, 2009, I released version 4.14 of NuttX. This is the 46th release of NuttX. This release is available from Sourceforge:
          >
          > http://sourceforge.net/projects/nuttx/files/
          >
          > Detailed release notes and change log are available at this same location.

          Is it possible to see the release notes and change logs without downloading the tarball?
        • marktxx
          ... sorry, found it at http://nuttx.sourceforge.net/ not at the download site listed above
          Message 4 of 9 , Dec 5, 2009
          View Source
          • 0 Attachment
            --- In nuttx@yahoogroups.com, "marktxx" <marktxx@...> wrote:
            >
            >
            >
            > --- In nuttx@yahoogroups.com, "Gregory N" <spudarnia@> wrote:
            > >
            > > Today, December 2, 2009, I released version 4.14 of NuttX. This is the 46th release of NuttX. This release is available from Sourceforge:
            > >
            > > http://sourceforge.net/projects/nuttx/files/
            > >
            > > Detailed release notes and change log are available at this same location.
            >
            > Is it possible to see the release notes and change logs without downloading the tarball?

            sorry, found it at http://nuttx.sourceforge.net/
            not at the download site listed above

            >
          • Gregory N
            ... http://nuttx.sourceforge.net is the NuttX website (same HTML document as you find in Documents/NuttX.html in the tarball). You can also get there using
            Message 5 of 9 , Dec 5, 2009
            View Source
            • 0 Attachment
              > > Is it possible to see the release notes and change logs
              > > without downloading the tarball?
              >
              > sorry, found it at http://nuttx.sourceforge.net/
              > not at the download site listed above

              http://nuttx.sourceforge.net is the NuttX website (same HTML document as you find in Documents/NuttX.html in the tarball). You can also get there using http://www.nuttx.org . I do update that HTML document with release information.

              But the release notes are also available at the download URL: http://sourceforge.net/projects/nuttx/files . SourceForge has changed the way that they handle release notes. They used to be available at the top of the page, now they are hidden on that same page; they are in a directory below under "All Files". There you will see a number of directories. If you open the nuttx-4.14 directory, you will see two files in it: (1) the source tarball, nuttx-4.14.tar.gz, and (2) the release notes, nuttx-4.14-ReleaseNotes.

              Selecting nuttx-4.14-ReleaseNotes gives you:
              http://softlayer.dl.sourceforge.net/project/nuttx/nuttx/nuttx-4.14/nuttx-4.14-ReleaseNotes
            • David Slipper
              Hi, I m a newbie to Nuttx ... so any help and advice is very welcome. Has anyone done a port to the Atmel SAM3U ?? If so, I d be very interested in some
              Message 6 of 9 , Dec 5, 2009
              View Source
              • 0 Attachment
                Hi, I'm a newbie to Nuttx ... so any help and advice is very welcome.

                Has anyone done a port to the Atmel SAM3U ??

                If so, I'd be very interested in some details.

                I have access to Crossworks - is that usable for Nuttx? It is not
                mentioned in the supported list - I believe it uses the GCC compiler etc.


                --


                Regards,
                David


                ---------------------------
                May the biting fleas of a thousand camels infest the crotch of
                anyone that spoils your day - and may their arms be too short to scratch!!
                ---------------------------
                Blessed are the cracked - for it is they that let in the light!
                ---------------------------
                Do not walk in front of me - for I may not follow,
                Do not walk behind me - for I may not lead,
                Do not walk beside me either - just sod off and leave me alone!
                ---------------------------
              • Gregory N
                ... Not that I am aware of. The SAM3U is a Cortex-M3 so there is good general NuttX support, but you would have to add lots of chip-specific stuff. You could
                Message 7 of 9 , Dec 5, 2009
                View Source
                • 0 Attachment
                  > Has anyone done a port to the Atmel SAM3U ??

                  Not that I am aware of. The SAM3U is a Cortex-M3 so there is good general NuttX support, but you would have to add lots of chip-specific stuff. You could use the STM32 as a model:

                  - configs/stm3210e-eval - has the board-specific configuration
                  - arch/arm - has general arm support
                  - arch/arm/include/cortexm3 and arch/arm/src/cortexm3 - Cortex-M3 specific support
                  - arch/arm/include/stm32 and arch/arm/src/stm32 - STM32 specific logic

                  A port to a new SoC architecture can be a lot of work -- especially for things like USB, SDIO, networking, etc. Many chip vendors provide libraries to make this easier, but it can be tricky to get these libraries working in an RTOS environment (I prefer to start from scratch and just use the vendor libraries as reference material).

                  If you want to do the port, I would be happy to help!

                  Do you know of any inexpensive SAM3U development boards available for purchase? I might even get one.

                  > I have access to Crossworks - is that usable for Nuttx? It is not
                  > mentioned in the supported list - I believe it uses the GCC compiler etc.

                  Yes, Crossworks can be used. Except that I would start just using the command line GCC tools that come with Crossworks and not the IDE. I say that because NuttX builds using GNU make and bash. I use Cygwin on Windows (but someone else on this list has done a native Windows build using GNU Win32 tools).

                  The Crossworks GNU tools is a Windows native toolchain. Mixing Cygwin and Windows native tools is tricky because of the weird Cygwin symbolic links and incompatible pathes. But, again, the STM32 is a good model. It builds with Linux/Cywin native and well as Windows native toolcahins (see configs/stm3210e-eval/README.txt).

                  It would be some effort to get that make system working under the Crossworks IDE but that is what you would have to do in order to use the the Crossworks debugger.

                  Greg
                • David Slipper
                  Thanks for the prompt response and the info :-) I am attending a one day seminar on ARM processors that includes a free dev board and jtag dongle (the
                  Message 8 of 9 , Dec 5, 2009
                  View Source
                  • 0 Attachment
                    Thanks for the prompt response and the info :-)

                    I am attending a one day seminar on ARM processors that includes a
                    "free" dev board and jtag dongle (the "AT91SAM3U-EK & AT91SAMICE") and a
                    restricted tool-chain. Not bad for £60 :-) I am keen to use it for a
                    project I have in mind and Nuttx seems a likely base to start from.

                    I'll have a play and may take you up on your offer of help if I get
                    stuck :-)

                    BTW Would YAFS be viable under Nuttx?? Or is the included FS good
                    enough for most purposes??

                    >> Has anyone done a port to the Atmel SAM3U ??
                    >
                    > Not that I am aware of. The SAM3U is a Cortex-M3 so there is good general NuttX support, but you would have to add lots of chip-specific stuff. You could use the STM32 as a model:
                    >
                    > - configs/stm3210e-eval - has the board-specific configuration
                    > - arch/arm - has general arm support
                    > - arch/arm/include/cortexm3 and arch/arm/src/cortexm3 - Cortex-M3 specific support
                    > - arch/arm/include/stm32 and arch/arm/src/stm32 - STM32 specific logic
                    >
                    > A port to a new SoC architecture can be a lot of work -- especially for things like USB, SDIO, networking, etc. Many chip vendors provide libraries to make this easier, but it can be tricky to get these libraries working in an RTOS environment (I prefer to start from scratch and just use the vendor libraries as reference material).
                    >
                    > If you want to do the port, I would be happy to help!
                    >
                    > Do you know of any inexpensive SAM3U development boards available for purchase? I might even get one.
                    >
                    >> I have access to Crossworks - is that usable for Nuttx? It is not
                    >> mentioned in the supported list - I believe it uses the GCC compiler etc.
                    >
                    > Yes, Crossworks can be used. Except that I would start just using the command line GCC tools that come with Crossworks and not the IDE. I say that because NuttX builds using GNU make and bash. I use Cygwin on Windows (but someone else on this list has done a native Windows build using GNU Win32 tools).
                    >
                    > The Crossworks GNU tools is a Windows native toolchain. Mixing Cygwin and Windows native tools is tricky because of the weird Cygwin symbolic links and incompatible pathes. But, again, the STM32 is a good model. It builds with Linux/Cywin native and well as Windows native toolcahins (see configs/stm3210e-eval/README.txt).
                    >
                    > It would be some effort to get that make system working under the Crossworks IDE but that is what you would have to do in order to use the the Crossworks debugger.
                    >
                    > Greg
                  • Gregory N
                    ... I m answering assuming you mean YAFFS? Yet-Another-Flash-File-System? YAFFS and JFFS2 are the two most popular filesystem that are used in Linux embedded
                    Message 9 of 9 , Dec 5, 2009
                    View Source
                    • 0 Attachment
                      > BTW Would YAFS be viable under Nuttx?? Or is the included FS good
                      > enough for most purposes??

                      I'm answering assuming you mean YAFFS? Yet-Another-Flash-File-System?

                      YAFFS and JFFS2 are the two most popular filesystem that are used in Linux embedded systems. I think both require MTD (http://www.linux-mtd.infradead.org/). These filesystems can't be used in NuttX for two reasons: (1) they are just too big for the kinds of MCUs targeted by NuttX, and (2) they are GPL which can't mix with BSD licensed code (but the opposite is true, you can mix BSD with GPL code).

                      I think an important discussion is "What kind of FLASH file system is most appropriate for the class of MCUs targeted by NuttX?" I think the current NuttX FLASH FS support is insufficient, but I don't know how much more is needed.

                      I have designed a tiny memory technology device (MTD) interface NuttX and have developed one driver for an SPI serial FLASH. Those little serial FLASHs are very common in MCU-based embedded systems and I would love to able to support a good file system on them (unfortunately, they have such large erase block sizes that a write-able file system may not be appropriate).

                      My intention was then to design a flash translation layer (FTL) that maps the MTD interface to a block driver. All of this is, of course, inspired by the the ways things are done in Linux-MTD, but scaled way down for use in MCUs. But the large SPI block size discouraged me from completing that project.

                      If I finished the FTL, then you could use any filesystem with any flash or EEPROM part. NuttX currently only supports FAT and ROMFS. ROMFS is read-only but is cool because it has support for eXecute-In-Place in FLASH.

                      FAT is fine for FLASH provided that you do not write to FLASH often. FAT tends to write frequently to the blocks at the beginning of the device a lot and, since FLASH devices have limited numbers of writes, that could cause the FLASH to fail early in the life of a product.

                      In that case, if you need some file system that can handle many writes to flash, then you would need a "wear leveling" filesystem like YAFFS or JFFS2. Those designs are pretty complex. I wonder if a wear-leveling filesystem could be scaled down for use in an MCU?

                      Sounds like a great project? Anyone interested in doing it?

                      Greg
                    Your message has been successfully submitted and would be delivered to recipients shortly.