Robert Jördens
ddbfa9d988
timestamping: docs and naming
2021-02-02 14:34:48 +01:00
Robert Jördens
e1c87c149f
timestamping_timer: also reset counter
2021-02-02 13:25:45 +01:00
Robert Jördens
854ed29b1a
timestamp: pass overflows to the top and ignore them there
2021-02-02 12:34:20 +01:00
Robert Jördens
4475a2d040
timestamping: full u32 range
...
The sampling timer and the timestamping timer have the same period.
The sampling interval and the batch size are powers of two.
If the timestamping timer wraps at a power of two larger than the
batch period, it will wrap in sync with the batch period.
Even if it didn't the RPLL would handle that. But it requires that the
timer wraps at the u32/i32 boundary (or be shifted left to wrap there).
2021-02-02 11:36:10 +01:00
Robert Jördens
2144af5bcd
configuration: update to HITL ips
2021-02-01 19:32:20 +01:00
Robert Jördens
24a4486847
lockin-internal: rotate samples
2021-02-01 19:31:57 +01:00
Robert Jördens
9ee60824d4
lockin-internal: align processing with lockin-external
2021-02-01 18:15:51 +01:00
Robert Jördens
f9b5d29450
lockin: de-nest processing flow
2021-02-01 18:14:09 +01:00
Robert Jördens
b6e22b576b
iir: add const fn new()
2021-02-01 17:18:10 +01:00
Robert Jördens
656e3253ab
lockin-internal: document, streamline sequence
2021-02-01 17:09:06 +01:00
Robert Jördens
65a3f839a0
lockin: remove feed()
2021-02-01 13:42:38 +01:00
Robert Jördens
2c60103696
dsp: accu: add, iir: rename IIRState to Vec5
2021-02-01 12:23:47 +01:00
Robert Jördens
46a7d67027
lockin-internal: rename, adapt
2021-01-31 19:26:11 +01:00
Robert Jördens
6e1444f070
Merge pull request #247 from quartiq/dsp-iir-benches
...
Dsp iir benches
2021-01-31 19:24:56 +01:00
Robert Jördens
8dc811da11
Merge pull request #240 from vertigo-designs/feature/lockin-app-refactor
...
Adding internal lock-in integration demo
2021-01-31 19:14:08 +01:00
Robert Jördens
47089c267c
dsp: align iir and iir_int, add iir micro benches
2021-01-31 19:12:24 +01:00
Robert Jördens
80055076b8
lockin: scale output
2021-01-31 17:41:20 +01:00
Robert Jördens
82c8fa1a07
rpll: extend tests
2021-01-31 17:10:03 +01:00
Robert Jördens
ab20d67a07
rpll: remove redundant time tracking
2021-01-31 13:42:15 +01:00
Ryan Summers
096f786795
Expanding miniconf to lockin
2021-01-30 18:57:06 +01:00
Ryan Summers
411a847a88
Updating smoltcp-nal
2021-01-30 18:48:27 +01:00
Robert Jördens
0d1b237202
complex: richer API
2021-01-30 18:05:54 +01:00
Ryan Summers
9a1bb5da91
Fixing build
2021-01-30 15:07:26 +01:00
Ryan Summers
b73286c188
Removing MQTT interface
2021-01-30 15:00:58 +01:00
Ryan Summers
e954ba3c52
Merge branch 'master' into feature/mqtt-convert
2021-01-30 14:48:54 +01:00
Ryan Summers
8b46c3c768
Updating internal lockin demo
2021-01-29 18:55:54 +01:00
Ryan Summers
b152343aaf
Style
2021-01-29 11:05:46 +01:00
Ryan Summers
ab7d725235
Updating lockin demo after testing
2021-01-29 11:01:21 +01:00
Ryan Summers
1ebbe0f6d7
Cleaning up demo
2021-01-29 10:11:56 +01:00
Ryan Summers
cf8b06be81
Merge branch 'master' into feature/lockin-app-refactor
2021-01-29 10:06:45 +01:00
Ryan Summers
c628b8d57a
Update src/bin/lockin-internal-demo.rs
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-01-29 09:55:23 +01:00
Robert Jördens
c34e330663
lockin: fmt
2021-01-28 23:00:55 +01:00
Robert Jördens
36288225b3
rpll: extend to above-nyquist frequencies
2021-01-28 22:21:42 +01:00
Ryan Summers
702ccc231d
Using custom branch of miniconf
2021-01-27 18:15:35 +01:00
Robert Jördens
1749d48ca3
Revert "rpll: auto-align counter"
...
This reverts commit dbacc5293e12f712fef7bd85848e1b0bd8fde823.
2021-01-27 09:01:07 +01:00
Robert Jördens
45e7d6de3c
rpll: auto-align counter
2021-01-27 09:01:07 +01:00
Ryan Summers
a772ccc38a
Adding WIP updates for StringSet
2021-01-26 19:14:23 +01:00
Robert Jördens
7b9fc3b2b3
iir_int: move lowpass coefficient calculation to iirstate
2021-01-26 18:51:20 +01:00
Robert Jördens
ea7b08fc64
rpll: refine
2021-01-26 14:40:44 +01:00
Ryan Summers
f0e7c153ba
Adding WIP refactor for MQTT + settings
2021-01-26 14:28:06 +01:00
Ryan Summers
c030b97714
Apply suggestions from code review
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-01-26 12:49:45 +01:00
Ryan Summers
51085d175e
Removing dead-code allowance
2021-01-26 12:23:17 +01:00
Ryan Summers
e161f49822
Adding WIP lockin demo
2021-01-26 12:21:44 +01:00
Ryan Summers
43ff186bc6
Merge branch 'master' into feature/lockin-app-refactor
2021-01-26 10:53:25 +01:00
Ryan Summers
7c5a74c35e
Renaming internal lockin
2021-01-26 10:52:35 +01:00
Robert Jördens
9f9744b9e6
rpll: implement
2021-01-25 11:45:59 +01:00
Robert Jördens
df337f85b8
reciprocal_pll -> rpll
2021-01-25 09:54:56 +01:00
Robert Jördens
57a5c4ff9b
make lockin a unittest, not integration test
2021-01-22 16:04:02 +01:00
Robert Jördens
d0d2c6352d
lockin: refactor to use common lockin processing
2021-01-22 16:00:05 +01:00
Robert Jördens
0cd2140668
rafactor complex, cossin, atan2
2021-01-21 16:12:59 +01:00
Robert Jördens
948e58c910
lockin: refactor Lockin
2021-01-21 14:57:44 +01:00
Robert Jördens
5af2b9c63a
fmt
2021-01-20 15:34:56 +01:00
Robert Jördens
c078de05cc
lockin: fix adc value conversion
2021-01-20 15:31:46 +01:00
Robert Jördens
d014ed0fe0
add lockin bin
2021-01-20 14:29:29 +01:00
Robert Jördens
603d6df6a4
Merge branch 'master' into lockin-bin
...
* master:
Reordering lib.rs
Removing main.rs
Adding support for multiple applications
Fixing build
Moving panic configuration
Reordering
Refactoring to support multiple apps
2021-01-20 14:19:28 +01:00
Robert Jördens
507e334ec5
lockin: tweak impl
2021-01-20 14:07:57 +01:00
Ryan Summers
4d0b1b5566
Reordering lib.rs
2021-01-20 13:44:53 +01:00
Ryan Summers
86355c9c5d
Removing main.rs
2021-01-20 13:44:16 +01:00
Ryan Summers
26677063ea
Adding support for multiple applications
2021-01-20 13:43:34 +01:00
Ryan Summers
2ef27b8187
Formatting
2021-01-20 12:55:55 +01:00
Ryan Summers
b2cbc6791d
Restructuring
2021-01-20 12:55:45 +01:00
Ryan Summers
f1f15aca65
Refactoring app structure
2021-01-20 12:49:07 +01:00
Ryan Summers
a715680482
Merge branch 'master' into feature/lockin-app-refactor
2021-01-20 12:36:20 +01:00
Robert Jördens
778f4ac4d5
lockin: wrapping_neg
2021-01-19 11:30:12 +01:00
Robert Jördens
720b143132
Merge remote-tracking branch 'origin/master' into lockin-bin
...
* origin/master:
Updating timer compare offsets
Removing dac isr clear
Adding information about DSP timing specifications
Specifying consequences of failing to meet timing
Updating dependencies
Apply suggestions from code review
Adding documentation about double-buffered mode to DACs
Updating DACs to utilize DBM
Adding safety documentation
Adding docs
Updating DAC output format, adding DDS stream docs
Adding documentation for ADCs and DACs
2021-01-19 11:12:50 +01:00
Robert Jördens
20488ea3bc
lockin: refine
2021-01-19 11:01:21 +01:00
Ryan Summers
ac06f811ab
Adding framework for initial lockin demo
2021-01-18 18:02:00 +01:00
Ryan Summers
573189bdd9
Fixing build
2021-01-18 17:23:21 +01:00
Ryan Summers
9d90d7b0d2
Adding WIP apps
2021-01-18 17:20:33 +01:00
Ryan Summers
6618e921fe
Moving panic configuration
2021-01-18 16:55:56 +01:00
Ryan Summers
8dd72ae75e
Reordering
2021-01-18 16:52:09 +01:00
Ryan Summers
20535a721d
Refactoring to support multiple apps
2021-01-18 16:47:47 +01:00
Ryan Summers
7a2f950667
Updating timer compare offsets
2021-01-18 13:41:23 +01:00
Ryan Summers
598a48b178
Merge branch 'master' into feature/io-docs
2021-01-18 13:25:03 +01:00
Matt Huszagh
f0eb58dfb2
swap sin and cos for demodulation
...
The in-phase component should be multiplied by the sin value and the
quadrature component should be multiplied by the cos value.
2021-01-14 14:51:07 -08:00
Matt Huszagh
9d0aa40ce8
Revert "revert changes in main.rs and server.rs"
...
This reverts commit e599977983
.
2021-01-13 09:54:04 -08:00
Matt Huszagh
e599977983
revert changes in main.rs and server.rs
2021-01-13 08:59:27 -08:00
Matt Huszagh
76088efda5
dsp: add reciprocal_pll
2021-01-13 08:37:33 -08:00
Matt Huszagh
6aad92af43
fix bug in which real signal component is assigned twice
2021-01-12 18:36:18 -08:00
Matt Huszagh
07b7201b49
fix cargo fmt style
2021-01-12 17:26:42 -08:00
Matt Huszagh
a0d472b398
use only integer iir
2021-01-12 17:21:55 -08:00
Matt Huszagh
f974f4099c
remove TODO note relating ADC_BATCHES and calculate_timestamp_timer_period
...
Having both is not really redundant.
2021-01-12 16:17:58 -08:00
Matt Huszagh
80ed715f5a
shift sin/cos before demodulation product to avoid i64
2021-01-12 16:07:04 -08:00
Matt Huszagh
41ea2ebed4
use round up half integer rounding
2021-01-12 15:59:03 -08:00
Matt Huszagh
4c033c0f3e
move timestamp handling into new TimestampHandler struct
2021-01-12 13:06:49 -08:00
Matt Huszagh
e14aa8b613
move lock-in code to main.rs
2021-01-12 10:45:34 -08:00
Matt Huszagh
028f4a1bb2
fix small typos
2021-01-12 07:36:56 -08:00
Ryan Summers
db3a42a7b9
Update src/adc.rs
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-01-12 06:54:16 -08:00
Ryan Summers
bcf7a59993
Removing dac isr clear
2021-01-12 14:15:45 +01:00
Ryan Summers
09ecd3291a
Merge branch 'rs/issue-219/adc-setup' into feature/io-docs
2021-01-12 14:02:19 +01:00
Ryan Summers
6b170c25ed
Fixing timing synchronization
2021-01-12 13:29:15 +01:00
Ryan Summers
91975993cf
Fixing docs
2021-01-11 12:38:20 +01:00
Ryan Summers
d5c21efc9d
Adding extra DMA transfer to clear TXTF in ADC SPI transfers
2021-01-11 12:31:15 +01:00
Ryan Summers
5eab732d93
Adding information about DSP timing specifications
2021-01-06 15:38:04 +01:00
Ryan Summers
56366a013f
Specifying consequences of failing to meet timing
2021-01-06 15:34:12 +01:00
Ryan Summers
4b3ceb0c0b
Merge branch 'feature/io-docs' of github.com:vertigo-designs/stabilizer into feature/io-docs
2021-01-06 15:12:25 +01:00
Ryan Summers
eefb2acfda
Updating dependencies
2021-01-06 15:12:03 +01:00
Ryan Summers
cd4721b506
Merge branch 'master' into feature/io-docs
2021-01-06 15:10:30 +01:00
Ryan Summers
f825f52785
Apply suggestions from code review
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-01-06 06:08:07 -08:00
Ryan Summers
18068082ac
Fixing CI
2021-01-06 15:04:06 +01:00
Ryan Summers
e9cef7bbac
Fixing after review
2021-01-06 14:59:01 +01:00
Ryan Summers
8a98428ed4
Adding documentation
2021-01-06 14:42:36 +01:00
Ryan Summers
37595405c3
Merge branch 'feature/digital-input-stamp' into feature/pounder-timestamping
2021-01-06 13:34:55 +01:00
Ryan Summers
da34756df7
Adding support for pounder v1.1
2021-01-06 13:29:19 +01:00
Ryan Summers
3332a8e927
Updating branch dependencies
2021-01-06 12:59:24 +01:00
Ryan Summers
9e7bfd4371
Adding updates after review
2021-01-06 12:24:09 +01:00
Ryan Summers
2b6e6f59a4
Adding comment about sample rate
2021-01-04 18:09:16 +01:00
Ryan Summers
7ecd08d86b
More updates after PR review
2021-01-04 18:04:01 +01:00
Ryan Summers
67b6990fc0
Addressing PR review
2021-01-04 17:12:24 +01:00
Ryan Summers
ee8f4d849f
Adding documentation about double-buffered mode to DACs
2020-12-17 14:32:53 +01:00
Ryan Summers
fb1ea765ce
Updating DACs to utilize DBM
2020-12-17 14:27:47 +01:00
Ryan Summers
ec2aaecb48
Adding safety documentation
2020-12-17 14:11:28 +01:00
Ryan Summers
8fb37c2db9
Adding docs
2020-12-17 14:10:36 +01:00
Ryan Summers
438b291974
Updating DAC output format, adding DDS stream docs
2020-12-17 14:09:18 +01:00
Ryan Summers
8e4a7c8fa9
Adding documentation for ADCs and DACs
2020-12-15 16:46:12 +01:00
Ryan Summers
fc81f3d55d
Removing DMA support from DI0 timestamping
2020-12-15 14:34:14 +01:00
Ryan Summers
352884ea06
Fixing pounder timestamps after manual testing
2020-12-15 13:13:05 +01:00
Ryan Summers
72d14adfbf
Adding support for pounder ETR timestamping
2020-12-09 18:19:33 +01:00
Ryan Summers
e9d74ae6da
Adding support for pounder DDS timestamping
2020-12-09 15:13:04 +01:00
Ryan Summers
f8cab17ffc
Adding WIP for pounder timestamps
2020-12-09 13:44:26 +01:00
Ryan Summers
2e0681ebcc
Fixing power-of-two calculation
2020-12-08 16:38:07 +01:00
Ryan Summers
645a1cd832
Updating timestamper after testing
2020-12-08 16:14:27 +01:00
Ryan Summers
3886dab961
Update src/digital_input_stamper.rs
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2020-12-08 15:15:58 +01:00
Ryan Summers
4da892b8a2
Update src/digital_input_stamper.rs
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2020-12-08 15:15:51 +01:00
Ryan Summers
1a1d8fd8b9
Adding precise control of timer periods and prescalers
2020-12-08 14:25:46 +01:00
Ryan Summers
a134340726
Adding direct and DMA collection support for DI0 timestamps
2020-12-08 13:53:34 +01:00
Ryan Summers
f2e4f497fa
Removing DBM from input stamper
2020-12-08 11:29:59 +01:00
Ryan Summers
c00ac46c2c
Merge branch 'master' into feature/qspi-stream
2020-12-07 18:51:32 +01:00
Ryan Summers
35b4287fe1
Merge branch 'feature/qspi-stream' into feature/digital-input-stamp
2020-12-07 18:49:35 +01:00
Ryan Summers
551cc5d742
Adding support for DBM
2020-12-07 18:44:45 +01:00
Ryan Summers
6eaf2cc073
Updating timestamp buffer logic
2020-12-07 18:19:20 +01:00
Ryan Summers
b191a3f01d
Updating timestamp timer to be more precise
2020-12-07 18:11:46 +01:00
Ryan Summers
ec046bc42d
Refactoring timer timestamping
2020-12-07 17:58:36 +01:00
Ryan Summers
fc81c8b5d8
Updating API
2020-12-07 17:29:36 +01:00
Ryan Summers
93ab3b7dfd
Merge branch 'master' into feature/digital-input-stamp
2020-12-07 16:12:55 +01:00
Ryan Summers
14a647867a
Updating after review
2020-12-07 10:55:09 +01:00
Robert Jördens
4f8bdb971b
main.rs: style
2020-12-04 18:22:53 +01:00
Robert Jördens
b23d5fa0dc
main.rs: whitespace
2020-12-04 18:22:38 +01:00
Niklas Kuhrmeyer
24222821b5
Added cascaded IIR with server commands for up to 2 cascaded IIRs per channel.
2020-12-03 14:10:28 +01:00
Ryan Summers
f4a4357396
Fixing semantics
2020-12-02 18:08:49 +01:00
Ryan Summers
677d017c3c
Adding documentation
2020-12-02 17:40:24 +01:00
Ryan Summers
91f722f450
Fixing buffer size
2020-12-02 17:11:06 +01:00
Ryan Summers
d3bb5ab0e4
Merge branch 'master' into feature/qspi-stream
2020-12-02 17:08:33 +01:00
Ryan Summers
d93d0c7125
Adding updated QSPI stream writer
2020-12-02 17:01:40 +01:00
Robert Jördens
31fcdcc97d
Merge branch 'master' into feature/adc-dac-io-macros
...
* master:
cargo: add docs for target cpu/features
iir: more generic math helpers, use core::intrinsics
cargo fmt [nfc]
iir: vminnm/vmaxnm
iir: fmt [nfc]
iir: fix comment [nfc]
cargo-config: cm7 features
iir: copy_within is better than rotate_right
processing: use faster unsafe truncate
2020-12-02 14:56:52 +01:00
Ryan Summers
01a169ca69
Merge branch 'master' into feature/qspi-stream
2020-12-02 14:13:53 +01:00
Robert Jördens
34d59dac5d
adc: merge acquire_buffer and release_buffer again
2020-11-30 15:38:23 +01:00
Robert Jördens
b1301a6184
dac,adc: spelling
2020-11-30 15:06:15 +01:00
Robert Jördens
c72f959933
Merge remote-tracking branch 'origin/master' into feature/adc-dac-io-macros
...
* origin/master:
more nightly clippy lints
clippy lints
gha: clippy-check
build(deps): bump paste from 1.0.2 to 1.0.3
build(deps): bump panic-semihosting from 0.5.4 to 0.5.6
2020-11-30 15:03:42 +01:00
Robert Jördens
8769194166
Merge remote-tracking branch 'origin/master' into feature/iir-tweaks
...
* origin/master:
more nightly clippy lints
clippy lints
gha: clippy-check
build(deps): bump paste from 1.0.2 to 1.0.3
build(deps): bump panic-semihosting from 0.5.4 to 0.5.6
2020-11-30 12:57:58 +01:00