Date   

Re: GPIO support on nRF52840 DK

Bolivar, Marti
 

Hi,

" via Lists.Zephyrproject.Org"
<leonardomt=gmail.com@lists.zephyrproject.org> writes:

Hello everyone,

Can I access (read/write) a GPIO that is not an LED or button listed in the
"Connections and IOs" section of link below?
https://docs.zephyrproject.org/latest/boards/arm/nrf52840_pca10056/doc/index.html#push-buttons

I read in that page that "Other hardware features are not supported by the
Zephyr kernel." but (since I am a newbie in embedded devices) I am not sure
if that means that "only buttons 1 to 4 are supported and no other GPIO" or
else refers to more abstract features (e.g. Enhanced ShockBurst).
All GPIOs are supported and accessible, not just the LEDs and
buttons. This includes all GPIOs pinned out to the expansion headers.


Here's the context of my question:
I am editing the example code samples/basic/button to use a GPIO pin that
is different from BUTTON 1, 2, 3 or 4 to trigger the button_pressed
callback.

I changed
#define PIN DT_ALIAS_SW0_GPIOS_PIN
... to ...
#define PIN 33
and the callback is never called when I toggle the logical state of that
pin in the board (from ground to 3.3V nor VDD).

I am not sure if this makes sense if I am using Zephyr, but in the nRF's
SDK, GPIO P1.01 of the development board is mapped to 33:
nRF5_SDK_15/components/boards/pca10056.h
#define ARDUINO_0_PIN
I think this is likely to be a common question for beginners, so I'll
provide various details here that hopefully will be google-able for
others later :). There is a TL;DR for this specific question below.

Zephyr's GPIO API works differently than Arduino's.

Instead of a single, linear pin numbering from 0 to N-1 for all the pins
(or the D0, D1, ... "digital" and A0, A1, ... "analog" pin
macros), Zephyr identifies a GPIO with two pieces of information:

1. The GPIO "controller", which is a struct device implementing the GPIO
API. For all the gory details on the device model, see:

https://docs.zephyrproject.org/latest/reference/drivers/index.html

2. The pin number, which is specific to each controller. For example,
pin 0 on one controller is different than pin 0 on another
controller.

On nRF SoCs, there are two separate GPIO controller devices: one for the
P0.x pins, and another for the P1.x pins.

So, to use pin P1.01 in the button sample, you need to set PORT to use
the P1.x controller, and PIN to 1.

To set PORT, you need the "label" for the P1.x controller, which in this
case is DT_ALIAS_GPIO_1_LABEL.

This define is generated by device tree. See
zephyr/include/generated/generated_dts_board_unfixed.h in your build
directory for all the available defines, and
https://docs.zephyrproject.org/latest/guides/dts/index.html for more
information on DT.

It works the exact same way on other SoCs. Only the label defines from
DT vary.

TL;DR here's a patch that does what you want:

diff --git zephyr/samples/basic/button/src/main.c zephyr/samples/basic/button/src/main.c
index d55147c171..c1e94767a7 100644
--- zephyr/samples/basic/button/src/main.c
+++ zephyr/samples/basic/button/src/main.c
@@ -52,6 +52,10 @@
/* Sleep time */
#define SLEEP_TIME 500

+#undef PORT
+#undef PIN
+#define PORT DT_ALIAS_GPIO_1_LABEL
+#define PIN 1

void button_pressed(struct device *gpiob, struct gpio_callback *cb,
u32_t pins)



This is my very first question on a public list/forum ever (...as far as I
recall) so please forgive any mistakes in terms of posting rules, etc.
You did great! Your question was clear.


Thanks for your help!
Hope this helps,
Marti



#nvs can someone clarify how to traverse NVS? #nvs

Ruben Kertesz
 

I would like to use the NVS with the nrf9160 for remote logging. Specifically I don't understand how to track latest read and latest write at the same time.

I want to be able to write 5 values (time stamp and four readings) to a ring buffer in flash each time we take a measurement. I was thinking that the way to do this is to use 5 IDs and then use an index to track the latest successful read + upload. When I am connected to the internet I will read all five IDs for each measurement interval and send them to the server . The issue is that I don't want to send all of the recorded data to the server if for example the first hundred records that are stored in the ring buffer were already successfully uploaded and there are only 20 remaining measurement intervals that need to be uploaded. 

Am I going about this the wrong way? Does anybody have any expertise that they can offer in terms of how to index the saved measurements and then the traverse the index using something like a read pointer and a right pointer?

Speaking of, the point of all of this is that I know the sensor will sometimes be configured to log locally and only upload data every hour, 2 hours, 3 hours, etc. I would rather not clear out the buffer every time I upload data in the event that something else goes wrong, like data loss on the server. it's nice to be able to go to the physical device and retrieve locally logged data if needed


Zephyr SDK 0.10.3

Kumar Gala
 

Hi,

Latest version of the SDK can be found here:

https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.10.3

Please download and try things out and report any issues.

Changes since the last release:

• Fixes a Linker issue found on RISC-V.

- k


GPIO support on nRF52840 DK

Leonardo Molina <leonardomt@...>
 

Hello everyone,

Can I access (read/write) a GPIO that is not an LED or button listed in the "Connections and IOs" section of link below?

I read in that page that "Other hardware features are not supported by the Zephyr kernel." but (since I am a newbie in embedded devices) I am not sure if that means that "only buttons 1 to 4 are supported and no other GPIO" or else refers to more abstract features (e.g. Enhanced ShockBurst).

