a5c5e807b1
Fixing build
2021-05-06 13:26:02 +02:00
ffc7f5f437
Removing telemetry period
2021-05-06 13:20:52 +02:00
1858257fc4
Formatting code
2021-05-06 13:18:40 +02:00
e7b5334f6b
Refactoring output configuration for lockin
2021-05-06 13:17:29 +02:00
19b606c385
Refactoring lockin binaries
2021-05-06 13:08:10 +02:00
8c581ea0a6
Merging lockin app functions
2021-05-06 13:02:39 +02:00
81a292a77e
Fixing system timer
2021-05-06 12:45:13 +02:00
949ea9c1b3
Fixing build, formatting
2021-05-06 12:35:04 +02:00
4cbc826f00
Adding documentation
2021-05-06 12:33:07 +02:00
e9c3e24863
Merge branch 'master' into feature/telemetry
2021-05-05 17:47:34 +02:00
740e41d7cb
Renaming files
2021-05-05 16:50:51 +02:00
8efd7d4417
Fixing design parameters file
2021-05-05 16:49:11 +02:00
0c6935587e
Adding updated telemetry implementation
2021-05-05 16:46:53 +02:00
8144b3acf2
Updating constructors
2021-05-05 16:16:54 +02:00
4a656eedd2
Adding refactor for telemetry
2021-05-05 15:39:33 +02:00
06b328ff52
Adding WIP updates for telemetry
2021-05-05 14:42:17 +02:00
e6180de147
Fixing style
2021-05-05 14:38:43 +02:00
f9b1b8df13
Adding comment about subscription failures
2021-05-05 14:33:34 +02:00
4888f18f88
Adding rework to network module
2021-05-04 19:52:41 +02:00
5767973548
Merge branch 'feature/mqtt-rework' into feature/telemetry
2021-05-04 18:19:38 +02:00
1f8f63018a
Cleaning up API
2021-05-04 13:50:17 +02:00
5c4ba78dd1
Refactoring MQTT architecture
2021-05-04 13:13:44 +02:00
b35250efbf
Fixing ADC/voltage conversion functions
2021-04-29 17:39:19 +02:00
f0c50d9678
Merge branch 'master' into rj/itcm
...
* master: (70 commits)
Updating JSON syntax
Updating trigger
Adding bors timeout
dual-iir: add some mqtt parameter docs
changelog: spelling
update lock
let bors handle hitl
prepare v0.5.0 release
Updating code after review
Adding comment, reverting change
Adding sleep to HITL run
Updating ping deadline
Reverting unintended change
Updating dependency revision
Renaming interface to avoid confusion
dual-iir: use InputPin re-export, rename digital_input
Updating dependency
dual-iir: add enable_hold, force_hold
fix bench
hardware: add digital input support
...
2021-04-29 17:28:58 +02:00
4169cd8251
Adding AFE functions
2021-04-29 16:22:06 +02:00
e746e2a12c
Adding WIP telemetry
2021-04-29 15:55:36 +02:00
f49ba30e2d
Merge branch 'feature/mqtt-rework' into feature/telemetry
2021-04-29 12:26:46 +02:00
7ddf2271f3
Refactoring net module
2021-04-29 11:54:16 +02:00
aad026161f
Refactoring to support DHCP
2021-04-29 11:28:35 +02:00
01349a39b3
Merge branch 'master' into feature/mqtt-rework
2021-04-29 11:07:00 +02:00
0922cc42af
Adding new miniconf implementation
2021-04-28 21:03:38 +02:00
61dc6e340e
dual-iir: add some mqtt parameter docs
2021-04-28 16:27:59 +02:00
f38e3b9608
Simplifying MQTT handling
2021-04-22 15:57:24 +02:00
36cc423f70
Refactoring MQTT to support telemetry
2021-04-22 15:16:33 +02:00
afcf058590
Refactoring telemetry to support binaries
2021-04-20 14:12:47 +02:00
1c9f30b4d5
Merge branch 'rs/issue-276/unique-identifiers' into feature/telemetry
2021-04-20 13:46:37 +02:00
65073d11b9
Updating code after review
2021-04-20 13:37:49 +02:00
060781f2b2
Merge branch 'master' into rs/issue-276/unique-identifiers
2021-04-20 13:32:41 +02:00
dfda6b6d75
Reverting unintended change
2021-04-19 15:57:52 +02:00
065221e89f
Merge branch 'master' into rs/issue-276/unique-identifiers
2021-04-19 15:52:29 +02:00
6be642d3d7
Merge branch 'feature/phy-reset' into feature/tcp-randomizer
2021-04-19 12:19:24 +02:00
1a08634dcb
Renaming interface to avoid confusion
2021-04-19 12:17:41 +02:00
f32949ed17
Merge branch 'master' into feature/phy-reset
2021-04-19 12:10:37 +02:00
403ff16dde
Resetting IP
2021-04-15 15:44:03 +02:00
f442418f16
Merge branch 'master' into feature/telemetry
2021-04-15 15:43:40 +02:00
854f45ae15
Updating tick rates
2021-04-15 15:08:57 +02:00
330f67d3c8
Adding WIP telemetry implementation for dual-iir
2021-04-15 14:40:47 +02:00
8cc06d39c4
dual-iir: use InputPin re-export, rename digital_input
2021-04-15 13:47:10 +02:00
cc3673d94f
Merge branch 'master' into feature/tcp-randomizer
2021-04-15 12:13:58 +02:00
2bfed7b669
dual-iir: add enable_hold, force_hold
...
* Also use Settings as resource directly and copy it bulk (like
lockin-external)
2021-04-14 16:09:54 +02:00
8954c94a20
hardware: add digital input support
...
* The inputs of the buffer are not pulled up/down. That might make them
unusable if left floating.
2021-04-14 15:53:52 +02:00
033420b934
Adding custom identifier prefix calculations
2021-04-13 15:38:30 +02:00
f96f49befa
Merge branch 'master' into feature/phy-reset
2021-04-13 14:45:20 +02:00
61e1a2a1c6
Correcting I2C MAC address read
2021-04-13 12:28:05 +02:00
e4740ce1b5
Merge branch 'master' into feature/phy-reset
2021-04-09 11:04:18 +02:00
1b4d31dbd9
Updating NAL to support TCP port randomization
2021-04-08 15:28:11 +02:00
bf3dae814d
Updating ACR to 32-bit
2021-04-08 14:58:28 +02:00
885cc1fb27
Merge branch 'master' into feature/phy-reset
2021-04-08 13:35:59 +02:00
e51336dc90
Merge branch 'master' into update-hal
2021-04-07 13:41:48 +02:00
fc7374424a
enable itcm/dtcm explicitly
2021-03-29 18:51:50 +02:00
14bae09935
load process into itcm
...
needs newer fixed cortex-m-rt 0.6.13+unreleased
relevant? https://reviews.llvm.org/D81986
2021-03-29 17:34:17 +02:00
5e448f284b
Updating net module
2021-03-24 13:48:34 +01:00
9459152f6f
Updating dependencies
2021-03-24 13:40:17 +01:00
a717630c53
Adding prototype PHY reset detection
2021-03-17 20:16:39 +01:00
3fb2bafaaa
Implementing safe net storage semantics
2021-03-17 15:08:56 +01:00
df2f122f84
Fixing sleep state on error
2021-03-17 14:56:31 +01:00
e54a33797c
Updating comment about time
2021-03-17 14:54:57 +01:00
331e21b00a
Updating dependencies
2021-03-17 14:47:14 +01:00
3c574467a2
Updating dependencies
2021-03-15 12:29:03 +01:00
4a9c2fe23a
Updating after DHCP PR review
2021-03-15 11:41:13 +01:00
e5505925a9
Merge branch 'master' into feature/dhcp-support
2021-03-15 11:38:28 +01:00
David Nadlinger
4606d93900
Update stm32h7xx-hal
...
I haven't done any runtime tests using Pounder, but it seems
like the API change is just a consequence of making the QSPI
address width runtime-configurable.
2021-03-07 16:48:55 +00:00
David Nadlinger
148a3c8281
hardware: Enable DEMCR TRCENA on boot for cycle counter
...
Previously, the cycle counter would only work correctly when
running in the debugger (which would also enable tracing).
GitHub: Fixes #299 .
2021-03-05 18:14:39 +00:00
c2cb9a440c
Adding initial DHCP support prototype
2021-03-04 17:26:10 +01:00
059d4faf9f
re-add DefaultHandler
2021-03-03 17:05:22 +01:00
475f2b3dd2
panic: fmt
2021-03-03 17:00:29 +01:00
843173f29d
panic: always turn on red leds, and halt
2021-03-03 16:36:10 +01:00
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
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
1e411c1548
lockin-external: Miniconf changes
2021-03-02 17:33:53 +01:00
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
a9d16a1632
Adjusting sleep semantics
2021-03-02 17:20:31 +01:00
aca524ec85
Fixing negation
2021-03-02 17:17:51 +01:00
c13eaaba4c
Restoring sleep semantics
2021-03-02 17:16:40 +01:00
4358d07dab
Updating id semantics
2021-03-02 17:09:10 +01:00
c2b00db9e9
Updating minimq/miniconf dependencies
2021-03-02 16:43:19 +01:00
733d4243c3
lockin-external: expand output config
2021-03-02 11:46:19 +01:00
6a96160cd0
dual-iir: fix panic message
2021-03-01 19:49:21 +01:00
66536c9978
lockin-external: add miniconf
2021-03-01 19:48:45 +01:00
c553e72df4
Updating miniconf dependencies
2021-03-01 14:46:12 +01:00
41f6d971c3
avoid clippy better
2021-02-23 17:22:53 +01:00
016323c94d
avoid clippy
2021-02-23 17:15:07 +01:00
e86f449dc0
lockin bins: remove stale todos, align and document [nfc]
2021-02-23 16:58:13 +01:00
6c6c2e64a7
lockin: make order generic
2021-02-23 16:58:13 +01:00
65a0831e2d
Merge branch 'master' into feature/mqtt-convert
2021-02-19 10:30:51 +01:00
ccec9d7fed
complex: rename extension trait, fix MulScaled
2021-02-19 09:29:38 +01:00
33b9b41405
lowpass: saturating math since it's free
2021-02-18 18:51:29 +01:00
c0457787bb
lockin-external: use enum
2021-02-18 18:43:45 +01:00
f050ba8e9f
lockin: let the lowpass do all filtering
2021-02-18 14:29:47 +01:00
07b7751dbc
move lowpass gain outside lowpass/lockin
2021-02-18 14:25:54 +01:00
9983fad041
dsp: use num
2021-02-18 14:07:43 +01:00
90ef0836af
Fixing style
2021-02-17 17:56:49 +01:00
63a2220fa0
Removing support for configuring IIR state
2021-02-17 17:56:18 +01:00
a55b30e6c4
Working around dependency injection bug
2021-02-17 17:50:17 +01:00
e8c4829790
Adding docs for the cycle counter
2021-02-17 17:26:54 +01:00
3c8cd58d6f
Removing lockin-external changes
2021-02-17 17:22:43 +01:00
50476f68fd
Adding settings support for lockin-external
2021-02-17 16:53:53 +01:00
b69131f5f5
impl trait on type alias instead of newtypes
2021-02-17 16:13:30 +01:00
cb16e9a85f
Updating settings update function
2021-02-17 12:59:24 +01:00
13e02710cd
Adding simplified clocking semantics
2021-02-17 12:08:03 +01:00
9e1f4a864c
Merge branch 'master' into feature/mqtt-convert
2021-02-17 11:44:10 +01:00
aeaeac1f17
add comment on dma2 init
2021-02-16 15:58:16 +01:00
fdb0c40764
fmt
2021-02-16 15:22:58 +01:00
3abd47494b
Fixing DMA2 instantiation issue
2021-02-16 15:10:00 +01:00
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
5fc45a659b
lockin-external: comment style [nfc]
2021-02-15 08:51:19 +01:00
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
a6d4099ed3
lowpass: expose natural gain, add bias
2021-02-12 11:06:59 +01:00
32b7058b47
lockin: 2nd order lowpass
2021-02-11 23:15:32 +01:00
b49f0a2eb9
complex: log2, update bins
2021-02-11 18:14:28 +01:00
3ae0b710bc
lowpass: reimplement better
2021-02-11 14:30:05 +01:00
30c2c2aac2
lowpass: i32, no multiplies
2021-02-10 11:39:19 +01:00
208ba8379a
dsp, lockin: use cascaded 1st order lowpasses
2021-02-09 20:37:46 +01:00
724768a72e
Adding safety docs
2021-02-09 14:37:49 +01:00
2e358dea26
Adding support for input capture prefilter configuration
2021-02-09 14:36:50 +01:00
611bd3e855
ad9959/pounder: tweaks
...
* make a trait public
* use self-test
* this hasn't been tested
2021-02-08 15:24:52 +01:00
1b46f081c1
better formatting
2021-02-08 11:26:58 +01:00
deed11f110
lockin-external: simplify
2021-02-05 18:59:22 +01:00
0343e5d8ab
pounder timer is u16
2021-02-04 16:51:34 +01:00
f19988a1bd
up the sample rate
2021-02-04 15:42:45 +01:00
2d492055f3
pounder stamper: overflow at u32 boundary
2021-02-04 15:42:29 +01:00
8314844aeb
pounder: moved SAMPLE_BUFFER_SIZE
2021-02-04 13:36:24 +01:00
d32378e6c4
lockin-external: ignore timestamps related to capture overflows
2021-02-04 12:48:58 +01:00
f47ee38d31
move sample ticks and buffer size to design parameters
2021-02-04 12:48:25 +01:00
7ce90c4d31
input stamper: add deglitching
2021-02-04 12:47:35 +01:00
91f16c2961
Adding working example
2021-02-03 19:55:58 +01:00
c557348523
core_intrinsics attr need to be in the lib crate
2021-02-03 15:26:13 +01:00
738516eedb
Adding broken example
2021-02-03 15:13:37 +01:00
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
ef22f5ab92
Fixing pounder input capture source
2021-02-03 14:11:00 +01:00
9e1a6ec4d5
Updating dependencies
2021-02-03 14:06:09 +01:00
913990d531
Merge remote-tracking branch 'origin/rj/bump-hal-smoltcp' into feature/mqtt-convert
2021-02-03 14:02:20 +01:00
4e6f65b3e0
Fixing spacing
2021-02-03 13:42:43 +01:00
672ddfa3c3
pounder: also adapt to new hal
2021-02-03 13:25:00 +01:00
c5fde8563c
deps: bump hal and smoltcp, adapt
2021-02-03 13:16:22 +01:00
b57b666473
Updating input capture for timers
2021-02-03 13:03:17 +01:00
e423eff0e2
lockin-external: add doc
2021-02-02 15:50:31 +01:00
bd71136cdf
hw/config: add TODO on synchronization
2021-02-02 15:46:50 +01:00
145b48074e
timers: remove spurious tim2 reset
2021-02-02 15:42:51 +01:00
ddbfa9d988
timestamping: docs and naming
2021-02-02 14:34:48 +01:00
e1c87c149f
timestamping_timer: also reset counter
2021-02-02 13:25:45 +01:00
854ed29b1a
timestamp: pass overflows to the top and ignore them there
2021-02-02 12:34:20 +01:00
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
2144af5bcd
configuration: update to HITL ips
2021-02-01 19:32:20 +01:00
24a4486847
lockin-internal: rotate samples
2021-02-01 19:31:57 +01:00
9ee60824d4
lockin-internal: align processing with lockin-external
2021-02-01 18:15:51 +01:00
f9b5d29450
lockin: de-nest processing flow
2021-02-01 18:14:09 +01:00
b6e22b576b
iir: add const fn new()
2021-02-01 17:18:10 +01:00
656e3253ab
lockin-internal: document, streamline sequence
2021-02-01 17:09:06 +01:00
65a3f839a0
lockin: remove feed()
2021-02-01 13:42:38 +01:00
2c60103696
dsp: accu: add, iir: rename IIRState to Vec5
2021-02-01 12:23:47 +01:00
46a7d67027
lockin-internal: rename, adapt
2021-01-31 19:26:11 +01:00
6e1444f070
Merge pull request #247 from quartiq/dsp-iir-benches
...
Dsp iir benches
2021-01-31 19:24:56 +01:00
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
47089c267c
dsp: align iir and iir_int, add iir micro benches
2021-01-31 19:12:24 +01:00
80055076b8
lockin: scale output
2021-01-31 17:41:20 +01:00
82c8fa1a07
rpll: extend tests
2021-01-31 17:10:03 +01:00
ab20d67a07
rpll: remove redundant time tracking
2021-01-31 13:42:15 +01:00
096f786795
Expanding miniconf to lockin
2021-01-30 18:57:06 +01:00
411a847a88
Updating smoltcp-nal
2021-01-30 18:48:27 +01:00
0d1b237202
complex: richer API
2021-01-30 18:05:54 +01:00
9a1bb5da91
Fixing build
2021-01-30 15:07:26 +01:00
b73286c188
Removing MQTT interface
2021-01-30 15:00:58 +01:00
e954ba3c52
Merge branch 'master' into feature/mqtt-convert
2021-01-30 14:48:54 +01:00
8b46c3c768
Updating internal lockin demo
2021-01-29 18:55:54 +01:00
b152343aaf
Style
2021-01-29 11:05:46 +01:00
ab7d725235
Updating lockin demo after testing
2021-01-29 11:01:21 +01:00
1ebbe0f6d7
Cleaning up demo
2021-01-29 10:11:56 +01:00
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
c34e330663
lockin: fmt
2021-01-28 23:00:55 +01:00
36288225b3
rpll: extend to above-nyquist frequencies
2021-01-28 22:21:42 +01:00
702ccc231d
Using custom branch of miniconf
2021-01-27 18:15:35 +01:00
1749d48ca3
Revert "rpll: auto-align counter"
...
This reverts commit dbacc5293e12f712fef7bd85848e1b0bd8fde823.
2021-01-27 09:01:07 +01:00
45e7d6de3c
rpll: auto-align counter
2021-01-27 09:01:07 +01:00
a772ccc38a
Adding WIP updates for StringSet
2021-01-26 19:14:23 +01:00
7b9fc3b2b3
iir_int: move lowpass coefficient calculation to iirstate
2021-01-26 18:51:20 +01:00
ea7b08fc64
rpll: refine
2021-01-26 14:40:44 +01:00
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
51085d175e
Removing dead-code allowance
2021-01-26 12:23:17 +01:00
e161f49822
Adding WIP lockin demo
2021-01-26 12:21:44 +01:00
43ff186bc6
Merge branch 'master' into feature/lockin-app-refactor
2021-01-26 10:53:25 +01:00
7c5a74c35e
Renaming internal lockin
2021-01-26 10:52:35 +01:00
9f9744b9e6
rpll: implement
2021-01-25 11:45:59 +01:00
df337f85b8
reciprocal_pll -> rpll
2021-01-25 09:54:56 +01:00
57a5c4ff9b
make lockin a unittest, not integration test
2021-01-22 16:04:02 +01:00
d0d2c6352d
lockin: refactor to use common lockin processing
2021-01-22 16:00:05 +01:00
0cd2140668
rafactor complex, cossin, atan2
2021-01-21 16:12:59 +01:00