##################################################################################### Revision history ##################################################################################### ================================================================================ CRPS GUI Ver 1.12 update ================================================================================ GitHub https://github.com/RPC-MaxVision/CRPS-gui/raw/main/release/crpsgui.exe requires: CRPS GUI Ver 1.12 requires firmware build 569 https://github.com/RPC-MaxVision/CRPS/raw/main/CRPS41-bootloader-167-production-569.zip Performance Refactor restructured several functions for better maintainability Fixed Added automated app versioning during build process ToDo *) detect outdated firmware and ask to update. include small update button *) Allow gui to control the bootloader 'safe' commands *) add app info to display dependency versions and memory usage have button to show up-to-date memory usage dont send anything unless gui owns the port and in correct mode [firmware, bootloader] add timeouts for bootload program failure, no file written timeout expries. .. can not talk to port *) get charger ramp voltage working save user scripts to JSON file load user scripts from JSON file *) edit firmware to accept charge ramp voltage commands *) added eeprom user error detection fields can only accept [0-9, a-F, A-F] on blur, only the first 2 charactors are accepted *) in bootloader mode, show MCU signature, block size bootloader version firmware zize bootloader size ram size ================================================================================ CRPS GUI Ver 1.11 update ================================================================================ GitHub https://github.com/RPC-MaxVision/CRPS-gui/raw/main/release/crpsgui.exe requires: CRPS GUI Ver 1.11 requires firmware build 569 https://github.com/RPC-MaxVision/CRPS/raw/main/CRPS41-bootloader-167-production-569.zip Performance Refactor restructured several functions for better maintainability Fixed Front panel I/O radio check boxes to be more clearer Problem not programming firmware only on initial launch. Added Add relaunch button to gui add System State to detect Power-up from battery and invalid power-up these would probably never be seen but included to be complete ToDo *) detect outdated firmware and ask to update. include small update button *) look for a way to automate app versioning *) Allow gui to control the bootloader 'safe' commands dont send anything unless gui owns the port and in correct mode [firmware, bootloader] add timeouts for bootload program failure, no file written timeout expries. .. can not talk to port *) get charger ramp voltage working save user scripts to JSON file load user scripts from JSON file *) edit firmware to accept charge ramp voltage commands *) added eeprom user error detection fields can only accept [0-9, a-F, A-F] on blur, only the first 2 charactors are accepted *) in bootloader mode, show MCU signature, block size bootloader version firmware zize bootloader size ram size ================================================================================ CRPS GUI Ver 1.10 ================================================================================ GitHub https://github.com/RPC-MaxVision/CRPS-gui/raw/main/release/crpsgui.exe requires: CRPS GUI Ver 1.10 requires firmware build 569 https://github.com/RPC-MaxVision/CRPS/raw/main/CRPS41-bootloader-167-production-569.zip Performance Refactor restructured several functions for better maintainability Fixed bootload button to to not gives errors when programming firmware mouse over effect for bootload buttons Added an 'abort' button (big red 'X') to abort from bootloader mode and relaunch gui an icon to install EXE file ToDo Add relaunch button to gui dont send anything unless gui owns the port and in correct mode [firmware, bootloader] add timeouts for bootload program failure, no file written timeout expries. .. can not talk to port *) get charger ramp voltage working save user scripts to JSON file load user scripts from JSON file *) edit firmware to accept charge ramp voltage commands *) added eeprom user error detection fields can only accept [0-9, a-F, A-F] on blur, only the first 2 charactors are accepted *) in bootloader mode, show MCU signature, block size bootloader version firmware zize bootloader size ram size ================================================================================ CRPS GUI Ver 1.9 ================================================================================ Github https://github.com/RPC-MaxVision/CRPS/raw/main/CRPS41-bootloader-167-production-569.zip requires: CRPS GUI Ver 1.9 requires firmware build 569 Performance Refactor restructured several functions for better maintainability added auto detect Bootload mode program with latest firmware option for user to browse to firmware auto detect when programming has finished remembers last COM port and auto connects ToDo *) get charger ramp voltage working save user scripts to JSON file load user scripts from JSON file *) edit firmware to accept charge ramp voltage commands *) added eeprom user error detection fields can only accept [0-9, a-F, A-F] on blur, only the first 2 charactors are accepted *) in bootloader mode, show MCU signature, block size bootloader version firmware zize bootloader size ram size ================================================================================ CRPS GUI Ver 1.8 ================================================================================ CRPS Development build 569 Github https://github.com/RPC-MaxVision/CRPS/raw/main/CRPS41-bootloader-167-production-569.zip requires: CRPS GUI Ver 1.8 requires firmware build 569 Performance *) completely automated the way the project is compiled, built and archived. Doing it manually took about 10 minutes. now takes less than a minute. *) refactored a structural problem in the way html modules are loaded. The more code added to project the slower it loads. Occasionally it will hang and not load. Completely rewrote the code that loads modules. Now it loads in 46ms instead of 3.6 secs and smaller code. added *) Ability to control front panel leds, beeper and GPIO control. now the buttons in "system state" do their intended purpose. *) A new firmware command. set gpio "port" <bit> <state> where: port is a single character representing port name 'a','b','c','d','e','f','h','j','k','r','q' bit is the I/O bit 7, 6, 5, 4, 3, 2, 1, 0 state is the Boolean value for the I/O bit 1, 0 Example: sets PORTD bit 5 to true, turns on FP green led set gpio d 5 1 ================================================================================ CRPS GUI Ver 1.7 ================================================================================ Github https://github.com/RPC-MaxVision/CRPS/raw/main/CRPS41-bootloader-167-production-566.zip requires: CRPS firmware build 566 added Decoded charger status bits 7-6-5 ( PG, OTP, OTW) added eeprom erase all changed firmware to boot into debug/chatty mode when eeprom is empty ================================================================================ CRPS GUI Ver 1.6 ================================================================================ Github https://github.com/RPC-MaxVision/CRPS/raw/main/CRPS41-bootloader-167-production-565.zip requires: CRPS firmware build 565 feature: added send manual command to gui added charger status bit 4 (CV / CC) add indicator on main charger panel added new firmware command to set voltage set voltage <ctrl> a|b <float voltage> added to gui 'set voltage' to charger utilities added new firmware command to read all charger registers get chargerreg <ctrl> a|b added read charger registers to charger utilities ================================================================================ CRPS GUI Ver 1.5 ================================================================================ requires: CRPS firmware build 559 feature: added code to firmware if (PSON.ChangesState()) { Charger.SetCurrent(); } to make production mode set charger current based on system on/off ================================================================================ CRPS GUI Ver 1.4 ================================================================================ requires: CRPS firmware build 558 feature: added. auto refresh feature. updates every 1 second. can't really have any faster update rate without getting out of sync with the hardware improved. timeout if hardware fails to respond within 6 seconds added. bootloader mode / CRPS firmware mode auto-detect. requires firmware build 558 added. two new buttons under 'Diagnostic mode' 'CRPS mode' and 'Bootload mode'. Clicking on them puts the processor in the respective mode. added. outdated firmware detection. it now reports the required firmware and build number. It will still be compatible with older firmware but will be feature limited. added auto detect of windows system font and the ability to auto scale. Press CTRL and '+' or CTRL and '-' increases or decreases font scaleing. Pressing CTRL and '0' restores normal scaling. No longer need to adjust scaling using windows display settings. It will remember the scale factor the next time app is opened. within windows. Tested on windows 1920 resolution with display scaled to 100%, 150%, 175%. main gui and eeprom utility still look great. fix: fixed bug in CRPS gui header causing display not to format properly for 'port error' and 'port message' sections fixed display of bootloader revision and firmware revision titles not displaying fixed displaying of eeprom section when display is enlarged. ================================================================================ CRPS GUI Ver 1.3 ================================================================================ reqires: CRPS firmware build 555 feature: added reading eeprom, editing eeprom and saving entire eeprom. added version number to GUI title bar added in error detection and recovery should the MPS processor not response for 6 seconds. fix: improved charger info section. voltage, status, expander data is now easier to see. improved gui loading response under the hood. each section and sub sections are now modular. should be easier to maintain.