Robert Jördens
f514205f8d
stabilizer: don't flatten namespace, renames
2021-06-04 17:02:09 +02:00
Robert Jördens
50ea2f360c
Merge branch 'master' into rj/visibility-cleanup
...
* master: (34 commits)
miniconf: update example usage
apps: spi isrs are spi errors
pounder/timestamp: docs updatew
pll: update tests and benches
pll: merge advance into update (like rpll)
pll: add advance()
pounder_timestamper: use input capture prescaler
Revert "Revert "pounder timestmper: don't use DMA""
miniconf: add some checks, simplify
miniconf.py: make retain an option
refactor flatten_closures
clippy recursion
fix a few clippy lints on files that are touched
Revert "pounder timestmper: don't use DMA"
pounder timestmper: don't use DMA
lockin: dma fence
lockin: port to fast double buffered DMA
dma: implement overflow checking
pounder: clippy
pounder: add comment on channel enum
...
2021-06-04 11:59:54 +02:00
Robert Jördens
73491fcb75
pounder/timestamp: docs updatew
2021-06-04 10:45:22 +02:00
Robert Jördens
2ba9e9c2f7
pounder_timestamper: use input capture prescaler
2021-06-03 10:31:23 +02:00
Robert Jördens
35536c0623
Revert "Revert "pounder timestmper: don't use DMA""
...
This reverts commit d97ee3f0c4
.
2021-06-03 10:31:11 +02:00
Robert Jördens
18b6e99b10
fix a few clippy lints on files that are touched
2021-06-01 17:32:06 +02:00
Robert Jördens
d97ee3f0c4
Revert "pounder timestmper: don't use DMA"
...
This reverts commit 26b261364f
.
First needs to reduce capture rate to batch interval. Otherwise it's
jittery due to polling alignment.
2021-06-01 16:57:51 +02:00
Robert Jördens
26b261364f
pounder timestmper: don't use DMA
...
* One sample per batch is typical and sufficient.
* DMA has more overhead than direct read for one sample.
2021-06-01 16:33:47 +02:00
Robert Jördens
c5a2704c41
dma: implement overflow checking
2021-06-01 13:11:16 +02:00
Robert Jördens
63716111df
Merge branch 'master' into rj/fast-dbm
...
* master:
pounder: clippy
pounder: add comment on channel enum
ad9959: refactor pad()
pounder: enum for gpio ext pins
pounder: fix attenuator indices (latch and shiftreg)
pounder io extender: hack around some bug
rf_power: fix measurement
attenuators: use robust latching sequence
deps: use mcp23017 release
pounder: simplify attenuator spi interface
2021-06-01 12:52:58 +02:00
Robert Jördens
73187ba053
Merge branch 'master' into rj/fast-dbm
...
* master:
adapt to new heapless/serde-json-core after const-generics
Bump serde-json-core from 0.3.0 to 0.4.0
build(deps): bump heapless from 0.6.1 to 0.7.1
setup: cleanup
itcm: add some comments, make it safe
build(deps): bump ndarray from 0.15.1 to 0.15.2
Updating dependencies
Updating the embedded-nal
Removing spurious settings updates
deps: add rationales for git dependencies
itcm: implement in rust and execute during setup()
remove duplicate linker option
gha: install gcc
fmt
dependencies: align with master
bump cortex-m-rt to 0.6.13+git
memory.x: remove comment about old cortex-m-rt
enable itcm/dtcm explicitly
load process into itcm
2021-06-01 12:52:05 +02:00
Robert Jördens
4c01a8f929
pounder: clippy
2021-05-31 20:41:18 +02:00
Robert Jördens
da7fc08c15
pounder: add comment on channel enum
2021-05-31 18:25:34 +02:00
Ryan Summers
04f61db6f2
Adding functional prototype
2021-05-31 14:06:02 +02:00
Robert Jördens
8ccc2f2275
Merge branch 'master' into rj/visibility-cleanup
...
* master:
adapt to new heapless/serde-json-core after const-generics
Bump serde-json-core from 0.3.0 to 0.4.0
build(deps): bump heapless from 0.6.1 to 0.7.1
setup: cleanup
itcm: add some comments, make it safe
build(deps): bump ndarray from 0.15.1 to 0.15.2
Updating dependencies
Updating the embedded-nal
deps: add rationales for git dependencies
itcm: implement in rust and execute during setup()
remove duplicate linker option
gha: install gcc
fmt
dependencies: align with master
bump cortex-m-rt to 0.6.13+git
memory.x: remove comment about old cortex-m-rt
enable itcm/dtcm explicitly
load process into itcm
2021-05-28 21:50:53 +02:00
Robert Jördens
5ee7ef388e
Merge branch 'master' into rj/pounder-fixes
...
* master:
adapt to new heapless/serde-json-core after const-generics
Bump serde-json-core from 0.3.0 to 0.4.0
build(deps): bump heapless from 0.6.1 to 0.7.1
2021-05-28 21:44:07 +02:00
Ryan Summers
2edbcf1c92
Merge branch 'master' into feature/livestream
2021-05-28 19:01:24 +02:00
Robert Jördens
b8da9961b8
adapt to new heapless/serde-json-core after const-generics
2021-05-28 18:34:25 +02:00
Robert Jördens
2368a4f6ed
pounder: enum for gpio ext pins
...
This is currently unused but it's better to have enums than
a set of assorted constants.
2021-05-28 16:46:06 +02:00
Robert Jördens
3616f1fa5a
pounder: fix attenuator indices (latch and shiftreg)
...
Before the discriminant was used despite being a compiler implementaiton
detail. This now fixes the discriminant to match byte index in the attenuator
shift register and latch-enable index of the gpio extender.
2021-05-28 16:44:58 +02:00
Robert Jördens
94f60c100c
pounder io extender: hack around some bug
2021-05-28 16:44:11 +02:00
Robert Jördens
79f8838104
rf_power: fix measurement
2021-05-28 16:44:11 +02:00
Robert Jördens
fc78b087ee
attenuators: use robust latching sequence
...
To ensure that eatch call to latch() generates a rising edge, first
assert low, then high, not the other way round.
2021-05-28 16:43:29 +02:00
Robert Jördens
f1a58b7811
pounder: simplify attenuator spi interface
2021-05-28 16:41:58 +02:00
Robert Jördens
79d30b4c6b
setup: cleanup
2021-05-28 16:32:26 +02:00
Robert Jördens
c5d3837745
itcm: add some comments, make it safe
2021-05-28 16:03:40 +02:00
Ryan Summers
97911c55f9
Unwrapping enqueue
2021-05-27 17:10:03 +02:00
Ryan Summers
3ce93b8fcd
Adding WIP updates
2021-05-27 15:58:18 +02:00
Robert Jördens
3165c680d6
dma: don't swap buffers
...
* This uses a new closure-based method to the DMA HAL implementation which
gives access to the inactive buffer directly.
* It removes changing addresses, the third buffer for DBM, the inactive
address poisoning, and allows the cancellation of the redundant repeat
memory barriers and compiler fences.
* This is now around 20 instructions per buffer down from about 100 cycles
before.
* Also introduces a new `SampleBuffer` type alias.
* The required unpacking of the resources structure is a bit annoying
but could probably abstraced away.
TODO:
* Test
* Adapt `lockin`
2021-05-24 20:56:11 +02:00
Ryan Summers
731513722f
Updating after testing
2021-05-17 18:33:43 +02:00
Robert Jördens
e58e7f179e
clean up item visibility
...
* There isn't much API that would only be used accross modules within
stabilizer/dsp but should not be pub beyond stabilizer/dsp.
* Therefore it's easier to let the definition determine visibility and
the mod.rs/lib.rs determine location in the namesapce.
* Blanket use pub items in mod and lib.
2021-05-17 13:01:45 +02:00
Robert Jördens
4d5f1ab5e9
itcm: implement in rust and execute during setup()
2021-05-14 17:23:38 +02:00
Robert Jördens
bd8b3cd6f3
Merge remote-tracking branch 'origin/master' into rj/itcm
...
* origin/master:
deps: fix rtt-logger->rtt-target, cleanup, bump cortex-m
build(deps): bump embedded-hal from 0.2.4 to 0.2.5
Bump rtt-target from 0.2.2 to 0.3.1
Bump serde from 1.0.125 to 1.0.126
remove unused dependencies
remove unused dependencies
2021-05-14 08:18:33 +02:00
Robert Jördens
b9cee6345a
deps: fix rtt-logger->rtt-target, cleanup, bump cortex-m
2021-05-14 07:16:47 +02:00
Robert Jördens
5d37963ec2
Merge remote-tracking branch 'origin/master' into rj/log
...
* origin/master:
remove unused dependencies
remove unused dependencies
2021-05-13 18:27:11 +02:00
Robert Jördens
8eef23da6b
Merge branch 'rj/log' into rj/itcm
...
* rj/log:
refine panic handler and add some logging info
hitl: kill probe-run cleanly
set target-cpu=cortex-m7, MSRV 1.52.0, use probe-run
README: document lockin, cleanup instructions, use probe-run
CHANGELOG: update
README: streamline docs a bit, add probe-run
update hitl script
remove rtt feature
use rtt logging
dsp/lowpass,lockin: const generics
2021-05-13 15:20:20 +02:00
Robert Jördens
18a8053cab
refine panic handler and add some logging info
2021-05-13 15:18:22 +02:00
Robert Jördens
401e1b0681
remove rtt feature
2021-05-13 11:14:03 +02:00
Robert Jördens
5b616a2874
use rtt logging
2021-05-13 10:55:43 +02:00
Robert Jördens
31332d220e
remove unused dependencies
2021-05-12 12:59:58 +02:00
Robert Jördens
66184ca089
Merge remote-tracking branch 'origin/master' into rj/itcm
...
* origin/master: (34 commits)
Simplifying unit conversions
Cleaning up conversion + comments
Addressing review feedback
Update src/hardware/dac.rs
Renaming AdcSample -> AdcCode
Updating float conversion
Adding adc/dac code conversion utilities
Simplifying settings lock
Updating after review
Updating delay
Fixing merge
Formatting
Updating dependencies
Fixing clippy
Finalizing merge
Merging lockin app functions
Fixing system timer
Fixing build, formatting
Adding documentation
Renaming files
...
2021-05-10 17:00:57 +02:00
Ryan Summers
81bc569f0e
Simplifying unit conversions
2021-05-10 11:40:36 +02:00
Ryan Summers
fa886d2eac
Cleaning up conversion + comments
2021-05-10 11:10:26 +02:00
Ryan Summers
65eb74b31e
Merge branch 'feature/telemetry' of github.com:quartiq/stabilizer into feature/telemetry
2021-05-10 11:07:29 +02:00
Ryan Summers
fcda2d5bd1
Addressing review feedback
2021-05-10 10:57:50 +02:00
Ryan Summers
6e94ffc138
Update src/hardware/dac.rs
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-05-07 14:23:03 +02:00
Ryan Summers
60b1b112b1
Renaming AdcSample -> AdcCode
2021-05-07 14:11:25 +02:00
Ryan Summers
923790b0b9
Updating float conversion
2021-05-07 14:02:25 +02:00
Ryan Summers
b73a4d9e59
Adding adc/dac code conversion utilities
2021-05-07 13:50:34 +02:00
Ryan Summers
7b76b1f14c
Updating after review
2021-05-07 13:02:14 +02:00
Ryan Summers
89eaefd8d5
Updating delay
2021-05-06 17:14:17 +02:00
Ryan Summers
81a292a77e
Fixing system timer
2021-05-06 12:45:13 +02:00
Ryan Summers
949ea9c1b3
Fixing build, formatting
2021-05-06 12:35:04 +02:00
Ryan Summers
4cbc826f00
Adding documentation
2021-05-06 12:33:07 +02:00
Ryan Summers
8efd7d4417
Fixing design parameters file
2021-05-05 16:49:11 +02:00
Ryan Summers
0c6935587e
Adding updated telemetry implementation
2021-05-05 16:46:53 +02:00
Robert Jördens
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
Ryan Summers
4169cd8251
Adding AFE functions
2021-04-29 16:22:06 +02:00
Ryan Summers
1c9f30b4d5
Merge branch 'rs/issue-276/unique-identifiers' into feature/telemetry
2021-04-20 13:46:37 +02:00
Ryan Summers
65073d11b9
Updating code after review
2021-04-20 13:37:49 +02:00
Ryan Summers
060781f2b2
Merge branch 'master' into rs/issue-276/unique-identifiers
2021-04-20 13:32:41 +02:00
Ryan Summers
dfda6b6d75
Reverting unintended change
2021-04-19 15:57:52 +02:00
Ryan Summers
065221e89f
Merge branch 'master' into rs/issue-276/unique-identifiers
2021-04-19 15:52:29 +02:00
Ryan Summers
6be642d3d7
Merge branch 'feature/phy-reset' into feature/tcp-randomizer
2021-04-19 12:19:24 +02:00
Ryan Summers
f32949ed17
Merge branch 'master' into feature/phy-reset
2021-04-19 12:10:37 +02:00
Ryan Summers
403ff16dde
Resetting IP
2021-04-15 15:44:03 +02:00
Ryan Summers
f442418f16
Merge branch 'master' into feature/telemetry
2021-04-15 15:43:40 +02:00
Ryan Summers
854f45ae15
Updating tick rates
2021-04-15 15:08:57 +02:00
Ryan Summers
330f67d3c8
Adding WIP telemetry implementation for dual-iir
2021-04-15 14:40:47 +02:00
Robert Jördens
8cc06d39c4
dual-iir: use InputPin re-export, rename digital_input
2021-04-15 13:47:10 +02:00
Ryan Summers
cc3673d94f
Merge branch 'master' into feature/tcp-randomizer
2021-04-15 12:13:58 +02:00
Robert Jördens
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
Ryan Summers
033420b934
Adding custom identifier prefix calculations
2021-04-13 15:38:30 +02:00
Ryan Summers
f96f49befa
Merge branch 'master' into feature/phy-reset
2021-04-13 14:45:20 +02:00
Ryan Summers
61e1a2a1c6
Correcting I2C MAC address read
2021-04-13 12:28:05 +02:00
Ryan Summers
e4740ce1b5
Merge branch 'master' into feature/phy-reset
2021-04-09 11:04:18 +02:00
Ryan Summers
1b4d31dbd9
Updating NAL to support TCP port randomization
2021-04-08 15:28:11 +02:00
Ryan Summers
bf3dae814d
Updating ACR to 32-bit
2021-04-08 14:58:28 +02:00
Ryan Summers
885cc1fb27
Merge branch 'master' into feature/phy-reset
2021-04-08 13:35:59 +02:00
Ryan Summers
e51336dc90
Merge branch 'master' into update-hal
2021-04-07 13:41:48 +02:00
Robert Jördens
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
Ryan Summers
a717630c53
Adding prototype PHY reset detection
2021-03-17 20:16:39 +01:00
Ryan Summers
3fb2bafaaa
Implementing safe net storage semantics
2021-03-17 15:08:56 +01:00
Ryan Summers
e54a33797c
Updating comment about time
2021-03-17 14:54:57 +01:00
Ryan Summers
3c574467a2
Updating dependencies
2021-03-15 12:29:03 +01:00
Ryan Summers
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
Ryan Summers
c2cb9a440c
Adding initial DHCP support prototype
2021-03-04 17:26:10 +01:00
Robert Jördens
059d4faf9f
re-add DefaultHandler
2021-03-03 17:05:22 +01:00
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
Ryan Summers
c553e72df4
Updating miniconf dependencies
2021-03-01 14:46:12 +01:00
Ryan Summers
90ef0836af
Fixing style
2021-02-17 17:56:49 +01:00
Ryan Summers
e8c4829790
Adding docs for the cycle counter
2021-02-17 17:26:54 +01:00
Ryan Summers
50476f68fd
Adding settings support for lockin-external
2021-02-17 16:53:53 +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