NuttX poster?

2024-02-06 Thread Nathan Hartman
At this year's Community over Code Europe 2024 (formerly ApacheCon),
there is an opportunity for PMCs to submit posters to be on display in
high-traffic areas throughout the conference.

This could be particularly applicable if a project has a major new
release, new algorithms, novel use of existing technologies, etc.

It would be cool if the NuttX PMC could submit a poster to increase
awareness and interest in our project by showcasing something unique
about us in an artistic way.

Do we have any artists among us who would like to put something
together? Please speak up, and I'll help by coordinating with the
organizers.

Cheers,
Nathan


Re: STM32H7 board with ethernet

2024-02-06 Thread Nathan Hartman
That's good news. I missed that somehow. Hopefully it means that I can go
ahead and delete some custom application code!

Cheers
Nathan

On Tue, Feb 6, 2024 at 10:55 AM Gregory Nutt  wrote:

> The network monitor is part of apps/netutils/netinit so it is not a part
> of NSH.  NSH can automatically perform the network initialization if so
> configured and which, optionally, starts the network monitor thread.
> But the logic is not architecturally a part of NSH nor does it depend on
> N SH.
>
> On 2/6/2024 9:32 AM, Nathan Hartman wrote:
> > On Tue, Feb 6, 2024 at 8:45 AM Sebastien Lorquet 
> > wrote:
> >
> >> However, the default network configuration provided in NuttX examples is
> >> cumbersome and too much linked with NSH
> >>
> >> It can work for simple tests and demos, but you will have to write a
> >> proper network management daemon if you plan to use more than one
> >> network app.
> >
> >
> > It would be a nice thing if the network management daemon could be
> factored
> > out of NSH so that boards that don't run NSH could have the same network
> > management without implementing it again.
> >
> > Cheers
> > Nathan
> >
>
>


Re: STM32H7 board with ethernet

2024-02-06 Thread Gregory Nutt
The network monitor is part of apps/netutils/netinit so it is not a part 
of NSH.  NSH can automatically perform the network initialization if so 
configured and which, optionally, starts the network monitor thread.  
But the logic is not architecturally a part of NSH nor does it depend on 
N SH.


On 2/6/2024 9:32 AM, Nathan Hartman wrote:

On Tue, Feb 6, 2024 at 8:45 AM Sebastien Lorquet 
wrote:


However, the default network configuration provided in NuttX examples is
cumbersome and too much linked with NSH

It can work for simple tests and demos, but you will have to write a
proper network management daemon if you plan to use more than one
network app.



It would be a nice thing if the network management daemon could be factored
out of NSH so that boards that don't run NSH could have the same network
management without implementing it again.

Cheers
Nathan





Re: STM32H7 board with ethernet

2024-02-06 Thread Sebastien Lorquet

Hi,

I agree, but we should make progress on several points before it's 
possible :


-how to configure it at runtime in a modular manner that can be 
customized by the user? It's usual that we need a choice of fixed ip  or 
DHCP. config file? runtime commands like nmcli? How to store the config? 
DHCP itself should be cancellable if the network goes down while the 
DHCP request is running.


-how to start it? This requires a boot script so the daemon can be 
started in the background while NSH runs. This is not generic NuttX way 
to do things, many systems dont actually require this.


-how to get feedback from it? We have developed a message bus that 
notifies other apps, but this is also user-specific.


So I dont see this being agreed upon in a way that pleases everyone soon :-)

This is putting a foot in the "userspace initialization" which has 
always been user-specific in NuttX.



On the issue of boot scripts, there is also an important change that 
would be nice to have upstream: Split the nsh ability to mount a romfs 
(or any fs) and the nsh ability to run different kinds of logon scripts. 
For the moment this is tightly coupled at the kconfig level.


This separation is more unix-like: the shell program should not mount 
stuff as a built-in feature, but do that as part of a some flexible 
config. This is probably controversial so I wont defend this opinion 
unnecessarily. There are RTOS situations where we dont need/want these 
features.


In our boards the romfs is mounted by the board, so our nuttx own apps 
already have this change.


Sebastien


Le 06/02/2024 à 16:32, Nathan Hartman a écrit :

On Tue, Feb 6, 2024 at 8:45 AM Sebastien Lorquet 
wrote:


However, the default network configuration provided in NuttX examples is
cumbersome and too much linked with NSH

It can work for simple tests and demos, but you will have to write a
proper network management daemon if you plan to use more than one
network app.



