aboutsummaryrefslogtreecommitdiff
path: root/hw/thefreeman (unfollow)
Commit message (Collapse)AuthorFilesLines
2024-03-27increased voltage precision from 0.025V to 0.02VSelene ToyKeeper3-7/+7
(so 0 to 255 now goes from 0.00V to 5.10V)
2024-02-02thefreeman-avr32dd20-devkit: enable boost bypass at boot, so AA/NiMH can bootSelene ToyKeeper1-0/+1
2024-01-30avr32dd20-devkit: use unimplemented "CH" pin as a boost bypass controlSelene ToyKeeper2-2/+33
For 3V LEDs on a boost/buck dual fuel driver, this allows routing power around the boost converter in li-ion mode, to reduce resistance and increase maximum output. The AA/NiMH mode is unaffected, and boosts as normal.
2023-12-15use BLIP_LEVEL instead of 0 for "blip"sSelene ToyKeeper1-0/+1
This helps when using a regulator which doesn't like being turned off and back on quickly.
2023-11-24more ADC / DAC / MCU progress...Selene ToyKeeper10-151/+96
- fixed t1616 Vref values getting clobbered sometimes, wrapped setting those in a #define'd function for ease and consistency - moved some DAC definitions from hw/ to arch/ to reduce repetition - fixed thefreeman's other builds - switched from PWM_TOPS to PWM2_LEVELS (I'm trying to phase out _TOPS)
2023-11-22avr32dd20-devkit: make the defaults a bit more dev friendlySelene ToyKeeper1-1/+5
(realtime voltage colors, and no simple UI by default)
2023-11-22ADC voltage: battcheck 3 digits, fixed t1616, switched back to 8-bit ↵Selene ToyKeeper3-20/+19
internal volt unit Before this branch, `voltage` was 6 bits: Volts * 10 A couple patches ago, I upgraded it to 16 bits: 65535 * Volts / 10.24 That costs too much extra ROM on attiny85 though, for extra precision it doesn't even use... so I switched back to an 8-bit value. It's still more precise than before though: Volts * 40 ... and battcheck displays an extra digit now, on devices with ROM for it. ... and battcheck waits a second to get a more accurate measurement before displaying the first value. It has *much* less variation between first and later readings now. Also: - got t1616 builds working again (tested fc13 and thefreeman-boost-fwaa) - upgraded t1616 voltage and temp to 12-bit (10 bits + 4x oversampling) - removed expensive temp conversion from t1616 ADC interrupt - recalibrated t1616 bogomips again; runs faster after interrupt fix - increased t1616 internal VDD measurement resolution by 36% (1.5V Vref, not 1.1V) - fixed sloppy setting of Vref bits I still need to test / update other t1616 builds, and fix all the t85 + t1634 code and build targets.
2023-11-21got ADC voltage+temp working on avrdd... but broke all other builds/MCUsSelene ToyKeeper2-3/+22
This patch changes the ADC code to use two internal standard units, and everything else must convert to these units: - FSM Volts: centiVolts << 6 (range 0 to 10.24 V per cell) - FSM Kelvin: Kelvin << 6 (range 0 to 1024 K) UI-level voltage is still "Volts * 10", and temperature is still Celsius. FSM expects functions to be provided, to convert from the hardware's raw ADC measurements to these internal units: `voltage_raw2cooked()` and `temp_raw2cooked()`. Defaults will be provided by arch/*.[ch] for each MCU type, or the hwdef can make its own. Anyway, gotta go fix all the other MCUs and builds now. :(
2023-11-19added *unfinished* support for avr32dd20, plus a build target for a dev kitSelene ToyKeeper5-0/+453
ADC doesn't work yet. No voltage, no temperature. I need to do a lot of refactoring on the ADC code. :(
2023-11-19thefreeman/boost*: define Vref values more explicitly without magic numbersSelene ToyKeeper4-18/+22
2023-11-10refactor checkpoint: splitting MCU-specific code into arch/$MCU.[ch]Selene ToyKeeper3-13/+3
Phew, that's a lot of changes! And there's still a lot more to do...
2023-11-03moved ATTINY and MODEL_NUMBER into $target/arch and $target/model,Selene ToyKeeper12-9/+6
and updated other scripts and files accordingly
2023-11-03renamed cfg.h -> anduril.h so each UI can have its own cfg (part 1)Selene ToyKeeper3-0/+0
(still need to update file contents afterward, but doing it in a separate commit so git can detect renames easier)
2023-11-02got things to compile again, renamed #includesSelene ToyKeeper8-11/+11
(also modified the build scripts to work with the new file structure)
2023-11-02reorganized project files (part 1)Selene ToyKeeper8-0/+983
(just moved files, didn't change the contents yet, and nothing will work without updating #includes and build scripts and stuff)