Here's the context of my question:
I am editing the example code samples/basic/button to use a GPIO pin that is different from BUTTON 1, 2, 3 or 4 to trigger the button_pressed callback.

I changed
#define PIN DT_ALIAS_SW0_GPIOS_PIN
... to ...
#define PIN 33
and the callback is never called when I toggle the logical state of that pin in the board (from ground to 3.3V nor VDD).

I am not sure if this makes sense if I am using Zephyr, but in the nRF's SDK, GPIO P1.01 of the development board is mapped to 33:
nRF5_SDK_15/components/boards/pca10056.h
#define ARDUINO_0_PIN 

This is my very first question on a public list/forum ever (...as far as I recall) so please forgive any mistakes in terms of posting rules, etc.

Thanks for your help!


Re: Retrieve Mesh Proxy Data Out #bluetoothmesh #zephyrbluetoothmesh #nrf52-pca10040

Johan Hedberg
 

Hi Paul,

On 13 Aug 2019, at 17.00, paul.leguennec@stimio.fr wrote:
I'm putting this message up, if by any chance someone have an idea or may help me.

I also tried to implement a GATT service to see if I was able to receive notifications on nrfConnect, but had no difference.

FIY the mesh message received by the proxy node is a buffer that I add retrieve using net_buf_simple_add_mem function.
You need to configure proxy filtering to tell the proxy what addresses your proxy client is interested in. See section 6, and 6.4 in particular in the Mesh Profile Specification. There are many apps that can already do this, such as meshctl from BlueZ and nRF Mesh from Nordic (available both for iOS and Android).

Johan


API meeting: agenda

Carles Cufi
 

Hi all,

This week we will look at:

Agenda:

- Sensor API: Update on progress
rtio PR: https://github.com/zephyrproject-rtos/zephyr/pull/17434

- GPIO: Update on implementation and way forward

Additional items in the "Triage" column in the GitHub project may be discussed if time permits.
If you want an item included in the meeting, please add it to the GitHub project.

https://github.com/zephyrproject-rtos/zephyr/wiki/Zephyr-Committee-and-Working-Group-Meetings#zephyr-api-discussion
https://github.com/zephyrproject-rtos/zephyr/projects/18
https://docs.google.com/document/d/1lv-8B5QE2m4FjBcvfqAXFIgQfW5oz6306zJ7GIZIWCk/edit

Regards,

Carles


Re: Retrieve Mesh Proxy Data Out #bluetoothmesh #zephyrbluetoothmesh #nrf52-pca10040

paul.leguennec@...
 

Hi,

I'm putting this message up, if by any chance someone have an idea or may help me.

I also tried to implement a GATT service to see if I was able to receive notifications on nrfConnect, but had no difference.

FIY the mesh message received by the proxy node is a buffer that I add retrieve using net_buf_simple_add_mem function.


Thanks in advance,
Paul


Re: Running Peripheral_hids app on Linux PC

Johan Hedberg
 

Hi Gopal,

On 12 Aug 2019, at 19.34, Gopal krishna Reddy <gopalkrishnareddy514@gmail.com> wrote:
I have compiled the Peripheral_hids app using the build option as native_posix and was able to generate the zephyr.exe

I have connected a CSR Bluetooth 4.0 Dongle to the Linux PC and tried to run the zephyr.exe using the below command.

sudo ./zephyr.exe --bt-dev=hci0

Output:
00:00:
00.000,000] <inf> flash_native_posix: Device flash_ctrl initialized
***** Booting Zephyr OS build zephyr-v1.14.0-3069-g513244afe251 *****
[00
:00:
00.000,000] <err> bt_hci_core: HCI driver open failed (-16)
Bluetooth init failed (err -16)
The HCI device needs to be powered down first, using e.g. “hciconfig hci0 down”. Does that help?

Johan


Running Peripheral_hids app on Linux PC

Gopal krishna Reddy <gopalkrishnareddy514@...>
 

Hi,

I have compiled the Peripheral_hids app using the build option as native_posix and was able to generate the zephyr.exe

I have connected a CSR Bluetooth 4.0 Dongle to the Linux PC and tried to run the zephyr.exe using the below command.

sudo ./zephyr.exe --bt-dev=hci0

Output:
00:00:00.000,000] <inf> flash_native_posix: Device flash_ctrl initialized ***** Booting Zephyr OS build zephyr-v1.14.0-3069-g513244afe251 ***** [00:00:00.000,000] <err> bt_hci_core: HCI driver open failed (-16) Bluetooth init failed (err -16)

I am getting the above error.

Thanks,
Gopal


Re: IDE for app development

Marco Tozzini
 

Hi Kevin,

Thanks for your reply.
Any editor recommendation?

Thanks,
Marco


On August 10, 2019 1:42:28 a.m. PDT, Kevin Townsend <kevin@...> wrote:
For debugging I generally use Ozone from Segger which is free depending on the JLink model you have. You just need to point it to the zephy.elf file.

Kevin

On Sat, 10 Aug 2019 at 05:30, Marco Tozzini <lists@...> wrote:
Hi,

Eclipse IDE is used as reference example to debug apps in Zephyr
What are the recommended IDE?

Thanks,
Marco




--
Sent from my Android device with K-9 Mail. Please excuse my brevity.


Re: IDE for app development

Kevin Townsend
 

For debugging I generally use Ozone from Segger which is free depending on the JLink model you have. You just need to point it to the zephy.elf file.

Kevin

On Sat, 10 Aug 2019 at 05:30, Marco Tozzini <lists@...> wrote:
Hi,