It would be a nice thing if the network management daemon could be factored
out of NSH so that boards that don't run NSH could have the same network
management without implementing it again.

Cheers
Nathan



Re: STM32H7 board with ethernet

2024-02-06 Thread Nathan Hartman
On Tue, Feb 6, 2024 at 8:45 AM Sebastien Lorquet 
wrote:

>
> However, the default network configuration provided in NuttX examples is
> cumbersome and too much linked with NSH
>
> It can work for simple tests and demos, but you will have to write a
> proper network management daemon if you plan to use more than one
> network app.



It would be a nice thing if the network management daemon could be factored
out of NSH so that boards that don't run NSH could have the same network
management without implementing it again.

Cheers
Nathan


Re: STM32H7 board with ethernet

2024-02-06 Thread Sebastien Lorquet
The phy on the nucleo-h743zi is supported, I have it working in an 
industrialized product.


It does not have an interrupt line, so cable state detection requires a 
polling daemon.



However, the default network configuration provided in NuttX examples is 
cumbersome and too much linked with NSH


It can work for simple tests and demos, but you will have to write a 
proper network management daemon if you plan to use more than one 
network app.


Sebastien


Le 06/02/2024 à 14:19, Alan C. Assis a écrit :

Hi Simon,

I just sent to your email a board config example with Ethernet support for
a custom board based on stm32h745i-disco and with Ethernet support.

Probably your config is not working because there is no STM32H743ZI2 config
with ETHERNET enabled in the mainline.

Besides ETH configuration you need to check if PHY is correct.

BR,

Alan

On Tue, Feb 6, 2024 at 8:41 AM Simon Filgis 
wrote:


Dear all,

I found a STM32H743ZI2 and build the jumbo config.

I have nsh access. Now I would like to setup ethernet, but it seems not
working out of the box.

nsh> ifconfig eth0 192.168.1.5
nsh> ping any target does not work

Also from my host, I cannot ping. Telnet-connection is unavailable...

Do I need to enable something?

Regards,

Simon


--
Hard- and Softwaredevelopment Consultant
Ingenieurbüro-Filgis
USt-IdNr.: DE305343278


On Tue, Feb 6, 2024 at 12:30 PM Roberto Bucher <
roberto.bucher.2...@gmail.com> wrote:


The STM32H743ZI2 is quite complete. We used it with pysimCoder (ADC,
encoders, PWM, digital I/O, network, but not CAN bus yet)

Roberto

On 2/6/24 11:57, Alan C. Assis wrote:

stm32h745i-disco is a great option! Ethernet and LCD

On Tuesday, February 6, 2024, Simon Filgis <

si...@ingenieurbuero-filgis.de>

wrote:


Dear all,

Can anybody recommend a stm32h7 board with ethernet that is well

supported

by nuttx?

Thanks in advance,

Simon





Re: STM32H7 board with ethernet

2024-02-06 Thread Alan C. Assis
Hi Simon,

I just sent to your email a board config example with Ethernet support for
a custom board based on stm32h745i-disco and with Ethernet support.

Probably your config is not working because there is no STM32H743ZI2 config
with ETHERNET enabled in the mainline.

Besides ETH configuration you need to check if PHY is correct.

BR,

Alan

On Tue, Feb 6, 2024 at 8:41 AM Simon Filgis 
wrote:

> Dear all,
>
> I found a STM32H743ZI2 and build the jumbo config.
>
> I have nsh access. Now I would like to setup ethernet, but it seems not
> working out of the box.
>
> nsh> ifconfig eth0 192.168.1.5
> nsh> ping any target does not work
>
> Also from my host, I cannot ping. Telnet-connection is unavailable...
>
> Do I need to enable something?
>
> Regards,
>
> Simon
>
>
> --
> Hard- and Softwaredevelopment Consultant
> Ingenieurbüro-Filgis
> USt-IdNr.: DE305343278
>
>
> On Tue, Feb 6, 2024 at 12:30 PM Roberto Bucher <
> roberto.bucher.2...@gmail.com> wrote:
>
> > The STM32H743ZI2 is quite complete. We used it with pysimCoder (ADC,
> > encoders, PWM, digital I/O, network, but not CAN bus yet)
> >
> > Roberto
> >
> > On 2/6/24 11:57, Alan C. Assis wrote:
> > > stm32h745i-disco is a great option! Ethernet and LCD
> > >
> > > On Tuesday, February 6, 2024, Simon Filgis <
> > si...@ingenieurbuero-filgis.de>
> > > wrote:
> > >
> > >> Dear all,
> > >>
> > >> Can anybody recommend a stm32h7 board with ethernet that is well
> > supported
> > >> by nuttx?
> > >>
> > >> Thanks in advance,
> > >>
> > >> Simon
> > >>
> >
> >
>


