Trying to set up a HiFiBerry DSP. Managed to get everything installed and running on the Pi4, and a connection to SigmaStudio to install dacdsp-v11 project/profile.
However trying to create a basic interface using DSPToolkit - it appears I can correctly set the MasterVolume fader:
eg: (0.0dB) dsptoolkit write-mem 0x2F 0x01000000
(Where the exported Sigma Header lists:
#define MOD_MASTERVOL_ALG0_TARGET_ADDR 47 = 0x2F)
But when I read the same register back, I get a different value:
dsptoolkit read-hex 0x2F
00 80 00 00
The data value returned changes when the fader is adjusted via the dsptoolkit, or via the SigmaStudio GUI, but never returns the expected value.
I cannot see any obvious relationship between the 'expected' and 'returned' numbers (they're not obviously byte-swapped, bit-shifted, or bit-reversed).
Have I gotten something obvious wrong, or is this maybe a bug in the SPI readback process within the DSPToolkit??
Expected: 0x00CB5918 Readback: 00 72 96 86
Expected: 0x0000068E Readback: 00 00 01 63
Expected: 0x00028F5C Readback: 00 00 63 97