Hi Alan,

Can you maybe test the rp2040 with ostest? Also see if "help" is outputting
reliable text?
Maybe enable random apps and see if they run fine?

Apparently the pico probe is not necessary to reproduce this issue. As the
same problems repeat themselves with drag&drop.

Theory:
Perhaps this could also be linked to new picoSDK releases? Raspberrypi
changed quite some things to support the new chips.
I have only tried fresh PicoSDK installs. I have not tried older versions
of PicoSDK yet.
However, I *believe* the PicoSDK is only used for the bootloader, which
might cause problems initializing the hardware?

Best,

Kevin

Op ma 14 apr 2025 om 14:09 schreef Alan C. Assis <acas...@gmail.com>:

> Hi Kevin,
>
> I will order a Pico Debug probe, it is something new for me.
>
> In fact it seems like a heisenbug, I just compiled from mainline and after
> drag and drop it worked, but this time I had to use nautilus with sudo
> because the Copy option to RPI-RP2 disk wasn't working.
>
> BR,
>
> Alan
>
> On Mon, Apr 14, 2025 at 8:48 AM Kevin Witteveen <kevinwit1...@gmail.com>
> wrote:
>
> > Hi,
> >
> > Thanks for the fast response.
> > I'm glad posting this issue to the mailing list was worth it. The github
> > issue got no attention.
> > The RP2040 support is very important to me.
> >
> > There is something I want to add to this issue.
> >
> > -- Flashing --
> >
> > I mainly flash the firmware using the Pico Debug probe or the picotool
> via
> > USB.
> > I tested the drag&drop method and it actually does create ttyACMx for me.
> > But what concerns me is that this can be another unreliable symptom or
> > "heisenbug".
> >
> > Best,
> >
> > Kevin
> >
> > Op ma 14 apr 2025 om 13:27 schreef Alan C. Assis <acas...@gmail.com>:
> >
> > > Hi Kevin and Alin,
> > >
> > > I confirmed that NuttX 12.9-RC1 is broken on Raspberry Pi Pico.
> > >
> > > After copying the nuttx.uf2 to virtual disk RPI-RP2 the board restart
> by
> > > the /dev/ttyACM0 is not created.
> > >
> > > Please find the steps below:
> > >
> > > alan@dev:/tmp$ cd nuttx/
> > > alan@dev:/tmp/nuttx$ . tools/configure_completion.bash
> > > alan@dev:/tmp/nuttx$ ./tools/configure.sh raspberrypi-pico:usbnsh
> > >
> > > alan@dev:/tmp/nuttx$ make -j
> > > Create version.h
> > > LN: platform/board to /tmp/apps/platform/dummy
> > > Register: hello
> > > Register: nsh
> > > Register: sh
> > > Register: getprime
> > > Register: ostest
> > > CPP:
> > >
> > >
> >
> /tmp/nuttx/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-flash.ld->
> > > /tmp/nuLD: nuttx
> > > Memory region         Used Size  Region Size  %age Used
> > >            flash:        152 KB         2 MB      7.42%
> > >             sram:        8872 B       264 KB      3.28%
> > > Generating: nuttx.uf2
> > > Done.
> > >
> > > alan@dev:/tmp/nuttx$ arm-none-eabi-gcc -v
> > > Using built-in specs.
> > > COLLECT_GCC=arm-none-eabi-gcc
> > > COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-none-eabi/13.2.1/lto-wrapper
> > > Target: arm-none-eabi
> > > Configured with: ../configure --build=x86_64-linux-gnu --prefix=/usr
> > > --includedir='/usr/lib/include' --mandir='/usr/lib/share/man'
> > > --infodir='/usr/lib/share/info' --sysconfdir=/etc --localstatedir=/var
> > > --disable-option-checking --disable-silent-rules
> > > --libdir='/usr/lib/lib/x86_64-linux-gnu'
> > > --libexecdir='/usr/lib/lib/x86_64-linux-gnu' --disable-maintainer-mode
> > > --disable-dependency-tracking --mandir=/usr/share/man
> > > --enable-languages=c,c++,lto --enable-multilib --disable-decimal-float
> > > --disable-libffi --disable-libgomp --disable-libmudflap
> > > --disable-libquadmath --disable-libssp --disable-libstdcxx-pch
> > > --disable-nls --disable-shared --disable-threads --enable-tls
> > > --build=x86_64-linux-gnu --target=arm-none-eabi --with-system-zlib
> > > --with-gnu-as --with-gnu-ld --with-pkgversion=15:13.2.rel1-2
> > > --without-included-gettext --prefix=/usr/lib
> > > --infodir=/usr/share/doc/gcc-arm-none-eabi/info
> > > --htmldir=/usr/share/doc/gcc-arm-none-eabi/html
> > > --pdfdir=/usr/share/doc/gcc-arm-none-eabi/pdf --bindir=/usr/bin
> > > --libexecdir=/usr/lib --libdir=/usr/lib --disable-libstdc++-v3
> > > --host=x86_64-linux-gnu --with-headers=no --without-newlib
> > > --with-multilib-list=rmprofile,aprofile ASFLAGS= ASFLAGS_FOR_BUILD=
> > > CFLAGS='-g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer
> > >
> > >
> >
> -ffile-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=.
> > > -flto=auto -ffat-lto-objects -fstack-protector-strong
> > > -fstack-clash-protection -Wno-format -Wno-error=format-security
> > > -fcf-protection
> > >
> > >
> >
> -fdebug-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=/usr/src/gcc-arm-none-eabi-15:13.2.rel1-2'
> > > 'CFLAGS_FOR_BUILD=-g -O2' CPPFLAGS='-Wdate-time -D_FORTIFY_SOURCE=3'
> > > CPPFLAGS_FOR_BUILD= CXXFLAGS='-g -O2 -fno-omit-frame-pointer
> > > -mno-omit-leaf-frame-pointer
> > >
> > >
> >
> -ffile-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=.
> > > -flto=auto -ffat-lto-objects -fstack-protector-strong
> > > -fstack-clash-protection -Wno-format -Wno-error=format-security
> > > -fcf-protection
> > >
> > >
> >
> -fdebug-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=/usr/src/gcc-arm-none-eabi-15:13.2.rel1-2'
> > > 'CXXFLAGS_FOR_BUILD=-g -O2' DFLAGS=-frelease DFLAGS_FOR_BUILD=-frelease
> > > FCFLAGS='-g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer
> > >
> > >
> >
> -ffile-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=.
> > > -flto=auto -ffat-lto-objects -fstack-protector-strong
> > > -fstack-clash-protection -fcf-protection
> > >
> > >
> >
> -fdebug-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=/usr/src/gcc-arm-none-eabi-15:13.2.rel1-2'
> > > 'FCFLAGS_FOR_BUILD=-g -O2' FFLAGS='-g -O2 -fno-omit-frame-pointer
> > > -mno-omit-leaf-frame-pointer
> > >
> > >
> >
> -ffile-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=.
> > > -flto=auto -ffat-lto-objects -fstack-protector-strong
> > > -fstack-clash-protection -fcf-protection
> > >
> > >
> >
> -fdebug-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=/usr/src/gcc-arm-none-eabi-15:13.2.rel1-2'
> > > 'FFLAGS_FOR_BUILD=-g -O2' LDFLAGS='-Wl,-Bsymbolic-functions -flto=auto
> > > -ffat-lto-objects -Wl,-z,relro' LDFLAGS_FOR_BUILD= OBJCFLAGS='-g -O2
> > > -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer
> > >
> > >
> >
> -ffile-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=.
> > > -flto=auto -ffat-lto-objects -fstack-protector-strong
> > > -fstack-clash-protection -Wno-format -Wno-error=format-security
> > > -fcf-protection
> > >
> > >
> >
> -fdebug-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=/usr/src/gcc-arm-none-eabi-15:13.2.rel1-2'
> > > 'OBJCFLAGS_FOR_BUILD=-g -O2' OBJCXXFLAGS='-g -O2
> -fno-omit-frame-pointer
> > > -mno-omit-leaf-frame-pointer
> > >
> > >
> >
> -ffile-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=.
> > > -flto=auto -ffat-lto-objects -fstack-protector-strong
> > > -fstack-clash-protection -Wno-format -Wno-error=format-security
> > > -fcf-protection
> > >
> > >
> >
> -fdebug-prefix-map=/build/gcc-arm-none-eabi-TuTZN0/gcc-arm-none-eabi-13.2.rel1=/usr/src/gcc-arm-none-eabi-15:13.2.rel1-2'
> > > 'OBJCXXFLAGS_FOR_BUILD=-g -O2'
> > > INHIBIT_LIBC_CFLAGS=-DUSE_TM_CLONE_REGISTRY=0
> > > AR_FOR_TARGET=arm-none-eabi-ar AS_FOR_TARGET=arm-none-eabi-as
> > > LD_FOR_TARGET=arm-none-eabi-ld NM_FOR_TARGET=arm-none-eabi-nm
> > > OBJDUMP_FOR_TARGET=arm-none-eabi-objdump
> > > RANLIB_FOR_TARGET=arm-none-eabi-ranlib
> > > READELF_FOR_TARGET=arm-none-eabi-readelf
> > > STRIP_FOR_TARGET=arm-none-eabi-strip SED=/bin/sed SHELL=/bin/sh
> > > BASH=/bin/bash CONFIG_SHELL=/bin/bash
> > > Thread model: single
> > > Supported LTO compression algorithms: zlib
> > > gcc version 13.2.1 20231009 (15:13.2.rel1-2)
> > >
> > >
> > > NuttX support on Raspberry Pi is very important (low cost board widely
> > > available), so I suggest we work fixing it before releasing the
> official
> > > 12.9 release.
> > >
> > > BR,
> > >
> > > Alan
> > >
> > >
> > > On Mon, Apr 14, 2025 at 8:12 AM Alan C. Assis <acas...@gmail.com>
> wrote:
> > >
> > > > Hi Kevin,
> > > >
> > > > Thanks for reporting the issue!
> > > >
> > > > I will test the new 12.9-RC1 on rasp pico and if the issue happen
> > there I
> > > > will suggest Alin to wait before releasing the final 12.9 version.
> > > >
> > > > BR,
> > > >
> > > > Alan
> > > >
> > > > On Mon, Apr 14, 2025 at 7:46 AM Kevin Witteveen <
> > kevinwit1...@gmail.com>
> > > > wrote:
> > > >
> > > >> Hi NuttX,
> > > >>
> > > >> This is a follow up on previous github issues.
> > > >>
> > > >> After building and flashing my RP2040 based boards with NuttX on any
> > OS,
> > > >> for example Windows, Linux, macOS and different machines (including
> a
> > > >> clean
> > > >> Linux install) with default configurations, they do not pass the
> > ostest.
> > > >>
> > > >> Symptoms:
> > > >>
> > > >> The ostest freezes up around the watchdog test, but sometimes it
> > happens
> > > >> on
> > > >> different tests as well. The entire OS hangs in random applications
> > too.
> > > >> Another problem is that if you run "help", the output is a mess.
> > > >>
> > > >> However, the very strange part is that sometimes this issue does not
> > > show
> > > >> up at all.
> > > >>
> > > >> To reproduce:
> > > >>
> > > >> Any configuration, any OS, any machine. Run "help" to see a
> misaligned
> > > >> mess. Run ostest to see it freeze up. Some apps might fail too.
> > > >> But sometimes things just run fine.
> > > >>
> > > >> Tested on:
> > > >>
> > > >> Raspberry Pi Pico (two boards)
> > > >> Raspberry Pi Pico W
> > > >> Custom RP2040 board
> > > >> RAKwireless RAK4630 RP2040
> > > >> Non-RP2040 boards (they pass and work fine)
> > > >> RP2040 boards with year-old firmware (they pass and work fine)
> > > >>
> > > >> The frustrating part:
> > > >>
> > > >> I tried to figure out the problem, and sometimes it seems like I
> found
> > > it,
> > > >> because after changing some configurations or apps, it starts
> working
> > > >> again. Only to break after flashing it a few more times with tiny
> > > changes.
> > > >>
> > > >> USB:
> > > >>
> > > >> I previously thought USB was the issue, because it looked like the
> > > system
> > > >> didn’t crash if USB wasn’t connected. But later the OS started
> hanging
> > > >> even
> > > >> without using USB at all.
> > > >>
> > > >> Help:
> > > >>
> > > >> I’m unable to figure out the problem and this is blocking my
> projects,
> > > >> including some driver development for NuttX.
> > > >> Can anyone help test this or try to reproduce it?
> > > >>
> > > >> Thanks,
> > > >>
> > > >> Kevin (MartiniMarter github)
> > > >>
> > > >
> > >
> >
>

Reply via email to