Picon

Documentation feedback-proposal\ Problem with STM32F4 First build

Hello, friends!

I have been trying to fire up the NuttX already for 4 days and I have made some steps into understanding the whole RTOS structure, but It still doesn't work. I have a bunc h of questions before I will get to the point on which I am stranded. I undergo with a lack of information\tutorials in the internet for getting started, furthermore with lot of complexities and misunderstandings in Readme files description. 

So the first part is my thoughts and feedback about NuttX documentation
******************************************************************************************************
In my opinion you can only get a comprehensive outlook on NuttX configuration\building when you read ALL the Readme files in ALL correlated sub-folders. For instance, (I don't have almost any experience with RTOSes) I started to download Cygwin and setup it, as it was written in nuttx\Readme.txt - INSTALLATION title, and after spending some time on installation I realized that I could use MinGW or SourceryCodeBench toolchain, so I started to try to install them as well, as I found some tutorials on them... and eventually I finished with all these toolchains in my computer, have spent a lot of time and haven't fire up the NuttX =( And of course I am nerves and demotivated =)

Why am saying that, because it looks like the NuttX has a very big capabilities for such a small size, and it also has a quite active forum, that is also a big advantage. But the first building\configuration is described very poor - you have to spend at least 1-2 days just to study out the structure of these Readme files; and it's so inconvenient to read them in that format. I think the first build should be done as simple as possible to attract and engage more people, and for that descr ibed circumstantially with the main steps that you have to do and the options that you can chose (links on these options, windows-linux, links on tutorials etc.). 'cause for me as a person with almost no experience in RTOSes it is very challenging and motivation-sapping to spend so much time just to initialize it, but not to actually work and study it.

So I would like to help to improve that, and I think I could do it simple and understandable. But at first I just want to understand how it works and make it work at least in my computer =)


And here're my questions:
******************************************************************************************************
I have Windows 7 + Eclipse + STM32F4 Discovery
So I tried to build it using all kinds of toolchains - Cygwin, MinGW, SourceryCodeBench,GnuWin32 and it doesn't work.
So far I executed configure.bat from ../stm32f4discovery/nsh, then did the same but with /stm32f4discovery/winbuild
Then I tried to modify setenv.bat and I put all the paths to my toolchains - SourceryCodeBench,GnuWin32,MinGW.
The build error:
gcc -O2 -g -Wall -c -fmessage-length=0 -MMD -MP -MF"syscall/syscall_clock_systimer.d" -MT"syscall/syscall_clock_systimer.d" -o "syscall/syscall_clock_systimer.o" "../syscall/syscall_clock_systimer.c"
cygwin warning:
  MS-DOS style path detected: D:\GitHub\nuttx-git\nuttx\Default
  Preferred POSIX equivalent is: /cygdrive/d/GitHub/nuttx-git/nuttx/Defaultpan>
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
../syscall/syscall_clock_systimer.c:40:26: fatal error: nuttx/config.h: No such file or directory
 #include <nuttx/config.h>
-----------------------------------------------------------------------------------------------------------------------

1. what is the difference between winbuild and nsh configurations?  

2. in board\Readme --> GNU Toolchain Options --> Toolchain Configurations it is written that " you simply need to
  add one of the following configuration options to your .config (or defconfig)  file", but what if I have both of these files and both of them has CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y line.

3. in TOP\Readme-->Native Windows Build it's said to use GNUWin32, but in board\Readme --> GNU Too lchain Options --> Toolchain Configurations the list doesn't incorporate neither GNUWin32, nor MinGW:

  1. The CodeSourcery GNU toolchain,
  2. The Atollic Toolchain,
  3. The devkitARM GNU toolchain,
  4. Raisonance GNU toolchain, or
  5. The NuttX buildroot Toolchain (see below). 
MinGW So which one I have to use and write the toolchain path in setenv.bat file?


Thank you if you have read it till the end =)




__._,_.___
Posted by: postal.smith-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

Evaluating ROS 2 embedded in NuttX



Hi everyone,


I posted another topic a few minutes ago but for some reason it doesn't seem to appear. Not sure if it's because of moderation or just because i pressed the wrong button thereby i'm re-writing an extended version:


I'm working at the Open Source Robotics Foundation (OSRF) where we are the time cooking the next generation of the Robot Operative System (ROS) and we want to provide deep embedded support. For that purpose we've put our interest in NuttX so i've been playing with it for the last week.

My setup:

  • STM32F4Discovery board
  • Ubuntu box using GCC, Make and OpenOCD (through STLink)
  • Verified that the board work nicely with non-nuttx code vmayoral/tuts

 

  

My current blockers:

  • Flashing fine but when debugging with GDB code seems to be stuck at chip/stm32_lowputc.c:392 (code runs but everytime i stop the debugger, the flow is at):

    while ((getreg32(STM32_CONSOLE_BASE + STM32_USART_SR_OFFSET) & USART_SR_TXE) == 0);
  •  Tried do reproduce the same debugging through st-util instead of openocd. Same behaviour.
  • NSH application doesn't show any new interface on the Linux box (i'm expecting something under /dev/)

We'd appreciate comments on this matters to move forward with NuttX.
Thanks,

Víctor.


__._,_.___
Posted by: vmayoralv <at> yahoo.com



__,_._,___
Picon

STM32F4Discovery running a simple application



Greetings everyone,


I recently started working in an ambitious project with embedded platforms where we've decided to select Nuttx. We have high hopes for our work and we've selected what we consider, the best tools however NuttX is turning out to be harder than we expected.


At the time i'm evaluating the RTOS trying to run a hello world on top of NuttX but it seems i'm finding some difficulties. I'd appreciate if some of you, experienced users could point out if i'm missing something:


My setup:

  • Ubuntu box, openocd compiled, arm-none-eabi- installed. Using GCC and make.
  • board STM32F4Discovery
  • Code available vmayoral/ros2_embedded_nuttx which describes also my workflow for flashing and debugging.

  

Code is configured (review .config) to launch the apps/examples/hello code.
Compile and program the code. Then launch the debugger and  put a breakpoint in the hello_main function (entry point in the hello example code). Now, here i expect GDB to stop there however it does not.
Futhermore everytime i stop the debugger and analyze the flow, the code remains at chip/stm32_lowputc.c:392,

while ((getreg32(STM32_CONSOLE_BASE + STM32_USART_SR_OFFSET) & USART_SR_TXE) == 0);

Somehow printing chars into the CONSOLE but the hello code never runs. Am i missing something?


Besides this, i've tried to test NSH (flashing the right code) but i get no (new) interface when i connect the miniUSB to the Linux box (or the microUSB).

I'd really appreciate some pointers on these matters.
Thanks in advance,

Víctor. 





__._,_.___
Posted by: vmayoralv <at> yahoo.com



__,_._,___
Picon

What Cygwin packages NuttX require ?

Hello, folks!


