1
0
forked from me/IronOS
Commit Graph

771 Commits

Author SHA1 Message Date
Ben V. Brown
17b39de903 Use 3 count filter for MHP30 acceleromter (#1762)
* Use 3 count filter for MHP30 acceleromter

Requires it to trip 3 times in a row to fire. So really only knocking the unit over trips it off.

* Reset shutdown timer forwards on shutdown timeout

Default shutdown mode off

---------

Co-authored-by: discip <53649486+discip@users.noreply.github.com>
2023-08-04 21:38:41 +10:00
Ivan Zorin
3f880d9e26 Implement ci target for Makefile to reproduce github CI actions & artifacts (#1769)
* Implement CI target in Makefile to emulate github CI actions & artifacts

* Improve filter for metadata

* metadata.py: update usage output for wrong number of input arguments / code review

* metadata.py: remove excessive checks for the second input argument / code review

* metadata.py: remove hard-coded model for multi-lang builds in ModelName argument processing / code review

* metadata.py: remove hard-coded models for multi-lang builds in file name pattern processing / code review

* metadata.py: update usage output to remove ambiguity about json extension for output file

* metadata.py: unify new lines style formatting

* metadata.py: sort the list of processing files in alphanumeric order before looping through them to get the same lang order on every generation in every json output file
2023-08-04 21:32:17 +10:00
Ben V. Brown
c120af398a Merge branch 'dev' into Short-Detection 2023-08-02 15:52:49 +10:00
Ben V. Brown
80c4b58976 Abstract out showing bootlogo
To improve support on PinecilV2
2023-08-01 21:18:27 +10:00
Ben V. Brown
a7df1cc5be Fixup for logo addresses + Set DFU address for PinecilV2 2023-08-01 21:10:15 +10:00
Ben V. Brown
6d18e860f8 Merge branch 'dev' into Short-Detection 2023-07-28 20:04:16 +10:00
Ben V. Brown
344068d480 Add isTipShorted() to warnings 2023-07-28 19:59:54 +10:00
Ben V. Brown
13e1c24152 Warn user tick type correction 2023-07-28 19:58:46 +10:00
Ben V. Brown
7254b78404 Add warning for Tip Shorted to translations 2023-07-28 19:58:27 +10:00
Ivan Zorin
55d36c98f1 Simplify commands for jobs in push.yml (#1761)
* Simplify commands for build steps

* Fixing multi-lang builds for Pinecil & PinecilV2

* Makefile: fix multi-thread building support

* source/Makefile: fix formatting

---------

Co-authored-by: Ben V. Brown <5425387+Ralim@users.noreply.github.com>
2023-07-28 09:45:22 +00:00
Ivan Zorin
65ac2e25a6 Add Core/Drivers to the scope of style check by clang-format (#1754)
* clang-format: add ./Core/Drivers (except usb-pd) to the scope of style check

* Fix missed suggestion

---------

Co-authored-by: discip <53649486+discip@users.noreply.github.com>
Co-authored-by: Ben V. Brown <5425387+Ralim@users.noreply.github.com>
2023-07-28 09:39:01 +00:00
Ben V. Brown
ea1906e499 Enforce temp unit to C if F not in build
Closes #1741
2023-07-28 18:46:00 +10:00
Ben V. Brown
9a3fef92c3 Allow S60 fallback to head if PD times out after 3 seconds 2023-07-28 18:40:16 +10:00
discip
118fa09ce7 Enhanced V calibration (#1758) 2023-07-24 18:23:04 +10:00
Ben V. Brown
6ba2a5c259 BLE crash fixing (Part ?) (#1756)
* Remap printf

* Help to unify formatting

---------

Co-authored-by: discip <53649486+discip@users.noreply.github.com>
Co-authored-by: Ivan Zorin <ivan.a.zorin@gmail.com>
2023-07-24 09:07:38 +10:00
discip
0f6c1b686e Merge branch 'dev' into Short-Detection 2023-07-24 00:06:50 +02:00
Ben V. Brown
65dd3e879c Fixup for temp in F bug 2023-07-21 21:16:11 +10:00
discip
8ac43645b7 Merge branch 'dev' into Short-Detection 2023-07-20 20:22:37 +02:00
Ivan Zorin
93a18e5076 Move check-style core logic from makefile to shell script (#1745)
* Move check-style core logic from source/Makefile:check-style target to deploy.sh:check_style_file function

* deploy.sh: fix shellcheck warning

* source/Makefile: restore removed-by-accident style target
2023-07-20 11:02:56 +10:00
discip
78a4cfecfe Merge branch 'dev' into Short-Detection 2023-07-18 20:21:33 +02:00
Ivan Zorin
c7574c4d0c Implement printSymbolDeg() helper function as method for OLED class (#1743)
* implement printSymbolDeg() helper function as method for OLED class

* Remove extra line added by mistake

* OLED::printSymbolDeg - add drawSymbol calls

* OLED: make comments more clear for implemented method

* OLED::printSymbolDeg(): attempt to improve read-ability replacing if/else by switch/case

* OLED::printSymbolDeg() - add comment for drawSymbol to clarify its underhood

* get tipTemp using ?/: instead of if/else

* Implement getTipTemp() helper

* Add missing header

---------

Co-authored-by: Ben V. Brown <5425387+Ralim@users.noreply.github.com>
2023-07-18 20:38:14 +10:00
Ivan Zorin
d95af7d1a0 clang-format implementation (#1740)
* Testing clang-format style check using github CI

* github/push: implement check-style for clang-format as a separate build step

* github/push: add missing packages for check-style/clang-format build step

* source/Makefile: check-style - reduce files of interest; update .clang-format to keep enums init

* source/Makefile: empty lines, spaces & tabs refactoring to unify style - part 1 out of N

* source/Makefile: fix formatting for multi-line variables

* source/Makefile: update formatting for multi-line variables

* source/Makefile: remove spaces on vars assignments to unify style

* source/Makefile: remove unused target style

* source/Makefile: implement exclude vars for clang-format related files

* source/Makefile: exclude configuration.h from clang-format check

* Dockerfile: add diffutils in a container to make check-style target using advanced version of diff to get more advanced output to parse & navigate log more easily

* source/Makefile: implement parser for clang-format inside check-style target to make output compatible with gcc-like error compilation format for compatibility with IDEs/editors for easy navigation over files to fix style errors

* source/Makefile: probably final touches on unifying style

* source/Makefile: implement check-style-list target to only list affected file names with wrong code style for debug purposes

* source/Makefile: fix missed spaces

* deploy.sh: add helper routine to deal with clang-format error output logging from makefile

* gitignore: add clang-format log explicitly

* Refactoring for clang-format compiance

* Dockerfile: add sed

* Dockerfile: false alarm - remove sed since busybox-sed seems fine

* source/Makefile: reduce calls of clang-format & make error log more clean, clear, and tidy

* deploy.sh:check_style() - add removal of DOS EOLs for generated log

* source/Makefile:check-style: add more empty lines between blocks with errors for readability when suggestion is too long & heavy

* source/Makefile: add STOP var to check-style for exit on first failed file

* source/Makefile: check-style: make log looks more like traditional diff/patch output

* source/Core/BSP/Pinecilv2/MemMang/heap_5.c: clang-format refactoring using reasonable advises ... and then disable it in Makefile from scanning by clang-format

* Return headers include order

* clang-format config: disable warnings about non-alphabetic include order

* clang-format refactoring

* clang-format refactoring, part 2

* clang-format refactoring, part 3

* settingsGUI.cpp: refactoring, part 1

* settingsGUI.cpp: refactoring, part 2

* settingsGUI.cpp: refactoring, part 3

* settingsGUI.cpp: refactoring, part 4

* clang-format should be happy now

* workflows/push: put readme check into separate build step & update style

* clang-format: giving SortIncludes option second chance by tweaking a couple of headers a bit

* source/Makefile: check-style: add homebrew parser to check for { } in conditional blocks

* homebrew-format: add { } for if/else, while, and for & unify some comments style; left two errors intentionally to debug & improve parser

* source/Makefile: homebrew-format: fix false negative trigger for multi-line condition in if-s

* Sleep.cpp: unify style & comments

* source/Makefile: remove unused debug target
2023-07-16 15:25:30 +10:00
Ivan Zorin
cd7696b66f Suggestion to update BUILD_VERSION policy (#1733)
* version.h: update BUILD_VERSION policy / PoC

* Fix misplaced chars

* make_translation.py: implement get_version_suffix() function to extend BUILD_VERSION build type legend data

* version.h: update version policy info according to implementation of get_version_suffix() function in make_translation.py

* Version policy update: add double-check for release tag so if version doesn't match use another letter T

* make_translation.py: fix extra tabulation

* version.h: tiny tidy update for version format

* Documentation/DebugMenu.md: update info on version line & date

* Documentation/DebugMenu.md: fix formatting & mistypes

---------

Co-authored-by: discip <53649486+discip@users.noreply.github.com>
2023-07-10 09:58:24 +10:00
Ben V. Brown
552b582bcb Fixup! broken #1672 reflow profile 2023-07-09 22:29:48 +10:00
discip
f72bc969ac Merge branch 'dev' into Short-Detection 2023-07-06 18:23:09 +02:00
Ben V. Brown
0be83598f1 Try side-port of different linker and ram for PinecilV2 (#1730)
Try side-port of different linker and ram
2023-07-06 07:35:01 +10:00
discip
88f62941ec Merge branch 'dev' into Short-Detection 2023-07-05 22:26:35 +02:00
Ivan Zorin
cbde61edb4 Cosmetic code style refactoring: add enum for screen orientation & define for OLED state (#1732)
* saveSettings: add comment for #endif, update var name to reflect its purpose regardless its one-time & temporal

* Settings.h: add enum for orientation mode

* settingsGUI.cpp: add markings for #endifs, add/remove extra new lines to propose better code read-ability in my humble vision from the side, didnt touch any functionality only cosmetic syntax

* settingsGUI.cpp: remove added-by-accident new line in the end of the file

* OLED.hpp: unify ifdef section, add markings for #endifs, add readable macros for ON/OFF OLED state instead of magic numbers

* OLED.cpp: add markings for #endifs, add readable macros for ON/OFF OLED state instead of magic numbers, trying unify common style for the whole file for better read-ability

* Settings.cpp: unify code style

* settingsGUI.cpp: revert true/false for setDisplayRotation

* OLED.cpp: unify comments style
2023-07-05 12:41:16 +10:00
alextrical
f81257562d Tip short detection at boot
If tip is shorted at boot, prevent the FW from running, with the intent to prevent the MOSFET from being damaged
2023-06-30 15:57:11 +01:00
Ben V. Brown
990f42ad1a Merge pull request #1728 from dallinson/dallinson-pd-resistance-fix
Remove 0.5 ohm increase to resistance
2023-06-30 09:40:49 +10:00
Daniel Allinson
59b17b24ed Remove 0.5 ohm increase to resistance
Currently, IronOS increases the tip resistance by 0.5 ohms for the purposes of USB-PD negotiation.  On the Pinecil V2, this can cause issues with power supplies that only supply 60W, such as the Framework 60W supply.  At 6.2 ohms, 20V will produce 3.2A, but at 6.7 ohms it will produce 2.985 ohms.  This 0.5 ohms increase will cause the V2 to negotiate 20V, draw more than 3A, and trip the overcurrent protection, causing it to reboot.  Removing this increase will therefore cause it to fall back to the next highest voltage it can achieve.
2023-06-29 11:49:09 +01:00
Ben V. Brown
c43063ee8c Fixup overlapping variables on oled draw 2023-06-29 18:58:14 +10:00
Ben V. Brown
43094b2222 Revert to slower software I2C 2023-06-29 18:52:53 +10:00
Ben V. Brown
803d75cd9d Init startup to both buffers
Just in case
2023-06-28 19:14:08 +10:00
Ben V. Brown
159555f299 Update OLED.cpp 2023-06-28 19:13:03 +10:00
Ben V. Brown
5d04df39e0 Adjust divider
Update OLED.cpp
2023-06-27 21:56:13 +10:00
Ivan Zorin
0a3dfb34ec A bit of clean-up & update configuration.h files (#1717)
* BSP/configuration.h: update & clean-up macro defines

* BSP/MHP30/configuration.h: add lost-during-update macro
2023-06-20 15:01:27 +10:00
Ivan Zorin
155cf386b1 Zipping compiler warning about POW_PD_EXT / Two options (#1711)
* Zipping compiler warning about POW_PD_EXT / Option A

* Zipping compiler warning about POW_PD_EXT / Option B

* BSP/configuration.h: implement option A for POW_PD_EXT warning

---------

Co-authored-by: Ben V. Brown <5425387+Ralim@users.noreply.github.com>
2023-06-20 00:59:36 +00:00
Ben V. Brown
691abd5caa Fix OLED display scroll speed being painfully slow + junk on ease in/out 2023-06-19 17:12:51 +10:00
Ben V. Brown
9b5d155d31 Handle devices where flash is not 1:1 memory mapped 2023-06-19 16:41:47 +10:00
Ben V. Brown
c6918093fb Larger OLED Support (#1713)
* Update header to declare full buffer size

* Strip refactoring

* Refactor the OLED scrolldown part 1

* High res capable scroll down

* Allow button press to skip scroll

* Bunch of Misc Fixups
2023-06-18 22:50:31 +10:00
Ben V. Brown
d3d8e3d2d5 TS101 (#1695)
* Refactor I2C_SOFT to new #define

* Stitch in some of TS101

Update ShowStartupWarnings.cpp

Update OLED.hpp

Update stm32f1xx_hal_msp.c

Update Setup.cpp

Update Power.cpp

Update Pins.h

Update configuration.h

Power Muxing

Working dual input Voltage handler

Scan mode required for differing injected channels

Inject both dc readings

Update configuration.h

Update configuration.h

Use htim4 for adc control on TS101

Refactor htim names

Add ADC_TRIGGER

Speed up BB I2C a lil

Update configuration.h

Update startup_stm32f103t8ux.S

Update configuration.h

Add LIS2DH clone

LIS2DH gains another clone

Create tooling to allow mapping accelerometers onto different buses

Update startup_stm32f103t8ux.S

Ensure PD IRQ is pulled up

* Stitch in some of TS101

Update ShowStartupWarnings.cpp

Update OLED.hpp

Update stm32f1xx_hal_msp.c

Update Setup.cpp

Update Power.cpp

Update Pins.h

Update configuration.h

Power Muxing

Working dual input Voltage handler

Scan mode required for differing injected channels

Inject both dc readings

Update configuration.h

Update configuration.h

Use htim4 for adc control on TS101

Refactor htim names

Add ADC_TRIGGER

Speed up BB I2C a lil

Update configuration.h

Update startup_stm32f103t8ux.S

Update configuration.h

Add LIS2DH clone

LIS2DH gains another clone

Create tooling to allow mapping accelerometers onto different buses

Update startup_stm32f103t8ux.S

Ensure PD IRQ is pulled up

Allow toggle which button enters PD debug

* Update Pins.h

* Fix hard coded IRQ Pin

Update stm32f1xx_it.c

* Enable EPR

* Tip resistance measurement

* TS101 is a direct drive tip

Update BSP.cpp

* Add S60 and TS101 to builds

Update push.yml

* Update MOVThread.cpp

* Refactor power menu handler

* Correct prescaler

Forgot to update since I changed the period

* Tune in the timer divider for tip control to make PWM less audible

---------

Co-authored-by: discip <53649486+discip@users.noreply.github.com>
2023-06-18 21:58:20 +10:00
Ivan Zorin
a1b9e40f67 Show power source type on detailed screen in soldering mode (#1708) (#1709)
* Show power source type on detailed screen in soldering mode (#1708)

* Update according to code review
2023-06-18 21:38:26 +10:00
Ivan Zorin
4d7e4f41e3 Save settings on change only / All builds OK (#1699) (#1704) 2023-06-18 04:31:05 +00:00
Ivan Zorin
4c5e885363 source/Makefile: update for -C support (#1710) 2023-06-18 14:25:43 +10:00
Ben V. Brown
313336b61f Swap OLED offset write to reduce glitching
@discip
2023-06-18 14:22:08 +10:00
Ivan Zorin
c55a640d7f AutoStartMode refactoring (#1712)
* OperatingModes/Sleep: extend current mode with idle status

* OperatingModes/Sleep: tipTemp section refactoring

* source/Core - settings: tiny refactoring of AutoStartMode management

* OperatingModes/Sleep: rollback OperatingMode update
2023-06-17 17:07:26 +10:00
Ivan Zorin
5b1c273a78 source/Makefile: add HOST_PYTHON, extend clean target, remove -.d generation (#1701)
* source/Makefile modifications: add HOST_PYTHON variable for flexibility of environment setup / extend clean target to make source directory as new / rename -.d autogenerated temp file

* Makefile: keep Hexfile dir by clean target, add mrproper target to clean all

* Makefile: rename mrproper target to clean-all

---------

Co-authored-by: Ben V. Brown <5425387+Ralim@users.noreply.github.com>
2023-06-14 12:34:51 +00:00
Ivan Zorin
6fb8cda975 Update comments (#1702)
update comments
2023-06-14 10:32:27 +00:00
Ivan Zorin
ff61f7b5cf Unify sha-bangs for python scripts (#1703)
unify sha-bangs for python scripts
2023-06-14 10:32:04 +00:00