| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
The 0144 model number is reserved for the successor to the Meteor M44.
This is Hank's first AA light, so it's assigned as 0161:
- 01: Emisar
- 6: product line 6
- 1: model 1
|
| | |
|
| | |
|
| | |
|
| |\
| |
| |
| |
| |
| |
| |
| |
| | |
Fixed bike mode's default brightness so it won't be wildly miscalibrated
on lights with high regulated modes.
* pr23-digitalcircuit-fix-nofet-bikeflash:
saner defaults for the default biking level
bikeflash: Cap default brightness to max, define
|
| | |
| |
| |
| |
| |
| |
| | |
- set DEFAULT_BIKING_LEVEL in bike mode's header file
- use RAMP_SIZE/3 by default
- limit to MAX_BIKING_LEVEL if necessary
- get rid of any ties to MAX_1x7135 because it's kind of an obsolete symbol
|
| |/|
| |
| |
| |
| |
| |
| | |
pr23-digitalcircuit-fix-nofet-bikeflash
* 'fix-nofet-bikeflash' of github.com:digitalcircuit/anduril:
bikeflash: Cap default brightness to max, define
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Cap fallback default bike flasher brightness to stay below
MAX_BIKING_LEVEL, fixing noFET/boost driver builds where MAX_1x7135 is
above MAX_BIKING_LEVEL.
Add the optional define DEFAULT_BIKING_LEVEL to set the default bike
flasher brightness. This is NOT checked against MAX_BIKING_LEVEL, for
simplicity.
Alternatively, strobe-modes.c could be updated to check if the value
exceeds MAX_BIKING_LEVEL at runtime. However, that might take up more
flash space.
Migrated from https://code.launchpad.net/~digitalcircuit/flashlight-firmware/anduril2_fix_nofet_bikeflash/+merge/408124
|
| | |
| |
| |
| |
| | |
(users complained, and extended simple UI probably needs to be off by
default in all factory builds anyway)
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Added support for AVR DD MCUs, particularly avr32dd20. Also did a bunch
of refactoring for how MCU support works, cleaned up the ADC code,
switched to consistent internal formats for voltage and temperature,
fixed the FW3X, and some other little things.
* avr32dd20-devkit: (28 commits)
eliminated direct CCP register access from arch/attiny1616
made the avr32dd20 flashing script more universal
added a build target for FW3X with manually-fixed RGB aux wiring
prevent future issues like the FW3X had
fixed FW3X thermal regulation
fixed incorrect temperature history for a few seconds after waking
fsm/adc: removed dead code
FW3X: fixed external temperature sensor
FW3X: multiple upgrades...
fw3x: fixed swapped red+blue, fixed battery measurements, added police color strobe
fixed ADC on sp10-pro
fixed ADC on attiny85 and related builds
fixed ADC on attiny1634 and related builds
more ADC / DAC / MCU progress...
avr32dd20-devkit: make the defaults a bit more dev friendly (realtime voltage colors, and no simple UI by default)
ADC voltage: battcheck 3 digits, fixed t1616, switched back to 8-bit internal volt unit
got ADC voltage+temp working on avrdd... but broke all other builds/MCUs
1.55V AA battery should not show as "white" voltage color, only purple
started refactoring fsm/adc.*, but need a checkpoint before continuing
added dac-scale.py: short script to calculate avrdd DAC+Vref values from level_calc.py ramp data
...
|
| | | |
| | |
| | |
| | | |
(the protected write macro exists for a reason, and should be used instead)
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
1/3rd of the ramp size is probably a more reliable default
than MAX_1x7135. The 7135-based reference points need to eventually
be removed entirely and replaced by something more universal,
but for now at least don't fail when a thermal stepdown isn't defined.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It had no minimum thermal stepdown defined, so it used MAX_7135 by default,
which was level 149/150 ... thus virtually no regulation.
I also made it easier to switch between internal and external temperature
sensors by just commenting out a few lines in the hwdef.h.
|
| | | |
| | |
| | |
| | |
| | | |
(it used raw ADC units instead of cooked Kelvin units ...
... which was only noticeable on hardware which has different ADC units)
|
| | | | |
|
| | | |
| | |
| | |
| | | |
(the MCU's internal sensor works too, but external is a bit better I guess?)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- upgraded to DSM: lower lows, *much* smoother ramp
- made lows more efficient with underclocking
- fixed party strobe being too blurry
- calibrated UI speed / bogomips multiplier
- added readme to document this hardware's multiple quirks
|
| | | |
| | |
| | |
| | | |
strobe
|
| | | | |
|
| | | |
| | |
| | |
| | | |
(also enabled smooth steps on BLF GT, but had to remove stuff to make room)
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- 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)
|
| | | |
| | |
| | |
| | | |
(realtime voltage colors, and no simple UI by default)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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. :(
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
level_calc.py ramp data
|
| | | |
| | |
| | |
| | |
| | | |
ADC doesn't work yet. No voltage, no temperature.
I need to do a lot of refactoring on the ADC code. :(
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The gradual tick frequency was written for 8-bit PWM,
but it can be too slow on hardware with more bits.
The hwdef can compensate by using larger steps,
but that makes adjustments more visible...
So this provides an option to increase speed without visibility.
|
| | | | |
|
| |/ /
| |
| |
| | |
Phew, that's a lot of changes! And there's still a lot more to do...
|
| |/
|
|
| |
(to make it easier to detect when builds did or didn't change)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`make` doesn't always work, like when the user tries to do certain types
of CLI args, but it's handy to have as a convenience sometimes.
What works:
- make
- make clean
- make hank boost
- make me a sandwich
What doesn't work:
- make foo --bar
- make foo BAR=1
The `make` program eats some types of arguments.
|
| | |
|
| |\
| |
| |
| |
| |
| |
| |
| | |
Super simple, easy method for allowing turbo in Momentary Mode.
* pr-16-SammysHP-momentary-turbo:
shortened unnecessarily long explanation
Allow turbo in momentary mode
|
| | | |
|
| |/|
| |
| |
| |
| |
| |
| | |
pr-16-SammysHP-momentary-turbo
* 'momentary-turbo' of github.com:SammysHP/anduril:
Allow turbo in momentary mode
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| |\ \
| |/
|/|
| |
| |
| |
| |
| |
| | |
Using '#!/usr/bin/env foo' is a good idea in general,
and it might fix builds on MacOS and other non-debian platforms.
* pull15:
Changed bash and sh shebangs to /usr/bin/env
Update make shebang for portability
|