Eclipse IDE is used as reference example to debug apps in Zephyr
What are the recommended IDE?

Thanks,
Marco




IDE for app development

Marco Tozzini
 

Hi,

Eclipse IDE is used as reference example to debug apps in Zephyr
What are the recommended IDE?

Thanks,
Marco


West 0.6.0 is released, and required

Bolivar, Marti
 

Hello,

 

West 0.6.0 has been released and is now the minimum version which will be supported in Zephyr mainline (and thus for the 2.0 release).

 

To upgrade on Linux:

pip3 install --upgrade --user west

 

macOS and Windows:

pip3 install --upgrade west

 

Release notes are part of the documentation and are up on the latest docs pages:

https://docs.zephyrproject.org/latest/guides/west/release-notes.html

 

Thanks,

Marti

 


West flashing very large images to nrf52840

Lawrence King
 

My code has finally grown over 512k. I am programming the nrf52840_mdk board:

              BOARD=nrf52840_mdk

 

When attempting to program the nrf52840 the flash operation fails because the -t parameter emitted by west is incorrect. West flash does the following:

runners.pyocd: pyocd flash -e sector -a 0xc000 -t nrf52 <path>/build/zephyr/zephyr.bin

as you can see west sets “-t nrf52”, this works great as long as you don’t overrun the 512k of code (the nrf52832 limit) into the flash, beyond which pyocd (or nrfjprog) will complain that there is too much code.

 

West should set the -t parameter to “-t nrf52840” for nrf52840 boards.

 

Current workaround is to manually run pyocd or nrfjprog with the correct -t parameter.

 

Lawrence King

Principal Developer

Connected Transport Market Unit

https://www.Irdeto.com

+1(416)627-7302

 

1  2 - linkedin  3 - instagram  4 - youtube  6 - facebook  7

            

CONFIDENTIAL: This e-mail and any attachments are confidential and intended solely for the use of the individual(s) to whom it is addressed. It can contain proprietary confidential information and be subject to legal privilege and/or subject to a non-disclosure Agreement. Unauthorized use, disclosure or copying is strictly prohibited. If you are not the/an addressee and are in possession of this e-mail, please delete the message and notify us immediately. Please consider the environment before printing this e-mail. Thank you.

 

 

 


West flash annoyance (signed images)

Lawrence King
 

It took me a while to figure out my problem with west flash.

 

After building regular zephyr app,  you can simply call ‘west flash’, and west happily does the right thing, it gets the image passes it to the runner, the file gets flashed onto the board and it runs. All is good.

 

Then I started to build files to run under MCUBoot. West happily builds the image, and west happily signs the image when you run the right command and give it a path to the key:

$ west sign -t imgtool -- --key ~/rc-demo/mcuboot/mykey-rsa-2048.pem --version 1.2

Generating: /home/lawrence/zephyrproject/zephyr/samples/subsys/mgmt/mcumgr/smp_svr/build/zephyr/zephyr.signed.bin

Generating: /home/lawrence/zephyrproject/zephyr/samples/subsys/mgmt/mcumgr/smp_svr/build/zephyr/zephyr.signed.hex

West starts with the image file, and generates two new signed files, just as one would expect

 

Then things go bad(ish). I politely asked west to flash the signed file

              $ west flash --hex-file zephyr.signed.hex

-- west flash: rebuilding

ninja: no work to do.

-- west flash: using runner pyocd

-- runners.pyocd: Flashing Target Device

[====================] 100%

0018045:INFO:loader:Erased 131072 bytes (32 sectors), programmed 131072 bytes (32 pages), skipped 0 bytes (0 pages) at 7.46 kB/s

You would expect west to go fetch the signed file and pass it to the runner, and it sure looks like it did, there is even enough of an image signature that mcu boot thinks there is an image in the primary slot. But mcuboot says the image is not valid.

***** Booting Zephyr OS build zephyr-v1.14.0-2977-g8622c3415d2f *****

[00:00:00.004,974] <inf> mcuboot: Starting bootloader

[00:00:00.011,444] <inf> mcuboot: Primary image: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3

[00:00:00.021,392] <inf> mcuboot: Scratch: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3

[00:00:00.030,792] <inf> mcuboot: Boot source: primary slot

[00:00:00.039,855] <inf> mcuboot: Swap type: none

[00:00:00.045,013] <err> mcuboot: Image in the primary slot is not valid!

[00:00:00.052,490] <err> mcuboot: Unable to find bootable image

 

It took me the longest time to figure out that west did not do what I had expected:

$ west --verbose flash --hex-file zephyr.signed.hex

ZEPHYR_BASE=/home/lawrence/zephyrproject/zephyr (origin: env)

-- west flash: rebuilding

ninja: no work to do.

-- west flash: using runner pyocd

-- runners.pyocd: Flashing Target Device

runners.pyocd: pyocd flash -e sector -a 0xc000 -t nrf52 /home/lawrence/zephyrproject/zephyr/samples/subsys/mgmt/mcumgr/smp_svr/build/zephyr/zephyr.bin

[====================] 100%

 

Why would west send the unsigned file? Why would west send a bin file when I requested a hex file. At the very least west could complain that it couldn’t find the hex file. Instead west silently does the wrong thing.

 

The work around is:

$ west --verbose flash --hex-file build/zephyr/zephyr.signed.hex

ZEPHYR_BASE=/home/lawrence/zephyrproject/zephyr (origin: env)

-- west flash: rebuilding

ninja: no work to do.

-- west flash: using runner pyocd

-- runners.pyocd: Flashing Target Device

