Date   

Re: lis2mdl magnetometer in microbit v2 #i2c #driver #lis2dw12

Bolivar, Marti
 

Hi,

+Armando

"frank.duignan via lists.zephyrproject.org"
<frank.duignan=gmail.com@lists.zephyrproject.org> writes:

I have been experimenting with the microbit v2 and zephyr.  Everything seems to work ok except for the magnetometer.  The values it produces do not change when you re-orient the device.  If you re-orient the device and power cycle it you will see a new set of values which will remain unchanged until the next power cycle. My build version is zephyr-v2.6.0-535-gbd09d4ff3f81
The accelerometer, bluetooth and digital i/o all work fine.
While wandering through the code and experimenting with various configuration options I came across an error in lis2mdl.c on line 453:
const struct lis2mdl_config *cfg = dev->config;
There is no 'dev' parameter passed to this function however there is a "config" parameter and this modification works:
const struct lis2mdl_config *cfg = config;// dev->config;
Did you send a pull request with the fix? If not, please do. Although
I'm confused about how this builds with no 'dev' in scope.

Martí




bt_gatt_read() multiply read #bluetooth #nrf52840

antonsolonovich@...
 

Hello,
I use nrf52840-dk as central_hr and nrf52833-dk as peripheral_hr, examples from NRF Connect SDK.
I want to read two or more values using bt_gatt_read().
Code:


dis->read_params.func = gatt_read_cb;
dis->read_params.handle_count  = 2;
dis->read_params.handles = dis_handles;
err = bt_gatt_read(dis->conn, &(dis->read_params));


I read two values,

BT_UUID_DIS_MODEL_NUMBER, which is "Model"

and BT_UUID_DIS_SERIAL_NUMBER, with value "serial"

Here you can see part of my log,


gatt read cb // We are in callback
 
data length 11 //One length for two values?
 
data = Modelserial //Don't understand how to split it
 
gatt read cb //Extra callback with zero length? Does it mean that reading finished?
 
data length 0
 
empty data


The problem is that in multiply read I get one callback and one length for all values,
and I don't understand how to split it, and what value for what characteristic is.

Also I've asked it on DevZone 
https://devzone.nordicsemi.com/f/nordic-q-a/77045/discovery-dis
but no success there

Thank you,
Anton


Re: Understanding Ztest and Test Execution for Zephyr

Kevin Townsend
 

At the recent Zephyr Dev Summit, there was a talk -- "On-target testing with Twister and the process of results publishing" -- which covers this. It doesn't look like that video has been published yet, but they're releasing them in batches and it should be available here shortly: https://zephyrproject.org/blog/

The "Testing Mini Conference" is the one you'll want, see Day One here: https://zephyrproject.org/zephyr-developer-summit-day-1-preview/

Kevin


On Tue, 13 Jul 2021 at 10:35, Pandey, Mithun <mithunpandey@...> wrote:

HI all,

 

I was going through the test documentation under https://github.com/zephyrproject-rtos/zephyr/blob/main/doc/guides/test/ztest.rst

Is there any more documentation available regarding understanding Ztest framework, and also the testcase.yaml and other files available to define the test scenarios.

 

I am also trying to understand the way these test cases are executed, based on the GitHub actions, it looks like the tests are only running on the QEMU emulator on ubuntu VMs.

But seeing the test reports it looks like the Test are also running for different architectures under different boards on HW also.

 

How are the tests on HW getting executed and triggered for each pull requests ? any pointers in this area will be helpful.

 

Thanks and Regards

Mithun

 

 


Understanding Ztest and Test Execution for Zephyr

Pandey, Mithun
 

HI all,

 

I was going through the test documentation under https://github.com/zephyrproject-rtos/zephyr/blob/main/doc/guides/test/ztest.rst

Is there any more documentation available regarding understanding Ztest framework, and also the testcase.yaml and other files available to define the test scenarios.

 

I am also trying to understand the way these test cases are executed, based on the GitHub actions, it looks like the tests are only running on the QEMU emulator on ubuntu VMs.

But seeing the test reports it looks like the Test are also running for different architectures under different boards on HW also.

 

How are the tests on HW getting executed and triggered for each pull requests ? any pointers in this area will be helpful.

 

Thanks and Regards

Mithun

 

 


lis2mdl magnetometer in microbit v2 #i2c #driver #lis2dw12

