Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is it possible to run Nimble auto-pts on linux? #1649

Open
AminoACID123 opened this issue Nov 11, 2023 · 1 comment
Open

Is it possible to run Nimble auto-pts on linux? #1649

AminoACID123 opened this issue Nov 11, 2023 · 1 comment
Assignees

Comments

@AminoACID123
Copy link

I notice that Nimble already provides a linux port. I wonder if it is possible to perform auto-pts on linux too?

@rymanluk rymanluk assigned rymanluk and KKopyscinski and unassigned rymanluk Dec 11, 2023
@KKopyscinski
Copy link
Contributor

It is possible but it would require work on both auto-pts and NimBLE side. On autopts you'd have to create support in autoptsclient for new project - there is one for Mynewt, but it supports Mynewt running on board - it uses BSPs from ptsprojects/boards. Linux (native) build is host only, and app uses controller provided by Linux. Because such app runs on Linux system and not physical board, it renders current BTP communication useless - there is no UART. I tried building bttester app on native with config:

syscfg.vals:
  BLE_TRANSPORT_LL: socket
  BLE_SOCK_USE_LINUX_BLUE: 1
  BLE_SOCK_USE_TCP: 0

and there are some compilation errors. Maybe they could be resolved by apache/mynewt-core#3042 , or by modifying app code.

Besides that, another communication channel for BTP commands would have to be made, AFAIK TCP could work. You could take a look at uart_pipe.c - we would have to make similar one for TCP.

I'm not sure it would be worth to implement all of this, because PTS is used to qualify Host itself - it does not depend on what platform Host is built. And all tests can be run or nRF52 or nRF53, and other BSP support could be added more easily - it would require only adding board support in autopts, which basically tells autopts how to restart board, and optionally build and flash image onto it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants