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

Bluetooth emulation for the esp32? (QEMU-166) #87

Open
AntonGue opened this issue Sep 22, 2023 · 1 comment
Open

Bluetooth emulation for the esp32? (QEMU-166) #87

AntonGue opened this issue Sep 22, 2023 · 1 comment

Comments

@AntonGue
Copy link

Hello, I'd be interested in a way to emulate the bluetooth function of my esp32-device, because I'm trying to run some tests with an ota firmware. Is there already a way that I'm missing, or is it not available (yet)?

@github-actions github-actions bot changed the title Bluetooth emulation for the esp32? Bluetooth emulation for the esp32? (QEMU-166) Sep 22, 2023
@igrr
Copy link
Member

igrr commented Sep 22, 2023

We do not have Bluetooth emulation supported, and given the complexity of the underlying BT hardware I think it is rather unlikely we will implement this.

There is an alternative which is on our backlog to explore, though. For BLE, we can try to:

  • run the BLE host (Bluedroid or Nimble) as part of the ESP application (emulated in QEMU)
  • run the BLE controller emulator on the host. There is one available inside bluez package, for instance
  • let the two of them communicate over HCI. On the ESP application side, HCI would most likely go into a UART, on QEMU side it will be translated to a TCP or a UDP socket.

I have tried setting this solution up in a Docker container a couple months back, but I didn't manage to get BlueZ (even the emulator part) running inside Docker... I'm using macOS so I couldn't try all this locally without Docker. If someone has experience in BlueZ & Docker, or knows of any other BLE Controller emulator which talks over HCI, please leave a comment.

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

No branches or pull requests

3 participants