runners.pyocd: pyocd flash -e sector -a 0xc000 -t nrf52 build/zephyr/zephyr.signed.hex

[====================] 100%

0017210:INFO:loader:Erased 4096 bytes (1 sector), programmed 4096 bytes (1 page), skipped 126976 bytes (31 pages) at 7.92 kB/s

As you can see, the runner only had to reprogram the signature in the last page. And mcuboot happily started the image which it is running as expected.

 

In an ideal world west should know that I needed to sign the image (based on the setting “CONFIG_BOOTLOADER_MCUBOOT=y” in the prj.conf file), and should by default send the signed image to the runner. Of course west will need to know where the keys are, and determine if the code should go into the primary or secondary slot.

 

 

Lawrence King

Principal Developer

Connected Transport Market Unit

https://www.Irdeto.com

+1(416)627-7302

 

1  2 - linkedin  3 - instagram  4 - youtube  6 - facebook  7

            

CONFIDENTIAL: This e-mail and any attachments are confidential and intended solely for the use of the individual(s) to whom it is addressed. It can contain proprietary confidential information and be subject to legal privilege and/or subject to a non-disclosure Agreement. Unauthorized use, disclosure or copying is strictly prohibited. If you are not the/an addressee and are in possession of this e-mail, please delete the message and notify us immediately. Please consider the environment before printing this e-mail. Thank you.

 

 

 


Re: Cmake and DTC Version issues installing Zephyr

Lawrence King
 

Dear All:

Charles has updated the instructions on the getting started guide. I have followed these instructions carefully on a 'new' Virtual Machine'. The instructions work on Ubuntu 18.04 and 19.04 as written, at the time I tested them (Around July 31st). Of course we are in an ever evolving world, Lunix, and Zephyr are always changing so just because the instructions are currently working doesn't mean they will always work, but at this time I am satisfied that they do work as written.

Thanks to Charles for the updates to the getting started guide.

Lawrence King
Principal Developer
+1(416)627-7302

-----Original Message-----
From: Andrei Emeltchenko <andrei.emeltchenko.news@gmail.com>
Sent: Tuesday, August 6, 2019 9:26 AM
To: Lawrence King <lawrence.king@irdeto.com>
Cc: Bolivar, Marti <Marti.Bolivar@nordicsemi.no>; Zephyr-users@lists.zephyrproject.org; users@lists.zephyrproject.org
Subject: Re: [Zephyr-users] Cmake and DTC Version issues installing Zephyr

Hi All,

I was having similar issue: west was failing, probably because there were several revisions: a default one and bootstrapping one. I switched default to the same revision as bootstrapping and it did help.

$ pip3 install --user west==0.6.0

Best regards
Andrei Emeltchenko

On Thu, Jul 25, 2019 at 02:16:57PM +0000, Lawrence King wrote:
Hi Marti

Thanks you for looking at my problem report.

It turns out I am not the first person to report a version problem with DTC, tsai.eric.h@gmail.com reported the same problem 10 days ago.

I had actually done a 'west init', I just missed writing that in the
step-by-step. (see my own follow up email where I mentioned this.)

I do know how to work around the cmake (and DTC) version issues, the issue is the getting started guide doesn't tell me I need to do this.

According to the west team posts the bootstrapper has been deprecated, so I was going direct to the source rather than what is in the getting started guide.

The location of zephyr is where the 'latest' west put it. I didn't do a git clone, just west init.


In general the getting started guide needs update and (re)testing. Build a new VM with 18.04 LTS and follow the getting started guide, it won't work. But it will work fine with a 19.04 system.

Fortunately I see Charles is in the middle of updating the getting started guide so I am sure this will all be fixed in no time....

I'll try following the getting started guide again tomorrow.

Lawrence King
Principal Developer
+1(416)627-7302

-----Original Message-----
From: Bolivar, Marti <Marti.Bolivar@nordicsemi.no>
Sent: Wednesday, July 24, 2019 7:09 PM
To: Lawrence King <lawrence.king@irdeto.com>;
Zephyr-users@lists.zephyrproject.org
Cc: users@lists.zephyrproject.org
Subject: Re: [Zephyr-users] Cmake and DTC Version issues installing
Zephyr

"Lawrence King via Lists.Zephyrproject.Org"
<lawrence.king=irdeto.com@lists.zephyrproject.org> writes:

Today I wanted to ensure that my documentation on how to rebuild my code was complete and correct. I setup a new virtual machine with Ubuntu 18.04 LTS (which is the most recent LTS version available). I then install Zephyr following (mostly) the instructions in the getting started guide, followed by pulling my code from my local git and then attempting to build.

This is where things go bad.

First problem is west wants to build with cmake newer than 1.13.3,
but the 'default' cmake in 18.04 LTS is much older, I was able to
work around this by removing cmake, and installing with pip3.
Yes, Zephyr requires a recent CMake. Since you're on Ubuntu, you might want to check out the official cmake apt repository from KitWare, which does support 18.04.

https://blog.kitware.com/ubuntu-cmake-repository-now-available/


