* 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
* mkdocs.yml: unify formatting style
* Docs/README.md: add auto-generated README.md file for Documentation/ directory
* Docs/README.md: fix refs
* Docs/README.md: fix locations
* Docs/README.md: trying workaround spaces in filenames for refs
* Documentation/README.md: update generated file trying to fix all formatting issues
* Documentation/README.md: reduce title size
* Documentation/README.md: add link for official online docs
* scripts/deploy.sh: implement docs_readme function
* deploy.sh: add overwrite warning in help output
* deploy.sh: try to fix shellcheck warnings
* deploy.sh:docs_readme() - show note message only if README should be updated
* deploy.sh:docs_readme() - fix shellcheck
* github/push: add Documentation/README.md check
* github/push: force usage of /bin/sh for deploy.sh script
* testing, testing, testing
* deploy.sh:docs_readme() - make error-related message more clear about what to donext
* Revert change used only to test failure on github CI
* 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>
* Makefile: fix echo for some environments by replacing escape chars with explicit formatting by spaces and new lines
* Dockerfile: extend comments for documentation purpose & switch WORKDIR to IronOS source tree root dir for the seamless workflow
* 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
* Root directory refactoring: - move info about Bootup Logo from a sepatate README to main README; - replace separate root scripts build.sh and start_dev.sh by root Makefile; - make Scripts directory and move there: flash_ts100_linux.sh script, ci/ directory, dockerfile, LICENSE_RELEASE, and PULL_REQUEST_TEMPLATE; - reconfigure build & deploy scripts according to changes
* Scripts => scripts
* Scripts -> scripts: re-add missing renamed files
* Directories refactoring: add top-level Makefile, add scripts/deploy.sh script, move github templates from top-level dir to .github, organize files inside Development Resources
* Update scripts/deploy.sh accroding to codestyle syntax shellcheck
* Makefile: add docs-deploy target for mkdocs gh-deploy
* Rename IronOS.yml > Env.yml, update related files
* Docs configs: remove empty characters
* docs/devel: update usage of new script
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.
* 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>
* 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
* 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>
* 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>