Date   
RFC: removing eeprom_slave as driver in Zephyr

Peter A. Bigot
 

The eeprom_slave driver accessed under CONFIG_I2C_EEPROM_SLAVE implements the I2C follower (slave) driver API. This device isn't an actual hardware driver: it's a virtual EEPROM that stores data in an instance-specific RAM buffer, with the data exposed on an I2C bus as a I2C follower device that can be controlled by another device acting as a leader (master) on that same bus.

As such it's a reasonable example of how to write an I2C follower driver, but it's not clear that it has a real use in applications: the sole in-tree reference is in the i2c_slave_api test.

Unless this driver has real-world applications I intend to move this from the drivers directory into the source directory for the test that uses it.  Consequently CONFIG_I2C_EEPROM_SLAVE and the device it provided will no longer be supported.

If you have a use for this driver or other concerns about this please comment at: https://github.com/zephyrproject-rtos/zephyr/issues/27303

Peter

Zephyr Project: APIs - Tue, 08/04/2020 4:00pm-5:00pm, Please RSVP #cal-reminder

devel@lists.zephyrproject.org Calendar <devel@...>
 

Reminder: Zephyr Project: APIs

When: Tuesday, 4 August 2020, 4:00pm to 5:00pm, (GMT+00:00) UTC

Where:Microsoft Teams Meeting

An RSVP is requested. Click here to RSVP

Organizer: devel@...

Description:

Meeting decisions/discussions in their respective PRs, tracked here: https://github.com/zephyrproject-rtos/zephyr/projects/18


________________________________________________________________________________
+1 321-558-6518 United States, Orlando (Toll)
Conference ID: 317 990 129#
Local numbers | Reset PIN | Learn more about Teams | Meeting options
 
 
________________________________________________________________________________

Re: LVGL support and more examples

Carles Cufi
 

Hi there,

 

LVGL has been updated to version 7 in master:

https://github.com/zephyrproject-rtos/zephyr/pull/26982

 

Changing the display driver is done in Kconfig (and I assume Devicetree):

 

https://github.com/zephyrproject-rtos/zephyr/blob/master/drivers/display/Kconfig

 

Carles

 

 

From: devel@... <devel@...> On Behalf Of lazar.chervenkov via lists.zephyrproject.org
Sent: 04 August 2020 14:27
To: devel@...
Subject: [Zephyr-devel] LVGL support and more examples

 

Hi there,

I've been using LVGL for creating GUIs together with Nordic nRF5 SDK. I have to move to nRF Connect SDK for developing with nRF53 (which is actually based on Zephyr project). I'm quite new to Zephyr and I opened the LVGL example for nRF52840. But I'm using a different display driver and I cannot find a way how to change it. The information in the documentation is quite poor for this topic. Is there a plan to also move to LVGL version 7, as the one that is used now is version 6. 

Many thanks!

API meeting: agenda

Carles Cufi
 

LVGL support and more examples

lazar.chervenkov@...
 

Hi there,

I've been using LVGL for creating GUIs together with Nordic nRF5 SDK. I have to move to nRF Connect SDK for developing with nRF53 (which is actually based on Zephyr project). I'm quite new to Zephyr and I opened the LVGL example for nRF52840. But I'm using a different display driver and I cannot find a way how to change it. The information in the documentation is quite poor for this topic. Is there a plan to also move to LVGL version 7, as the one that is used now is version 6. 

Many thanks!

Network forum agenda

Jukka Rissanen
 

Hi all,

There is a network forum meeting today 4 Aug at 8AM PDT / 17.00 CET.

Agenda:

- Making the new TCP stack the default. See
https://github.com/zephyrproject-rtos/zephyr/pull/27208 for details.

- Network stack testing. Maxwell Pro license just expired, any
volunteers to start using it. Discussion how to do network testing in
the future.

If you have anything else you want to discuss, please let me know.

Link to the Teams meeting:

https://teams.microsoft.com/l/meetup-join/19%3ameeting_NDU5ODRkNzktZDBmNC00MDg5LWI2OWEtNzM0MGZjMDU0Yjgw%40thread.v2/0?context=%7b%22Tid%22%3a%22af0096d9-700c-411a-b795-b3dd7122bad2%22%2c%22Oid%22%3a%22841a7c92-7816-4faf-9887-5e334e88f6d8%22%7d


Cheers,
Jukka

Re: Adding support for Nordic PDM Driver in Devicetree #pdm #driver #nrf52832

Bolivar, Marti
 

"Frederik David Damsgaard Popp via lists.zephyrproject.org"
<frdm=demant.com@...> writes:

Hi Martí

Thank you for your detailed answer! This was a great help
You're welcome!





Strictly speaking, actual drivers -- as in drivers/subsystem/my_driver.c
files -- are enabled using Kconfig, not devicetree. So
CONFIG_MY_DRIVER=y in Kconfig means "enable my driver," which means
something like "compile my_driver.c."


I think I get it now. The dts must specify whether or not the PDM hardware is available on the given board, and if so, what pins etc.
The Kconfig are used to enable the driver to use for the application,
and the CMakeLists includes the correct sources, based on whether the
implementation should be either nrfx or some other implementation.
Correct.





config MY_AUDIO_DRIVER
bool
default $(dt_compat_enabled,$(DT_COMPAT_NORDIC_NRF_PDM))
help
Enable my audio driver.

It looks like someone already prepared the setup for a PDM driver, since the SOC Kconfig defines a HAS_HW_NRF_PDM, which means I could depend on that?
I tried something like this:

config PDM_NRFX
bool "nRF PDM nrfx driver"
default y
depends on HAS_HW_NRF_PDM
select NRFX_PDM
help
Enable support for nrfx Hardware PDM driver for nRF52 MCU series.

Totally based off of the PWM Kconfig, but it should work right?
Those HAS_HW_NRF_* options are slated for removal at some point:

https://github.com/zephyrproject-rtos/zephyr/issues/8481

It would be better not to add more uses of them, especially if this work
is going upstream.





It looks like there is already a dts/bindings/audio/nordic,nrf-pdm.yaml
file, though, so it doesn't seem like you need to define your own
binding. I didn't find any drivers for it in the upstream tree, though.

I took a look at the pwm_nrfx driver, which seems to act as a sort of wrapper for the nrfx_pwm driver in the Nordic HAL module.
I assume that I would have to do something similar, as there already
is a pdm driver in the Nordic HAL module?
That is the "shim driver" approach, yes. It's a perfectly valid way of
doing things in Zephyr.

