unzip gonk_bundle.zip cd gonk_bundle ./setup.sh
. ./python-venv/bin/activate gonk-flash
or without activating the Python virtualenv:
./python-venv/bin/gonk-flash
By default these log files are created:
--logfile gonk-host-log.txt
--device-logfile gonk-device-log.txt
--csv-logfile gonk-csv-log.txt
Note: Log files are always appended to whenever running gonk
. You can truncate the files on startup with --truncate-logfiles
.
Optionally you can add ADC json output with --json-logfile gonk-device-logs.json
. That will produce a json lines file with each line corresponding to one ADC
gonk --log-to-stderr --bitstream-file DEFAULT
This will provision the FPGA and begin logging ADC measurements.
The FPGA bitstream file is sent over serial first. This should only be one once per power cycle. You can skip this step by omitting the --bitstream-file
option.
20240507 12:35:32 [gonk] INF Waiting for bitstream -- lib/fpga_control/fpga_control.cc:53 20240507 12:35:33 [gonk] INF Waiting for bitstream -- lib/fpga_control/fpga_control.cc:53 20240507 12:35:34 [host] INF Sending bitstream... 20240507 12:35:34 [gonk] INF Waiting for bitstream -- lib/fpga_control/fpga_control.cc:53 20240507 12:35:34 [gonk] INF Discard byte: 1 -- lib/fpga_control/fpga_control.cc:65 20240507 12:35:34 [gonk] INF Discard byte: 2 -- lib/fpga_control/fpga_control.cc:65 20240507 12:35:34 [gonk] INF Discard byte: 3 -- lib/fpga_control/fpga_control.cc:65 20240507 12:35:34 [gonk] INF Discard byte: 4 -- lib/fpga_control/fpga_control.cc:65 20240507 12:35:34 [gonk] INF Start Sequence found. -- lib/fpga_control/fpga_control.cc:71 20240507 12:35:35 [gonk] INF Got bytes: 4096 -- lib/fpga_control/fpga_control.cc:84 ... 20240507 12:35:36 [gonk] INF Got bytes: 4096 -- lib/fpga_control/fpga_control.cc:84 20240507 12:35:36 [host] INF Done sending bitstream. Wrote 135100 20240507 12:35:37 [gonk] INF Got bytes: 4024 -- lib/fpga_control/fpga_control.cc:84 20240507 12:35:37 [gonk] INF All 135100 bytes recieved. -- lib/fpga_control/fpga_control.cc:92 20240507 12:35:37 [gonk] INF File ready: 135096 -- lib/fpga_control/fpga_control.cc:102 20240507 12:35:37 [gonk] INF First 12 bytes -- lib/fpga_control/fpga_control.cc:104 ... 20240507 12:35:37 [gonk] INF Last 12 bytes -- lib/fpga_control/fpga_control.cc:109 ... 20240507 12:35:37 [gonk] INF Sending bitstream file to the FPGA. -- lib/fpga_control/fpga_control.cc:118 20240507 12:35:37 [gonk] INF FPGA Config Success. -- lib/fpga_control/fpga_control.cc:162
ADC measurements begin logging.
20240927 13:17:33 [gonk] INF host_time: 20240927 13:17:33.861429 size: 72 delta_microseconds: 283 vbus: 0.7992187500000001, 1.0109375, 5.1365234375, 1.0869140625, 0.9955078125000001, 3.3822265625, 1.8113281250000002 vshunt: 0.3496354166666667, 0.048240625, 0.28776875, 0.07383203125, 0.13364583333333332, 0.2599479166666667, 0.005157500000000001 power: 0.27943518066406253, 0.0487682568359375, 1.4781309289550784, 0.08024907302856445, 0.13304547119140625, 0.8792027486165367, 0.009341924804687502 ... 20240927 13:17:33 [gonk] INF host_time: 20240927 13:17:33.861758 size: 72 delta_microseconds: 287 vbus: 0.8146484375, 0.995703125, 5.1365234375, 1.0869140625, 0.9955078125000001, 3.3822265625, 1.7966796875000002 vshunt: 0.34727083333333336, 0.048484375, 0.24190000000000003, 0.07353125, 0.1345138888888889, 0.26787500000000003, 0.00515625 power: 0.282903641764323, 0.04827604370117188, 1.2425250195312503, 0.07992214965820313, 0.13390962727864586, 0.9060139404296876, 0.009264129638671877
Measurements can be stopped or started by pressing Enter
. This text should appear in the terminal:
[Send: '\n']
Followed shortly by a message from Gonk stopping continuous reading:
20240507 12:35:40 [gonk] INF Stopping ADC Continuous Reads. -- applications/gonk/main.cc:134 20240507 12:35:41 [gonk] INF ADC Idle -- applications/gonk/main.cc:114 20240507 12:35:42 [gonk] INF ADC Idle -- applications/gonk/main.cc:114 20240507 12:35:43 [gonk] INF ADC Idle -- applications/gonk/main.cc:114
Pressing Enter
again will resume continuous reading.
Ctrl-C
will exit the gonk app.
You can create an SVG of the plot data stored in gonk-csv-log.txt
with:
gonk-plot -i gonk-csv-log.txt -o plot.svg
Omit the svg output option to start an interactive matplotlib window:
gonk-plot -i gonk-csv-log.txt