Compilation of the firmware - eried/flipperzero-mayhem GitHub Wiki
The following instructions will be using the latest Arduino IDE. First step is to install ESP32 on Arduino IDE, this includes the board AI Thinger ESP32-CAM
that we need.
Open flipperzero-mayhem/esp32cam_marauder/esp32cam_marauder.ino
in Arduino IDE. Since this is a fork of marauder, you may get and error about multiple definition of 'ieee80211_raw_frame_sanity_check'
, check the solution here.
[!Note]
In some versions of theplatform.txt
file from the marauder FAQ you wont find the line with compiler arguments, add-zmuldefs
to the global compile flags, changing the line:
compiler.c.elf.libs="@{compiler.sdk.path}/flags/ld_libs"
with:
compiler.c.elf.libs=-zmuldefs "@{compiler.sdk.path}/flags/ld_libs"
Prepare the required libraries as instructed below.
Required libraries
You need the libraries listed on esp32cam_marauder/libraries. Check each library and install them one by one. You can use the Arduino Library manager, just be sure the library is the same.
[!Note]
ESPAsyncWebServer is based on the public library butLinkedList
was renamed because a conflict, so you need to copy the folder from the repo
You can use the Arduino IDE library manager for fetching the latest of each library, except for the ones included as a folder in this repo.
Board settings
For some boards, the Flash Mode should be DIO. If your ESP32 enters a bootloop, change Flash Mode and try again.
Now you can compile the project.
Upload
The ESP32CAM needs to be manually put on upload mode. Check First-steps#firmware-update.
Flipper Zero
Go to GPIO and select USB-UART Bridge. The default settings are ok. This enables 5V on GPIO automatically, so no need to do anything else.
Serial-USB adaptor
Connect RX, TX, GND and PWR (5V to VCC OR 3V3 to 3V depending on your adaptor)