The 'latest' zephyr (actually west and cmake) insists that I need a
device tree compiler with version 1.4.6, unfortunately the latest
is version on Ubunti 18.04 is 1.4.5 (see
https://launchpad.net/ubuntu/+source/device-tree-compiler) hence I
can't build. OK, to work around this I went into
zephyr/cmake/host-tools.cmake and changed the MIN_DTC_VERSION to
1.4.5. OK, I am past this...
This isn't a west or a CMake requirement, in my opinion, but is instead a requirement based on the contents of the zephyr DTS files.

Since you're on Ubuntu, if you're building with the Zephyr SDK (which you seem to be), you should have all the host tools you need from there.
This includes a recent enough DTC.

I would not recommend manually overriding the CMake version enforcement checks for the dtc binary.


But things continue to be bad. The next issue I hit is cmake can't find the file zephyr/cmake/toolchain/zephyr/0.10.1/host-tools.cmake and when I look, sure enough the file isn't there. In fact the directory isn't there. There are directories for 0.10.0 and 0.9.5, but I installed zephyr tools 0.10.1 so I am not sure why the directory is not there, and more importantly why is cmake even looking there?.

Here is a 'step-by-step' of the process I followed after bringing up
a new Ubuntu 18.04 box:
This appears to be missing some steps. In particular, it doesn't show how you got the zephyr tree itself. Given that it's in ~/zephyr instead of something like ~/zephyrproject/zephyr, I suspect you didn't do a west init + west update. Is that the case? If so, I'd recommend trying again, but following the instructions in the getting started guide. Zephyr without west is possible, but harder to do correctly.


sudo apt-get upgrade
sudo apt-get install -y build-essential module-assistant sudo
apt-get install -y --no-install-recommends git ninja-build gperf \
ccache dfu-util device-tree-compiler wget \
python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \
make gcc gcc-multilib
sudo apt remove cmake

sudo -H pip3 install --upgrade setuptools sudo -H pip3 install
--user cmake wget
https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.10
.1
/zephyr-sdk-0.10.1-setup.run
chmod +x zephyr-sdk-0.10.1-setup.run sudo
./zephyr-sdk-0.10.1-setup.run export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
export ZEPHYR_SDK_INSTALL_DIR=/opt/zephyr-sdk
# cmake must be version 1.13.3 or better!
cmake --version

sudo -H pip3 install git+https://github.com/zephyrproject-rtos/west
west update
Out of curiosity, why are you building from the latest west master instead of running "pip3 install --user west" as recommended in the getting started documentation?


At this point I checkout my code from git and try to build, but it
fails just as well on the blinky program.
Based on the above (and the below output) it seems like you might have done "git clone https://github.com/zephyrproject-rtos/zephyr"; or similar. This leaves out all the other modules.

I also don't see any mention here of installing the python packages in zephyr's scripts/requirements.txt, which is also mentioned in the getting started guide.

Please try these steps and holler if you continue to have problems:

https://docs.zephyrproject.org/latest/getting_started/index.html

Thanks,
Marti

cd zephyr/samples/blinky
export BPOARD=nrf52840_mdk
west -v build

Here is the output:
lawrence@Bob:~/zephyr/samples/basic/blinky$ west -v build
ZEPHYR_BASE=/home/lawrence/zephyr (origin: configfile) source
directory: /home/lawrence/zephyr/samples/basic/blinky
build directory: /home/lawrence/zephyr/samples/basic/blinky/build
(created)
BOARD: nrf52840_mdk (origin: env)
Running CMake: /usr/local/bin/cmake
-B/home/lawrence/zephyr/samples/basic/blinky/build
-S/home/lawrence/zephyr/samples/basic/blinky -GNinja
-DBOARD=nrf52840_mdk Zephyr version: 1.14.99
-- Found PythonInterp: /usr/bin/python3 (found suitable version
"3.6.8", minimum required is "3.4")
-- Selected BOARD nrf52840_mdk
CMake Error at /home/lawrence/zephyr/cmake/toolchain/zephyr/host-tools.cmake:46 (include):
include could not find load file:


/home/lawrence/zephyr/cmake/toolchain/zephyr/0.10.1/host-tools.cmake
Call Stack (most recent call first):
/home/lawrence/zephyr/cmake/host-tools.cmake:3 (include)
/home/lawrence/zephyr/cmake/app/boilerplate.cmake:386 (include)
CMakeLists.txt:4 (include)


-- Found west: /usr/local/bin/west (found suitable version "0.6.0",
minimum required is "0.5.6") CMake Error at /home/lawrence/zephyr/cmake/toolchain/zephyr/generic.cmake:7 (include):
include could not find load file:


/home/lawrence/zephyr/cmake/toolchain/zephyr/0.10.1/generic.cmake
Call Stack (most recent call first):
/home/lawrence/zephyr/cmake/generic_toolchain.cmake:64 (include)
/home/lawrence/zephyr/cmake/app/boilerplate.cmake:402 (include)
CMakeLists.txt:4 (include)


-- Loading
/home/lawrence/zephyr/boards/arm/nrf52840_mdk/nrf52840_mdk.dts as
base
-- Overlaying /home/lawrence/zephyr/dts/common/common.dts
CMake Error at /home/lawrence/zephyr/cmake/dts.cmake:126 (message):
command failed with return code: No such file or directory Call
Stack (most recent call first):
/home/lawrence/zephyr/cmake/app/boilerplate.cmake:403 (include)
CMakeLists.txt:4 (include)


-- Configuring incomplete, errors occurred!
ERROR: command exited with status 1: /usr/local/bin/cmake
-B/home/lawrence/zephyr/samples/basic/blinky/build -S/home/lawrence/zephyr/samples/basic/blinky -GNinja -DBOARD=nrf52840_mdk Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/west/main.py", line 566, in main
args.handler(args, unknown)
File "/usr/local/lib/python3.6/dist-packages/west/main.py", line 325, in ext_command_handler
command.run(args, unknown, topdir)
File "/usr/local/lib/python3.6/dist-packages/west/commands/__init__.py", line 112, in run
self.do_run(args, unknown)
File "/home/lawrence/zephyr/scripts/west_commands/build.py", line 161, in do_run
self._run_cmake(board, origin, self.args.cmake_opts)
File "/home/lawrence/zephyr/scripts/west_commands/build.py", line 380, in _run_cmake
run_cmake(final_cmake_args, dry_run=self.args.dry_run)
File "/home/lawrence/zephyr/scripts/west_commands/zcmake.py", line 68, in run_cmake
raise subprocess.CalledProcessError(p.returncode, p.args)
subprocess.CalledProcessError: Command '['/usr/local/bin/cmake', '-B/home/lawrence/zephyr/samples/basic/blinky/build', '-S/home/lawrence/zephyr/samples/basic/blinky', '-GNinja', '-DBOARD=nrf52840_mdk']' returned non-zero exit status 1.
lawrence@Bob:~/zephyr/samples/basic/blinky$

Lawrence King
Principal Developer
Connected Transport Market Unit
https://www.Irdeto.com
+1(416)627-7302

[1]<https://careers.irdeto.com/> [2 - linkedin] <https://www.linkedin.com/company/irdeto/> [3 - instagram] <https://www.instagram.com/lifeatirdeto/?hl=en> [4 - youtube] <https://www.youtube.com/channel/UCwgT0-wMbEqx3qLfrPIEnRg> [6 - facebook] <https://www.facebook.com/JoinIrdeto/> [7] <https://twitter.com/Irdeto?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor>

CONFIDENTIAL: This e-mail and any attachments are confidential and intended solely for the use of the individual(s) to whom it is addressed. It can contain proprietary confidential information and be subject to legal privilege and/or subject to a non-disclosure Agreement. Unauthorized use, disclosure or copying is strictly prohibited. If you are not the/an addressee and are in possession of this e-mail, please delete the message and notify us immediately. Please consider the environment before printing this e-mail. Thank you.






API meeting: Agenda

Carles Cufi
 

Hi all,

This week we will look at:

Agenda:

- GPIO: Quick confirmation of API suitability
* See: https://github.com/zephyrproject-rtos/zephyr/issues/15611#issuecomment-516488369

- Sensor API: Update on progress if contributors present

Additional items in the "Triage" column in the GitHub project may be discussed if time permits.
If you want an item included in the meeting, please add it to the GitHub project.

https://github.com/zephyrproject-rtos/zephyr/wiki/Zephyr-Committee-and-Working-Group-Meetings#zephyr-api-discussion
https://github.com/zephyrproject-rtos/zephyr/projects/18
https://docs.google.com/document/d/1lv-8B5QE2m4FjBcvfqAXFIgQfW5oz6306zJ7GIZIWCk/edit

Regards,

Carles


Re: Cmake and DTC Version issues installing Zephyr

Andrei
 

Hi All,

I was having similar issue: west was failing, probably because there were
several revisions: a default one and bootstrapping one. I switched
default to the same revision as bootstrapping and it did help.

$ pip3 install --user west==0.6.0

Best regards
Andrei Emeltchenko

On Thu, Jul 25, 2019 at 02:16:57PM +0000, Lawrence King wrote:
Hi Marti

Thanks you for looking at my problem report.

It turns out I am not the first person to report a version problem with DTC, tsai.eric.h@gmail.com reported the same problem 10 days ago.

I had actually done a 'west init', I just missed writing that in the step-by-step. (see my own follow up email where I mentioned this.)

I do know how to work around the cmake (and DTC) version issues, the issue is the getting started guide doesn't tell me I need to do this.

According to the west team posts the bootstrapper has been deprecated, so I was going direct to the source rather than what is in the getting started guide.

The location of zephyr is where the 'latest' west put it. I didn't do a git clone, just west init.


In general the getting started guide needs update and (re)testing. Build a new VM with 18.04 LTS and follow the getting started guide, it won't work. But it will work fine with a 19.04 system.

Fortunately I see Charles is in the middle of updating the getting started guide so I am sure this will all be fixed in no time....

I'll try following the getting started guide again tomorrow.

Lawrence King
Principal Developer
+1(416)627-7302

-----Original Message-----
From: Bolivar, Marti <Marti.Bolivar@nordicsemi.no>
Sent: Wednesday, July 24, 2019 7:09 PM
To: Lawrence King <lawrence.king@irdeto.com>; Zephyr-users@lists.zephyrproject.org
Cc: users@lists.zephyrproject.org
Subject: Re: [Zephyr-users] Cmake and DTC Version issues installing Zephyr

"Lawrence King via Lists.Zephyrproject.Org"
<lawrence.king=irdeto.com@lists.zephyrproject.org> writes:

Today I wanted to ensure that my documentation on how to rebuild my code was complete and correct. I setup a new virtual machine with Ubuntu 18.04 LTS (which is the most recent LTS version available). I then install Zephyr following (mostly) the instructions in the getting started guide, followed by pulling my code from my local git and then attempting to build.

This is where things go bad.

First problem is west wants to build with cmake newer than 1.13.3, but
the 'default' cmake in 18.04 LTS is much older, I was able to work
around this by removing cmake, and installing with pip3.
Yes, Zephyr requires a recent CMake. Since you're on Ubuntu, you might want to check out the official cmake apt repository from KitWare, which does support 18.04.

https://blog.kitware.com/ubuntu-cmake-repository-now-available/


The 'latest' zephyr (actually west and cmake) insists that I need a
device tree compiler with version 1.4.6, unfortunately the latest is
version on Ubunti 18.04 is 1.4.5 (see
https://launchpad.net/ubuntu/+source/device-tree-compiler) hence I
can't build. OK, to work around this I went into
zephyr/cmake/host-tools.cmake and changed the MIN_DTC_VERSION to
1.4.5. OK, I am past this...
This isn't a west or a CMake requirement, in my opinion, but is instead a requirement based on the contents of the zephyr DTS files.

Since you're on Ubuntu, if you're building with the Zephyr SDK (which you seem to be), you should have all the host tools you need from there.
This includes a recent enough DTC.

I would not recommend manually overriding the CMake version enforcement checks for the dtc binary.


But things continue to be bad. The next issue I hit is cmake can't find the file zephyr/cmake/toolchain/zephyr/0.10.1/host-tools.cmake and when I look, sure enough the file isn't there. In fact the directory isn't there. There are directories for 0.10.0 and 0.9.5, but I installed zephyr tools 0.10.1 so I am not sure why the directory is not there, and more importantly why is cmake even looking there?.

Here is a 'step-by-step' of the process I followed after bringing up a
new Ubuntu 18.04 box:
This appears to be missing some steps. In particular, it doesn't show how you got the zephyr tree itself. Given that it's in ~/zephyr instead of something like ~/zephyrproject/zephyr, I suspect you didn't do a west init + west update. Is that the case? If so, I'd recommend trying again, but following the instructions in the getting started guide. Zephyr without west is possible, but harder to do correctly.


sudo apt-get upgrade
sudo apt-get install -y build-essential module-assistant sudo apt-get
install -y --no-install-recommends git ninja-build gperf \
ccache dfu-util device-tree-compiler wget \
python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \
make gcc gcc-multilib
sudo apt remove cmake

sudo -H pip3 install --upgrade setuptools sudo -H pip3 install --user
cmake wget
https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.10.1
/zephyr-sdk-0.10.1-setup.run
chmod +x zephyr-sdk-0.10.1-setup.run
sudo ./zephyr-sdk-0.10.1-setup.run
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr export
ZEPHYR_SDK_INSTALL_DIR=/opt/zephyr-sdk
# cmake must be version 1.13.3 or better!
cmake --version

sudo -H pip3 install git+https://github.com/zephyrproject-rtos/west
west update
Out of curiosity, why are you building from the latest west master instead of running "pip3 install --user west" as recommended in the getting started documentation?


At this point I checkout my code from git and try to build, but it
fails just as well on the blinky program.
Based on the above (and the below output) it seems like you might have done "git clone https://github.com/zephyrproject-rtos/zephyr"; or similar. This leaves out all the other modules.

I also don't see any mention here of installing the python packages in zephyr's scripts/requirements.txt, which is also mentioned in the getting started guide.

Please try these steps and holler if you continue to have problems:

https://docs.zephyrproject.org/latest/getting_started/index.html

Thanks,
Marti

cd zephyr/samples/blinky
export BPOARD=nrf52840_mdk
west -v build

Here is the output:
lawrence@Bob:~/zephyr/samples/basic/blinky$ west -v build
ZEPHYR_BASE=/home/lawrence/zephyr (origin: configfile) source
directory: /home/lawrence/zephyr/samples/basic/blinky
build directory: /home/lawrence/zephyr/samples/basic/blinky/build
(created)
BOARD: nrf52840_mdk (origin: env)
Running CMake: /usr/local/bin/cmake
-B/home/lawrence/zephyr/samples/basic/blinky/build
-S/home/lawrence/zephyr/samples/basic/blinky -GNinja
-DBOARD=nrf52840_mdk Zephyr version: 1.14.99
-- Found PythonInterp: /usr/bin/python3 (found suitable version
"3.6.8", minimum required is "3.4")
-- Selected BOARD nrf52840_mdk
CMake Error at /home/lawrence/zephyr/cmake/toolchain/zephyr/host-tools.cmake:46 (include):
include could not find load file:


/home/lawrence/zephyr/cmake/toolchain/zephyr/0.10.1/host-tools.cmake
Call Stack (most recent call first):
/home/lawrence/zephyr/cmake/host-tools.cmake:3 (include)
/home/lawrence/zephyr/cmake/app/boilerplate.cmake:386 (include)
CMakeLists.txt:4 (include)


-- Found west: /usr/local/bin/west (found suitable version "0.6.0",
minimum required is "0.5.6") CMake Error at /home/lawrence/zephyr/cmake/toolchain/zephyr/generic.cmake:7 (include):
include could not find load file:

/home/lawrence/zephyr/cmake/toolchain/zephyr/0.10.1/generic.cmake
Call Stack (most recent call first):
/home/lawrence/zephyr/cmake/generic_toolchain.cmake:64 (include)
/home/lawrence/zephyr/cmake/app/boilerplate.cmake:402 (include)
CMakeLists.txt:4 (include)


-- Loading
/home/lawrence/zephyr/boards/arm/nrf52840_mdk/nrf52840_mdk.dts as base
-- Overlaying /home/lawrence/zephyr/dts/common/common.dts
CMake Error at /home/lawrence/zephyr/cmake/dts.cmake:126 (message):
command failed with return code: No such file or directory Call
Stack (most recent call first):
/home/lawrence/zephyr/cmake/app/boilerplate.cmake:403 (include)
CMakeLists.txt:4 (include)


-- Configuring incomplete, errors occurred!
ERROR: command exited with status 1: /usr/local/bin/cmake
-B/home/lawrence/zephyr/samples/basic/blinky/build -S/home/lawrence/zephyr/samples/basic/blinky -GNinja -DBOARD=nrf52840_mdk Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/west/main.py", line 566, in main
args.handler(args, unknown)
File "/usr/local/lib/python3.6/dist-packages/west/main.py", line 325, in ext_command_handler
command.run(args, unknown, topdir)
File "/usr/local/lib/python3.6/dist-packages/west/commands/__init__.py", line 112, in run
self.do_run(args, unknown)
File "/home/lawrence/zephyr/scripts/west_commands/build.py", line 161, in do_run
self._run_cmake(board, origin, self.args.cmake_opts)
File "/home/lawrence/zephyr/scripts/west_commands/build.py", line 380, in _run_cmake
run_cmake(final_cmake_args, dry_run=self.args.dry_run)
File "/home/lawrence/zephyr/scripts/west_commands/zcmake.py", line 68, in run_cmake
raise subprocess.CalledProcessError(p.returncode, p.args)
subprocess.CalledProcessError: Command '['/usr/local/bin/cmake', '-B/home/lawrence/zephyr/samples/basic/blinky/build', '-S/home/lawrence/zephyr/samples/basic/blinky', '-GNinja', '-DBOARD=nrf52840_mdk']' returned non-zero exit status 1.
lawrence@Bob:~/zephyr/samples/basic/blinky$

Lawrence King
Principal Developer
Connected Transport Market Unit
https://www.Irdeto.com
+1(416)627-7302

[1]<https://careers.irdeto.com/> [2 - linkedin] <https://www.linkedin.com/company/irdeto/> [3 - instagram] <https://www.instagram.com/lifeatirdeto/?hl=en> [4 - youtube] <https://www.youtube.com/channel/UCwgT0-wMbEqx3qLfrPIEnRg> [6 - facebook] <https://www.facebook.com/JoinIrdeto/> [7] <https://twitter.com/Irdeto?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor>

CONFIDENTIAL: This e-mail and any attachments are confidential and intended solely for the use of the individual(s) to whom it is addressed. It can contain proprietary confidential information and be subject to legal privilege and/or subject to a non-disclosure Agreement. Unauthorized use, disclosure or copying is strictly prohibited. If you are not the/an addressee and are in possession of this e-mail, please delete the message and notify us immediately. Please consider the environment before printing this e-mail. Thank you.






Re: [EXT] [Zephyr-users] Zephyr SDK 0.10.2-rc1 available

Kumar Gala
 

Yeah, that’s merged now.

:)

- k

On Aug 5, 2019, at 4:01 AM, Andrei Gansari <andrei.gansari@nxp.com> wrote:

Will not work in current mainline, unless you apply https://github.com/zephyrproject-rtos/zephyr/pull/17984


Andrei Gansari

-----Original Message-----
From: users@lists.zephyrproject.org <users@lists.zephyrproject.org> On Behalf Of Kumar Gala via Lists.Zephyrproject.Org
Sent: Friday, August 2, 2019 6:36 PM
To: zephyr-devel <zephyr-devel@lists.zephyrproject.org>; zephyr-users@lists.zephyrproject.org
Cc: users@lists.zephyrproject.org
Subject: [EXT] [Zephyr-users] Zephyr SDK 0.10.2-rc1 available

Caution: EXT Email

Hi,

Latest version of the SDK can be found here:

https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fzephyrproject-rtos%2Fsdk-ng%2Freleases%2Ftag%2Fv0.10.2-rc1&;amp;data=02%7C01%7Candrei.gansari%40nxp.com%7C76dce26ca04a4a350c2108d7175f282f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637003569775968607&amp;sdata=XyPtEs%2BkmpQap%2FxD9M%2BGu5tHNKtCM11tpNN3IIISgls%3D&amp;reserved=0

Please download and try things out and report any issues.

Changes since the last release:

• Updated to QEMU 4.0.0
• Added aarch64 qemu target for use w/Cortex-R support (for xlnx-zcu102 target) • Updated openocd for bug fix on TI CC13x2/CC26x2 platforms.

- k


Re: [EXT] [Zephyr-users] Zephyr SDK 0.10.2-rc1 available

Andrei Gansari
 

Will not work in current mainline, unless you apply https://github.com/zephyrproject-rtos/zephyr/pull/17984


Andrei Gansari

-----Original Message-----
From: users@lists.zephyrproject.org <users@lists.zephyrproject.org> On Behalf Of Kumar Gala via Lists.Zephyrproject.Org
Sent: Friday, August 2, 2019 6:36 PM
To: zephyr-devel <zephyr-devel@lists.zephyrproject.org>; zephyr-users@lists.zephyrproject.org
Cc: users@lists.zephyrproject.org
Subject: [EXT] [Zephyr-users] Zephyr SDK 0.10.2-rc1 available

Caution: EXT Email

Hi,

Latest version of the SDK can be found here:

https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fzephyrproject-rtos%2Fsdk-ng%2Freleases%2Ftag%2Fv0.10.2-rc1&;amp;data=02%7C01%7Candrei.gansari%40nxp.com%7C76dce26ca04a4a350c2108d7175f282f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637003569775968607&amp;sdata=XyPtEs%2BkmpQap%2FxD9M%2BGu5tHNKtCM11tpNN3IIISgls%3D&amp;reserved=0

Please download and try things out and report any issues.

Changes since the last release:

• Updated to QEMU 4.0.0
• Added aarch64 qemu target for use w/Cortex-R support (for xlnx-zcu102 target) • Updated openocd for bug fix on TI CC13x2/CC26x2 platforms.

- k

821 - 840 of 2455