Hello LAVA experts,
I need your help for a more complex test we would need to run. We'd like to test a gateway node that talks to remote sensors. * the gateway node is a Cortex-A like (E.g.: RPi3) board * sensors might be a mixture of Cortex-M (non-Linux) and Cortex-A (Linux) devices * communication between the gateway node and sensors might happen with different protocols: bluetooth, wifi, lora, zigbee. * besides the gateway node, we need to control every sensor and be able to provision and to power cycle them.
We are pretty confident on running tests on single boards (with and without interaction with LXC containers) but as the above example is more complex we need some guidance on how this can be achieved with LAVA. The main question mark we have is how LAVA interacts with Cortex-M devices, especially for their deployment.
Does anyone of you have a similar scenario? What are the main challenges? How complicated and/or robust to run something similar with LAVA? Can you point us to documentation, examples?
Any help is very much appreciated.
Thanks!
-- Diego Russo | Staff Software Engineer | Mbed Linux OS ARM Ltd. CPC1, Capital Park, Cambridge Road, Fulbourn, CB21 5XE, United Kingdom http://www.diegor.co.uk - https://os.mbed.com/linux-os/
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
On Wed, 26 Jun 2019 at 14:11, Diego Russo Diego.Russo@arm.com wrote:
Hello LAVA experts,
I need your help for a more complex test we would need to run. We'd like to test a gateway node that talks to remote sensors.
- the gateway node is a Cortex-A like (E.g.: RPi3) board
- sensors might be a mixture of Cortex-M (non-Linux) and Cortex-A (Linux) devices
- communication between the gateway node and sensors might happen with different protocols: bluetooth, wifi, lora, zigbee.
- besides the gateway node, we need to control every sensor and be able to provision and to power cycle them.
you're looking for a pretty complex multi-node job. This is something LAVA can do but might take some time to create proper job definition.
We are pretty confident on running tests on single boards (with and without interaction with LXC containers) but as the above example is more complex we need some guidance on how this can be achieved with LAVA. The main question mark we have is how LAVA interacts with Cortex-M devices, especially for their deployment.
AFAIK there are a few options when deploying to microcontrollers: - DFU - mass storage - OpenOCD
Here are a few boards that we currently have operational: https://lite.validation.linaro.org/scheduler/
Could you give more details about how to deploy software to your devices?
Does anyone of you have a similar scenario? What are the main challenges? How complicated and/or robust to run something similar with LAVA? Can you point us to documentation, examples?
I did multinode in a client-server scenario. This was some time ago and I don't have this example any more. There is an example multi-node definition for CTS/VTS tests: https://github.com/Linaro/test-definitions/tree/master/automated/android/mul... Users that submitted this code claim it's pretty robust and it should cover scenario with more than 2 devices (as they support sharding).
I would suggest starting with 3 devices: - gateway - cortex-a sensor - cortex-m sensor Once you get these 3 to work, adding more nodes should be easy.
Here are official LAVA multinode docs: https://master.lavasoftware.org/static/docs/v2/glossary.html#term-multinode https://master.lavasoftware.org/static/docs/v2/multinodeapi.html#multinode-a...
Note: you need to have lava-coordinator running when trying multinode test.
milosz
Any help is very much appreciated.
Thanks!
-- Diego Russo | Staff Software Engineer | Mbed Linux OS ARM Ltd. CPC1, Capital Park, Cambridge Road, Fulbourn, CB21 5XE, United Kingdom http://www.diegor.co.uk - https://os.mbed.com/linux-os/
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. _______________________________________________ Lava-users mailing list Lava-users@lists.lavasoftware.org https://lists.lavasoftware.org/mailman/listinfo/lava-users
Milosz,
Thanks for your reply. This is exactly what I was looking for. At this stage we are still exploring solutions and it seems LAVA can cope with it. I don't have details of the microcontrollers but I can assume they have DAPLink. Thanks again for very useful reply. I'm sure I'll have other questions when we're down to implementation (
Regards
-----Original Message----- From: Milosz Wasilewski milosz.wasilewski@linaro.org Date: Thursday, 27 June 2019 at 11:34 To: Diego Russo Diego.Russo@arm.com Cc: "lava-users@lists.lavasoftware.org" lava-users@lists.lavasoftware.org Subject: Re: [Lava-users] Help needed with gateway and sensors testing
On Wed, 26 Jun 2019 at 14:11, Diego Russo Diego.Russo@arm.com wrote: > > Hello LAVA experts, > > I need your help for a more complex test we would need to run. > We'd like to test a gateway node that talks to remote sensors. > * the gateway node is a Cortex-A like (E.g.: RPi3) board > * sensors might be a mixture of Cortex-M (non-Linux) and Cortex-A (Linux) devices > * communication between the gateway node and sensors might happen with different protocols: bluetooth, wifi, lora, zigbee. > * besides the gateway node, we need to control every sensor and be able to provision and to power cycle them.
you're looking for a pretty complex multi-node job. This is something LAVA can do but might take some time to create proper job definition.
> > We are pretty confident on running tests on single boards (with and without interaction with LXC containers) but as the above example is more complex we need some guidance on how this can be achieved with LAVA. > The main question mark we have is how LAVA interacts with Cortex-M devices, especially for their deployment.
AFAIK there are a few options when deploying to microcontrollers: - DFU - mass storage - OpenOCD
Here are a few boards that we currently have operational: https://lite.validation.linaro.org/scheduler/
Could you give more details about how to deploy software to your devices?
> > Does anyone of you have a similar scenario? What are the main challenges? How complicated and/or robust to run something similar with LAVA? > Can you point us to documentation, examples?
I did multinode in a client-server scenario. This was some time ago and I don't have this example any more. There is an example multi-node definition for CTS/VTS tests: https://github.com/Linaro/test-definitions/tree/master/automated/android/mul... Users that submitted this code claim it's pretty robust and it should cover scenario with more than 2 devices (as they support sharding).
I would suggest starting with 3 devices: - gateway - cortex-a sensor - cortex-m sensor Once you get these 3 to work, adding more nodes should be easy.
Here are official LAVA multinode docs: https://master.lavasoftware.org/static/docs/v2/glossary.html#term-multinode https://master.lavasoftware.org/static/docs/v2/multinodeapi.html#multinode-a...
Note: you need to have lava-coordinator running when trying multinode test.
milosz
> > Any help is very much appreciated. > > Thanks! > > -- > Diego Russo | Staff Software Engineer | Mbed Linux OS > ARM Ltd. CPC1, Capital Park, Cambridge Road, Fulbourn, CB21 5XE, United Kingdom > http://www.diegor.co.uk - https://os.mbed.com/linux-os/ > > IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. > _______________________________________________ > Lava-users mailing list > Lava-users@lists.lavasoftware.org > https://lists.lavasoftware.org/mailman/listinfo/lava-users
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
lava-users@lists.lavasoftware.org