.cargo | ||
.github | ||
ad9959 | ||
book | ||
dsp | ||
hitl | ||
miniconf-mqtt | ||
nix | ||
py | ||
scripts | ||
src | ||
.gitignore | ||
.rustfmt.toml | ||
build.rs | ||
Cargo.lock | ||
Cargo.toml | ||
CHANGELOG.md | ||
Embed.toml | ||
LICENSE.APACHE2 | ||
LICENSE.MIT | ||
memory.x | ||
mosquitto.conf | ||
openocd.gdb | ||
README.md | ||
shell.nix | ||
stabilizer_pid.png | ||
stabilizer.cfg |
Pounder_test
This Pounder quick noise floor test folder is forked from quartiq_stabilizer. Check out quartiq/stabilizer github page for more details.
For this quick test, I simply hard code the Pounder DDS setting in the init section in src/bin/pdh-test.rs , currently the DDS setting in this pdh-test has no MQTT control support yet. The stabilizer DAC is disabled and set to 0 here for simplicity. Change anything ask you like.
How to use this
This nix shell cotains rust, mqtt-explorer ... and python packages of gmqtt, miniconf-mqtt and some other packages. Simply clone this repo and run this to set up the environment. I only tested it with nixos-21.05 channel.
nix-shell shell.nix
Connect stabilizer JTAG connector to a ST-link V2 (or other debuggers) and then connect the debugger to your PC. Run the pdh-test.rs by calling this in the terminal: (Cargo.toml default features contain pounder_v1_1 and the broker IP is set to be 192.168.1.139 , change it if necessary)
BROKER="192.168.1.139" cargo run --release --bin pdh-test
Open another terminal and start mosquitto broker with this:
mosquitto -c mosquitto.conf
Open another terminal and change the stabilizer setting via MQTT. For example this will change the gain of the stabilizer ADC_ch0 to 10 (change the broker IP and topic path's mac address to your own one) and you should see the update log in the cargo run terminal:
python -m miniconf --broker 192.168.1.139 dt/sinara/pdh-test/04-91-62-d9-f5-e5 afe/0='"G10"'
Another example is to start the stabilizer UDP datastream, which is currently streaming data of (adc_0, adc_1, dac_0, dac_1). You can change the UDP listener IP and port. To turn it off, just set the target ip to 0.0.0.0 and port to 0.
python -m miniconf --broker 192.168.1.139 dt/sinara/pdh-test/04-91-62-d9-f5-e5 stream_target='{"ip":[192,168,1,139], "port":1883}'
To see and plot the stabilizer ADC_ch0 data, run this. Change the port and the python file if you want to plot data of other adc or dac channel.
python scripts/stabilizer_adc_stream_test.py --port 1883