Hi all, in my opinion nsh provides a good familiar feeling for people coming from Linux and may be missleading for many developers that come from bare metal. I think that we should improve the documentation and list all available options with benefits and drawbacks for each option.
Best regards Alin On Tue, 9 Jul 2024, 19:36 Saurav Pal, <resyfer....@gmail.com> wrote: > Hi, > > I agree on a lot of things with Michal (while I can't comment on other > things), being almost a beginner to the project (and embedded systems in > general) I think my viewpoint can help. Because of the coverage of nsh > across videos and documentation, I never knew for sure if nsh was a > requirement or not. I thought there must be a way, given it "looks like > Linux '', back when I got started but was never sure. > > I feel it would be really helpful to just have a blinking LED program > configuration for every board, that runs immediately after flashing as an > "example" that people can flash using some commands that they can copy > paste into the terminal. It would be better if it's like flashing quickly > or in a pattern, etc. to distinguish it from the usual blink LED programs > that boards have from manufacture. > > This way, along with a list of supported boards, can help people know if > their board is even supported or not. Sure, a grep from all configs would > tell that as well, but the less effort to get started, the better people > feel about adopting it. A lot of the times people don't want to abandon a > project that they can get up and running, mostly due to sunken costs > > As a beginner to the project myself, I think it would help if I share my > troubles during getting started with NuttX. > > ===== My Yapping Starts ===== > - The support for just Ubuntu (my Fedora had, as usual, dependency version > conflict problems) was a bit off putting, but given most use Ubuntu, that's > probably a very personal problem. > - The directory structure....it needed a precise naming...which was weird. > I gave my own names and path during the first try and got errors. I didn't > bother to follow the clone part too diligently because "it's just probably > example code". > - As Nathan mentions...I didn't know if my board was supported or not. I > had to navigate around the help command of the configure tool and find the > list of boards (I hadn't checked the directory structure yet, I was still > setting it up). > - As back then my main target was to build and run nuttx, I wanted to check > it working in my laptop, so I had to search the docs for the simulator. > ===== My Yapping Ends ===== > > BR, > Saurav. > > On Tue, Jul 9, 2024 at 9:33 PM Nathan Hartman <hartman.nat...@gmail.com> > wrote: > > > Replies inline below: > > > > On Tue, Jul 9, 2024 at 11:06 AM <michal.lyszc...@bofc.pl> wrote: > > > > > On 2024-07-09 09:49:16, Alan C. Assis wrote: > > > > > > (snip) > > > > > Suggestions about how to proceed to archive it are welcome. > > > > Probably we will need collective help to archive it for all boards. > > > > > > Other problem I've seen is bad (or rather lack thereof) press. Each > time > > > I propose nuttx for some project it's a lot of hesitance and ultimately > > > decision to go with zephyr becuase it "supports more things". Which is > > > a lie, because with my experience zephyr has a lot of demos just to > show > > > off "how many things they support". But it's all demo and nor > production > > > quality. Nevertheless - this sells. And later when it's clear that > zephyr > > > was lying - it's too late to go with anything else because months of > work > > > was already put into zephyr, so noone will start over. > > > > > > > > It might be worthwhile to think about how we can improve our website. > > Currently our landing page doesn't say much. > > > > Specific suggestions for improvement: > > > > * Point out real world applications where NuttX has been used -- like > NuttX > > in space, NuttX in products people are familiar with. > > > > * Link to videos from NuttX workshops. > > > > * Mention how many boards and architectures we support (there used to be > a > > list on the pre-Apache MediaWiki-based site) > > > > More below: > > > > So nuttx definiately lacks press and exposure. Basically noone I worked > > with > > > heard about nuttx until I mentioned that. A lot of programmers are > hyped > > > when I explain what and how it does things - but it all ends up with > > zephyr > > > because of "all the supported hardware it has". > > > > > > For ppl to consider nuttx, they first need to hear about it. People > > > (especially > > > useless managers) will need benchmarks - like how much flash/ram it > uses. > > > How it performs. Will their hardware be supported. > > > > > > It would not hurt for things to be more user friendly. I admit, > > > initializing > > > zephyr is easy. Unpack SDK, west init, compile, flash and you are done. > > > And nuttx? Download and put compiler in path. Clone nuttx AND apps in > > same > > > directory. Configure. Compile. Learn your debugger to flash. On zephyr > > you > > > do 'west flash' and it knowns which discovery board is used and it uses > > > apropriate tool and arguments. This is good, I will admit it. > > > > > > So nuttx would need some SDK in my opinion. Package with binary > compilers > > > and > > > flash utilities. "make flash" should just perform flash on specific > board > > > without user knowing what tools is needed. "make debug" should start > GDB > > > session. > > > > > > A lot of beginners will be put off becuase of things like that. If they > > > could > > > just do "./install-sdk.sh && ./init-nuttx && cd nuttx && > > > ./tools/configure.sh nucleo-whatever && make && make flash" and start > > > playing > > > around - this would definiately help getting beginners. > > > > > > Anegdotal (but still) proof. 10 years ago I was researching RTOSes. I > > > really > > > wanted to use nuttx on stm32 back then. But I had a lot of problems > just > > > compiling and running anything on discovery board. I was kinda put off, > > > team > > > leader decided to screw it and go with another solution. I finally > learnt > > > it > > > at home and love it ever since, but damage was already done and nuttx > in > > > that > > > project was forgotten. > > > > > > A script or even a TUI or GUI to easily fetch and install NuttX and > various > > tools could be a good answer to this need. Maybe a menu where you can > > answer a few questions (do you want latest release or git clone, etc). > But > > there's a risk: if this program doesn't actually work correctly, that > will > > be much worse than not having it!! > > > > Sorry for long post, here's a potato: 🥔 > > > > > > > Thanks for long post and potato :-) > > > > Cheers > > Nathan > > >