Re: STM32H7 board with ethernet

2024-02-06 Thread Simon Filgis
Dear all,

I found a STM32H743ZI2 and build the jumbo config.

I have nsh access. Now I would like to setup ethernet, but it seems not
working out of the box.

nsh> ifconfig eth0 192.168.1.5
nsh> ping any target does not work

Also from my host, I cannot ping. Telnet-connection is unavailable...

Do I need to enable something?

Regards,

Simon


--
Hard- and Softwaredevelopment Consultant
Ingenieurbüro-Filgis
USt-IdNr.: DE305343278


On Tue, Feb 6, 2024 at 12:30 PM Roberto Bucher <
roberto.bucher.2...@gmail.com> wrote:

> The STM32H743ZI2 is quite complete. We used it with pysimCoder (ADC,
> encoders, PWM, digital I/O, network, but not CAN bus yet)
>
> Roberto
>
> On 2/6/24 11:57, Alan C. Assis wrote:
> > stm32h745i-disco is a great option! Ethernet and LCD
> >
> > On Tuesday, February 6, 2024, Simon Filgis <
> si...@ingenieurbuero-filgis.de>
> > wrote:
> >
> >> Dear all,
> >>
> >> Can anybody recommend a stm32h7 board with ethernet that is well
> supported
> >> by nuttx?
> >>
> >> Thanks in advance,
> >>
> >> Simon
> >>
>
>


Re: STM32H7 board with ethernet

2024-02-06 Thread Roberto Bucher
The STM32H743ZI2 is quite complete. We used it with pysimCoder (ADC, 
encoders, PWM, digital I/O, network, but not CAN bus yet)


Roberto

On 2/6/24 11:57, Alan C. Assis wrote:

stm32h745i-disco is a great option! Ethernet and LCD

On Tuesday, February 6, 2024, Simon Filgis 
wrote:


Dear all,

Can anybody recommend a stm32h7 board with ethernet that is well supported
by nuttx?

Thanks in advance,

Simon





Re: STM32H7 board with ethernet

2024-02-06 Thread Alan C. Assis
stm32h745i-disco is a great option! Ethernet and LCD

On Tuesday, February 6, 2024, Simon Filgis 
wrote:

> Dear all,
>
> Can anybody recommend a stm32h7 board with ethernet that is well supported
> by nuttx?
>
> Thanks in advance,
>
> Simon
>


Re: STM32H7 board with ethernet

2024-02-06 Thread Sebastien Lorquet

Hi,

I see that only the 743zi is in the tree, but it should not be too hard 
to clone that, change its config entries, and use it. Only a "nsh" 
config can be enough to start.


This CPU is also not explicitly supported, but the H753Z is present. You 
can add the missing entries in kconfig, after checking the hardware 
differences, which should be minor, and use that for your board.


Even if this is missing minor cpu features it could be a good place to 
start.


Then you can contribute it back if you wish.

Sebastien

Le 06/02/2024 à 10:39, Simon Filgis a écrit :

Hi Sebastien,

I have NUCLEO-H755ZI-Q on my table, but could not find a board package 
in the tree. Is it supported?


Regards,

Simon

--
Hard- and Softwaredevelopment Consultant
Ingenieurbüro-Filgis
USt-IdNr.: DE305343278


On Tue, Feb 6, 2024 at 10:34 AM Sebastien Lorquet 
 wrote:


Hi,

The nucleo-h7 board series definitely work, there are several models
with ethernet.

Sebastien


Le 06/02/2024 à 10:26, Simon Filgis a écrit :
> Dear all,
>
> Can anybody recommend a stm32h7 board with ethernet that is well
supported
> by nuttx?
>
> Thanks in advance,
>
> Simon
>


Re: STM32H7 board with ethernet

2024-02-06 Thread Simon Filgis
Hi Sebastien,

I have NUCLEO-H755ZI-Q on my table, but could not find a board package in
the tree. Is it supported?

Regards,

Simon

--
Hard- and Softwaredevelopment Consultant
Ingenieurbüro-Filgis
USt-IdNr.: DE305343278


