Help on understanding Nuttx
Hi, So I need to understand the basics of STM32 operations using NuttX, and the addition of perpherals. So far, feeling around the dark and copy-pasting, I have been able to get my board running STM32F427AIH6, get booted up, and have also been able to write out some custom applications, Hello World and the sorts. I have also tried to operate a SPI-based Magnetometer, LIS3MDL using the inbuilt driver, which has been somewhat successful but not to the extent I would have liked it to be. So, now copy-pasting and doing some changes I believe I can get SPI devices working, but now I am stuck with internal peripherals, ADC in this case, and also timers, interrupts, and other whole lot. I like NuttX. And I know this RTOS is the one to run my board. But so far there hasn't been much progress in development, and the thing is I am stuck getting basic operations running, as I want it to. Even looking at the examples, it is difficult for me to get an exact picture of how things are interconnected, how configurations are set, and all. That being the case, I would like to ask, what is the best method to get all the basics down, for someone just starting NuttX, or even RTOS'es, easily? Some kind of detailed documentation that explains what is happening and how it happening would be a lifesaver, considering the reader knows the chip, but nothing, nothing-at-all about the RTOS. Is there something like that somewhere? Thank you. Janardhan
Re: Help on understanding Nuttx
There is an ongoing series regarding porting to the STM32F401RC on YouTube, maybe that can help: https://www.youtube.com/@nuttxchannel/streams Regards, Mark — Mark Stevens mark.stev...@wildernesslabs.co > On 22 May 2024, at 11:04, Janardhan Silwal > wrote: > > Hi, > > So I need to understand the basics of STM32 operations using NuttX, and the > addition of perpherals. > So far, feeling around the dark and copy-pasting, I have been able to get my > board running STM32F427AIH6, get booted up, and have also been able to write > out some custom applications, Hello World and the sorts. > I have also tried to operate a SPI-based Magnetometer, LIS3MDL using the > inbuilt driver, which has been somewhat successful but not to the extent I > would have liked it to be. > So, now copy-pasting and doing some changes I believe I can get SPI devices > working, but now I am stuck with internal peripherals, ADC in this case, and > also timers, interrupts, and other whole lot. > > I like NuttX. And I know this RTOS is the one to run my board. But so far > there hasn't been much progress in development, and the thing is I am stuck > getting basic operations running, as I want it to. Even looking at the > examples, it is difficult for me to get an exact picture of how things are > interconnected, how configurations are set, and all. > > That being the case, I would like to ask, what is the best method to get all > the basics down, for someone just starting NuttX, or even RTOS'es, easily? > Some kind of detailed documentation that explains what is happening and how > it happening would be a lifesaver, considering the reader knows the chip, but > nothing, nothing-at-all about the RTOS. Is there something like that > somewhere? > > Thank you. > > Janardhan
Re: Help on understanding Nuttx
Hi Janardhan, Each person has a different mind set and different backgrounds, so it is difficult to find an easy way that works for everybody. This is why I suggest everybody starting with NuttX to create their own public documentation (i.e. blog post), because the challenges you face, solve and document will help others with similar mind-sets and backgrounds as yours. I have done it for years in my blog: https://acassis.wordpress.com/?s=nuttx and slowly I'm submitting it to our official documentation: https://nuttx.apache.org/docs/latest/ Sony also has a great set of tutorials and documentation: https://developer.sony.com/spresense/development-guides/sdk_tutorials_en.html It would be nice if they integrate it into our mainline someday. Probably for someone coming from the baremetal area NuttX will be more challenging than for someone coming from the Embedded Linux, but looking at the examples as you are doing will help. It is also important to study more about POSIX and how Unix/Linux OS kernel are organized, it will guide you to get a better understanding of NuttX. Best Regards, Alan