-
Notifications
You must be signed in to change notification settings - Fork 64
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
[Documentation/Feature] Remote output emulation (QEMU-226) #108
Comments
Hi @mtribiere, there was a similar request in #41 but so far I haven't found a reasonable way to implement this. If you need to observe and inject GPIO states then Wokwi emulator might be a better option than QEMU at this point. |
Hi @mtribiere, I use something similar to your request in the PICSimLab open-source simulator. I use a modified version of Qemu that implements GPIO support. The modified version of Qemu is compiled as a library, and the interface is done through callbacks. Take a look at these two functions: void qemu_picsimlab_set_pin(int pin, int value) that's written on GPIO Input and static void pout_irq_handler(void *opaque, int n, int level) callback thas called on ESP32 write on GPIO output. You can link the Qemu library to your code or modify Qemu by adding a socket to communicate with your simulator (I've used this approach, but it makes the simulation much slower). |
Hi @igrr, thank you for the sugestion. I did take a look at Wokwi but I'm looking to do everything in a local evironnment, so a web-based tool probably won't cut it. |
Hi @lcgamboa thank you for your suggestion. I like the idea of modifying qemu to redirect the gpio callbacks. |
Hi @mtribiere, the |
Checklist
Feature description
Hello,
I was wondering if the connecting an external process to qemu to inspect and inject GPIO states was possible.
Maybe the feature is already implemented, but I am unable to find any substantial amount of documentation to help me understand this process.
Thanks
Use cases
The idea for me would be to build an emulation/testing software to avoid flashing the real hardware again and again.
Here is an example of a similar software (that doesn't use qemu):
Here
Alternatives
No response
Additional context
No response
The text was updated successfully, but these errors were encountered: