aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
Commit message (Collapse)AuthorAgeFilesLines
* scripts: Add stm32flash to octopi-install.sh package listKevin O'Connor2018-04-121-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stepstats: Add documentation clarificationKevin O'Connor2018-03-231-0/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* build: Use git describe --alwaysKevin O'Connor2018-02-261-1/+1
| | | | | | | | Add --always flag to "git describe" command to get a build identifier even if one checks out the repo with a depth parameter that prunes out the last tagged version. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* test: Add travis_fold markers to build outputKevin O'Connor2018-02-261-0/+4
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* test: Update travis build to include a basic klippy host testKevin O'Connor2018-02-262-0/+73
| | | | | | | | | | | | | | | | | Move the travis installation steps from the travis-build.sh script to a new script (scripts/travis-install.sh). Move the travis-build.sh script to the scripts/ directory as well. The data dictionaries built in the compile tests are useful during host software testing, so run all the compile tests sequentially in a single VM and save the data dictionaries after each build. Also, build all the config files found in the test/configs/ directory. Create the python virtualenv environment during the install phase and invoke the klippy.py host software in the build phase to perform a basic host software sanity check. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Support selecting an mcu to graph from the command-lineKevin O'Connor2018-02-191-13/+19
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Set size on frequency graphKevin O'Connor2018-02-181-0/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* avrsim: Rework pacing mechanismKevin O'Connor2018-02-051-13/+11
| | | | | | Rework the pacing mechanism to make it more stable. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Fix multi-mcu parsing with reordered statsKevin O'Connor2018-02-031-1/+7
| | | | | | | | The mcu stats (that contain a prefix) may occur before some other stats - make sure to only apply the stats prefix to those stats that need it. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Fix for print_stall detectionKevin O'Connor2018-01-281-5/+5
| | | | | | | The print_stall logic could cause large portions of the graph to show up as 100% host utilized. Rework the logic to avoid that. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Fix error in config file name printKevin O'Connor2018-01-281-1/+1
| | | | | | Fix typo causing an error during the printing of the config file name. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Better handle the case of a missing config sectionKevin O'Connor2018-01-211-4/+6
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Use alpha transparency when plotting the statsKevin O'Connor2018-01-141-9/+7
| | | | | | | | | | | | | Use an alpha transparency on each of the stats, so that it is possible to see how the values overlap. Also, always enable the "awake time" stat - just use a lower alpha transparency for it. Also, explicitly set the graph size as some version of matplotlib have a different default. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Fix filtering of normal buffer_time runoff statsKevin O'Connor2018-01-141-19/+25
| | | | | | | Update the mechanism to filter out cases where buffer_time is below MAXBUFFER so that it works with the statistics currently generated. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Fix parsing of "is_shutdown" messagesKevin O'Connor2018-01-121-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Add support for extracting shutdown info on multiple mcusKevin O'Connor2018-01-021-38/+70
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Add support for generating a graph of mcu frequencyKevin O'Connor2017-12-301-4/+53
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Use a smaller font in the graph legendKevin O'Connor2017-12-301-2/+4
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Fix case where an Xwindows display may not be availableKevin O'Connor2017-12-301-5/+6
| | | | | | | Matplotlib will try to open a display by default - tell it not to do that so that it can run in batch mode on headless machines. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Fix handling of messages with retransmitsKevin O'Connor2017-12-291-1/+2
| | | | | | | Properly handle the case where the original sequence number of a message is not known. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* build: Add gcc and binutils version to mcu data dictionaryKevin O'Connor2017-12-211-6/+43
| | | | | | | | Store the gcc and binutils versions used in the compilation of the firmware in the firmware data dictionary. Forward that information to the log so it is available during debugging. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Update file commentKevin O'Connor2017-12-181-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Rename extractconfig.py to logextract.py and add shutdown parsingKevin O'Connor2017-12-162-56/+259
| | | | | | | | | Add initial support for extracting out shutdown information from a klippy.log file. The shutdown dump will be reordered into the sequence that they occurred, and timestamps/sequence numbers in the mcu message dump will be expanded. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extractconfig: Add helper script that extracts config files from a logKevin O'Connor2017-12-061-0/+56
| | | | | | | Add a helper script that can read a klippy.log file and extract the printer.cfg files from it. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Fix graphing scriptKevin O'Connor2017-10-291-4/+6
| | | | | | | | Update the graphstats.py graphing script so that it works with recent stats changes - the stats can now contain groups that end with a ':' and the print_time is no longer reset to zero on a new print. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* pru: Force load the ADC module during PRU startupKevin O'Connor2017-10-181-0/+3
| | | | | | | | Make sure the ADC module gets loaded during startup - it's normally loaded by the cape manager eeprom, but there's no harm in requesting it explicitly. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* pru: Update start script to always unbind the PRU before binding itKevin O'Connor2017-10-051-1/+4
| | | | | | | | It appears some versions of Debian will load the PRU with firmware on boot, so make sure to always deactivate the PRU before attempting to activate it with new firmware. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* pru: Update installation and flash scriptsKevin O'Connor2017-09-204-29/+122
| | | | | | | | | Update the scripts used to install and "flash" the pru micro-controller code. Also, add a "flash" script for the linux micro-controller code. This makes it easier to install Klipper on a Beaglebone board that uses a Replicape. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Increase maximum expected task durationKevin O'Connor2017-08-091-1/+2
| | | | | | | | | Now that tasks are only run when needed it's common for there to be a larger variation in task execution time. When graphing load, consider a 99-percentile task duration of 2.5ms to be 100% loaded (up from 1ms). Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Fix so that older files (predating mcu_awake) still workKevin O'Connor2017-07-211-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Support graphing "mcu_awake" statisticKevin O'Connor2017-07-191-2/+9
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* pru: Add documentation and install scripts for running on the PRUKevin O'Connor2017-07-052-0/+101
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* pru: Add support for "make flash" ruleKevin O'Connor2017-07-051-0/+30
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* sched: Pass shutdown reason code via longjmp() parameterKevin O'Connor2017-07-041-2/+4
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* msgproto: Export static_strings from mcu to host as a dictionaryKevin O'Connor2017-07-021-1/+2
| | | | | | Export the static strings as a dictionary instead of as a list. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* command: Directly call command_sendf() for ack/nak messagesKevin O'Connor2017-06-291-9/+1
| | | | | | | Don't use the sendf() macro for ack and nak messages - directly call the command_sendf() code instead. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* command: Encode MESSAGE_MIN in command_parser->max_sizeKevin O'Connor2017-06-291-3/+5
| | | | | | | Add the message minimum into the stored constant so it does not need to be added at run-time. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* build: Request python2 for all directly executed python binariesKevin O'Connor2017-06-275-5/+5
| | | | | | | Some systems point python to python3 instead of python2 - explicitly request python2 to avoid conflicts. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* checkstack: Continue to accumulate stack usage on misc instructionsKevin O'Connor2017-06-221-2/+2
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* install-octopi: Add python-virtualdev to package listKevin O'Connor2017-06-151-1/+1
| | | | | | | | Add python-virtualdev to the list of system packages to be installed - it's usually already installed, but it doesn't hurt to add it to the list in case it isn't already installed. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* command: Store the command parsing information directly in arrayKevin O'Connor2017-05-262-20/+23
| | | | | | | Instead of defining an array of pointers, just define the array directly. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* build: Use compile_time_request system for init, tasks, and shutdownKevin O'Connor2017-05-262-10/+27
| | | | | | | | Avoid using linker magic to define the init, task, and shutdown functions. Instead, use the compile_time_request system. This simplifies the build and produces more efficient code. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* build: Avoid linker magic in compile_time_request.c unique id generationKevin O'Connor2017-05-261-19/+65
| | | | | | | | | | | | Avoid generating unique ids via memory locations and linker scripts. Instead, generate them using code produced by buildcommands.py. Utilize gcc's ability to perform static string comparisons at compile time to produce a unique id for each unique string. This fixes a build failure on ARM introduced in 142b92b8. It also reduces the complexity of the build. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* build: Add __visible to variables in compile_time_request.cKevin O'Connor2017-05-151-6/+8
| | | | | | | Add __visible to generated code in compile_time_request.c so that the main code can be compiled with -fwhole-program. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* scripts: Add octopi installation scriptsKevin O'Connor2017-04-212-0/+156
| | | | | | | | Add a system startup script so that Klipper can automatically start at boot time. Create an installation script that will install the system dependencies and the startup script. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: The times are no longer in UTC timeKevin O'Connor2017-04-111-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* checkstack: Be more flexible in finding the timer irq functionKevin O'Connor2017-04-021-2/+2
| | | | | | | If __vector_13 doesn't exist then try __vector_17. If neither exists then handle that gracefully. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* avrsim: Catch simulation errorsKevin O'Connor2017-03-261-0/+1
| | | | | | | Request that simulavr throw an exception on a fatal emulation error instead of exiting the process. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* checkstack: Updates for newer binutilsKevin O'Connor2017-03-261-0/+3
| | | | | | | Newer versions of binutils report the variable name on memory accesses. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* avrsim: Support pacing the simulationKevin O'Connor2017-03-241-1/+32
| | | | | | | Support timing the simulation scaled to the system clock. This can be used to make the host estimation of the mcu clock more accurate. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>