1
0
forked from me/IronOS
Commit Graph

158 Commits

Author SHA1 Message Date
Ben V. Brown
b63f02d033 Reset some encodings 2020-12-11 19:11:23 +11:00
Ben V. Brown
8b336af3c1 Update gui.cpp 2020-11-01 16:00:19 +11:00
Ben V. Brown
f14e600e36 Update gui.cpp 2020-11-01 15:48:27 +11:00
Ben V. Brown
f465d17bb3 Fix QC 20V support 2020-11-01 15:42:36 +11:00
Ben V. Brown
f5644a090f Update QC to allow 20V theoretically + allow query for power source 2020-11-01 14:43:49 +11:00
Ben V. Brown
3146343bbb Split DC input and QC from being an OR :) 2020-11-01 14:28:12 +11:00
Ben V. Brown
3aeab055bf Merge branch 'master' into pinecil 2020-11-01 14:16:00 +11:00
Ben V. Brown
7c5c689d44 Cleanup & Mask unused functions 2020-11-01 12:24:24 +11:00
Ben V. Brown
ac9f863dba Adding in new gui settings for the hall effect sensitivity 2020-11-01 11:18:00 +11:00
Ben V. Brown
b1abe391dc Hall Effect Sensitivities 2020-11-01 10:45:08 +11:00
Ben V. Brown
ba5bd39e43 Cleanup stubs so that LTO can be used on Pinecil 2020-10-31 00:03:44 +11:00
Mel-kior
f9813ec494 Locking Mode 2020-10-14 01:03:57 +02:00
Ben V. Brown
40cf09a910 Add support for dual speed PWM 2020-10-13 20:23:43 +11:00
Ben V. Brown
d2ac2800d0 Merge branch 'master' into pinecil 2020-10-13 18:47:38 +11:00
Paul Fertser
30be5e0de4 Introduce PWM freq switching so that power could be averaged on shorter intervals
With this a TS-I tip is usable with a small netbook 19 V / 30 W PSU with
power limit set to 40 W (38.9 W is reported during the heating up
stage). Without this the device just reboots on attempt to turn on the
heater (unless the power limit is set to 10 or even 5 W).

This code doesn't affect maximum power available and allows up to 73 W
when a beefy 24 V / 96 W PSU is used.

Should be useful for all models, not just TS100.

The fixed comments are based on calculations, not measurements!

Fixes #693.
2020-09-29 19:02:55 +03:00
Ben V. Brown
e38da13306 Rework _all_ of the I2C
This moves all of the I2C code to IRQ based (not DMA _yet_).
But it does drastically improve reliability, especially of reads.
2020-09-22 21:03:09 +10:00
Ben V. Brown
8074255b9e Backport some master changes 2020-09-17 19:05:55 +10:00
Ben V. Brown
aa78ca2594 Dropping single line menu support 2020-09-06 16:44:19 +10:00
Ben V. Brown
99ba13525a Collapse Boost temp enable into setting
Work for #642
2020-09-06 16:04:41 +10:00
Ben V. Brown
feec35be7a Collapse power limiter into one menu option
Work for #642
2020-09-06 15:31:23 +10:00
Ben V. Brown
5459d437e4 Merge pull request #661 from paulfertser/last-value-pause
Add a pause for the last value in settings menus
2020-09-06 14:24:53 +10:00
Ben V. Brown
d48b27928a Move I2C initalisations into more logical spots 2020-09-05 20:10:10 +10:00
Ben V. Brown
3d3799d414 Prepare v2.11 release 2020-08-29 14:38:56 +10:00
Paul Fertser
a2a23b575f Pause for the last value in settings menus and blink the scroll thumb
This radically slows down auto-incrementing (when the change button is
kept pressed) of values when user reaches the maximum (last) allowed
option. The scrollbar thumb is blinking to indicate to the user that the
next keypress will wraparound (unless this value was already active
prior to entering menu).

Fixes #536.
2020-08-28 13:13:42 +03:00
Paul Fertser
25aee6b661 Move I2CSemaphore creation outside postRToSInit
The code assumes that whenever scheduler is running I2CSemaphore is
available. Initialising it in a task might lead to race conditions and
is also not happening at all if the task is disabled (for debugging or
due to lack of need for a particular usecase).

