|
c5c0ce5625
|
channels: rm debug output
|
2020-09-24 19:49:11 +02:00 |
|
|
d3606d25b6
|
fix imports
|
2020-09-24 15:49:13 +08:00 |
|
|
d40a038c2f
|
config: switch to postcard encoding
|
2020-09-24 02:06:53 +02:00 |
|
|
5d0d75d395
|
config: encode with serde_cbor
|
2020-09-24 01:18:33 +02:00 |
|
|
93f14523d7
|
command_parser: parse load/save
|
2020-09-24 01:17:50 +02:00 |
|
|
201701ee8b
|
implement mac address generation with reading eui48 from i2c eeprom
|
2020-09-24 00:19:07 +02:00 |
|
|
a84242fb1f
|
implement setting i_set centerpoint
|
2020-09-23 22:30:04 +02:00 |
|
|
b394cfa3d4
|
main: remove special handling for PwmPin::ISet
|
2020-09-23 20:50:50 +02:00 |
|
|
b9902929a9
|
test: #[allow(unused)]
|
2020-09-18 01:22:41 +02:00 |
|
|
edc675f5af
|
command_parser: rename a test
|
2020-09-18 01:16:19 +02:00 |
|
|
a4dde1b8ca
|
delint
|
2020-09-18 00:55:53 +02:00 |
|
|
7361619a53
|
pid: update default parameters
|
2020-09-18 00:41:32 +02:00 |
|
|
34543c8660
|
pid: only reset after target change
|
2020-09-18 00:24:00 +02:00 |
|
|
83a209397e
|
fix tests
|
2020-09-18 00:23:30 +02:00 |
|
|
ba84295ec5
|
reconnect the pid controller
|
2020-09-18 00:09:30 +02:00 |
|
|
fb81380955
|
fix tests
run with `cargo test --target=x86_64-unknown-linux-gnu`
|
2020-09-17 01:48:27 +02:00 |
|
|
94e0525002
|
tec_u_meas: subtract vref offset
|
2020-09-17 01:20:47 +02:00 |
|
|
1157b73f7f
|
max_i_pos/max_i_neg: remove vref from calculation
full duty pwm is at vref already
|
2020-09-17 01:03:57 +02:00 |
|
|
dd06ae1075
|
main: improve output
|
2020-09-16 23:32:48 +02:00 |
|
|
f76ee9a607
|
separate adc and max vref
|
2020-09-16 23:31:49 +02:00 |
|
|
fc0ca8b581
|
calculate i_set current
|
2020-09-16 22:22:48 +02:00 |
|
|
8c80062da8
|
use proper units for pwm pins
|
2020-09-16 22:06:15 +02:00 |
|
|
7d45d5ad32
|
adc: complete temperature calculation
|
2020-09-16 20:50:23 +02:00 |
|
|
dda1f2f0b4
|
use ThermodynamicTemperature
|
2020-09-16 18:40:07 +02:00 |
|
|
b1b6d1ea94
|
fixes
|
2020-09-14 00:12:28 +02:00 |
|
|
b80fcc430b
|
channel_state: move adc_calibration into ChannelState
|
2020-09-13 23:15:48 +02:00 |
|
|
bb26490153
|
unit: replace with uom
|
2020-09-13 23:13:51 +02:00 |
|
|
4a1ce342a0
|
pins: enable pwm pins
|
2020-09-12 00:35:58 +02:00 |
|
|
10208e1ac0
|
main: bump WATCHDOG_INTERVAL to 1s
required for running Channels.calibrate_dac_value()
|
2020-09-10 23:28:00 +02:00 |
|
|
42587810cd
|
usb: add serial logger
|
2020-09-10 23:17:31 +02:00 |
|
|
c11b71cc0d
|
adc: don't calibrate but convert using ChannelCalibration
|
2020-09-09 23:10:33 +02:00 |
|
|
4e6aa5fe0c
|
leds: init
|
2020-09-06 21:10:10 +02:00 |
|
|
9a912392be
|
channels: fix dac calibration
|
2020-09-06 19:28:33 +02:00 |
|
|
50dcee0c8a
|
pins: reuse definitions
|
2020-09-06 19:28:33 +02:00 |
|
|
f76ae453a9
|
ad5680: cap value to MAX_VALUE
|
2020-09-06 19:28:33 +02:00 |
|
|
a3df2bc685
|
update to newer stm32-eth
|
2020-09-03 21:38:56 +02:00 |
|
|
1711feae84
|
timer: define sleep() as pub
|
2020-05-31 19:54:18 +02:00 |
|
|
f9b55508dd
|
ad5680: keep sync high for 1ms
|
2020-05-28 20:45:42 +02:00 |
|
|
cf03613ac5
|
main: fix peripheral params
|
2020-05-28 20:43:52 +02:00 |
|
|
3c94342448
|
replace tec_u_meas_adc with pins_adc
|
2020-05-28 02:06:32 +02:00 |
|
|
5418488a2f
|
replace channel[01].adc with pins_adc
|
2020-05-28 02:01:55 +02:00 |
|
|
ec6aa03dc3
|
set pwm values as ratio 0..1
|
2020-05-27 20:38:57 +02:00 |
|
|
35af543e33
|
channels: fix/optimize calibrate_dac_value()
|
2020-05-20 23:09:24 +02:00 |
|
|
cca0a77657
|
keep shdn high all the time
|
2020-05-20 23:07:03 +02:00 |
|
|
d326517453
|
channels: remove unneccessary pub qualifiers
|
2020-05-20 21:27:22 +02:00 |
|
|
e6e150dac3
|
add Channels::calibrate_dac_value()
|
2020-05-19 00:15:39 +02:00 |
|
|
70127491f6
|
add vref_pin
|
2020-05-18 22:46:09 +02:00 |
|
|
3d6e1f18a6
|
add tec_u_meas
|
2020-05-18 21:38:13 +02:00 |
|
|
28a71d34d7
|
fix tec_i calculation
|
2020-05-18 21:23:07 +02:00 |
|
|
0bc0af7487
|
rename dac_loopback to dac_feedback
|
2020-05-17 02:18:25 +02:00 |
|
|
34c2da4484
|
ad7172: fix calibration
|
2020-05-17 02:11:53 +02:00 |
|
|
ba860e52ac
|
control i_set dac in volts
|
2020-05-17 01:27:47 +02:00 |
|
|
38a220ce4e
|
fix tec_i calculation, add units::{Amps, Ohms}
|
2020-05-17 00:54:37 +02:00 |
|
|
fb5c7a84e9
|
add units::Volts, use for stm32f4 adc
|
2020-05-17 00:13:52 +02:00 |
|
|
7f8dd62a36
|
add itec_pin
|
2020-05-16 23:59:31 +02:00 |
|
|
a317eb60fd
|
rename ref_adc to dac_loopback
|
2020-05-16 19:36:00 +02:00 |
|
|
feae22b277
|
ad5680: idle low for powersaving
|
2020-05-16 01:18:14 +02:00 |
|
|
c53c9a289f
|
pins: fix ref_pins
|
2020-05-16 01:09:38 +02:00 |
|
|
53930497e4
|
ad5680: fix MAX_VALUE
|
2020-05-13 23:19:20 +02:00 |
|
|
9ecf705420
|
ad5680: fix SPI_MODE
|
2020-05-13 23:19:09 +02:00 |
|
|
c0079007f2
|
do not overwrite dac value when pid is disengaged
|
2020-05-13 22:11:25 +02:00 |
|
|
b9d05ff274
|
channels: add set_dac()
|
2020-05-13 21:05:07 +02:00 |
|
|
eb9aeb160a
|
add Channels::read_ref_adc()
|
2020-05-13 00:15:29 +02:00 |
|
|
3d1740b23b
|
refactor into Channels::poll_adc()
|
2020-05-13 00:04:55 +02:00 |
|
|
9466961bd7
|
main: refactor into Channel/Channels
|
2020-05-12 23:18:11 +02:00 |
|
|
6dd6bb2e1e
|
pins: add ref[01] adc
|
2020-05-12 22:50:39 +02:00 |
|
|
56c62975c4
|
main: improve show pid parameters
|
2020-03-23 23:02:50 +01:00 |
|
|
d203f21caf
|
main: re-enable interrupts
also swap ADC polling and network processing to read the ADC first after
an interrupt.
|
2020-03-21 00:46:24 +01:00 |
|
|
15f64358a2
|
main: fix socket handling
|
2020-03-21 00:37:24 +01:00 |
|
|
7fe1d2f761
|
main: disable ad7172 sync
|
2020-03-21 00:36:52 +01:00 |
|
|
dcf7babf32
|
ad7172: delint, doc
|
2020-03-21 00:34:22 +01:00 |
|
|
e7782c9cb3
|
implement shdn* pins
|
2020-03-21 00:33:48 +01:00 |
|
|
b345cc0865
|
use embedded_hal through stm32f4xx_hal instead of direct dependency
this will aid maintainability.
|
2020-03-21 00:22:38 +01:00 |
|
|
a102e5fcec
|
main: wait for more tcp send headroom
|
2020-03-21 00:11:23 +01:00 |
|
|
10f7020c02
|
main: fix report padding
|
2020-03-21 00:11:03 +01:00 |
|
|
da65ea21a4
|
ad7172: eliminate superfluous AdcError
|
2020-03-21 00:10:12 +01:00 |
|
|
9c3485d05f
|
timer: increase rate to 500 Hz
timestamp precision: 0.002s
|
2020-03-21 00:07:18 +01:00 |
|
|
8e41c44303
|
adc: use ref_sel=external
|
2020-03-21 00:06:27 +01:00 |
|
|
1cba8e56c9
|
ad7172: add calibrate_offset()
|
2020-03-21 00:06:09 +01:00 |
|
|
63cc1d2fe1
|
main: always do full session reset
|
2020-03-20 23:20:50 +01:00 |
|
|
194871c85a
|
ad7172: readback after write_reg()
|
2020-03-20 23:19:31 +01:00 |
|
|
4c3c8498e9
|
ad7172: retry corrupt transfers
|
2020-03-20 00:45:40 +01:00 |
|
|
82dba2bb67
|
ad7172: work on adc setup
|
2020-03-20 00:45:10 +01:00 |
|
|
bb51cce6f6
|
ad7172: remove stale code
|
2020-03-19 23:46:55 +01:00 |
|
|
723901b341
|
adc: read u32 for unipolar coding
|
2020-03-19 23:39:06 +01:00 |
|
|
2e72a03b93
|
steinhart_hart: fix equation
|
2020-03-19 22:56:14 +01:00 |
|
|
bec7019f3a
|
delint
|
2020-03-19 22:21:17 +01:00 |
|
|
c00c1bb081
|
main: connect adc/sh/pid/dac, split out into mod channel_state
|
2020-03-19 22:11:36 +01:00 |
|
|
a94650e208
|
main: optimize+doc resets
|
2020-03-19 22:01:16 +01:00 |
|
|
163bb38f68
|
simplify pid, keep last_output
|
2020-03-19 22:00:22 +01:00 |
|
|
e5b4789304
|
replace dependency lexical-core with num-traits
|
2020-03-19 19:51:59 +01:00 |
|
|
da4aaf4ff6
|
implement all the tcp commands
|
2020-03-19 18:34:57 +01:00 |
|
|
cee0a1fcab
|
steinhart_hart: fix calculation, rename parameters
|
2020-03-19 00:23:41 +01:00 |
|
|
0f4442b124
|
switch pid+steinhart_hart parameters from f32 to f64
|
2020-03-18 21:56:52 +01:00 |
|
|
1ad821299b
|
build mods pid + steinhard_hart
|
2020-03-18 21:51:30 +01:00 |
|
|
0575b52bc1
|
session: eliminate copying LineResult wrapper
|
2020-03-18 21:34:20 +01:00 |
|
|
ac728a2aff
|
server: reduce sockets from 8 to 4 for memory savings
|
2020-03-18 21:15:34 +01:00 |
|
|
69a4f5a5d2
|
merge the network code
|
2020-03-13 23:39:22 +01:00 |
|
|
09dbb7d495
|
add ad5680
|
2020-03-12 21:41:03 +01:00 |
|
|
fed3e767e9
|
pins: setup dac spi 0,1
|
2020-03-12 19:25:21 +01:00 |
|