- Setup ESP-IDF, use ESP-IDF v4.3.2
- Setup ESP-ADF, use latest master version
- Patch ESP-ADF to enable audio capture from AUX_IN input. In file
esp-adf/components/audio_board/lyrat_v4_3/board_def.h
change line 49 from:
.adc_input = AUDIO_HAL_ADC_INPUT_LINE1, \
to
.adc_input = AUDIO_HAL_ADC_INPUT_LINE2, \
Note: After updating git repositories(ESP-IDF or ESP-ADF) or change branch you need update submodules:
In cloned repository directory execute command: git submodule update --init --recursive
and rebuild project.
- Create wifi_config.txt in the root of the SD card
- Add one line in the following format:
<WiFIAP>\t<password>
(WiFi AP and password separated with TAB on one line)
- or
- Open main/config.h
- Set CONFIG_WIFI_SSID and CONFIG_WIFI_PASSWORD to your Wi-Fi AP
- Open terminal in the project's folder and run to set ESP-IDF environment variables:
. $HOME/esp/esp-idf/export.sh
- Build project:
idf.py build
- Enter upload mode: Manually by pressing both Boot and RST keys and then releasing first RST and then Boot key.
- Flash project:
idf.py flash
- Open project in CLion
- Open CLion's terminal and run to set ESP-IDF environment variables:
. $HOME/esp/esp-idf/export.sh
- Edit/update
- Build project:
idf.py build
- Encode:
minimodem --tx 1200 -f wavfile.wav
- Decode:
minimodem -r 1200
Enable the following configuration options (idf.py menuconfig
) to get CPU load reported to the serial console every 1 second:
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID=y
CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y
CONFIG_FREERTOS_RUN_TIME_STATS_USING_ESP_TIMER=y
- AUX_IN audio quality issue - https://esp32.com/viewtopic.php?t=12407
-
Get list of aviable bluetooth devices HTTP URL:
http://lyra.board.ip/output?device=BT
-
Switch output to bluetooth and connect to device 'devicename', HTTP URL:
http://lyra.board.ip/output?device=BT&btdevice=devicename
-
Switch output to line out, HTTP URL:
http://lyra.board.ip/output?device=SP