This way I would take an already implemented PDM driver for Nordic chipsets (such as the nRF52832 on the Nordic Thingy 52), and incorporate it into the Zephyr system, and making it hardware agnostic.
The remaining thing to do, is then modify the devicetree for the Nordic devices that actually have PDM hardware, so that the driver can be used for these boards.

Again, I'm working this stuff out as I go, and this is the method I found so far, but I think it makes sense.
I would love to hear your (or anyone else with some knowledge on this)
input, to make sure I'm on the right path.
At least the nRF5340 and nRF9160 SoC DTSI files have pdm nodes defined.
If you need to add them for other SoCs, the existing definitions may be
a good starting point.

Martí


Best
Frederik

Re: Sharing a driver between similar devices

Bolivar, Marti
 

Michael Hope <michaelh@...> writes:

On Fri, 24 Jul 2020 at 22:06, Bolivar, Marti <Marti.Bolivar@...>
wrote:

Hi Michael,

"Michael Hope via lists.zephyrproject.org"
<michaelh=juju.nz@...> writes:

Hi there. I'm porting Zephyr to the Arduino Nano 33 IOT. The board has
a
LSM6DS3 IMU which is very similar to the LSM6DSL that's already supported
by Zephyr and I'd like to re-use it.

I've refactored [1] the lsm6dsl driver to be multi-instance. What's the
best way of then using the same driver for two different compats? The
best
I've come up with is [2] but that has name collision issues.
Have you tried to set some state in the config structure based on the
value of DT_NODE_HAS_COMPAT(DT_DRV_INST(your_instance_number),
some_compat)?
That sounds good.

The second part of the problem is iterating over both the lsm6dsl and
lsm6ds3 types. Doing two DT_INST_FOREACH_STATUS_OKAY(fn), one for each
compat, can give name collisions. Any ideas?
Could you please describe the collisions in more detail? I checked the
patch in your footnote [2] below but I'm not seeing the issue, sorry.

Taking a guess, though, if there's an issue with naming a global
variable for a device config or data field within the "fn" expansion,
perhaps pasting DT_DRV_COMPAT onto the relevant variable names using the
## preprocessor operator is a fix?

Thanks,
Martí


-- Michael



Note that the chips also have a different WHO_AM_I value, so need very
slightly different configuration.
E.g. setting the WHO_AM_I in your config struct based on this, and using
that in your init functions to disambiguate.


[1]: https://github.com/zephyrproject-rtos/zephyr/pull/27064
[2]:
https://github.com/zephyrproject-rtos/zephyr/commit/cd65c39b3eeaa0d21ba90c30b13e4ca2952a6723

-- Michael
Thanks,
Martí


Updated Latest Progress Error....[Zephyr-devel] Python Interpreter for Zephyr

Muhammad Muh <muhammad.muh83@...>
 

Dear Maureen and Jrosenth, 

Now when I run the "make" command for the  python Blinky example, I got the following error. Request to please advise.

make BOARD=nrf52840dk_nrf52840

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

mkdir -p outdir/nrf52840dk_nrf52840 && cmake -DBOARD=nrf52840dk_nrf52840 -Boutdir/nrf52840dk_nrf52840 -H.

Including boilerplate (Zephyr workspace): /home/muhammad/zephyrproject/zephyr/cmake/app/boilerplate.cmake

-- Application: /home/muhammad/zephyrproject/micropython/ports/zephyr

-- Zephyr version: 2.3.99 (/home/muhammad/zephyrproject/zephyr)

-- Found Python3: /usr/bin/python3.7 (found suitable exact version "3.7.5") found components: Interpreter

-- Board: nrf52840dk_nrf52840

ZEPHYR_TOOLCHAIN_VARIANT not set, trying to locate Zephyr SDK

-- Found toolchain: zephyr (/home/muhammad/zephyr-sdk-0.11.3riz)

-- Found west: /home/muhammad/.local/bin/west (found suitable version "0.7.2", minimum required is "0.7.1")

-- Found dtc: /home/muhammad/zephyr-sdk-0.11.3riz/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.5.0", minimum required is "1.4.6")

-- Found BOARD.dts: /home/muhammad/zephyrproject/zephyr/boards/arm/nrf52840dk_nrf52840/nrf52840dk_nrf52840.dts

-- Generated zephyr.dts: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/zephyr.dts

-- Generated devicetree_unfixed.h: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/include/generated/devicetree_unfixed.h

Parsing /home/muhammad/zephyrproject/zephyr/Kconfig

Loaded configuration '/home/muhammad/zephyrproject/zephyr/boards/arm/nrf52840dk_nrf52840/nrf52840dk_nrf52840_defconfig'

Merged configuration '/home/muhammad/zephyrproject/micropython/ports/zephyr/prj.conf'

Configuration saved to '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/.config'

Kconfig header saved to '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/include/generated/autoconf.h'


warning: TEST_RANDOM_GENERATOR (defined at subsys/random/Kconfig:8) was assigned the value 'y' but

got the value 'n'. Check these unsatisfied dependencies: (!ENTROPY_HAS_DRIVER) (=n). See

http://docs.zephyrproject.org/latest/reference/kconfig/CONFIG_TEST_RANDOM_GENERATOR.html and/or look

up TEST_RANDOM_GENERATOR in the menuconfig/guiconfig interface. The Application Development Primer,

Setting Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be

helpful too.


-- The C compiler identification is GNU 9.2.0

-- The CXX compiler identification is GNU 9.2.0

-- The ASM compiler identification is GNU

-- Found assembler: /home/muhammad/zephyr-sdk-0.11.3riz/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc

-- Cache files will be written to: /home/muhammad/.cache/zephyr

-- Configuring done

-- Generating done

-- Build files have been written to: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840

make --no-print-directory -C outdir/nrf52840dk_nrf52840 outputexports CMAKE_COMMAND=: >outdir/nrf52840dk_nrf52840/Makefile.export

make -C outdir/nrf52840dk_nrf52840 syscall_list_h_target kobj_types_h_target

make[1]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[3]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target parse_syscalls_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 25%] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 50%] Built target parse_syscalls_target

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target syscall_list_h_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 75%] Generating include/generated/syscall_dispatch.c, include/generated/syscall_list.h

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Built target syscall_list_h_target