Frank Duignan
 

I have been experimenting with the microbit v2 and zephyr.  Everything seems to work ok except for the magnetometer.  The values it produces do not change when you re-orient the device.  If you re-orient the device and power cycle it you will see a new set of values which will remain unchanged until the next power cycle. My build version is zephyr-v2.6.0-535-gbd09d4ff3f81
The accelerometer, bluetooth and digital i/o all work fine.
While wandering through the code and experimenting with various configuration options I came across an error in lis2mdl.c on line 453:
const struct lis2mdl_config *cfg = dev->config;
There is no 'dev' parameter passed to this function however there is a "config" parameter and this modification works:
const struct lis2mdl_config *cfg = config;// dev->config;
 


Re: options for missing driver functions

Jeff Haynes <feedyurhed@...>
 


Yes, we have production boards for a medical device we’re building. 

Thanks,

Jeff



On Mon, Jul 5, 2021 at 11:35 AM Armando VISCONTI <armando.visconti@...> wrote:
On 6/30/21 9:26 PM, Jeff Haynes wrote:
>
> Thanks a lot for the fast response.  That sounds great and I'd be happy
> to contribute whenever you're ready.  Do you have any idea what you're
> thinking in terms of timing?
>

Well, I have other non-zephyr related stuff to carry on.
I guess I can start working on it in a couple of weeks from now.

Is this req related to any particular project?

Thanks,
Armando
--
If you want to build a ship, don't drum up people together to collect wood and don't assign them tasks and work, but rather teach them to long for the endless immensity of the sea.

Antoine de Saint-Exupery


Re: options for missing driver functions

Armando VISCONTI <armando.visconti@...>
 

On 6/30/21 9:26 PM, Jeff Haynes wrote:
Thanks a lot for the fast response.  That sounds great and I'd be happy to contribute whenever you're ready.  Do you have any idea what you're thinking in terms of timing?
Well, I have other non-zephyr related stuff to carry on.
I guess I can start working on it in a couple of weeks from now.

Is this req related to any particular project?

Thanks,
Armando


Re: Application build from multiple libs.

tomasz.sleboda@...
 

Hi,

I've just followed mentioned example.
Using extensions.cmake functions I was able to fetch needed variables:
zephyr_get_include_directories_for_lang_as_string(       C PROJECT_INCLUDE)
zephyr_get_system_include_directories_for_lang_as_string(C SYSTEM_INCLUDE)
zephyr_get_compile_definitions_for_lang_as_string(       C COMPILE_DEFINITIONS)
zephyr_get_compile_options_for_lang_as_string(           C COMPILE_OPTIONS)

Then applied them into sub-libs CMakeLists.txt :

target_include_directories(${LIB_NAME}
    PUBLIC
        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
    PRIVATE
        ${PROJECT_INCLUDE}
    SYSTEM
        ${SYSTEM_INCLUDE}
    )

target_compile_definitions(${LIB_NAME}
    PUBLIC
        ${COMPILE_DEFINITIONS}
    )

target_compile_options(${LIB_NAME}
    PUBLIC
        ${COMPILE_OPTIONS}
    )


Re: Application build from multiple libs.

Raúl Sánchez Siles
 

El lunes, 5 de julio de 2021 12:36:36 (CEST) tomasz.sleboda via lists.zephyrproject.org escribió:

 

Hi,
I'm trying to port our application to run under Zephyr.
Application itself is build as a set of different libraries (e.g. libComm, libMeasurements...and libapp).
All libs are compiled and linked together with build success, but.. application crashes.

 

Digging deeper into compile process sims that objects under libapp target has proper includes, defines and compile options.
Rest of objects are wrongly compiled.

 

Is there way to populate build options from 'app' target to other libs (subcomponents) and objects via cmake functions?

 

-Tomasz S.


--

Raúl Sánchez Siles


SW Engineer


K-LAGAN EID


Application build from multiple libs.

tomasz.sleboda@...
 

Hi,
I'm trying to port our application to run under Zephyr.
Application itself is build as a set of different libraries (e.g. libComm, libMeasurements...and libapp).
All libs are compiled and linked together with build success, but.. application crashes.

Digging deeper into compile process sims that objects under libapp target has proper includes, defines and compile options.
Rest of objects are wrongly compiled.