The race condition can't happen with the current code though, as GUI
task has lower priority than the MOV task, and they're the only tasks
that currently use I2C. However, this might change in the future with
the code refactoring or introduction of new features.
2020-08-26 15:07:13 +03:00
Paul Fertser
780f1f35ca Make flash and bootloader sizes configurable
This patch makes allocating special pages automatic and flexible,
allowing flash size and application start offset specification with
linker command line arguments. It should allow easier porting to
different targets and experimentation without adding code complexity.

Many original STM32F103x8 chips have fully functional 128 kiB flash and
so this additional space might come useful for experimentation,
additional optional features etc. Tested on v2.51A board, including
writing and verifying 128 kiB of random data.

Make variables are added to control that, so to build for the full
undocumented flash size and dapboot configured to start the app from 8
kiB offset one can run:

make flash_size=128k bootldr_size=0x2000
2020-08-26 11:53:47 +03:00
Ben V. Brown
2becaa5eab Further work on Pinecil compile 2020-08-18 18:58:00 +10:00
Ben V. Brown
e2c5e51fe1 Refactor to 1khz RToS 2020-08-01 21:16:23 +10:00
Ben V. Brown
9391158399 Re enable accel, fix accel flags & cleanup qc 2020-07-29 22:53:08 +10:00
Ben V. Brown
add65ead9c Drop timer support as not used 2020-07-28 21:26:05 +10:00
Ben V. Brown
0b2311e001 Update config and clean up debugging calls 2020-07-28 21:20:36 +10:00
Ben V. Brown
85decdc15b Merge branch 'master' into supporting-FUSB302 2020-07-23 20:26:56 +10:00
Ben V. Brown
1f6dfe5da5 MVP 2020-07-22 22:59:20 +10:00
Ben V. Brown
b6c61cfb52 Still testing 2020-07-21 13:39:50 +10:00
Ben V. Brown
a81511ceb9 Merge pull request #659 from paulfertser/fix-tempchange-menu
Fix "Temp change short/long" menu display
2020-06-21 10:25:08 +10:00
Paul Fertser
099d6b8aee Fix scrollbar thumb position for long menus
Advanced settings menu has 9 entries so the thumb ends up being one
pixel high and on the 9th menu it ends up being closer to the middle of
the screen rather than the end. This patch fixes it.
2020-06-21 00:37:15 +03:00
Paul Fertser
021b8e2fc8 Fix "Temp change short/long" menu display
The values are only two digits so do not overwrite the end of the menu
item string.

Fixes: #658.
2020-06-20 23:41:44 +03:00
Ben V. Brown
4c2fb11d32 Filter returned WFE 2020-06-16 21:25:28 +10:00
Ben V. Brown
2fd06887e8 Better messages flowing 2020-06-16 20:21:26 +10:00
Ben V. Brown
f196c5f1c9 Moving PD framework + big thread cleanup 2020-06-14 16:32:11 +10:00
Ben V. Brown
2c0b14edd4 Culling until fits in code
Does _not_ negotiate correctly :(
2020-06-12 22:13:40 +10:00
Ben V. Brown
34ae57ee58 Bitbang I2C setup + detect test 2020-06-12 21:10:03 +10:00
Ben V. Brown
441ac7f83a Move IRQ's for easier tracing 2020-05-30 18:34:49 +10:00
Ben V. Brown
2bcebd473e Cleanup QC Names 2020-05-30 11:46:13 +10:00
Ben V. Brown
ed8e5232b6 Finishing up file cleanup 2020-05-30 00:10:23 +10:00
Ben V. Brown
42ebd37bc8 Pull out settings flash calls 2020-05-30 00:05:28 +10:00
Ben V. Brown
22ac8d797b Update main.cpp 2020-05-29 23:17:23 +10:00
Ben V. Brown
2d8d1ad8da Move I2C 2020-05-29 23:12:31 +10:00
Ben V. Brown
a32e245789 Split I2C + startup logo 2020-05-29 23:07:59 +10:00
Ben V. Brown
d2dacf990c Move I2C to drivers 2020-05-29 22:26:21 +10:00