make[3]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[3]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 66%] Built target parse_syscalls_target

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target kobj_types_h_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Generating include/generated/kobj-types-enum.h, include/generated/otype-to-str.h

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Built target kobj_types_h_target

make[3]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[1]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

CC ../../py/mpstate.c

CC ../../py/nlr.c

CC ../../py/nlrx86.c

CC ../../py/nlrx64.c

CC ../../py/nlrthumb.c

CC ../../py/nlrpowerpc.c

CC ../../py/nlrxtensa.c

CC ../../py/nlrsetjmp.c

CC ../../py/malloc.c

CC ../../py/gc.c

CC ../../py/pystack.c

CC ../../py/qstr.c

CC ../../py/vstr.c

CC ../../py/mpprint.c

CC ../../py/unicode.c

CC ../../py/mpz.c

CC ../../py/reader.c

CC ../../py/lexer.c

CC ../../py/parse.c

CC ../../py/scope.c

CC ../../py/compile.c

CC ../../py/emitcommon.c

CC ../../py/emitbc.c

CC ../../py/asmbase.c

CC ../../py/asmx64.c

CC ../../py/emitnx64.c

CC ../../py/asmx86.c

CC ../../py/emitnx86.c

CC ../../py/asmthumb.c

CC ../../py/emitnthumb.c

CC ../../py/emitinlinethumb.c

CC ../../py/asmarm.c

CC ../../py/emitnarm.c

CC ../../py/asmxtensa.c

CC ../../py/emitnxtensa.c

CC ../../py/emitinlinextensa.c

CC ../../py/emitnxtensawin.c

CC ../../py/formatfloat.c

CC ../../py/parsenumbase.c

CC ../../py/parsenum.c

CC ../../py/emitglue.c

CC ../../py/persistentcode.c

CC ../../py/runtime.c

CC ../../py/runtime_utils.c

CC ../../py/scheduler.c

CC ../../py/nativeglue.c

CC ../../py/pairheap.c

CC ../../py/ringbuf.c

CC ../../py/stackctrl.c

CC ../../py/argcheck.c

CC ../../py/warning.c

CC ../../py/profile.c

CC ../../py/map.c

CC ../../py/obj.c

CC ../../py/objarray.c

CC ../../py/objattrtuple.c

CC ../../py/objbool.c

CC ../../py/objboundmeth.c

CC ../../py/objcell.c

CC ../../py/objclosure.c

CC ../../py/objcomplex.c

CC ../../py/objdeque.c

CC ../../py/objdict.c

CC ../../py/objenumerate.c

CC ../../py/objexcept.c

CC ../../py/objfilter.c

CC ../../py/objfloat.c

CC ../../py/objfun.c

CC ../../py/objgenerator.c

CC ../../py/objgetitemiter.c

CC ../../py/objint.c

CC ../../py/objint_longlong.c

CC ../../py/objint_mpz.c

CC ../../py/objlist.c

CC ../../py/objmap.c

CC ../../py/objmodule.c

CC ../../py/objobject.c

CC ../../py/objpolyiter.c

CC ../../py/objproperty.c

CC ../../py/objnone.c

CC ../../py/objnamedtuple.c

CC ../../py/objrange.c

CC ../../py/objreversed.c

CC ../../py/objset.c

CC ../../py/objsingleton.c

CC ../../py/objslice.c

CC ../../py/objstr.c

CC ../../py/objstrunicode.c

CC ../../py/objstringio.c

CC ../../py/objtuple.c

CC ../../py/objtype.c

CC ../../py/objzip.c

CC ../../py/opmethods.c

CC ../../py/sequence.c

CC ../../py/stream.c

CC ../../py/binary.c

CC ../../py/builtinimport.c

CC ../../py/builtinevex.c

CC ../../py/builtinhelp.c

CC ../../py/modarray.c

CC ../../py/modbuiltins.c

CC ../../py/modcollections.c

CC ../../py/modgc.c

CC ../../py/modio.c

CC ../../py/modmath.c

CC ../../py/modcmath.c

CC ../../py/modmicropython.c

CC ../../py/modstruct.c

CC ../../py/modsys.c

CC ../../py/moduerrno.c

CC ../../py/modthread.c

CC ../../py/vm.c

CC ../../py/bc.c

CC ../../py/showbc.c

CC ../../py/repl.c

CC ../../py/smallint.c

CC ../../py/frozenmod.c

CC ../../extmod/moduasyncio.c

CC ../../extmod/moductypes.c

CC ../../extmod/modujson.c

CC ../../extmod/modure.c

CC ../../extmod/moduzlib.c

CC ../../extmod/moduheapq.c

CC ../../extmod/modutimeq.c

CC ../../extmod/moduhashlib.c

CC ../../extmod/moducryptolib.c

CC ../../extmod/modubinascii.c

CC ../../extmod/virtpin.c

CC ../../extmod/machine_mem.c

CC ../../extmod/machine_pinbase.c

CC ../../extmod/machine_signal.c

CC ../../extmod/machine_pulse.c

CC ../../extmod/machine_i2c.c

CC ../../extmod/machine_spi.c

CC ../../extmod/modbluetooth.c

CC ../../extmod/modussl_axtls.c

CC ../../extmod/modussl_mbedtls.c

CC ../../extmod/modurandom.c

CC ../../extmod/moduselect.c

CC ../../extmod/moduwebsocket.c

CC ../../extmod/modwebrepl.c

CC ../../extmod/modframebuf.c

CC ../../extmod/vfs.c

CC ../../extmod/vfs_blockdev.c

CC ../../extmod/vfs_reader.c

CC ../../extmod/vfs_posix.c

CC ../../extmod/vfs_posix_file.c

CC ../../extmod/vfs_fat.c

CC ../../extmod/vfs_fat_diskio.c

CC ../../extmod/vfs_fat_file.c

CC ../../extmod/vfs_lfs.c

CC ../../extmod/utime_mphal.c

CC ../../extmod/uos_dupterm.c

CC ../../lib/embed/abort_.c

CC ../../lib/utils/printf.c

CC build/frozen.c

CC main.c

main.c: In function 'vfs_init':

main.c:108:63: error: missing binary operator before token "("

108 | #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)

| ^

make: *** [../../py/mkrules.mk:63: build/main.o] Error 1


Best Regards


From: Muhammad Muh <muhammad.muh83@...>
Sent: Monday, August 3, 2020 1:53 PM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@... <jrosenth@...>
Cc: devel@... <devel@...>
Subject: Latest Progress....[Zephyr-devel] Python Interpreter for Zephyr
 
Dear Maureen and Jrosenth,

Thank you very much for your kind help. I am using the latest version of Zephyr (as shown in bold in the following code) and also I downloaded the micropython in the Zephyr Project Folder from "git clone https://github.com/micropython/micropython.git". Now I want to run a blink led example to test the Micropython functionality by using the example given in the link "https://github.com/micropython/micropython/tree/master/ports/zephyr". When I run the "make" command I am getting the following error as shown at the end of the following code. Please note I am using nrf52840 dk. Request to please advise.

make BOARD=nrf52840dk_nrf52840

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

mkdir -p outdir/nrf52840dk_nrf52840 && cmake -DBOARD=nrf52840dk_nrf52840 -Boutdir/nrf52840dk_nrf52840 -H.

Including boilerplate (Zephyr base): /home/muhammad/zephyrproject/zephyr/cmake/app/boilerplate.cmake

-- Application: /home/muhammad/zephyrproject/micropython/ports/zephyr

-- Zephyr version: 2.3.99 (/home/muhammad/zephyrproject/zephyr)

-- Found Python3: /usr/bin/python3.7 (found suitable exact version "3.7.5") found components: Interpreter

-- Board: nrf52840dk_nrf52840

-- Found toolchain: zephyr (/home/muhammad/zephyr-sdk-0.11.3)

-- Found west: /home/muhammad/.local/bin/west (found suitable version "0.7.2", minimum required is "0.7.1")

-- Found dtc: /home/muhammad/zephyr-sdk-0.11.3/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.5.0", minimum required is "1.4.6")

-- Found BOARD.dts: /home/muhammad/zephyrproject/zephyr/boards/arm/nrf52840dk_nrf52840/nrf52840dk_nrf52840.dts

-- Generated zephyr.dts: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/zephyr.dts

-- Generated devicetree_unfixed.h: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/include/generated/devicetree_unfixed.h

Parsing /home/muhammad/zephyrproject/zephyr/Kconfig

Loaded configuration '/home/muhammad/zephyrproject/zephyr/boards/arm/nrf52840dk_nrf52840/nrf52840dk_nrf52840_defconfig'

Merged configuration '/home/muhammad/zephyrproject/micropython/ports/zephyr/prj.conf'

Configuration saved to '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/.config'

Kconfig header saved to '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/include/generated/autoconf.h'


warning: TEST_RANDOM_GENERATOR (defined at subsys/random/Kconfig:8) was assigned the value 'y' but

got the value 'n'. Check these unsatisfied dependencies: (!ENTROPY_HAS_DRIVER) (=n). See

http://docs.zephyrproject.org/latest/reference/kconfig/CONFIG_TEST_RANDOM_GENERATOR.html and/or look

up TEST_RANDOM_GENERATOR in the menuconfig/guiconfig interface. The Application Development Primer,

Setting Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be

helpful too.


-- The C compiler identification is GNU 9.2.0

-- The CXX compiler identification is GNU 9.2.0

-- The ASM compiler identification is GNU

-- Found assembler: /home/muhammad/zephyr-sdk-0.11.3/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc

-- Cache files will be written to: /home/muhammad/.cache/zephyr

-- Configuring done

-- Generating done

-- Build files have been written to: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840

make --no-print-directory -C outdir/nrf52840dk_nrf52840 outputexports CMAKE_COMMAND=: >outdir/nrf52840dk_nrf52840/Makefile.export

make -C outdir/nrf52840dk_nrf52840 syscall_list_h_target kobj_types_h_target

make[1]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[3]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target parse_syscalls_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 25%] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 50%] Built target parse_syscalls_target

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target syscall_list_h_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 75%] Generating include/generated/syscall_dispatch.c, include/generated/syscall_list.h

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Built target syscall_list_h_target

make[3]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[3]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 66%] Built target parse_syscalls_target

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target kobj_types_h_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Generating include/generated/kobj-types-enum.h, include/generated/otype-to-str.h

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Built target kobj_types_h_target

make[3]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[1]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

GEN build/genhdr/qstr.i.last

main.c:108:63: error: missing binary operator before token "("

108 | #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)

| ^

make: *** [../../py/mkrules.mk:89: build/genhdr/qstr.i.last] Error 1

make: *** Deleting file 'build/genhdr/qstr.i.last'



Best Regards





From: Muhammad Muh <muhammad.muh83@...>
Sent: Monday, August 3, 2020 10:11 AM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@... <jrosenth@...>
Cc: devel@... <devel@...>
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr
 
Dear Maureen,

Thank you very much for your response. I have installed the latest Zephyr version from the Zephyr Projects webpage. It is requested to guide me as how to run the sample Micropython program given in the following link.

Best Regards


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Friday, July 31, 2020 12:25 AM
To: Muhammad Muh <muhammad.muh83@...>; jrosenth@... <jrosenth@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr
 

Hi Muhammad,

Please use the Zephyr 2.3.0 release with MicroPython instead of Zephyr master.

 

Maureen

 

From: Muhammad Muh <muhammad.muh83@...>
Sent: Wednesday, July 29, 2020 11:49 PM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@...
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

Hi Maureen and Jrosenth,

 

Thank you for your kind response to my question. I have downloaded the Micropython from the given link. Now I have followed the steps given in the Read Me file given in micropython-master/ports/zephyr, I am getting the following errors, request to please help me in resolving this issue. Thank you.

 

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

GEN build/genhdr/qstr.i.last

main.c:108:63: error: missing binary operator before token "("

  108 |     #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)

      |                                                               ^

make: *** [../../py/mkrules.mk:89: build/genhdr/qstr.i.last] Error 1

make: *** Deleting file 'build/genhdr/qstr.i.last'

 

Best Regards

 

 

 


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Wednesday, July 29, 2020 4:06 AM
To: jrosenth@... <jrosenth@...>; Muhammad Muh <muhammad.muh83@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr

 

There is already a MicroPython port for Zephyr:

https://github.com/micropython/micropython/tree/master/ports/zephyr

 

From: devel@... <devel@...> On Behalf Of Jack Rosenthal via lists.zephyrproject.org
Sent: Monday, July 27, 2020 10:24 AM
To: Muhammad Muh <muhammad.muh83@...>
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

You could try porting MicroPython to run on Zephyr if it meets your needs. Note that you're looking at a minimum of ~150KB of extra flash space usage, depending on architecture, which features you enable, etc.

 