Is there way to populate build options from 'app' target to other libs (subcomponents) and objects via cmake functions?

-Tomasz S.


NetworkING Forum Agenda

Lubos, Robert
 

Hi all,

 

There is a networking forum tomorrow Tue 6 July at 8AM PST / 17.00 CEST.

 

Currently there are no major topics on the agenda. We’re going to briefly discuss networking stack maintenance transition from Jukka to me. Please let me know if there is any other topic that you would like to add to the agenda for tomorrow.

 

Meeting notes:

https://docs.google.com/document/d/1qFsOpvbyLzhflJbbv4Vl__497pKHDoUCy9hjAveyCX0

 

Shared Folder:

https://drive.google.com/drive/folders/1j6d0FLeOjiMil1Ellb59AsfHdzuWdAAc?usp=sharing

 

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

 

Regards,
ROBERT LUBOS | Senior Firmware Engineer
M +48 504 088 482 | Krakow, Poland
nordicsemi.com | devzone.nordicsemi.com

Nordic_logo_signature

 


Zephyr SDK 0.13.0-rc1 available

Kumar Gala
 

Hi all,

We’ve release the first release candidate for the SDK 0.13.0. The main changes in these release are support for ARC64, Qemu 6.0.0, OpenOCD, and some newlib updates/fixes.

SDK 0.13.0-rc1 can be found here:

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

Please download and try things out and report any issues.

Changes since the last release:

• general:
- Added support for ARC64. NOTE: GDB isn't currently supported for ARC64.

• qemu:
- Updated to QEMU 6.0.0
- Added arc64 support. NOTE: this update ARC support replaces the machine (-M simhs) with (-M virt). This change will require updates to boards/arc/qemu_arc/board.cmake in Zephyr to match.
- Pull in fixes from upstream for:
hw/arm: Fix modelling of SSE-300 TCMs and SRAM

• gcc:
- Update to gcc 10.3 release
- Added support for ARC64
- Removed libgcc transactional memory clone registry support
- Fixed incorrect build specs for libstdc++ nano variant. The libstdc++ nano variant, which is used with newlib-nano, is now built with -fno-exceptions to reduce compiled binary size.

• binutils:
- Updated to add support for ARC64

• newlib:
- Updated to add support for ARC64
- Added multithreading support

• openocd:
- Update to upstream 20210630 snapshot

• crosstool-ng:
- sync with upstream. Upstream now supports newlib-nano so we drop our Zephyr specific updates. This also pulls in gcc-10.3 and initial support for ARC64.

• yocto:
- Update to yocto 3.2.3 baseline. This is in prep to support building qemu-6.0.0

- k


Re: Slack Invite

Kumar Gala
 

On Jul 2, 2021, at 5:21 AM, Daniel O <dsoliveira@criticalsoftware.com> wrote:

Hi there,

I'm with the same problem I have also tried with Google login.
It seems the public link is unavailable


Adafruit feather sense Internal Clock

Dimitrios Kosyvas <kosyvas14828@...>
 

Hello 

I also have the adafruit feather sense board  with the nrf52840 processor and i am using zephyr to program it .The only way to work is for me to enable the  32k internal RC Oscillator by writing 

# 32kHz clock source - necessary for Adafruit Sense (Internal Clock!)
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM=y


I was wondering if the reason for not working is that zephyr RTOS needs the RTC .

Could you explain why the initialization  of the internal 32k clock  is necessary ?


Thanks 

Dimitris Kosyvas



Re: Slack Invite

alohre@...
 

The slack invite is mentioned in the documentation here:
https://docs.zephyrproject.org/latest/introduction/index.html .
search for slack and you will find this tinyurl slack invite link: https://tinyurl.com/2vue8666


Re: Slack Invite

Daniel O <dsoliveira@...>
 

Hi there,

I'm with the same problem I have also tried with Google login.
It seems the public link is unavailable


Re: Slack Invite

Nashif, Anas
 

Hi,
Using existing domain from the list is an option, did you try to use some other way or do you have an account on slack already?



On 1 Jul 2021, at 06:01, Davide Pollarolo <dpollarolo@...> wrote:

Hello,

asking if anyone knows how to request an invite for the Zephyr Slack Workspace...?

My work email is not part of any of the below domains:
<image.png>

Thanks!

D


Slack Invite

Davide Pollarolo
 

