Hello Community.
I have been trying out this new feature by Espressif called ESP_HOSTED where the ESP32 is connected to Linux running boards like the Raspberry Pi to be used as a network adapter. The communication is through SPI. I am currently trying it out for the BeagleV Fire. I have managed to edit the kernel image and expose spidev0.0, though where i find a challenge is where to connect the ESP32 to which SPI pins on the BeagleV. Do i use the SPI0 pins from the BeagleV Fire datasheet, namely P9 _ (17 - Chip Select, 18 - MOSI, 21 - MISO, 22 - SCLK)?
For this connection to also work, there are extra pins to be connected to the ESP32 and act as Handshake, Reset and Data Ready Pins. How do i initialize them or add them?
Seeing how the Fire has Ethernet direct, over USB and via PCIe, I can’t help thinking you’re crossing the bridge to get water from the other side.
But to each his own, so start by getting the SPI connection going.
After that you can pick any of the free I/O pins for your other functions.
Use gpioinfo to have a look at your options. gpioset is used to twiddle the outputs.
Once you’re happy with manual control, you can move to libgpiod for your application.
Furthermore there’s something unsettling about you
editing the kernel image
Any changes to the device-tree are normally handled by the Gateware overlays,
so have a look there before doing any more “editing”…
Also, you can break into u-boot and use the fdt command to modify the device-tree
at will, so there really should be no reason to fiddle with the kernel image.
Lastly, if you haven’t already, please realize that the different Gatewares control
what gets exposed on the pin-headers and can vary wildly, so be aware.