On Mon, Jul 27, 2020 at 12:26 AM Muhammad Muh <muhammad.muh83@...> wrote:

Hi,

 

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

 

Please advice. Thank you.

 

Best Regards

 

Latest Progress....[Zephyr-devel] Python Interpreter for Zephyr

Muhammad Muh <muhammad.muh83@...>
 

Dear Maureen and Jrosenth,

Thank you very much for your kind help. I am using the latest version of Zephyr (as shown in bold in the following code) and also I downloaded the micropython in the Zephyr Project Folder from "git clone https://github.com/micropython/micropython.git". Now I want to run a blink led example to test the Micropython functionality by using the example given in the link "https://github.com/micropython/micropython/tree/master/ports/zephyr". When I run the "make" command I am getting the following error as shown at the end of the following code. Please note I am using nrf52840 dk. Request to please advise.

make BOARD=nrf52840dk_nrf52840

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

mkdir -p outdir/nrf52840dk_nrf52840 && cmake -DBOARD=nrf52840dk_nrf52840 -Boutdir/nrf52840dk_nrf52840 -H.

Including boilerplate (Zephyr base): /home/muhammad/zephyrproject/zephyr/cmake/app/boilerplate.cmake

-- Application: /home/muhammad/zephyrproject/micropython/ports/zephyr

-- Zephyr version: 2.3.99 (/home/muhammad/zephyrproject/zephyr)

-- Found Python3: /usr/bin/python3.7 (found suitable exact version "3.7.5") found components: Interpreter

-- Board: nrf52840dk_nrf52840

-- Found toolchain: zephyr (/home/muhammad/zephyr-sdk-0.11.3)

-- Found west: /home/muhammad/.local/bin/west (found suitable version "0.7.2", minimum required is "0.7.1")

-- Found dtc: /home/muhammad/zephyr-sdk-0.11.3/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.5.0", minimum required is "1.4.6")

-- Found BOARD.dts: /home/muhammad/zephyrproject/zephyr/boards/arm/nrf52840dk_nrf52840/nrf52840dk_nrf52840.dts

-- Generated zephyr.dts: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/zephyr.dts

-- Generated devicetree_unfixed.h: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/include/generated/devicetree_unfixed.h

Parsing /home/muhammad/zephyrproject/zephyr/Kconfig

Loaded configuration '/home/muhammad/zephyrproject/zephyr/boards/arm/nrf52840dk_nrf52840/nrf52840dk_nrf52840_defconfig'

Merged configuration '/home/muhammad/zephyrproject/micropython/ports/zephyr/prj.conf'

Configuration saved to '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/.config'

Kconfig header saved to '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840/zephyr/include/generated/autoconf.h'


warning: TEST_RANDOM_GENERATOR (defined at subsys/random/Kconfig:8) was assigned the value 'y' but

got the value 'n'. Check these unsatisfied dependencies: (!ENTROPY_HAS_DRIVER) (=n). See

http://docs.zephyrproject.org/latest/reference/kconfig/CONFIG_TEST_RANDOM_GENERATOR.html and/or look

up TEST_RANDOM_GENERATOR in the menuconfig/guiconfig interface. The Application Development Primer,

Setting Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be

helpful too.


-- The C compiler identification is GNU 9.2.0

-- The CXX compiler identification is GNU 9.2.0

-- The ASM compiler identification is GNU

-- Found assembler: /home/muhammad/zephyr-sdk-0.11.3/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc

-- Cache files will be written to: /home/muhammad/.cache/zephyr

-- Configuring done

-- Generating done

-- Build files have been written to: /home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840

make --no-print-directory -C outdir/nrf52840dk_nrf52840 outputexports CMAKE_COMMAND=: >outdir/nrf52840dk_nrf52840/Makefile.export

make -C outdir/nrf52840dk_nrf52840 syscall_list_h_target kobj_types_h_target

make[1]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[3]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target parse_syscalls_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 25%] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 50%] Built target parse_syscalls_target

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target syscall_list_h_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 75%] Generating include/generated/syscall_dispatch.c, include/generated/syscall_list.h

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Built target syscall_list_h_target

make[3]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[3]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[ 66%] Built target parse_syscalls_target

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Scanning dependencies of target kobj_types_h_target

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[4]: Entering directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Generating include/generated/kobj-types-enum.h, include/generated/otype-to-str.h

make[4]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

[100%] Built target kobj_types_h_target

make[3]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[2]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

make[1]: Leaving directory '/home/muhammad/zephyrproject/micropython/ports/zephyr/outdir/nrf52840dk_nrf52840'

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

GEN build/genhdr/qstr.i.last

main.c:108:63: error: missing binary operator before token "("

108 | #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)

| ^

make: *** [../../py/mkrules.mk:89: build/genhdr/qstr.i.last] Error 1

make: *** Deleting file 'build/genhdr/qstr.i.last'



Best Regards





From: Muhammad Muh <muhammad.muh83@...>
Sent: Monday, August 3, 2020 10:11 AM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@... <jrosenth@...>
Cc: devel@... <devel@...>
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr
 
Dear Maureen,

Thank you very much for your response. I have installed the latest Zephyr version from the Zephyr Projects webpage. It is requested to guide me as how to run the sample Micropython program given in the following link.

Best Regards


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Friday, July 31, 2020 12:25 AM
To: Muhammad Muh <muhammad.muh83@...>; jrosenth@... <jrosenth@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr
 

Hi Muhammad,

Please use the Zephyr 2.3.0 release with MicroPython instead of Zephyr master.

 

Maureen

 

From: Muhammad Muh <muhammad.muh83@...>
Sent: Wednesday, July 29, 2020 11:49 PM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@...
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

Hi Maureen and Jrosenth,

 

Thank you for your kind response to my question. I have downloaded the Micropython from the given link. Now I have followed the steps given in the Read Me file given in micropython-master/ports/zephyr, I am getting the following errors, request to please help me in resolving this issue. Thank you.

 

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

GEN build/genhdr/qstr.i.last

main.c:108:63: error: missing binary operator before token "("

  108 |     #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)

      |                                                               ^

make: *** [../../py/mkrules.mk:89: build/genhdr/qstr.i.last] Error 1

make: *** Deleting file 'build/genhdr/qstr.i.last'

 

Best Regards

 

 

 


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Wednesday, July 29, 2020 4:06 AM
To: jrosenth@... <jrosenth@...>; Muhammad Muh <muhammad.muh83@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr

 

There is already a MicroPython port for Zephyr:

https://github.com/micropython/micropython/tree/master/ports/zephyr

 

From: devel@... <devel@...> On Behalf Of Jack Rosenthal via lists.zephyrproject.org
Sent: Monday, July 27, 2020 10:24 AM
To: Muhammad Muh <muhammad.muh83@...>
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

You could try porting MicroPython to run on Zephyr if it meets your needs. Note that you're looking at a minimum of ~150KB of extra flash space usage, depending on architecture, which features you enable, etc.

 

On Mon, Jul 27, 2020 at 12:26 AM Muhammad Muh <muhammad.muh83@...> wrote:

Hi,

 

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

 

Please advice. Thank you.

 

Best Regards

 

Re: Python Interpreter for Zephyr

Muhammad Muh <muhammad.muh83@...>
 

Dear Maureen,

Thank you very much for your response. I have installed the latest Zephyr version from the Zephyr Projects webpage. It is requested to guide me as how to run the sample Micropython program given in the following link.

Best Regards


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Friday, July 31, 2020 12:25 AM
To: Muhammad Muh <muhammad.muh83@...>; jrosenth@... <jrosenth@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr
 

Hi Muhammad,

Please use the Zephyr 2.3.0 release with MicroPython instead of Zephyr master.

 

Maureen

 

From: Muhammad Muh <muhammad.muh83@...>
Sent: Wednesday, July 29, 2020 11:49 PM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@...
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

Hi Maureen and Jrosenth,

 

Thank you for your kind response to my question. I have downloaded the Micropython from the given link. Now I have followed the steps given in the Read Me file given in micropython-master/ports/zephyr, I am getting the following errors, request to please help me in resolving this issue. Thank you.

 

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

GEN build/genhdr/qstr.i.last

main.c:108:63: error: missing binary operator before token "("

  108 |     #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)

      |                                                               ^

make: *** [../../py/mkrules.mk:89: build/genhdr/qstr.i.last] Error 1

make: *** Deleting file 'build/genhdr/qstr.i.last'

 

Best Regards

 

 

 


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Wednesday, July 29, 2020 4:06 AM
To: jrosenth@... <jrosenth@...>; Muhammad Muh <muhammad.muh83@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr

 

There is already a MicroPython port for Zephyr:

https://github.com/micropython/micropython/tree/master/ports/zephyr

 

From: devel@... <devel@...> On Behalf Of Jack Rosenthal via lists.zephyrproject.org
Sent: Monday, July 27, 2020 10:24 AM
To: Muhammad Muh <muhammad.muh83@...>
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

You could try porting MicroPython to run on Zephyr if it meets your needs. Note that you're looking at a minimum of ~150KB of extra flash space usage, depending on architecture, which features you enable, etc.

 

On Mon, Jul 27, 2020 at 12:26 AM Muhammad Muh <muhammad.muh83@...> wrote:

Hi,

 

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

 

Please advice. Thank you.

 

Best Regards

 

Re: Python Interpreter for Zephyr

Muhammad Muh <muhammad.muh83@...>
 

Moreover, I am using nrf52840 DK.


From: Muhammad Muh <muhammad.muh83@...>
Sent: Monday, August 3, 2020 10:11 AM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@... <jrosenth@...>
Cc: devel@... <devel@...>
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr
 
Dear Maureen,

Thank you very much for your response. I have installed the latest Zephyr version from the Zephyr Projects webpage. It is requested to guide me as how to run the sample Micropython program given in the following link.

Best Regards


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Friday, July 31, 2020 12:25 AM
To: Muhammad Muh <muhammad.muh83@...>; jrosenth@... <jrosenth@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr
 

Hi Muhammad,

Please use the Zephyr 2.3.0 release with MicroPython instead of Zephyr master.

 

Maureen

 

From: Muhammad Muh <muhammad.muh83@...>
Sent: Wednesday, July 29, 2020 11:49 PM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@...
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

Hi Maureen and Jrosenth,

 

Thank you for your kind response to my question. I have downloaded the Micropython from the given link. Now I have followed the steps given in the Read Me file given in micropython-master/ports/zephyr, I am getting the following errors, request to please help me in resolving this issue. Thank you.

 

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

GEN build/genhdr/qstr.i.last

main.c:108:63: error: missing binary operator before token "("

  108 |     #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)

      |                                                               ^

make: *** [../../py/mkrules.mk:89: build/genhdr/qstr.i.last] Error 1

make: *** Deleting file 'build/genhdr/qstr.i.last'

 

Best Regards

 

 

 


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Wednesday, July 29, 2020 4:06 AM
To: jrosenth@... <jrosenth@...>; Muhammad Muh <muhammad.muh83@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr

 

There is already a MicroPython port for Zephyr:

https://github.com/micropython/micropython/tree/master/ports/zephyr

 

From: devel@... <devel@...> On Behalf Of Jack Rosenthal via lists.zephyrproject.org
Sent: Monday, July 27, 2020 10:24 AM
To: Muhammad Muh <muhammad.muh83@...>
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

You could try porting MicroPython to run on Zephyr if it meets your needs. Note that you're looking at a minimum of ~150KB of extra flash space usage, depending on architecture, which features you enable, etc.

 

On Mon, Jul 27, 2020 at 12:26 AM Muhammad Muh <muhammad.muh83@...> wrote:

Hi,

 

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

 

Please advice. Thank you.

 

Best Regards

 

Re: Overriding import whitelist

Carles Cufi
 

Hi Marcio,

 

All the details of the manifest import key and the variants it supports are documented here:

https://docs.zephyrproject.org/latest/guides/west/manifest.html#manifest-imports

 

Also, please be aware that there is a feature coming soon related to this:

https://github.com/zephyrproject-rtos/west/issues/367

 

Carles

 

From: Marcio Montenegro <mtuxpe@...>
Sent: 31 July 2020 12:20
To: lairdjm <jamie.mccrae@...>
Cc: Cufi, Carles <Carles.Cufi@...>; devel@...
Subject: Re: [Zephyr-devel] Overriding import whitelist

 

Hi Carles,

is it possible to include this import whitelist in the official kernel documentation?

Regards,

Marcio

 

On Fri, Jul 31, 2020 at 7:07 AM lairdjm <jamie.mccrae@...> wrote:

Hi Carles,

Great, that works well, thank you!

