Commit Graph

666 Commits (323ed54989992b613d65a0bb9711728ac24cf22a)

Author SHA1 Message Date
Robert Jördens 475f2b3dd2 panic: fmt 2021-03-03 17:00:29 +01:00
Robert Jördens 843173f29d panic: always turn on red leds, and halt 2021-03-03 16:36:10 +01:00
Robert Jördens e2b54d0e53 binaries: move MQTT_ADDRESS to design_parameters
until some better design with DHCP and/or (m)DNS is implemented
2021-03-03 15:01:28 +01:00
Robert Jördens ca6596c7b8 cli: rework
* use plain json for argument format
* rename feedback -> response to match code
* reorganize args
* tweak variable names to be more in line with miniconf and mqtt
* use `mqtt` as broker
* remove traces of stabilizer from script, rename to miniconf.py
* add usage example

* dual-iir/lockin-external: update broker address (for HITL),
  change mqtt path to convention
2021-03-02 19:21:42 +01:00
Robert Jördens 1e411c1548 lockin-external: Miniconf changes 2021-03-02 17:33:53 +01:00
Robert Jördens ca66894d51 Merge remote-tracking branch 'origin/feature/miniconf-update' into lockin-external-miniconf
* origin/feature/miniconf-update:
  Adjusting sleep semantics
  Fixing negation
  Restoring sleep semantics
  Updating dependencies
  Updating id semantics
  Updating dependencies
  Updating minimq/miniconf dependencies
  Updating miniconf dependencies
2021-03-02 17:24:58 +01:00
Ryan Summers a9d16a1632 Adjusting sleep semantics 2021-03-02 17:20:31 +01:00
Ryan Summers aca524ec85 Fixing negation 2021-03-02 17:17:51 +01:00
Ryan Summers c13eaaba4c Restoring sleep semantics 2021-03-02 17:16:40 +01:00
Ryan Summers 4358d07dab Updating id semantics 2021-03-02 17:09:10 +01:00
Ryan Summers c2b00db9e9 Updating minimq/miniconf dependencies 2021-03-02 16:43:19 +01:00
Robert Jördens 733d4243c3 lockin-external: expand output config 2021-03-02 11:46:19 +01:00
Robert Jördens 6a96160cd0 dual-iir: fix panic message 2021-03-01 19:49:21 +01:00
Robert Jördens 66536c9978 lockin-external: add miniconf 2021-03-01 19:48:45 +01:00
Ryan Summers c553e72df4 Updating miniconf dependencies 2021-03-01 14:46:12 +01:00
Robert Jördens 41f6d971c3 avoid clippy better 2021-02-23 17:22:53 +01:00
Robert Jördens 016323c94d avoid clippy 2021-02-23 17:15:07 +01:00
Robert Jördens e86f449dc0 lockin bins: remove stale todos, align and document [nfc] 2021-02-23 16:58:13 +01:00
Robert Jördens 6c6c2e64a7 lockin: make order generic 2021-02-23 16:58:13 +01:00
Ryan Summers 65a0831e2d Merge branch 'master' into feature/mqtt-convert 2021-02-19 10:30:51 +01:00
Robert Jördens ccec9d7fed complex: rename extension trait, fix MulScaled 2021-02-19 09:29:38 +01:00
Robert Jördens 33b9b41405 lowpass: saturating math since it's free 2021-02-18 18:51:29 +01:00
Robert Jördens c0457787bb lockin-external: use enum 2021-02-18 18:43:45 +01:00
Robert Jördens f050ba8e9f lockin: let the lowpass do all filtering 2021-02-18 14:29:47 +01:00
Robert Jördens 07b7751dbc move lowpass gain outside lowpass/lockin 2021-02-18 14:25:54 +01:00
Robert Jördens 9983fad041 dsp: use num 2021-02-18 14:07:43 +01:00
Ryan Summers 90ef0836af Fixing style 2021-02-17 17:56:49 +01:00
Ryan Summers 63a2220fa0 Removing support for configuring IIR state 2021-02-17 17:56:18 +01:00
Ryan Summers a55b30e6c4 Working around dependency injection bug 2021-02-17 17:50:17 +01:00
Ryan Summers e8c4829790 Adding docs for the cycle counter 2021-02-17 17:26:54 +01:00
Ryan Summers 3c8cd58d6f Removing lockin-external changes 2021-02-17 17:22:43 +01:00
Ryan Summers 50476f68fd Adding settings support for lockin-external 2021-02-17 16:53:53 +01:00
Robert Jördens b69131f5f5 impl trait on type alias instead of newtypes 2021-02-17 16:13:30 +01:00
Ryan Summers cb16e9a85f Updating settings update function 2021-02-17 12:59:24 +01:00
Ryan Summers 13e02710cd Adding simplified clocking semantics 2021-02-17 12:08:03 +01:00
Ryan Summers 9e1f4a864c Merge branch 'master' into feature/mqtt-convert 2021-02-17 11:44:10 +01:00
Robert Jördens aeaeac1f17 add comment on dma2 init 2021-02-16 15:58:16 +01:00
Robert Jördens fdb0c40764 fmt 2021-02-16 15:22:58 +01:00
Ryan Summers 3abd47494b Fixing DMA2 instantiation issue 2021-02-16 15:10:00 +01:00
Robert Jördens efbf750b20 Merge remote-tracking branch 'origin/master' into rj/misc
* origin/master:
  Upgrade to serde-json-core v0.2.0
