Skip to content

A more simple version of AES67 packet sender via WiFi (experiment)

License

Notifications You must be signed in to change notification settings

ndac-todoroki/esp32_aes67_sender

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 AES67 audio over IP (over WiFi) trial prototype application

This is a experimental application which aims to send audio packets via WiFi, while following the AES67 audio-over-IP requirements.

You need a ESP-IDF installed to your host computer.

Results for now

AES67 L16 48kHz requires to send RTP packets every 1000 micro seconds when sending 48 samples per packet, but I acheived only about 1050 microseconds for now.

What you need

  • the latest ESP-IDF
  • ESP32(WROOM-32)
    • I am using the ESP32-DevKitC
    • You may build your own board if you want to. We will use the 3v3 output so leave that.
  • Some I2S input. Files are created for;

Setup

Hardware Setup

An example setup for ADMP441.

Connect I2S ports to ADMP441. Don't forget to connect correct grounds and 3v3s.

Find the lines like these in main.c or whatever file you use.

i2s_pin_config_t pin_config = {
    .bck_io_num = GPIO_NUM_18,
    .ws_io_num = GPIO_NUM_22,
    .data_in_num = GPIO_NUM_23,
    .data_out_num = I2S_PIN_NO_CHANGE // not used
};

connect the corresponding pins on the I2S device to the pin you set above. This settings may be changeable via idf.py menuconfig someday.

Software Setup

  1. Make sure you have ESP-IDF correctly installed, and is useable in your shell's path. Install the latest version (or at least v3.1).
    Install Ninja if you can, the compile process will be faster.
  2. Do cp main/config/cmake_config.sample.txt main/config/cmake_config.txt
  3. Edit main/config/cmake_config.txt's set(MainFile "{filename}") to set which source C file to use. (e.g. 'main/ADMP441/main-dualcore.c', filename should be the relative path from the project root)
  4. Do $ cp sdkconfig.sample sdkconfig to copy recommended configs.
  5. Run idf.py menuconfig. Under Project Configuration, set your Wi-Fi AP, and the receiver's address and the port to send the UDP packets.
  6. Run idf.py -p /dev/ttyUSB0 flash monitor to flash and monitor. This compiles the sources too.
  7. (Run idf.py -p /dev/ttyUSB0 monitor if you don't need to flash.)

If an error occurs during compilation, check if you have ESP-IDF correctly installed, or, check idf.py menuconfig (or the sdkconfig file directly) and see for example if your Serial port is configured correctly.

Links

About

A more simple version of AES67 packet sender via WiFi (experiment)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published