On Tue, Feb 6, 2024 at 10:34 AM Sebastien Lorquet 
wrote:

> Hi,
>
> The nucleo-h7 board series definitely work, there are several models
> with ethernet.
>
> Sebastien
>
>
> Le 06/02/2024 à 10:26, Simon Filgis a écrit :
> > Dear all,
> >
> > Can anybody recommend a stm32h7 board with ethernet that is well
> supported
> > by nuttx?
> >
> > Thanks in advance,
> >
> > Simon
> >
>


Re: STM32H7 board with ethernet

2024-02-06 Thread Sebastien Lorquet

Hi,

The nucleo-h7 board series definitely work, there are several models 
with ethernet.


Sebastien


Le 06/02/2024 à 10:26, Simon Filgis a écrit :

Dear all,

Can anybody recommend a stm32h7 board with ethernet that is well supported
by nuttx?

Thanks in advance,

Simon



STM32H7 board with ethernet

2024-02-06 Thread Simon Filgis
Dear all,

Can anybody recommend a stm32h7 board with ethernet that is well supported
by nuttx?

Thanks in advance,

Simon


Re: [Article] Build & Test NuttX Apps in the Web Browser (TCC RISC-V Compiler)

2024-02-06 Thread Sebastien Lorquet

Hi,

This is cool.

Two remarks:

- it would be nice to have tcc supported as an official compiler along 
gcc and llvm. Probably just for fun with no "commercial interest" for nuttx.


- in the 80s, CP/M had C compilers that executed in less than 64k of RAM...

Sebastien.


Le 05/02/2024 à 05:16, Lee, Lup Yuen a écrit :

<< It would be nice if we could get TCC integrated on apps/ to run inside
MCUs
with much memory (like STM32 with external SDRAM), ESP32, BL808, etc. >>

Thanks Alan! We have a couple of issues that might affect TCC Compiler on
NuttX:

(1) RISC-V Registers are mixed up when TCC emits code for NuttX System
Calls:
https://lupyuen.codeberg.page/articles/tcc.html#appendix-nuttx-system-call

(2) TCC won't link with NuttX Libraries compiled with GCC. We'll have to
recompile the NuttX Libraries with TCC:
https://github.com/lupyuen/tcc-riscv32-wasm#fix-missing-printf-in-nuttx-app

(3) TCC for RISC-V hasn't been updated for the past 8 months:
https://github.com/sellicott/tcc-riscv32/commits/main/

Perhaps our article will revive the TCC project? Let's see what happens :-)

Something interesting popped up: Our NuttX ROM FS Driver works well in
WebAssembly. Which means we can run it to host a ROM FS Filesystem inside a
Web Browser!
https://github.com/lupyuen/tcc-riscv32-wasm#rom-fs-filesystem-for-tcc-webassembly

TCC Compiler in WebAssembly needs a filesystem (inside the Web Browser)
that's preloaded with C Header Files and Library Files. Our NuttX ROM FS
Driver is perfect for that. I'll explain more in the next article.

So cool to have our NuttX Drivers running on new unexpected platforms :-)

Lup

On Mon, Feb 5, 2024 at 1:06 AM Alan C. Assis  wrote:


Hi Lup,

Congratulations! That was a great achievement!!!

It would be nice if we could get TCC integrated on apps/ to run inside MCUs
with much memory (like STM32 with external SDRAM), ESP32, BL808, etc.

Best Regards,

Alan

On Sat, Feb 3, 2024 at 8:08 PM Lee, Lup Yuen  wrote:


Today we're running NuttX Emulator inside a Web Browser. What if we could
build and test NuttX Apps in the Web Browser? Learning NuttX becomes so
cool!

Let's explore with TCC (Tiny C Compiler) for 64-bit RISC-V, compiled to
WebAssembly with Zig Compiler...

(1) Zig Compiler compiles TCC Compiler to WebAssembly (with one tiny fix)
(2) But we hit some Missing POSIX Functions
(3) So we built minimal File Input and Output
(4) Hacked up a simple workaround for fprintf and friends
(5) And TCC produces a RISC-V Binary that runs on NuttX Emulator, in the
Web Browser!
(6) Though it needs Low-Level NuttX System Calls. We might fix this by
porting NuttX ROM FS to Zig and WebAssembly.

Here's the article: https://lupyuen.codeberg.page/articles/tcc.html

Lup