2021-02-15 08:55:40 +01:00
Robert Jördens 5fc45a659b lockin-external: comment style [nfc] 2021-02-15 08:51:19 +01:00
Robert Jördens b581a016ce lockin: redundant new 2021-02-14 17:55:01 +01:00
David Nadlinger 4130292706 Upgrade to serde-json-core v0.2.0
This also fixes the network interface for writing IIR coefficients.
2021-02-13 00:07:15 +00:00
Robert Jördens a6d4099ed3 lowpass: expose natural gain, add bias 2021-02-12 11:06:59 +01:00
Robert Jördens 32b7058b47 lockin: 2nd order lowpass 2021-02-11 23:15:32 +01:00
Robert Jördens b49f0a2eb9 complex: log2, update bins 2021-02-11 18:14:28 +01:00
Robert Jördens 3ae0b710bc lowpass: reimplement better 2021-02-11 14:30:05 +01:00
Robert Jördens 30c2c2aac2 lowpass: i32, no multiplies 2021-02-10 11:39:19 +01:00
Robert Jördens 208ba8379a dsp, lockin: use cascaded 1st order lowpasses 2021-02-09 20:37:46 +01:00
Ryan Summers 724768a72e Adding safety docs 2021-02-09 14:37:49 +01:00
Ryan Summers 2e358dea26 Adding support for input capture prefilter configuration 2021-02-09 14:36:50 +01:00
Robert Jördens 611bd3e855 ad9959/pounder: tweaks
* make a trait public
* use self-test
* this hasn't been tested
2021-02-08 15:24:52 +01:00
Robert Jördens 1b46f081c1 better formatting 2021-02-08 11:26:58 +01:00
Robert Jördens deed11f110 lockin-external: simplify 2021-02-05 18:59:22 +01:00
Robert Jördens 0343e5d8ab pounder timer is u16 2021-02-04 16:51:34 +01:00
Robert Jördens f19988a1bd up the sample rate 2021-02-04 15:42:45 +01:00
Robert Jördens 2d492055f3 pounder stamper: overflow at u32 boundary 2021-02-04 15:42:29 +01:00
Robert Jördens 8314844aeb pounder: moved SAMPLE_BUFFER_SIZE 2021-02-04 13:36:24 +01:00
Robert Jördens d32378e6c4 lockin-external: ignore timestamps related to capture overflows 2021-02-04 12:48:58 +01:00
Robert Jördens f47ee38d31 move sample ticks and buffer size to design parameters 2021-02-04 12:48:25 +01:00
Robert Jördens 7ce90c4d31 input stamper: add deglitching 2021-02-04 12:47:35 +01:00
Ryan Summers 91f16c2961 Adding working example 2021-02-03 19:55:58 +01:00
Robert Jördens c557348523 core_intrinsics attr need to be in the lib crate 2021-02-03 15:26:13 +01:00
Ryan Summers 738516eedb Adding broken example 2021-02-03 15:13:37 +01:00
Robert Jördens 5945cfca75
Merge pull request #258 from vertigo-designs/feature/input-capture-fixes
Updating input capture for timers
2021-02-03 14:54:55 +01:00
Ryan Summers ef22f5ab92 Fixing pounder input capture source 2021-02-03 14:11:00 +01:00
Ryan Summers 9e1a6ec4d5 Updating dependencies 2021-02-03 14:06:09 +01:00
Ryan Summers 913990d531 Merge remote-tracking branch 'origin/rj/bump-hal-smoltcp' into feature/mqtt-convert 2021-02-03 14:02:20 +01:00
Ryan Summers 4e6f65b3e0 Fixing spacing 2021-02-03 13:42:43 +01:00
Robert Jördens 672ddfa3c3 pounder: also adapt to new hal 2021-02-03 13:25:00 +01:00
Robert Jördens c5fde8563c deps: bump hal and smoltcp, adapt 2021-02-03 13:16:22 +01:00
Ryan Summers b57b666473 Updating input capture for timers 2021-02-03 13:03:17 +01:00
Robert Jördens e423eff0e2 lockin-external: add doc 2021-02-02 15:50:31 +01:00
Robert Jördens bd71136cdf hw/config: add TODO on synchronization 2021-02-02 15:46:50 +01:00
Robert Jördens 145b48074e timers: remove spurious tim2 reset 2021-02-02 15:42:51 +01:00
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
Robert Jördens 128e7dd78e more nightly clippy lints 2020-11-26 16:45:57 +01:00
Robert Jördens 7fc6f5c4ad clippy lints 2020-11-26 16:41:09 +01:00
Robert Jördens ab50f55062 adc/dac: docstrings 2020-11-26 15:42:33 +01:00
Robert Jördens 8cf380a488 dac/adc: doc cleanup [nfc] 2020-11-26 14:40:24 +01:00
Robert Jördens 468929690d iir: vminnm/vmaxnm 2020-11-26 14:26:44 +01:00
Robert Jördens d8c6f39d0f adc/dac: make the buffer handling more symmetric 2020-11-26 13:51:39 +01:00
Robert Jördens 754ebed50d adc: transfer complete interrupt on Adc1 2020-11-26 11:55:15 +01:00
Robert Jördens 7189830896 main: put AFEs into a tuple 2020-11-26 11:34:43 +01:00
Robert Jördens 911fb66146 main: process() code duplication a bit 2020-11-26 11:34:43 +01:00
Robert Jördens c04180635b dacs: macros 2020-11-26 11:34:43 +01:00
Robert Jördens 1906185286 adc: macro 2020-11-26 11:02:37 +01:00
Robert Jördens 38dfd48c14 iir: fix comment [nfc] 2020-11-25 17:57:24 +01:00
Robert Jördens cf086abaed Merge remote-tracking branch 'origin/master' into fast-truncate
* origin/master:
  Adding comment about checking for flag pass completion
  Adding comments about execution hanging to transfer complete waits
  Removing default parameter settings
  Updating DAC SPI structures to own HAL SPI structure for safety guarantees
  Moving constants to a new file
  Removing copy to DAC buffers, adding in-place borrow of output buffers
  Marking AXISRAM as NOLOAD
  Refactoring timer channels to macros, adding safety notes
  Adding DMA support for DAC writes
  Adding sampling_timer file
  Adding compile-time management of TIM2 channels
  Reverting changeset
  Adding documentation
  Reverting openocd change
  Adding updated docs for adc file
  Combining ADC + DAC ISRs
  Adding WIP updates
  Formatting
  Adding ADC/DAC modules
  Adding WIP updates to using DMA
