NuttX and timezone support
Hi, I am working with NuttX on a esp32 based ttgo_eink5. So far I have been able to get the wifi and the ntpclient working (as well as the fb). As I am in a timezone that uses daylight saving I am trying to enable the use of timezones. However I can seem to get this working, I see no /etc/timezones and timedatectl list-timezones does not return any data. Is there a good example somewhere on how to work with timezones on NuttX ? >From the documentation it seems that I need to enable `CONFIG_ETC_ROMFS` and some more options to enable generating the timezone data in the `romfs`. I have been able to add this, but now I'm getting the following linker error: xtensa-esp32-elf-ld: /home/batman/nuttxspace/nuttx/staging/libsched.a(nx_bringup.o):(.literal.nx_start_task+0x0): undefined reference to `romfs_img_len' xtensa-esp32-elf-ld: /home/batman/nuttxspace/nuttx/staging/libsched.a(nx_bringup.o):(.literal.nx_start_task+0x4): undefined reference to `romfs_img'` Kind regards, Jehudi
Re: NuttX and timezone support
Hi Alan, I am still a noob in NuttX, but it was not clear from the documentation that I had to copy/adapt the sample code to mount the ROMFS filesystem in my board sources and insert the necessary call to the mount in the xxx_bringup.c. These changes require quite a good understanding of `#ifdef CONFIG_XXX` and the board specific code. The example from the `sim` platform helps. As I mentioned in the Discord channel these changes made me wonder if some of the setup could not be combined into a common initialisation. But maybe this is not possible because a specific intialization is required before a next step in the initialization procedure can be performed. Kind regards, Jehudi Op di 3 dec 2024 om 15:42 schreef Alan C. Assis : > > Hi Jehudi, > > I just saw in the Discord channel that you got it working. > > Please let's know what was the issue with our documentation and how did you > fix it? > > Also I think your suggestion to move the mounting of procfs, tmpfs, etc > from boards to some common initialization makes sense to me. > > Let's see if someone here has a different opinion. > > BR, > > Alan > > On Mon, Dec 2, 2024 at 1:56 PM Laczen JMS wrote: > > > Hi, I am working with NuttX on a esp32 based ttgo_eink5. So far I have > > been able to get the wifi and the ntpclient working (as well as the > > fb). > > > > As I am in a timezone that uses daylight saving I am trying to enable > > the use of timezones. However I can seem to get this working, I see no > > /etc/timezones and timedatectl list-timezones does not return any > > data. > > > > Is there a good example somewhere on how to work with timezones on NuttX ? > > > > From the documentation it seems that I need to enable > > `CONFIG_ETC_ROMFS` and some more options to enable generating the > > timezone data in the `romfs`. I have been able to add this, but now > > I'm getting the following linker error: > > xtensa-esp32-elf-ld: > > > > /home/batman/nuttxspace/nuttx/staging/libsched.a(nx_bringup.o):(.literal.nx_start_task+0x0): > > undefined reference to `romfs_img_len' > > xtensa-esp32-elf-ld: > > > > /home/batman/nuttxspace/nuttx/staging/libsched.a(nx_bringup.o):(.literal.nx_start_task+0x4): > > undefined reference to `romfs_img'` > > > > Kind regards, > > Jehudi > >
cmake support for espressif devices
Hi, I was trying to use out of tree builds using cmake for a esp32c3. It seems that cmake is not supported on this device (and from a quick search, none of the espressif boards). Is this a WIP or are there no plans to add cmake support for these devices? I would like to help if needed, but I would need some guidance on where best to start and if there are any known pitfalls for this. Kind regards, Jehudi
Re: [Discuss] LTS releases
Hi Alin, I also encourage this. I would start by defining what is expected from a LTS: A LTS release of NuttX is a release that will be maintained and supported over a longer period of time (1 year). LTS updates are mainly focused on bugfixes that where discovered and corrected during the support period. These bugfixes will be backported to the LTS release. Should new features and hardware be allowed in a LTS? If so, how many releases should they have been in? Many users will keep there own defconfig for a certain product, should they remain valid? If so are Kconfig changes allowed? Anyhow thanks for the proposal, Jehudi Op di 11 feb 2025 om 10:02 schreef Michael Jung : > > Hello Alin, > > I would love to see this, as it would make maintaining our product much > easier. > > Thanks for the proposal. > > Michael > > On Tue, Feb 11, 2025 at 9:55 AM Alin Jerpelea wrote: > > > Hi all, > > > > there have been suggestions that we should create LTS releases > > > > I propose that we mark every Q1 (match) release as a LTS release and > > maintain it for 2 years. this would always ensure a fresh LTS overlapping > > the old one and allowing the users to migrate the code to the new release. > > > > What do you think? > > > > Best regards > > Alin > >
Re: How do I build for different boards?
Hi Alan and Aaron, I am also a noob and facing what I think is a similar problem. I would like to create some specific configuration (defconfig) outside of the nuttx folder while maintaining my nuttx folder free from changes so that I can keep the nuttx folder in sync with the repo. What is the best way to achieve this ? Kind regards, Jehudi Op do 19 dec 2024 om 09:28 schreef Alan C. Assis : > > Hi Aaron, > > Nice to know you have previous experience with NuttX on Sony Spresense. > > The process to support other boards is very similar, I suggest you to read > our official documentation: > > https://nuttx.apache.org/docs/latest/quickstart/index.html > > If you still have questions, please feel free to ask here. Also if you > notice that there is something you expected to find in our documentation > and it is not there, please let us know, this way we can improve it. > > BR, > > Alan > > On Thu, Dec 19, 2024 at 5:02 AM Aaron M wrote: > > > Sorry if this is inappropriate for the list, but I'm a relative noob to > > Nuttx, and I'm just trying to find my way. I'll go elsewhere if you > > point me in the correct direction for questions like this. > > > > My exposure to Nuttx has been strictly limited to Sony's Spresense, and > > I have a suitable working environment in VSCode with Sony's SDK. But if > > I want to build for, say, the FRDM KL-25, or the RPi Pico 2, can I use > > the same environment, er, somehow? Do I need to download separate > > copies of the repo of Nuttx for each board? > > > > This link has a nice overview, but it doesn't cover how to handle > > multiple boards: > > > > https://www.cocoacrumbs.com/blog/2021-10-25-nuttx-on-the-stm32f769-disco-board/ > > > > > > Thanks for any insight, and my deepest apologies if this is the wrong > > place for these questions. > > > > Aaron > >
Re: How do I build for different boards?
Hi Alan, Thank you for the quick reply. The proposed method would indeed work. To enhance it I could even use a little script to update the "mynsh" in the external directory (to support multiple defconfigs). The symbolic link however shows up as a difference in the repository and this complicates keeping nuttx in sync with github. I will have a look whether it is not easier to use the custom boards approach. Kind regards, Jehudi Op do 19 dec 2024 om 15:36 schreef Alan C. Assis : > > Hi Laczen, > > Good question, normally we use CustomBoards (AKA: out-tree or > out-of-the-tree boards) to have a separated board from mainline: > > https://nuttx.apache.org/docs/latest/guides/customboards.html > > But I think your case is different, you only want to use your defconfig > separated from mainline, correct? > > In this case just use a symbolic link will work, enter inside > boards/yourarch/yourfamily/yourboard/configs/ and create a symbolic link to > the external directory where you board profile with defconfig is located: > > Example: > $ cd boards/arm/stm32/stm32f4discovery/configs/ > $ ln -s /home/user/boardconfigs/mynsh mynsh > $ cd - > $ ./tools/configure.sh stm32f4discovery:mynsh > $ make -j > > BR, > > Alan > > On Thu, Dec 19, 2024 at 6:46 AM Laczen JMS wrote: > > > Hi Alan and Aaron, > > > > I am also a noob and facing what I think is a similar problem. I would > > like to create some specific configuration (defconfig) outside of the > > nuttx folder while maintaining my nuttx folder free from changes so > > that I can keep the nuttx folder in sync with the repo. What is the > > best way to achieve this ? > > > > Kind regards, > > > > Jehudi > > > > Op do 19 dec 2024 om 09:28 schreef Alan C. Assis : > > > > > > Hi Aaron, > > > > > > Nice to know you have previous experience with NuttX on Sony Spresense. > > > > > > The process to support other boards is very similar, I suggest you to > > read > > > our official documentation: > > > > > > https://nuttx.apache.org/docs/latest/quickstart/index.html > > > > > > If you still have questions, please feel free to ask here. Also if you > > > notice that there is something you expected to find in our documentation > > > and it is not there, please let us know, this way we can improve it. > > > > > > BR, > > > > > > Alan > > > > > > On Thu, Dec 19, 2024 at 5:02 AM Aaron M > > wrote: > > > > > > > Sorry if this is inappropriate for the list, but I'm a relative noob to > > > > Nuttx, and I'm just trying to find my way. I'll go elsewhere if you > > > > point me in the correct direction for questions like this. > > > > > > > > My exposure to Nuttx has been strictly limited to Sony's Spresense, and > > > > I have a suitable working environment in VSCode with Sony's SDK. But > > if > > > > I want to build for, say, the FRDM KL-25, or the RPi Pico 2, can I use > > > > the same environment, er, somehow? Do I need to download separate > > > > copies of the repo of Nuttx for each board? > > > > > > > > This link has a nice overview, but it doesn't cover how to handle > > > > multiple boards: > > > > > > > > > > https://www.cocoacrumbs.com/blog/2021-10-25-nuttx-on-the-stm32f769-disco-board/ > > > > > > > > > > > > Thanks for any insight, and my deepest apologies if this is the wrong > > > > place for these questions. > > > > > > > > Aaron > > > > > >
Re: Vote for rename modlib to libelf
+1 On Mon, Apr 7, 2025, 11:36 chao an wrote: > Hi community, > > Some green hand and individual developer who are not familiar with nuttx > may be confused by the naming of modlib, in currect implement, modlib as an > elf loader and parser, does not provide any features other than elf. > > In this pull request, I plan to rename modlib to elf, and adjust it from > the architecture level as follows: > > https://github.com/apache/nuttx/pull/15765 > > > [image: image.png] > > In addition from other popular operating systems, different loadable types > are all implemented in binfmt. Therefore, it is also impossible for modlib > to support formats other than ELF in the future: > > https://github.com/torvalds/linux/blob/master/fs/binfmt_elf.c > https://github.com/torvalds/linux/blob/master/fs/binfmt_elf_fdpic.c > https://github.com/torvalds/linux/blob/master/fs/binfmt_flat.c > https://github.com/torvalds/linux/blob/master/fs/binfmt_misc.c > https://github.com/torvalds/linux/blob/master/fs/binfmt_script.c > https://github.com/alexbousso/kernel_2.4.18-14/blob/master/fs/binfmt_coff.c > > This is where they belong: > https://github.com/apache/nuttx/tree/master/binfmt > > > So I need your vote here: > If you prefer modlib, please reply with -1. > If you recommend libelf, please reply with +1. > > BRs, >