Thanks,

Jamie

 

From: Cufi, Carles <Carles.Cufi@...>
Sent: 31 July 2020 10:39
To: Jamie Mccrae <Jamie.Mccrae@...>; devel@...
Subject: RE: Overriding import whitelist

 

Hi Jamie,

 

This seems to work fine for me locally:

 

$ cat app/west.yml

manifest:

  version: 0.7

 

  projects:

    - name: ncs

      path: nrf

      url: https://github.com/nrfconnect/sdk-nrf

      import:

        name-blacklist:

          - canopennode

  self:

    path: app

 

Carles

 

From: devel@... <devel@...> On Behalf Of lairdjm via lists.zephyrproject.org
Sent: 31 July 2020 09:47
To: devel@...
Subject: [Zephyr-devel] Overriding import whitelist

 

Hi,

For our projects, we are trying to minimise the components we need to check out and download so reduce disk space, bandwidth and automated build times. The default zephyr westyml pulls in a lot of repositories we don’t need and there is the import name whitelist feature which can be used which is what we’re looking for, however it seems that according to https://docs.zephyrproject.org/latest/guides/west/manifest.html#west-manifest-ex3-1 a whitelist overrides a blacklist. For our projects, we are using the Nordic nRF connect SDK which makes use of the name whitelist feature and the nRF connect SDK repository pulls in the zephyr component – is there a way to further limit this from our project? This is from the west.yml file in that repository:

        name-whitelist:

          - canopennode

          - ci-tools

          - cmsis

          - civetweb

          - edtt

          - fatfs

          - hal_nordic

          - hal_st

          - libmetal

          - littlefs

          - loramac-node

          - lvgl

          - mbedtls

          - mipi-sys-t

          - net-tools

          - nrf_hw_models

          - open-amp

          - openthread

          - segger

          - tinycbor

          - tinycrypt

 

So for example we don’t want canopennode so is there a way we can exclude it from our west.yml file which is above the nrf repository which will then be passed down to the zephyr manifest file through the nrf manifest file, whilst overriding the nrf whitelist (our west.yml > nrf west.yml > zephyr west.yml)?

Thanks,

Jamie

Re: Overriding import whitelist

Marcio Montenegro
 

Hi Carles,
is it possible to include this import whitelist in the official kernel documentation?
Regards,
Marcio

On Fri, Jul 31, 2020 at 7:07 AM lairdjm <jamie.mccrae@...> wrote:

Hi Carles,

Great, that works well, thank you!

Thanks,

Jamie

 

From: Cufi, Carles <Carles.Cufi@...>
Sent: 31 July 2020 10:39
To: Jamie Mccrae <Jamie.Mccrae@...>; devel@...
Subject: RE: Overriding import whitelist

 

Hi Jamie,

 

This seems to work fine for me locally:

 

$ cat app/west.yml

manifest:

  version: 0.7

 

  projects:

    - name: ncs

      path: nrf

      url: https://github.com/nrfconnect/sdk-nrf

      import:

        name-blacklist:

          - canopennode

  self:

    path: app

 

Carles

 

From: devel@... <devel@...> On Behalf Of lairdjm via lists.zephyrproject.org
Sent: 31 July 2020 09:47
To: devel@...
Subject: [Zephyr-devel] Overriding import whitelist

 

Hi,

For our projects, we are trying to minimise the components we need to check out and download so reduce disk space, bandwidth and automated build times. The default zephyr westyml pulls in a lot of repositories we don’t need and there is the import name whitelist feature which can be used which is what we’re looking for, however it seems that according to https://docs.zephyrproject.org/latest/guides/west/manifest.html#west-manifest-ex3-1 a whitelist overrides a blacklist. For our projects, we are using the Nordic nRF connect SDK which makes use of the name whitelist feature and the nRF connect SDK repository pulls in the zephyr component – is there a way to further limit this from our project? This is from the west.yml file in that repository:

        name-whitelist:

          - canopennode

          - ci-tools

          - cmsis

          - civetweb

          - edtt

          - fatfs

          - hal_nordic

          - hal_st

          - libmetal

          - littlefs

          - loramac-node

          - lvgl

          - mbedtls

          - mipi-sys-t

          - net-tools

          - nrf_hw_models

          - open-amp

          - openthread

          - segger

          - tinycbor

          - tinycrypt

 

So for example we don’t want canopennode so is there a way we can exclude it from our west.yml file which is above the nrf repository which will then be passed down to the zephyr manifest file through the nrf manifest file, whilst overriding the nrf whitelist (our west.yml > nrf west.yml > zephyr west.yml)?

Thanks,

Jamie

Re: Overriding import whitelist

lairdjm
 

Hi Carles,

Great, that works well, thank you!

Thanks,

Jamie

 

From: Cufi, Carles <Carles.Cufi@...>
Sent: 31 July 2020 10:39
To: Jamie Mccrae <Jamie.Mccrae@...>; devel@...
Subject: RE: Overriding import whitelist

 

Hi Jamie,

 

This seems to work fine for me locally:

 

$ cat app/west.yml

manifest:

  version: 0.7

 

  projects:

    - name: ncs

      path: nrf

      url: https://github.com/nrfconnect/sdk-nrf

      import:

        name-blacklist:

          - canopennode

  self:

    path: app

 

Carles

 

From: devel@... <devel@...> On Behalf Of lairdjm via lists.zephyrproject.org
Sent: 31 July 2020 09:47
To: devel@...
Subject: [Zephyr-devel] Overriding import whitelist

 

Hi,

For our projects, we are trying to minimise the components we need to check out and download so reduce disk space, bandwidth and automated build times. The default zephyr westyml pulls in a lot of repositories we don’t need and there is the import name whitelist feature which can be used which is what we’re looking for, however it seems that according to https://docs.zephyrproject.org/latest/guides/west/manifest.html#west-manifest-ex3-1 a whitelist overrides a blacklist. For our projects, we are using the Nordic nRF connect SDK which makes use of the name whitelist feature and the nRF connect SDK repository pulls in the zephyr component – is there a way to further limit this from our project? This is from the west.yml file in that repository:

        name-whitelist:

          - canopennode

          - ci-tools

          - cmsis

          - civetweb

          - edtt

          - fatfs

          - hal_nordic

          - hal_st

          - libmetal

          - littlefs

          - loramac-node

          - lvgl

          - mbedtls

          - mipi-sys-t

          - net-tools

          - nrf_hw_models

          - open-amp

          - openthread

          - segger

          - tinycbor

          - tinycrypt

 