2020-11-25 17:38:03 +01:00
Ryan Summers a07be010b6 Adding comment about checking for flag pass completion 2020-11-25 16:46:42 +01:00
Ryan Summers 88da225e4b Adding comments about execution hanging to transfer complete waits 2020-11-25 16:43:49 +01:00
Ryan Summers 7d13627a0c Removing default parameter settings 2020-11-25 16:30:06 +01:00
Ryan Summers d236ea94c4 Updating DAC SPI structures to own HAL SPI structure for safety guarantees 2020-11-24 17:21:14 +01:00
Ryan Summers bf8b950fe6 Moving constants to a new file 2020-11-24 17:09:36 +01:00
Ryan Summers 720e0291f5 Removing copy to DAC buffers, adding in-place borrow of output buffers 2020-11-24 16:57:36 +01:00
Ryan Summers 2b443f9334 Merge branch 'master' into feature/dma-updates 2020-11-24 16:49:11 +01:00
Robert Jördens b0e0b5144f processing: use faster unsafe truncate 2020-11-24 09:27:47 +01:00
Ryan Summers 11e6688a14 Refactoring timer channels to macros, adding safety notes 2020-11-23 14:30:29 +01:00
Matt Huszagh 3eb43c6b99 move iir to new dsp crate 2020-11-22 07:59:12 -08:00
Ryan Summers d2e8b30622 Increasing batch size 2020-11-17 14:27:17 +01:00
Ryan Summers 6c2bc22b7a Adding updates for QSPI streaming 2020-11-17 14:23:56 +01:00
Ryan Summers 055c92c684 Adding WIP refactor 2020-11-17 13:09:45 +01:00
Ryan Summers 84167c7f6f Updating DDS control 2020-11-17 11:28:45 +01:00
Ryan Summers 72db53ccd0 Removing pounder test, adding file 2020-11-17 10:51:31 +01:00
Ryan Summers c518797d08 Removing unused code 2020-11-17 10:48:31 +01:00
Ryan Summers 585613f48f Refactoring DDS output control 2020-11-17 10:45:37 +01:00
Ryan Summers 1c8e385e6d Merge branch 'feature/dma-updates' into feature/qspi-stream 2020-11-17 10:29:03 +01:00
Ryan Summers 91809cf255 Adding DMA support for DAC writes 2020-11-13 10:47:44 +01:00
Ryan Summers 56bcf1e0aa Adding sampling_timer file 2020-11-11 18:44:28 +01:00
Ryan Summers 3b953e36aa Adding compile-time management of TIM2 channels 2020-11-11 18:42:34 +01:00
Ryan Summers 3a59f3e989 Adding WIP updates for digital input stamping 2020-11-11 18:28:48 +01:00
Ryan Summers d06a350549 Merge branch 'feature/dma-updates' into feature/digital-input-stamp 2020-11-11 16:30:23 +01:00
Ryan Summers da9ca81856 Reverting changeset 2020-11-11 12:12:19 +01:00
Ryan Summers 3088a002c0 Adding documentation 2020-11-11 12:09:27 +01:00
Ryan Summers aa36446f95 Adding updated docs for adc file 2020-11-11 11:57:14 +01:00
Ryan Summers db3bb511b4 Merge branch 'master' into feature/dma-updates 2020-11-10 16:55:25 +01:00
Ryan Summers f164a1a89e Update PR 2020-11-10 15:31:19 +01:00
Ryan Summers a32ca39ca0 Removing spaces 2020-11-10 15:19:44 +01:00
Ryan Summers 84e31ef036 Fixing directive position 2020-11-10 15:16:37 +01:00
Ryan Summers 7b86a2bc42 Adding comment about deprecation allowance 2020-11-10 15:14:49 +01:00
Ryan Summers c804312e60 Fixing deprecation warnings 2020-11-10 15:13:57 +01:00
Ryan Summers 014137acf0 Updating QSPI frequency 2020-11-09 15:57:58 +01:00
Ryan Summers fca38e5d63 Adding support for hardware IO_update 2020-11-09 15:16:44 +01:00
Ryan Summers c97e4d9d20 Fixing merge issues 2020-11-09 12:33:18 +01:00
Ryan Summers 7e1a58f1f0 Merge branch 'feature/dma-updates' into feature/qspi-stream 2020-11-09 12:32:32 +01:00
Ryan Summers 8d807fa09b Adding WIP 2020-11-09 12:30:02 +01:00
Ryan Summers 28cb3906ac Adding WIP HRTimer 2020-11-07 11:01:48 +01:00
Ryan Summers bab9fbf5ac Merge branch 'master' into rs/hal-update 2020-11-05 08:09:45 +01:00
Ryan Summers 5cc21cfde8 Combining ADC + DAC ISRs 2020-11-03 16:09:00 +01:00
Ryan Summers e95cad5bde Adding WIP updates 2020-11-03 10:52:37 +01:00
Ryan Summers 4e5459433e Formatting 2020-11-03 09:41:45 +01:00
Ryan Summers adaca88a50 Adding ADC/DAC modules 2020-11-03 09:41:14 +01:00
Ryan Summers 20e9b6543c Adding WIP updates to using DMA 2020-11-03 09:36:03 +01:00
Niklas Kuhrmeyer 2f5d26aeaa decreased routes_storage 2020-10-30 13:33:59 +01:00
Niklas Kuhrmeyer 32d5e4dfe1 format 2020-10-30 13:32:47 +01:00
Niklas Kuhrmeyer dfe3ac877a added gateway 2020-10-30 12:16:28 +01:00
Ryan Summers f56487401c Adding updates for PHY support 2020-10-28 16:14:48 +01:00
Ryan Summers 11ff93e6f0 Fixing diff 2020-10-28 15:57:14 +01:00
Ryan Summers e36b853dc8 Renaming clocks to ccdr 2020-10-28 15:51:08 +01:00
Ryan Summers b4eeeb2042 Reverting unneeded changes 2020-10-28 15:44:52 +01:00
Ryan Summers c058d4bcde Adding updates for 0.8.0 of the HAL 2020-10-28 15:41:27 +01:00
Ryan Summers 17c8e4d2e1 Updating to new HAL 2020-10-26 16:58:29 +01:00
Ryan Summers 071ccd17dc Adding WIP experimental code 2020-10-22 16:16:38 +02:00
Ryan Summers db182b923d Adding WIP QSPI streaming 2020-10-21 10:17:22 +02:00
Ryan Summers dac6f73d5e WIP updates 2020-10-19 17:12:02 +02:00
Harry Ho a979bf94dc update syntax for taking core periphs (required since rtic v0.5.5) 2020-09-16 14:25:36 +08:00
Robert Jördens d6de4b7028 fmt 2020-06-23 14:55:59 +02:00
Robert Jördens 5c4dec0870 dac clr/ldac: unwrap 2020-06-23 14:16:33 +02:00
Robert Jördens c326623818 dacs: clr_n high, ldac_n low 2020-06-23 14:13:55 +02:00
Robert Jördens 0a4112eb02 spi nss: very high speed 2020-06-22 22:55:18 +02:00
Ryan Summers 093dca5928 Updating stabilizer devices to utilize 0-based indexing 2020-06-22 08:31:09 +02:00