Could you please help me to define certain list of Cygwin packages in order to compile NuttX? (In readme file it's said - All packages).

The whole archive is about 21 GB and I am pretty sure that even a half of it is not involved. Tried to google it, but without any success.


Maybe if don't know all of them, you could at least point out some that you're sure are not pertain. Just in case the list of packages is attached.


Thank's in advance.




 




__._,_.___
Posted by: postal.smith-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

progmem.h improvements and STM32F4 support [15 Attachments]

<*>[Attachment(s) from Freddie Chopin included below]

I attach patches that improve progmem.h (1) and add support for STM32F4 (2).

(1) - there were some wrong assumptions in the interface that needed to 
be addressed - the main one was use of uint16_t and types like that for 
sizes, which is wrong for STM32F4 (and possibly other chips), which have 
page size greater than 64kB. This change also required change in 3 
applications that used progmem.h.

(2) - I've tried to make existing functions is stm32_flash.c as generic 
as possible, so for STM32F4 only 3 most "specific" 
(up_progmem_pagesize(), up_progmem_getpage() and 
up_progmem_getaddress()) are completely separate. Apart from that there 
are maybe 3 different lines of code in other functions (page erase and 
write).

Tested on STM32F4 and STM32F1 - works fine. There are almost no changes 
in the code for STM32F1.

There are still some points that can be improved - for example in the 
write function STM32F4 can support 1-, 2-, 4- and 8-byte writes (STM32F1 
- only 2-byte writes) so that's the most obvious point for improvement.

Regards,
FCh

<*>Attachment(s) from Freddie Chopin:

<*> 10 of 15 File(s)
https://groups.yahoo.com/neo/groups/nuttx/attachments/1329747675;_ylc=X3oDMTJyaHVlcDcwBF9TAzk3MzU5NzE0BGdycElkAzIzMzg5MDcwBGdycHNwSWQDMTcwNTAwNjU1OQRzZWMDYXR0YWNobWVudARzbGsDdmlld09uV2ViBHN0aW1lAzE0MDkyMjI1NDM- 
  <*> 0001-progmem-make-interface-more-generic-use-size_t-ssize.patch
  <*> 0002-stm32_flash_lock-use-modifyreg32-instead-of-modifyre.patch
  <*> 0003-progmem-add-up_progmem_getaddress-implement-for-STM3.patch
  <*> 0004-stm32_flash.c-use-up_progmem_getaddress-in-up_progme.patch
  <*> 0005-stm32_flash.c-use-up_progmem_ispageerased-in-up_prog.patch
  <*> 0006-stm32_flash.c-use-up_progmem_pagesize-in-up_progmem_.patch
  <*> 0007-stm32_flash.h-explicitly-undefine-STM32_FLASH_PAGESI.patch
  <*> 0008-stm32_flash.c-make-up_progmem_isuniform-generic-it-d.patch
  <*> 0009-stm32_flash.c-move-up_progmem_npages-lower-to-keep-i.patch
  <*> 0010-stm32_flash.h-add-missing-FLASH_CR_STRT-for-STM32F4.patch

------------------------------------
Posted by: Freddie Chopin <freddie_chopin@...>
------------------------------------

------------------------------------

Yahoo Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/nuttx/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/nuttx/join
    (Yahoo! ID required)

<*> To change settings via email:
    nuttx-digest@... 
    nuttx-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    nuttx-unsubscribe@...

<*> Your use of Yahoo Groups is subject to:
    https://info.yahoo.com/legal/us/yahoo/utos/terms/

Picon

Memory Configurations

A new Wiki page has been added: Memory Configurations - NuttX Real-Time Operating System

This Wiki addresses the current NuttX memory configurations that can be built as well a roadmap that I am currently considering.  I have a recurring dream to develop NuttX into a tiny, but full-fledged Unix work-alike operating system.


I haven't really felt much necessity in the past t o follow this dream.  The NuttX memory configuration is pretty much optimal for Cortex-M class MCUs.  But lately, I have been working with "crossover" CPUs like the Atmel SAMA5D family.  These are moderately high end Cortex A but not in the same league as the Cortex A8's that you see in your tablet.  And they are equipped with peripherals like you would use in deeply embedded projects (heavy on timers, PWM, Q-Encoders, inter-chip communications).  The existence of this class of CPU makes me think that this is a direction worth considering.


Much of the machinery to make that leap is in place now but the additional hurdles are also significant.  You technical review of the Wiki page and comments and thoughts in general are welcome.


Greg




__._,_.___
Posted by: spudarnia-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

[PATCH] nuttx/arch/arm/src/stm32/stm32_uart.h: fix for USART6 (and other non-consecutive USARTs) in STM32F401 [1 Attachment]

<*>[Attachment(s) from Freddie Chopin included below]

patch attached

Regards,
FCh

<*>Attachment(s) from Freddie Chopin:

<*> 1 of 1 File(s)
https://groups.yahoo.com/neo/groups/nuttx/attachments/822502820;_ylc=X3oDMTJyZWJkYmowBF9TAzk3MzU5NzE0BGdycElkAzIzMzg5MDcwBGdycHNwSWQDMTcwNTAwNjU1OQRzZWMDYXR0YWNobWVudARzbGsDdmlld09uV2ViBHN0aW1lAzE0MDg2OTk1MTY- 
  <*> 0001-nuttx-arch-arm-src-stm32-stm32_uart.h-fix-for-USART6.patch

------------------------------------
Posted by: Freddie Chopin <freddie_chopin@...>
------------------------------------

------------------------------------

Yahoo Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/nuttx/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/nuttx/join
    (Yahoo! ID required)

<*> To change settings via email:
    nuttx-digest@... 
    nuttx-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    nuttx-unsubscribe@...

<*> Your use of Yahoo Groups is subject to:
    https://info.yahoo.com/legal/us/yahoo/utos/terms/

Picon

libc++

Hello,

just of curiosity. Has somebody already tried to get libc++ (LLVM's
standard C++11 library, dual licensed under MIT license and UIUC
license) running under NuttX? From my perspective, it would be nice to
use std::array, std::thread, std::mutex, and alike.

(A short try indicates that some functions are missing or are only
implemented as a function-like macro (-> a lot of 'using ::<function
name>;' will fail), and some headers are missing (eg. wchar.h) in
NuttX's libc.)

Greetings,

Martin Lederhilger

------------------------------------
Posted by: "Lederhilger Martin" <M.Lederhilger@...>
------------------------------------

------------------------------------

Yahoo Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/nuttx/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/nuttx/join
    (Yahoo! ID required)

<*> To change settings via email:
    nuttx-digest@... 
    nuttx-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    nuttx-unsubscribe@...

<*> Your use of Yahoo Groups is subject to:
    https://info.yahoo.com/legal/us/yahoo/utos/terms/

Picon

Suggestions for features on new development device

Hello,

I have question that is not directly related to NuttX, but I hope it's
ok to ask here.

Our company is designing mobile development device that could be used
outdoor purposes out-of-box. Obviously, we are doing development on
NuttX and plan to have board support for the device in upstream.

What I'd like to ask is, what kind of features would you as developer
would expect/want such device to have?

Currently device is expected to have cellular connectivity, various
sensors, data storage, long battery life. Would additional connectivity
options (wifi? bluetooth?) be nice to have? What kind of sensors would
you expect?

-Jussi

------------------------------------
Posted by: Jussi Kivilinna <jussi.kivilinna@...>
------------------------------------

------------------------------------

Yahoo Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/nuttx/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/nuttx/join
    (Yahoo! ID required)

<*> To change settings via email:
    nuttx-digest@... 
    nuttx-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    nuttx-unsubscribe@...

<*> Your use of Yahoo Groups is subject to:
    https://info.yahoo.com/legal/us/yahoo/utos/terms/

Picon

[PATCH] configdata.h: add missing include

From: Kosma Moczek <kosma@...>

---
Sorry, looks like my last attempt to send a patch went wrong.

 nuttx/include/nuttx/configdata.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/nuttx/include/nuttx/configdata.h b/nuttx/include/nuttx/configdata.h
index 8b540a4..e8d3ba3 100644
--- a/nuttx/include/nuttx/configdata.h
+++ b/nuttx/include/nuttx/configdata.h
 <at>  <at>  -49,6 +49,7  <at>  <at> 
 #include <nuttx/compiler.h>

 #include <nuttx/fs/ioctl.h>
+#include <sys/types.h>

 #ifdef CONFIG_PLATFORM_CONFIGDATA

-- 
2.0.0

------------------------------------
Posted by: kosma@...
------------------------------------

------------------------------------

Yahoo Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/nuttx/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/nuttx/join
    (Yahoo! ID required)

<*> To change settings via email:
    nuttx-digest@... 
    nuttx-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    nuttx-unsubscribe@...

<*> Your use of Yahoo Groups is subject to:
    https://info.yahoo.com/legal/us/yahoo/utos/terms/

Picon

(unknown)


A little fix, and a test to see how Yahoo Groups interacts with git-send-email.

------------------------------------
Posted by: kosma@...
------------------------------------

------------------------------------

Yahoo Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/nuttx/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/nuttx/join
    (Yahoo! ID required)

<*> To change settings via email:
    nuttx-digest@... 
    nuttx-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    nuttx-unsubscribe@...

<*> Your use of Yahoo Groups is subject to:
    https://info.yahoo.com/legal/us/yahoo/utos/terms/


Gmane