Hello,

asking if anyone knows how to request an invite for the Zephyr Slack Workspace...?

My work email is not part of any of the below domains:
image.png

Thanks!

D


Re: options for missing driver functions

Jeff Haynes <feedyurhed@...>
 


Thanks a lot for the fast response.  That sounds great and I'd be happy to contribute whenever you're ready.  Do you have any idea what you're thinking in terms of timing?

Thanks!

Jeff


On Wed, Jun 30, 2021 at 8:50 AM Armando VISCONTI <armando.visconti@...> wrote:
Hi Jeff,

I have in plan to improve the lis2ds12 with
following stuff:

1. Adding stmemsc HAL i/f support
2. Support multi-instance
3. Use common i2c/spi routines
4. Move FS and ODR properties from Kconfig to DTS
5. others minor things?

After that I'm not planning to add other features like wake-up.
So, if you want to do this part (after my improvements) I'll
be more than happy to review your work.

How does it sound to you?

Arm

On 6/30/21 2:44 PM, Erwan Gouriou wrote:
> Adding Armando as codeowner of this driver.
>
> On Tue, 29 Jun 2021 at 17:31, Jeff Haynes <feedyurhed@...
> <mailto:feedyurhed@...>> wrote:
>
>
>     Relatively new Zephyr user here.  We have a custom board with
>     a LIS2DS12 IMU on it.  I've been somewhat ignoring it up to now as
>     it serves a secondary function and we sort of just threw it on there
>     thinking we would get to it later.  Now that I'm ready to tackle it
>     it looks like the built-in functionality in the driver is pretty
>     limited and doesn't cover the wake-up scenarios we need.  What are
>     our options at this point?  Should we add to the existing driver?
>     Attempt to do everything in the app or "side-load" a driver?
>     Attempt to include the ST HAL?
>
>     Thanks,
>
>     Jeff
>
>
>
>     --
>     If you want to build a ship, don't drum up people together to
>     collect wood and don't assign them tasks and work, but rather teach
>     them to long for the endless immensity of the sea.
>
>     Antoine de Saint-Exupery >


--
If you want to build a ship, don't drum up people together to collect wood and don't assign them tasks and work, but rather teach them to long for the endless immensity of the sea.

Antoine de Saint-Exupery


stm32: DMA: driver bindings new packaging

Francois RAMU
 

Hi all,

 

I'd like to inform STM32   DMA  users  that I'm pushing a change [1] to simplify the definition of the <dma—cells> properties for dma peripherals of the stm32 MCUs.

This change now proposes 3 versions of the dma plus the dmamux in the dts and selects the nb of elements for the <dma-cells>

It depends on the type of DMA instance of the stm32 MCU (from Ref. Man). With this :

 

DMA V1 : DMA with FIFO control

à the <dma-cells>   has 4 elements : ‘channel’, ‘slot’, ‘channel-config’, ‘feature’

for example on stm32F4 or stm32F2 MCUs

 

DMA V2 : DMA without FIFO control and selectable request for each channel

à  the <dma-cells>   has 3 elements : : ‘channel’, ‘slot’, ‘channel-config’

for example on stm32L4xx or stm32L0xx MCUs

 

DMA  V2bis : DMA without FIFO control and fixed request (slot) for each channel

à the <dma-cells>   has 2 elements : : ‘channel’,  ‘channel-config’

 For stm32L1 and stm32F1   MCUs

 

DMAMUX   multiplexing DMA channels : like a DMA V2

à does not require ‘feature’ parameter

For example on stm32G4 or stm32WB   MCUs

 

 

Benefit is to remove unused parameters in the DTS and simply the structure of the dma peripherals.

 

To declare a new peripheral client of the DMA, the version of the DMA must be first identify, according to the stm32  Ref Manual.

Then the <dma-cells> properties is filled with :

‘channel’ to select a free DMA channel for transfer

‘slot’ to select the peripheral request in DMA V1 or DMA V2 or DMAMUX versions

‘channel-config’,  to configure the dma channel

‘feature’  for configuring the FIFO in DMA V1 versions

 

This change will be hopefully integrated in the next Zephyr DV that will be released in October ‘21.

 

 

Cheers

FRASTM

 

[1] https://github.com/zephyrproject-rtos/zephyr/pull/34666

 

201 - 220 of 2846