Hi Rushikesh, You need to look the source code example to understand how to control a single LED.
The userled works as a set of LEDs, so you need to use an IOCTL command to set a single bit to turn on/off single LED. It is not like the GPIO that you have a unique device file for each GPIO. BR, Alan On 8/19/21, rushi ghatkar <rushighatka...@gmail.com> wrote: > Hi, > > Thank you Alan sir. Now it's working. > > > Did you enable NSH_ARCHINIT ? > > Application Configuration ---> > NSH Library ---> > [*] Have architecture-specific initialization > > Could you please tell me how this nsh library works here? > > This built-in leds driver works but it shows binary values. > How to blink single led? To blink single led which driver reference we have > to take, *userled_lower.c* or *userled_upper.c* from > *nuttx/driver/leds* > ? > > > Regards, > Rushikesh Ghatkar > > On Wed, Aug 18, 2021 at 5:53 PM Alan Carvalho de Assis <acas...@gmail.com> > wrote: > >> Did you enable the LED DEBUG? >> >> Note that "Initializing LEDs" is not printed! >> >> Did you enable NSH_ARCHINIT ? >> >> Application Configuration ---> >> NSH Library ---> >> [*] Have architecture-specific initialization >> >> BR, >> >> Alan >> >> On 8/18/21, rushi ghatkar <rushighatka...@gmail.com> wrote: >> > Hi, >> > >> > I have modified as u asked, >> > Please open your drivers/leds/userled_lower.c and modify it to print >> > some >> > info: >> > >> > int userled_lower_initialize(FAR const char *devname) >> > { >> > int ret; >> > >> > ledinfo("Initializing LEDs\n"); >> > >> > g_lednum = board_userled_initialize(); >> > ret = userled_register(devname, &g_userled_lower); >> > if (ret < 0) >> > { >> > lederr("Failed to register userled: %d\n", ret); >> > } >> > } >> > >> > >> > But from the *app/example/leds/leds_main.c* side it's not reaching to >> > our >> > driver to find */dev/userled* path. >> > >> > In *app/example/leds/leds_main.c app *"open the LED driver" section, >> > it >> > gives an error. Please find the attached image. >> > >> > >> > >> > Regards, >> > Rushikesh Ghatkar >> > >> > >> > >> > On Wed, Aug 18, 2021 at 5:08 PM Alan Carvalho de Assis < >> acas...@gmail.com> >> > wrote: >> > >> >> Hi Rushikesh, >> >> >> >> Since it is there the /dev/userleds0 should be registered. >> >> >> >> Please open your drivers/leds/userled_lower.c and modify it to print >> some >> >> info: >> >> >> >> int userled_lower_initialize(FAR const char *devname) >> >> { >> >> int ret; >> >> >> >> ledinfo("Initializing LEDs\n"); >> >> >> >> g_lednum = board_userled_initialize(); >> >> ret = userled_register(devname, &g_userled_lower); >> >> if (ret < 0) >> >> { >> >> lederr("Failed to register userled: %d\n", ret); >> >> } >> >> } >> >> >> >> Then run it with LED debug enabled. >> >> >> >> BR, >> >> >> >> Alan >> >> >> >> On 8/18/21, rushi ghatkar <rushighatka...@gmail.com> wrote: >> >> > Hi @Alan sir, >> >> > >> >> > Found *System.map* and checked for *userled_lower_initialise* and >> >> > it's >> >> > there. Means my firmware has it. Please find the attached image. >> >> > >> >> > Then what is the problem? and how to solve it? >> >> > >> >> > >> >> > >> >> > Regards, >> >> > Rushikesh >> >> > >> >> > On Wed, Aug 18, 2021 at 4:39 PM Alan Carvalho de Assis < >> >> acas...@gmail.com> >> >> > wrote: >> >> > >> >> >> "Open your System.map and search for userled_lower_initialize" >> >> >> >> >> >> On 8/18/21, rushi ghatkar <rushighatka...@gmail.com> wrote: >> >> >> > Hi, >> >> >> > >> >> >> > @Alan sir, I have enabled the debug option and checked, it still >> >> >> > gives >> >> >> the >> >> >> > same error message in nsh> prompt whenever I run the built-in >> driver >> >> or >> >> >> my >> >> >> > own driver. >> >> >> > Please find the attached image. >> >> >> > >> >> >> > it's not reaching to* /dev/userleds* path. >> >> >> > >> >> >> > >> >> >> > Regards, >> >> >> > Rushikesh Ghatkar >> >> >> > >> >> >> > On Tue, Aug 17, 2021 at 6:59 PM Alan Carvalho de Assis < >> >> >> acas...@gmail.com> >> >> >> > wrote: >> >> >> > >> >> >> >> The /dev/userleds is created this way: >> >> >> >> >> >> >> >> ret = userled_lower_initialize("/dev/userleds"); >> >> >> >> >> >> >> >> Open your System.map and search for userled_lower_initialize, if >> >> >> >> you >> >> >> >> find it, this mean your firmware has it and the issue is >> >> >> >> probably >> >> some >> >> >> >> error during the initialization. >> >> >> >> >> >> >> >> *Please* enable the DEBUG LEDS: >> >> >> >> >> >> >> >> Build Setup ---> >> >> >> >> Debug Options ---> >> >> >> >> [*] Enable Debug Features >> >> >> >> [*] Enable Error Output >> >> >> >> [*] Enable Warnings Output >> >> >> >> [*] Low-level LED Debug Features >> >> >> >> [*] LED Driver Error Output >> >> >> >> [*] LED Driver Warnings Output >> >> >> >> [*] LED Driver Informational Output >> >> >> >> >> >> >> >> BR, >> >> >> >> >> >> >> >> Alan >> >> >> >> >> >> >> >> On 8/17/21, rushi ghatkar <rushighatka...@gmail.com> wrote: >> >> >> >> > Hi, >> >> >> >> > >> >> >> >> > How to create * /dev/userleds* ? >> >> >> >> > >> >> >> >> > I have searched for it but can't find it. >> >> >> >> > Need Help. >> >> >> >> > >> >> >> >> > >> >> >> >> > Regards, >> >> >> >> > Rushikesh Ghatkar >> >> >> >> > >> >> >> >> > On Mon, Aug 16, 2021 at 6:32 PM Alan Carvalho de Assis < >> >> >> >> acas...@gmail.com> >> >> >> >> > wrote: >> >> >> >> > >> >> >> >> >> Did you look at /dev? I think the /dev/userleds is not >> >> >> >> >> created. >> >> >> >> >> >> >> >> >> >> Try to enable the DEBUG LED to see that is going on. >> >> >> >> >> >> >> >> >> >> BR, >> >> >> >> >> >> >> >> >> >> Alan >> >> >> >> >> >> >> >> >> >> On 8/16/21, rushi ghatkar <rushighatka...@gmail.com> wrote: >> >> >> >> >> > Hi, >> >> >> >> >> > >> >> >> >> >> > I have changed the declaration but it still gives some >> >> >> >> >> > warning. >> >> >> >> >> > Please >> >> >> >> >> find >> >> >> >> >> > the attached image. >> >> >> >> >> > >> >> >> >> >> > and when I flash code and use picocom it still gives an >> error. >> >> >> >> >> > Please >> >> >> >> >> find >> >> >> >> >> > the attachment. >> >> >> >> >> > >> >> >> >> >> > >> >> >> >> >> > Regards, >> >> >> >> >> > Rushikesh Ghatkar >> >> >> >> >> > >> >> >> >> >> > On Mon, Aug 16, 2021 at 5:25 PM Alan Carvalho de Assis < >> >> >> >> >> acas...@gmail.com> >> >> >> >> >> > wrote: >> >> >> >> >> > >> >> >> >> >> >> You need to declare all LEDs, including GPIO_LED_BLUE >> >> >> >> >> >> >> >> >> >> >> >> This is the pin on your board used for each LED. >> >> >> >> >> >> >> >> >> >> >> >> Please look at stm32h747i-disco/src/stm32h747i-disco.h for >> >> >> >> >> >> reference. >> >> >> >> >> >> >> >> >> >> >> >> BR, >> >> >> >> >> >> >> >> >> >> >> >> Alan >> >> >> >> >> >> >> >> >> >> >> >> On 8/16/21, rushi ghatkar <rushighatka...@gmail.com> >> >> >> >> >> >> wrote: >> >> >> >> >> >> > Hi Alan sir, >> >> >> >> >> >> > >> >> >> >> >> >> > I have disabled the status/diagnostic LEDs compete for >> >> >> >> >> >> > the >> >> use >> >> >> of >> >> >> >> >> LEDs. >> >> >> >> >> >> > So disabled it: >> >> >> >> >> >> > Board Selection ---> >> >> >> >> >> >> > [ ] Board LED Status support >> >> >> >> >> >> > >> >> >> >> >> >> > >> >> >> >> >> >> > Yes my board does support * userleds support*: >> >> >> >> >> >> > boards/arm/stm32h7/nucleo-h743zi2/src/stm32_userleds.c >> >> >> >> >> >> > >> >> >> >> >> >> > But still it gives error, please see the error image >> >> attached. >> >> >> >> >> >> > >> >> >> >> >> >> > AR (create): libbinfmt.a binfmt_globals.o >> >> >> >> >> >> > binfmt_initialize.o >> >> >> >> >> >> > binfmt_register.o binfmt_unregister.o >> >> >> >> >> >> > binfmt_loadmodule.o >> >> >> >> >> >> > binfmt_unloadmodule.o binfmt_execmodule.o binfmt_exec.o >> >> >> >> >> >> > binfmt_copyargv.o >> >> >> >> >> >> > binfmt_dumpmodule.o builtin.o >> >> >> >> >> >> > make[1]: Leaving directory >> >> >> >> '/home/rushikesh/nuttxspace/nuttx/binfmt' >> >> >> >> >> >> > IN: binfmt/libbinfmt.a -> staging/libbinfmt.a >> >> >> >> >> >> > make[1]: Entering directory >> >> >> >> >> >> '/home/rushikesh/nuttxspace/nuttx/arch/arm/src' >> >> >> >> >> >> > make[2]: Entering directory >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> '/home/rushikesh/nuttxspace/nuttx/boards/arm/stm32h7/nucleo-h743zi2/src' >> >> >> >> >> >> > CC: stm32_boot.c >> >> >> >> >> >> > CC: stm32_bringup.c >> >> >> >> >> >> > stm32_bringup.c: In function 'stm32_bringup': >> >> >> >> >> >> > stm32_bringup.c:88:9: warning: implicit declaration of >> >> >> >> >> >> > function >> >> >> >> >> >> > 'userled_lower_initialize' >> >> >> >> >> >> > [-Wimplicit-function-declaration] >> >> >> >> >> >> > 88 | ret = >> >> >> >> >> >> > userled_lower_initialize("/dev/userleds"); >> >> >> >> >> >> > | ^~~~~~~~~~~~~~~~~~~~~~~~ >> >> >> >> >> >> > CC: stm32_userleds.c >> >> >> >> >> >> > stm32_userleds.c:55:3: error: 'GPIO_LED_BLUE' undeclared >> >> >> >> >> >> > here >> >> >> >> >> >> > (not >> >> >> >> >> >> > in >> >> >> >> >> a >> >> >> >> >> >> > function); did you mean 'GPIO_LED_RED'? >> >> >> >> >> >> > 55 | GPIO_LED_BLUE, >> >> >> >> >> >> > | ^~~~~~~~~~~~~ >> >> >> >> >> >> > | GPIO_LED_RED >> >> >> >> >> >> > make[2]: *** >> >> >> >> >> >> > [/home/rushikesh/nuttxspace/nuttx/boards/Board.mk:103: >> >> >> >> >> >> > stm32_userleds.o] Error 1 >> >> >> >> >> >> > make[2]: Leaving directory >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> '/home/rushikesh/nuttxspace/nuttx/boards/arm/stm32h7/nucleo-h743zi2/src' >> >> >> >> >> >> > make[1]: *** [Makefile:152: board/libboard.a] Error 2 >> >> >> >> >> >> > make[1]: Leaving directory >> >> >> >> >> >> '/home/rushikesh/nuttxspace/nuttx/arch/arm/src' >> >> >> >> >> >> > make: *** [tools/Makefile.unix:422: nuttx] Error 2 >> >> >> >> >> >> > >> >> >> >> >> >> > >> >> >> >> >> >> > >> >> >> >> >> >> > >> >> >> >> >> >> > Regards, >> >> >> >> >> >> > Rushikesh Ghatkar >> >> >> >> >> >> > >> >> >> >> >> >> > On Mon, Aug 16, 2021 at 4:41 PM Alan Carvalho de Assis < >> >> >> >> >> >> acas...@gmail.com> >> >> >> >> >> >> > wrote: >> >> >> >> >> >> > >> >> >> >> >> >> >> HI Rushikesh, >> >> >> >> >> >> >> >> >> >> >> >> >> >> It seams your board already has the userleds support: >> >> >> >> >> >> >> >> >> >> >> >> >> >> boards/arm/stm32h7/nucleo-h743zi2/src/stm32_userleds.c >> >> >> >> >> >> >> >> >> >> >> >> >> >> Did you disable the CONFIG_ARCH_LEDS? The >> >> >> >> >> >> >> status/diagnostic >> >> >> LEDs >> >> >> >> >> >> >> compete for the use of LEDs. >> >> >> >> >> >> >> >> >> >> >> >> >> >> So disable it: >> >> >> >> >> >> >> >> >> >> >> >> >> >> Board Selection ---> >> >> >> >> >> >> >> [ ] Board LED Status support >> >> >> >> >> >> >> >> >> >> >> >> >> >> BR, >> >> >> >> >> >> >> >> >> >> >> >> >> >> Alan >> >> >> >> >> >> >> >> >> >> >> >> >> >> On 8/16/21, rushi ghatkar <rushighatka...@gmail.com> >> >> >> >> >> >> >> wrote: >> >> >> >> >> >> >> > Hi, >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > I have tried the built-in LED driver in menuconfig, >> >> >> >> >> >> >> > Application >> >> >> >> >> >> >> > Configuration -> Examples -> LED driver example. >> >> >> >> >> >> >> > But when I run that driver using picocom,it shows >> error, >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > Builtin Apps: >> >> >> >> >> >> >> > leds sh hello nsh >> >> >> >> >> >> >> > nsh> leds >> >> >> >> >> >> >> > leds_main: Starting the led_daemon >> >> >> >> >> >> >> > leds_main: led_daemon started >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > led_daemon (pid# 3): Running >> >> >> >> >> >> >> > led_daemon: Opening /dev/userleds >> >> >> >> >> >> >> > led_daemon: ERROR: Failed to open /dev/userleds: 2 >> >> >> >> >> >> >> > led_daemon: Terminating >> >> >> >> >> >> >> > nsh> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > Please find the error image attachment. >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > In menuconfig I have selected, >> >> >> >> >> >> >> > Board Configuration -> Board LED status report. >> >> >> >> >> >> >> > Device Driver -> LED support -> LED driver -> Generic >> >> Lower >> >> >> >> >> >> >> > Half >> >> >> >> >> LED >> >> >> >> >> >> >> Driver >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > For this I need to have a board userleds file that >> >> >> >> >> >> >> > will >> >> map >> >> >> >> >> >> >> > the >> >> >> >> >> LEDs >> >> >> >> >> >> >> > and >> >> >> >> >> >> >> > will create the /dev/userleds. >> >> >> >> >> >> >> > But I have searched it in the list by using this >> command >> >> >> >> >> >> >> > *./tools/configure.sh >> >> >> >> >> >> >> > -L | less* >> >> >> >> >> >> >> > There is no *nucleo-h743zi2:userleds* file available. >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > Is there any way to make it *board userled file*, so >> >> >> >> >> >> >> > we >> >> can >> >> >> >> >> >> >> > use >> >> >> >> >> >> >> > it? >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > Regards, >> >> >> >> >> >> >> > Rushikesh >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > On Mon, Aug 16, 2021 at 4:19 PM Alan Carvalho de >> >> >> >> >> >> >> > Assis >> < >> >> >> >> >> >> >> acas...@gmail.com> >> >> >> >> >> >> >> > wrote: >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> Please ask this question in the mailing list, it >> >> >> >> >> >> >> >> could >> >> >> >> >> >> >> >> help >> >> >> >> >> >> >> >> other >> >> >> >> >> >> >> >> people in the future. >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> You need to have a board userleds file that will >> >> >> >> >> >> >> >> map >> >> >> >> >> >> >> >> the >> >> >> >> >> >> >> >> LEDs >> >> >> >> >> >> >> >> and >> >> >> >> >> >> >> >> will create the /dev/userleds. >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> BR, >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Alan >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> On 8/16/21, rushi ghatkar <rushighatka...@gmail.com> >> >> >> >> >> >> >> >> wrote: >> >> >> >> >> >> >> >> > On Mon, Aug 16, 2021 at 2:42 PM rushi ghatkar >> >> >> >> >> >> >> >> > <rushighatka...@gmail.com> >> >> >> >> >> >> >> >> > wrote: >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> Hi, >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> I have tried the built-in LED driver in >> >> >> >> >> >> >> >> >> menuconfig, >> >> >> >> >> Application >> >> >> >> >> >> >> >> >> Configuration -> Examples -> LED driver example. >> >> >> >> >> >> >> >> >> But when I run that driver using picocom,it shows >> >> >> >> >> >> >> >> >> error, >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Builtin Apps: >> >> >> >> >> >> >> >> >> leds sh hello nsh >> >> >> >> >> >> >> >> >> nsh> leds >> >> >> >> >> >> >> >> >> leds_main: Starting the led_daemon >> >> >> >> >> >> >> >> >> leds_main: led_daemon started >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> led_daemon (pid# 3): Running >> >> >> >> >> >> >> >> >> led_daemon: Opening /dev/userleds >> >> >> >> >> >> >> >> >> led_daemon: ERROR: Failed to open /dev/userleds: >> >> >> >> >> >> >> >> >> 2 >> >> >> >> >> >> >> >> >> led_daemon: Terminating >> >> >> >> >> >> >> >> >> nsh> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Please find the error image attachment. >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> In menuconfig I have selected, >> >> >> >> >> >> >> >> >> Board Configuration -> Board LED status report. >> >> >> >> >> >> >> >> >> Device Driver -> LED support -> LED driver -> >> >> >> >> >> >> >> >> >> Generic >> >> >> >> >> >> >> >> >> Lower >> >> >> >> >> Half >> >> >> >> >> >> >> >> >> LED >> >> >> >> >> >> >> >> >> Driver >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Why is it still showing the error? >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Regards, >> >> >> >> >> >> >> >> >> Rushikesh >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> On Fri, Aug 13, 2021 at 5:57 PM rushi ghatkar >> >> >> >> >> >> >> >> >> <rushighatka...@gmail.com >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> wrote: >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >>> Hi Alan sir, >> >> >> >> >> >> >> >> >>> >> >> >> >> >> >> >> >> >>> Thank you for the clarification. >> >> >> >> >> >> >> >> >>> >> >> >> >> >> >> >> >> >>> >> >> >> >> >> >> >> >> >>> Regards, >> >> >> >> >> >> >> >> >>> Rushikesh >> >> >> >> >> >> >> >> >>> >> >> >> >> >> >> >> >> >>> >> >> >> >> >> >> >> >> >>> >> >> >> >> >> >> >> >> >>> On Fri, Aug 13, 2021 at 5:34 PM Alan Carvalho de >> >> Assis >> >> >> >> >> >> >> >> >>> <acas...@gmail.com> >> >> >> >> >> >> >> >> >>> wrote: >> >> >> >> >> >> >> >> >>> >> >> >> >> >> >> >> >> >>>> What do you mean by "try to make driver into >> >> >> >> >> >> >> >> >>>> app" >> >> >> >> >> >> >> >> >>>> ? >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >>>> Drivers need to be created on nuttx/drivers, >> >> >> >> >> >> >> >> >>>> not >> >> >> >> >> >> >> >> >>>> at >> >> >> >> >> >> >> >> >>>> apps/. >> >> >> >> >> >> >> >> >>>> Also >> >> >> >> >> >> >> >> >>>> you >> >> >> >> >> >> >> >> >>>> cannot call a driver function directly from >> apps/, >> >> it >> >> >> is >> >> >> >> >> >> >> >> >>>> a >> >> >> >> >> >> >> violation >> >> >> >> >> >> >> >> >>>> of the OS abstraction. >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >>>> Your application needs to open the >> /dev/yourdriver >> >> to >> >> >> >> >> >> >> >> >>>> read/write >> >> >> >> >> >> >> >> >>>> from/to your driver. >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >>>> BR, >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >>>> Alan >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >>>> On 8/13/21, rushi ghatkar >> >> >> >> >> >> >> >> >>>> <rushighatka...@gmail.com >> >> > >> >> >> >> wrote: >> >> >> >> >> >> >> >> >>>> > Hi @Alan & @Frank sir, >> >> >> >> >> >> >> >> >>>> > >> >> >> >> >> >> >> >> >>>> > I was also thinking the same, first check for >> >> >> >> >> >> >> >> >>>> > the >> >> >> >> drivers >> >> >> >> >> >> >> >> >>>> > I >> >> >> >> >> >> >> >> >>>> > need >> >> >> >> >> >> >> >> >>>> > and >> >> >> >> >> >> >> >> >>>> then >> >> >> >> >> >> >> >> >>>> > copy it and the change as per my needs. >> >> >> >> >> >> >> >> >>>> > Then change Makefiles, Make.defs, and >> >> >> >> >> >> >> >> >>>> > Kconfigs >> >> >> files >> >> >> >> to >> >> >> >> >> >> >> >> >>>> > make >> >> >> >> >> >> >> the >> >> >> >> >> >> >> >> >>>> driver >> >> >> >> >> >> >> >> >>>> > include. >> >> >> >> >> >> >> >> >>>> > Then make them an app to run on picocom. >> >> >> >> >> >> >> >> >>>> > >> >> >> >> >> >> >> >> >>>> > Will try to change driver as per need and try >> to >> >> >> >> >> >> >> >> >>>> > make >> >> >> >> >> driver >> >> >> >> >> >> >> >> >>>> > into >> >> >> >> >> >> >> >> app >> >> >> >> >> >> >> >> >>>> to >> >> >> >> >> >> >> >> >>>> > get it run on picocom. >> >> >> >> >> >> >> >> >>>> > >> >> >> >> >> >> >> >> >>>> > Thanks for the information. >> >> >> >> >> >> >> >> >>>> > >> >> >> >> >> >> >> >> >>>> > >> >> >> >> >> >> >> >> >>>> > Thanks & Regards, >> >> >> >> >> >> >> >> >>>> > Rushikesh Ghatkar >> >> >> >> >> >> >> >> >>>> > >> >> >> >> >> >> >> >> >>>> > On Fri, Aug 13, 2021 at 5:11 PM >> >> >> >> >> >> >> >> >>>> > Frank-Christian >> >> >> >> >> >> >> >> >>>> > Kruegel >> >> >> >> < >> >> >> >> >> >> >> >> >>>> nu...@istda.com> >> >> >> >> >> >> >> >> >>>> > wrote: >> >> >> >> >> >> >> >> >>>> > >> >> >> >> >> >> >> >> >>>> >> Am 13.08.2021 um 10:43 schrieb rushi >> >> >> >> >> >> >> >> >>>> >> ghatkar: >> >> >> >> >> >> >> >> >>>> >> > Hi, >> >> >> >> >> >> >> >> >>>> >> > >> >> >> >> >> >> >> >> >>>> >> > I have configured and installed Nuttx rtos >> on >> >> >> >> >> >> >> >> >>>> >> > the >> >> >> >> >> >> >> >> >>>> >> > Nucleo-H743zi2 >> >> >> >> >> >> >> >> >>>> board. >> >> >> >> >> >> >> >> >>>> >> > >> >> >> >> >> >> >> >> >>>> >> > Now I want to create my own driver. How to >> >> >> >> >> >> >> >> >>>> >> > create >> >> >> >> >> >> >> >> >>>> >> > our >> >> >> >> >> own >> >> >> >> >> >> >> >> >>>> >> > driver? >> >> >> >> >> >> >> >> >>>> >> > >> >> >> >> >> >> >> >> >>>> >> > Has anyone created their own driver using >> >> >> >> >> >> >> >> >>>> >> > Nuttx >> >> >> >> >> >> >> >> >>>> >> > rtos >> >> >> >> >> >> >> >> >>>> >> > on >> >> >> >> >> >> >> >> >>>> >> > the >> >> >> >> >> >> >> >> >>>> >> > STM32 >> >> >> >> >> >> >> >> >>>> >> > board? >> >> >> >> >> >> >> >> >>>> >> > >> >> >> >> >> >> >> >> >>>> >> > Could anybody please tell me how to start? >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >> >>>> >> Been there, done that. >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >> >>>> >> The best starting point is to look for a >> >> >> >> >> >> >> >> >>>> >> similar >> >> >> >> driver. >> >> >> >> >> >> >> >> >>>> >> I >> >> >> >> >> >> >> needed >> >> >> >> >> >> >> >> >>>> >> drivers for ADC and DAC chips with I2C >> >> >> >> >> >> >> >> >>>> >> interface, >> >> >> >> >> >> >> >> >>>> >> so >> >> >> >> >> >> >> >> >>>> >> I >> >> >> >> >> >> >> >> >>>> >> looked >> >> >> >> >> >> >> for >> >> >> >> >> >> >> >> >>>> those >> >> >> >> >> >> >> >> >>>> >> drivers, copied one and changed it according >> to >> >> my >> >> >> >> >> >> >> >> >>>> >> needs. >> >> >> >> >> >> Then >> >> >> >> >> >> >> >> >>>> >> I >> >> >> >> >> >> >> >> >>>> looked >> >> >> >> >> >> >> >> >>>> >> into Makefiles, Make.defs, and Kconfigs, how >> >> these >> >> >> >> >> >> >> >> >>>> >> drivers >> >> >> >> >> >> >> >> >>>> >> were >> >> >> >> >> >> >> >> >>>> included >> >> >> >> >> >> >> >> >>>> >> an included mine in the same manner. >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >> >>>> >> The build system with make menuconfig, >> >> >> >> >> >> >> >> >>>> >> Makefiles >> >> >> >> >> >> >> >> >>>> >> and >> >> >> >> >> >> >> >> >>>> >> Kconfigs >> >> >> >> >> >> >> >> >>>> >> is >> >> >> >> >> >> >> >> the >> >> >> >> >> >> >> >> >>>> >> same as for the Linux kernel. Since your >> >> >> >> >> >> >> >> >>>> >> development >> >> >> >> >> >> >> >> >>>> >> platform >> >> >> >> >> >> >> >> >>>> >> is >> >> >> >> >> >> >> >> >>>> >> Linux >> >> >> >> >> >> >> >> >>>> >> anyways (this is the strongly recommended >> >> >> >> >> >> >> >> >>>> >> default >> >> >> >> >> platform) >> >> >> >> >> >> >> >> >>>> >> you >> >> >> >> >> >> >> >> >>>> >> should >> >> >> >> >> >> >> >> >>>> >> already have plenty of Linux experience and >> >> >> >> >> >> >> >> >>>> >> know >> >> >> >> >> >> >> >> >>>> >> how >> >> >> >> >> >> >> >> >>>> >> to >> >> >> >> >> >> >> customize >> >> >> >> >> >> >> >> an >> >> >> >> >> >> >> >> >>>> >> Linux kernel, how to use Makefiles and gcc >> >> >> >> >> >> >> >> >>>> >> and >> >> gdb >> >> >> >> >> >> >> >> >>>> >> and >> >> >> >> >> >> >> >> >>>> >> binutils. >> >> >> >> >> >> >> >> >>>> >> If >> >> >> >> >> >> >> >> >>>> you >> >> >> >> >> >> >> >> >>>> >> know Linux well the step to NuttX is not so >> big >> >> >> >> >> >> >> >> >>>> >> any >> >> >> >> >> >> >> >> >>>> >> more. >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >> >>>> >> I started a year ago, and it took me two >> months >> >> to >> >> >> >> >> >> >> >> >>>> >> get >> >> >> >> >> >> started >> >> >> >> >> >> >> >> >>>> >> with >> >> >> >> >> >> >> >> >>>> own >> >> >> >> >> >> >> >> >>>> >> hardware and own drivers (ok, with Linux >> >> >> >> >> >> >> >> >>>> >> experience >> >> >> >> >> >> >> >> >>>> >> since >> >> >> >> >> >> 1993 >> >> >> >> >> >> >> >> >>>> >> and >> >> >> >> >> >> >> >> >>>> UNIX >> >> >> >> >> >> >> >> >>>> >> experience since 1989). >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >> >>>> >> Frank-Christian >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >> >>>> > >> >> >> >> >> >> >> >> >>>> >> >> >> >> >> >> >> >> >>> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> > >> >> >> >> >> > >> >> >> > >> >