Skip to content

Releases: ncsurobotics/SW8A-AcousticsFPGA

Summer 2024 version

21 Nov 01:02
1fbe2da
Compare
Choose a tag to compare
Summer 2024 version Pre-release
Pre-release

The Summer 2024 version of the Acoustics FPGA codebase. Requires Vivado 2022.2 and builds for the Basys 3.

Features:

  • Cross correlation based angle-of-arrival estimate: the FPGA computes the cross correlation between two hydrophone signals, and sends an index (between 0 and 128) over UART. This index then needs to be converted into an angle by the receiving computer (i.e. Jetson, laptop)
  • Working UART module
  • Working? SPI module to interface with the LTC1197 ADCs. The SPI is suspected to have a bug.
  • Clock Domain Crossing (CDC) between 3 different clock domains: UART, SPI, and main (100 MHz)
  • Fixed hold violations

Known major issues:

  • Potential SPI bug
  • Bad trigger: the trigger simply runs an FFT and checks for a frequency spike at 30 kHz (frequency is configurable). Setting the "threshold" for this trigger requires a lot of trial and error in an actual pool test. Additionally, the cross correlation requires the beginning of the ping to function, so an actual edge trigger is needed.
  • Cross correlation problems: As mentioned above, the CC requires the beginning of the ping to function. For this and other reasons, we're switching to a Bartlett beamformer in future versions.
  • Timeout: The 10ms timeout to avoid retriggering on the same ping does not work in a bucket test. This may be due to reflections. We haven't successfully triggered in a pool.

Documentation of this version will be available here.