So for example we don’t want canopennode so is there a way we can exclude it from our west.yml file which is above the nrf repository which will then be passed down to the zephyr manifest file through the nrf manifest file, whilst overriding the nrf whitelist (our west.yml > nrf west.yml > zephyr west.yml)?

Thanks,

Jamie

Re: Overriding import whitelist

Carles Cufi
 

Hi Jamie,

 

This seems to work fine for me locally:

 

$ cat app/west.yml

manifest:

  version: 0.7

 

  projects:

    - name: ncs

      path: nrf

      url: https://github.com/nrfconnect/sdk-nrf

      import:

        name-blacklist:

          - canopennode

  self:

    path: app

 

Carles

 

From: devel@... <devel@...> On Behalf Of lairdjm via lists.zephyrproject.org
Sent: 31 July 2020 09:47
To: devel@...
Subject: [Zephyr-devel] Overriding import whitelist

 

Hi,

For our projects, we are trying to minimise the components we need to check out and download so reduce disk space, bandwidth and automated build times. The default zephyr westyml pulls in a lot of repositories we don’t need and there is the import name whitelist feature which can be used which is what we’re looking for, however it seems that according to https://docs.zephyrproject.org/latest/guides/west/manifest.html#west-manifest-ex3-1 a whitelist overrides a blacklist. For our projects, we are using the Nordic nRF connect SDK which makes use of the name whitelist feature and the nRF connect SDK repository pulls in the zephyr component – is there a way to further limit this from our project? This is from the west.yml file in that repository:

        name-whitelist:

          - canopennode

          - ci-tools

          - cmsis

          - civetweb

          - edtt

          - fatfs

          - hal_nordic

          - hal_st

          - libmetal

          - littlefs

          - loramac-node

          - lvgl

          - mbedtls

          - mipi-sys-t

          - net-tools

          - nrf_hw_models

          - open-amp

          - openthread

          - segger

          - tinycbor

          - tinycrypt

 

So for example we don’t want canopennode so is there a way we can exclude it from our west.yml file which is above the nrf repository which will then be passed down to the zephyr manifest file through the nrf manifest file, whilst overriding the nrf whitelist (our west.yml > nrf west.yml > zephyr west.yml)?

Thanks,

Jamie

Overriding import whitelist

lairdjm
 

Hi,

For our projects, we are trying to minimise the components we need to check out and download so reduce disk space, bandwidth and automated build times. The default zephyr westyml pulls in a lot of repositories we don’t need and there is the import name whitelist feature which can be used which is what we’re looking for, however it seems that according to https://docs.zephyrproject.org/latest/guides/west/manifest.html#west-manifest-ex3-1 a whitelist overrides a blacklist. For our projects, we are using the Nordic nRF connect SDK which makes use of the name whitelist feature and the nRF connect SDK repository pulls in the zephyr component – is there a way to further limit this from our project? This is from the west.yml file in that repository:

        name-whitelist:

          - canopennode

          - ci-tools

          - cmsis

          - civetweb

          - edtt

          - fatfs

          - hal_nordic

          - hal_st

          - libmetal

          - littlefs

          - loramac-node

          - lvgl

          - mbedtls

          - mipi-sys-t

          - net-tools

          - nrf_hw_models

          - open-amp

          - openthread

          - segger

          - tinycbor

          - tinycrypt

 

So for example we don’t want canopennode so is there a way we can exclude it from our west.yml file which is above the nrf repository which will then be passed down to the zephyr manifest file through the nrf manifest file, whilst overriding the nrf whitelist (our west.yml > nrf west.yml > zephyr west.yml)?

Thanks,

Jamie

Re: Python Interpreter for Zephyr

Maureen Helm
 

Hi Muhammad,

Please use the Zephyr 2.3.0 release with MicroPython instead of Zephyr master.

 

Maureen

 

From: Muhammad Muh <muhammad.muh83@...>
Sent: Wednesday, July 29, 2020 11:49 PM
To: Maureen Helm (OSS) <maureen.helm@...>; jrosenth@...
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

Hi Maureen and Jrosenth,

 

Thank you for your kind response to my question. I have downloaded the Micropython from the given link. Now I have followed the steps given in the Read Me file given in micropython-master/ports/zephyr, I am getting the following errors, request to please help me in resolving this issue. Thank you.

 

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.

Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST

GEN build/genhdr/qstr.i.last

main.c:108:63: error: missing binary operator before token "("

  108 |     #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)

      |                                                               ^

make: *** [../../py/mkrules.mk:89: build/genhdr/qstr.i.last] Error 1

make: *** Deleting file 'build/genhdr/qstr.i.last'

 

Best Regards

 

 

 


From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Wednesday, July 29, 2020 4:06 AM
To: jrosenth@... <jrosenth@...>; Muhammad Muh <muhammad.muh83@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr

 

There is already a MicroPython port for Zephyr:

https://github.com/micropython/micropython/tree/master/ports/zephyr

 

From: devel@... <devel@...> On Behalf Of Jack Rosenthal via lists.zephyrproject.org
Sent: Monday, July 27, 2020 10:24 AM
To: Muhammad Muh <muhammad.muh83@...>
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

You could try porting MicroPython to run on Zephyr if it meets your needs. Note that you're looking at a minimum of ~150KB of extra flash space usage, depending on architecture, which features you enable, etc.

 

On Mon, Jul 27, 2020 at 12:26 AM Muhammad Muh <muhammad.muh83@...> wrote:

Hi,

 

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

 

Please advice. Thank you.

 

Best Regards

 

Accepted: Zephyr Project: Dev Meeting

Gabriele Filosofi
 

Zephyr Project: Dev Meeting - Thu, 07/30/2020 3:00pm-4:00pm, Please RSVP #cal-reminder

devel@lists.zephyrproject.org Calendar <devel@...>
 

Reminder: Zephyr Project: Dev Meeting

When: Thursday, 30 July 2020, 3:00pm to 4:00pm, (GMT+00:00) UTC

Where:Microsoft Teams Meeting

An RSVP is requested. Click here to RSVP

Organizer: devel@...

Description:

________________________________________________________________________________
+1 321-558-6518 United States, Orlando (Toll)
Conference ID: 483 314 739#
Local numbers | Reset PIN | Learn more about Teams | Meeting options
 
 
________________________________________________________________________________