csTimer version 2019.12.24 - Professional Speedcubing/Training Timer

Language: English Català Čeština Dansk Deutsch Ελληνικά Español فارسی Suomi Français עברית Hrvatski Magyar Italiano 日本語 한국어 Nederlands Norsk Polski Português Română Pусский Slovenčina Српски Svenska Türkçe Українська Tiếng Việt 简体中文 繁體中文

If you are willing to help translating cstimer into your native language, please go to this page and select your language. If your native language is not on the list, just contact me and I'll add it.

Introduction

csTimer is a professional timing program designed for Rubik's cube speedsolvers, it provides:

Amounts of scramble algorithms, including all WCA official events , varieties of twisty puzzles, training scramble for specific sub steps (e.g. F2L, OLL, PLL, ZBLL , and can filter cases), etc

, varieties of twisty puzzles, for specific sub steps (e.g. , and can filter cases), etc Plenty of statistics functions, it supports time-split timing ; Any number of sessions , session split/merge, etc.

; , session split/merge, etc. Varieties of solver, such as Cross, Xcross, 2x2x2 face, Skewb Face, SQ1 shape , for learning or training these sub steps.

, for learning or training these sub steps. Other auxiliary tools, such as scramble image, 8-second inspection (voice) alert, metronome, batch-scramble generator, etc.

Backup function, For avoiding data missing, you can backup your solves to local files, csTimer's server or Google storage.

csTimer supports most of modern desktop browsers, on mobile phone and tablet PC, you can add csTimer to your home screen, and it will work as a native APP.

csTimer takes advantage of browser cache, which consumes traffic only when you open it for the first time, after that, csTimer is able to work without network connection (except for functions like backup)

Copyright

csTimer is an open source software that follows the GPLv3. If you have any suggestions or comments on csTimer, please submit it here

Written by: Shuang Chen (cs0x7f@gmail.com)

UI designed by: Yue Zhang (liebe7@126.com)

Basic functions

How to start timing - Hold the space bar (or both of left and right Ctrl keys, or touch the screen on mobile devices) and wait for the timer to turn green, the timer will start timing once the space bar is released, press any key to stop timing and the solving time will be record.

- Hold the space bar (or both of left and right Ctrl keys, or touch the screen on mobile devices) and wait for the timer to turn green, the timer will start timing once the space bar is released, press any key to stop timing and the solving time will be record. UI description - There are 6 buttons near the logo of csTimer: option, export, scramble, list times, donate, tools, click on the scramble , list times , tool to open the corresponding function panel.

- There are 6 buttons near the logo of csTimer: option, export, scramble, list times, donate, tools, click on the , , to open the corresponding function panel. Scramble panel - In the Scramble panel, you can select scramble type, set scramble length and case filter (if available), review previous scramble, generate next scramble.

- In the Scramble panel, you can select scramble type, set scramble length and case filter (if available), review previous scramble, generate next scramble. List times panel - In the list times panel, you can open session manager by clicking "Session", select/add/delete sessions, empty session by the selector and the button next to, then you can view the current single/average, best single/average, and the full time list.

- In the list times panel, you can open session manager by clicking "Session", select/add/delete sessions, empty session by the selector and the button next to, then you can view the current single/average, best single/average, and the full time list. Tools panel - In the tool panel, you can select specific auxiliary functions, including scramble image, scramble generators, solvers, other kinds of statistics, etc.

Keyboard shortcut

Key Function Alt + 1 Scramble type to Square-1. Alt + 2 ~ 7 Scramble type to 2x2x2~7x7x7. Alt + p/m/c/s Scramble type to pyra/megaminx/clock/skewb. Alt + i Scramble type to input. Alt + d Remove all times in current session. Alt + z Remove the latest time. Alt + up/down To next/last session. Alt + left/right Display last/next scramble. Ctrl + 1/2/3 The latest time is OK/+2/DNF

Virtual Cube Key Map 1



2



3

< 4

> 5

M 6

M 7

< 8

> 9



0



Q

z' W

B E

L' R

Lw' T

x Y

x U

Rw I

R O

B' P

z A

y' S

D D

L F

U' G

F' H

F J

U K

R' L

D' ;

y Z

Dw X

M' C

Uw' V

Lw B

x' N

x' M

Rw' ,

Uw .

M' /

Dw'

Option details

Hide All Elements When Timing . Hide logo and all panels when timing.

. Hide logo and all panels when timing. use milliseconds . Display the millisecond digit, no matter whether it is checked, the internal timing accuracy of csTimer is 1 millisecond.

. Display the millisecond digit, no matter whether it is checked, the internal timing accuracy of csTimer is 1 millisecond. time format . Time format to display.

. Time format to display. Auto Export (per 100 solves) . If checked, csTimer will export the solves automatically per 100 solves to the specified place, local file, csTimer server, or Google Storage.

. If checked, csTimer will export the solves automatically per 100 solves to the specified place, local file, csTimer server, or Google Storage. Import non-latest data . If you've uploaded multiple backups, you can import from one of the up to 10 most recently uploaded backups, if you accidentally upload an empty backup, this option will help you retrieve your solves.

. If you've uploaded multiple backups, you can import from one of the up to 10 most recently uploaded backups, if you accidentally upload an empty backup, this option will help you retrieve your solves. Hint messages in logo . cstimer's Logo will serve as an information display panel that prompts for a variety of information you may be interested in, such as breaking PB.

. cstimer's Logo will serve as an information display panel that prompts for a variety of information you may be interested in, such as breaking PB. Show Avg Label . Two lines of labels are displayed below the the main timer, the current two averages, ao5 and ao12 by default.

. Two lines of labels are displayed below the the main timer, the current two averages, ao5 and ao12 by default. Zoom . You can adjust sizes of all elements by this option.

. You can adjust sizes of all elements by this option. select timer's font . Font of the main timer.

. Font of the main timer. UI design is . You can switch ui design to material-like, or hide shadows by this option.

. You can switch ui design to material-like, or hide shadows by this option. UI style is . Switch between desktop and mobile views.

. Switch between desktop and mobile views. Scramble panel display style . Make scramble panel embedded into background.

. Make scramble panel embedded into background. Statistics panel display style . Make list times panel embedded into background.

. Make list times panel embedded into background. Tools panel display style . Make tool panel embedded into background.

. Make tool panel embedded into background. background image opacity . Opacity of the background image.

. Opacity of the background image. background image . You can select your own image as the background image, however, only https urls are available due to security constraint of the browser.

. You can select your own image as the background image, however, only https urls are available due to security constraint of the browser. timer size . Set the size of main timer.

. Set the size of main timer. use small font after decimal point . Use a smaller font size after the digital point in main timer.

. Use a smaller font size after the digital point in main timer. use mouse timer . Use mouse to start timer, keyboard-trigger will also be available.

. Use mouse to start timer, keyboard-trigger will also be available. use WCA inspection . Enable WCA inspection procedure, which is a 15-second countdown, auto +2/DNF penalty will also be enabled if you inspecting more than 15 seconds.

. Enable WCA inspection procedure, which is a 15-second countdown, auto +2/DNF penalty will also be enabled if you inspecting more than 15 seconds. voice alert of WCA inspection . Alert at 8s/12s of inspection, to simulate the alert from judge in WCA competitions.

. Alert at 8s/12s of inspection, to simulate the alert from judge in WCA competitions. Voice volume . Voice level of the alert above.

. Voice level of the alert above. entering in times with . csTimer is able to add solves by several ways, it supports manually input, automatically record from a stackmat timer, connect to a bluetooth smart cube or play virtual Rubik's cube, besides keyboard timing.

. csTimer is able to add solves by several ways, it supports manually input, automatically record from a stackmat timer, connect to a bluetooth smart cube or play virtual Rubik's cube, besides keyboard timing. Unit when entering an integer . When you type an integer XXX in the input box, what does it mean, XXX second or XXX centisecond or XXX millisecond?

. When you type an integer XXX in the input box, what does it mean, XXX second or XXX centisecond or XXX millisecond? timer update is . How timer is updated when timing.

. How timer is updated when timing. time of keeping space down(second(s)) . How long the space bar should be held before the timer turns green.

. How long the space bar should be held before the timer turns green. multi-phase . Number of phases, press any key to mark a split point when timing.

. Number of phases, press any key to mark a split point when timing. Use Stackmat Status Information . Stackmat will report its state, e.g. whether left or right area is touched, then csTimer is able to use these information, however, the data error might occur and cause unexpected behavior.

. Stackmat will report its state, e.g. whether left or right area is touched, then csTimer is able to use these information, however, the data error might occur and cause unexpected behavior. scramble size . Size of the scramble text.

. Size of the scramble text. Auto scramble size . The size of the scramble text will be automatically adjusted by the length of the scramble, which works with together previous option.

. The size of the scramble text will be automatically adjusted by the length of the scramble, which works with together previous option. monospaced scramble . Use monospaced font for scramble text.

. Use monospaced font for scramble text. Limit the height of scramble area . When the scramble area is too high, a scroll bar will occur to avoid the raising of the scramble panel.

. When the scramble area is too high, a scroll bar will occur to avoid the raising of the scramble panel. Alignment of scramble area . Alignment of the whole scramble area, include scramble type selector.

. Alignment of the whole scramble area, include scramble type selector. pre-scramble . Pre moves before scramble, which is used for virtual Rubik's cube and scramble image.

. Pre moves before scramble, which is used for virtual Rubik's cube and scramble image. Using fast scramble for 4x4x4 (non-official) . WCA official 4x4x4 scramble requires huge computation resources, select this option to use a random-move scramble for 4x4x4 instead.

. WCA official 4x4x4 scramble requires huge computation resources, select this option to use a random-move scramble for 4x4x4 instead. Label key move(s) in scramble . Mark a key move in the scramble, e.g. the move that take the state away from square shape in SQ1 scrambles.

. Mark a key move in the scramble, e.g. the move that take the state away from square shape in SQ1 scrambles. Action when clicking scramble . Behavior when you click on the scramble text, copy scramble or generate next scramble.

. Behavior when you click on the scramble text, copy scramble or generate next scramble. Number of solves trimmed at each side . Number of solves trimmed at head and tail of solves when calculating average.

. Number of solves trimmed at head and tail of solves when calculating average. show summary before time list . Show the statistics table before time list.

. Show the statistics table before time list. print scramble(s) in statistics . Print scramble in round statistics dialog.

. Print scramble in round statistics dialog. print solving date in statistics . Print solving date in round statistics dialog.

. Print solving date in round statistics dialog. rename session immediately after creation . Immediately rename a session after creating it.

. Immediately rename a session after creating it. create new session when switching scramble type . When switching scramble type, a new session will be created.

. When switching scramble type, a new session will be created. Inverse time list . Invert the time list, thus, latest solves will at the bottom of the time list.

. Invert the time list, thus, latest solves will at the bottom of the time list. Enable session emptying . When disabled, an '+' button (for session creating) will replace the 'X' button besides the session selector, thus, when clicked, a new empty session will be created instead of clearing the whole session.

. When disabled, an '+' button (for session creating) will replace the 'X' button besides the session selector, thus, when clicked, a new empty session will be created instead of clearing the whole session. Show absolute index in statistics report . Show absolute index in the session instead of 1 to number of solves (e.g. 1/2/3 for mo3) in round statistics.

. Show absolute index in the session instead of 1 to number of solves (e.g. 1/2/3 for mo3) in round statistics. Show stat. when clicking solve number . When click the first row of the time list, show a round statistics for a single solve.

. When click the first row of the time list, show a round statistics for a single solve. Statistical indicators . Statistical indicator for the statistics table, when customizing, aoX and moX are available.

. Statistical indicator for the statistics table, when customizing, aoX and moX are available. Enable Multiple Deletion . Able to delete multiple solves starts from a solve, for avoid misunderstand, the selected solve will be the oldest solve to delete.

. Able to delete multiple solves starts from a solve, for avoid misunderstand, the selected solve will be the oldest solve to delete. time distribution precision . Time interval for the time distribution tool.

. Time interval for the time distribution tool. Show solution progressively . If selected, only the length of a solution from a solver is displayed, and you can view the solution one move by one move, otherwise, the whole solution is displayed.

. If selected, only the length of a solution from a solver is displayed, and you can view the solution one move by one move, otherwise, the whole solution is displayed. Scramble Image Size . Set the size of scramble image.

. Set the size of scramble image. number of tools . csTimer is able to show up to 4 tools simultaneously.

. csTimer is able to show up to 4 tools simultaneously. use keyboard shortcut . Use keyboard shortcut to switch scramble type, generate next scramble, switch between sessions, etc.

. Use keyboard shortcut to switch scramble type, generate next scramble, switch between sessions, etc. VRC base speed (tps) . Base turn speed of the virtual Rubik's cube, the turn will be speed up if there are multiple moves to turn.

. Base turn speed of the virtual Rubik's cube, the turn will be speed up if there are multiple moves to turn. multi-phase . Automatic multi-phase split for virtual Rubik's cube and bluetooth cube.

. Automatic multi-phase split for virtual Rubik's cube and bluetooth cube. Show virtual bluetooth cube . Show a virtual Rubik's cube in the main timer when connecting to a bluetooth cube.

. Show a virtual Rubik's cube in the main timer when connecting to a bluetooth cube. Mark scrambled if stay . For a bluetooth cube, csTimer cannot know whether a move is from for scrambling or solving.

. For a bluetooth cube, csTimer cannot know whether a move is from for scrambling or solving. Mark scrambled with spacebar . When the space bar is pressed, the bluetooth cube is marked scrambled, any turns after that will treated as the start of timing.

. When the space bar is pressed, the bluetooth cube is marked scrambled, any turns after that will treated as the start of timing. Mark scrambled by doing . Use specific move sequences on the bluetooth cube to mark scrambled.

. Use specific move sequences on the bluetooth cube to mark scrambled. Beep when mark scrambled . Beep when some of scramble-finish signal is triggered.

. Beep when some of scramble-finish signal is triggered. Reset bluetooth cube when connect . When connecting to a bluetooth cube, csTimer will detect whether it is solved, if not, there might be some hardware problems or the cube is really unsolved.

. When connecting to a bluetooth cube, csTimer will detect whether it is solved, if not, there might be some hardware problems or the cube is really unsolved. Auto hardware error detection. Some bluetooth cubes will loss some of moves due to hardware failure, csTimer will try to detect such case.

Tools detail

ScrambleGenerator . You are able to generate up to 999 scrambles with one click by this tool.

. You are able to generate up to 999 scrambles with one click by this tool. Confirm time . Tool to view current solves with its comment, scramble, solving date and reconstruction if available, which is also the dialog when you click on a solve.

. Tool to view current solves with its comment, scramble, solving date and reconstruction if available, which is also the dialog when you click on a solve. cross-session stats . You are able to do cross-session statistics with this tool.

. You are able to do cross-session statistics with this tool. Statistics . Statistic table similar with the table in the list times panel.

. Statistic table similar with the table in the list times panel. time distribution . Time distribution and stability analysis, <X Y/Z means there are totally Y solves less than X seconds, and all of the latest Z solves are less than X seconds in the session.

. Time distribution and stability analysis, <X Y/Z means there are totally Y solves less than X seconds, and all of the latest Z solves are less than X seconds in the session. time trend . Shows a trend curve of all solves in current session.

. Shows a trend curve of all solves in current session. Daily Statistics . Count number of solves each day/week/month/year.

. Count number of solves each day/week/month/year. draw scramble . Scramble image to verify a correct scramble, all WCA puzzles are supported.

. Scramble image to verify a correct scramble, all WCA puzzles are supported. Solvers > solve Roux S1 . Roux 1st step solver, which solves a 1x2x3 block.

. Roux 1st step solver, which solves a 1x2x3 block. Solvers > solve EOLine . EO line solver, which solves orientations of all 12 edges, and positions of DF and DB edges.

. EO line solver, which solves orientations of all 12 edges, and positions of DF and DB edges. Solvers > solve cross . Cross solver, which solve DF, DL, DR, DB edges.

. Cross solver, which solve DF, DL, DR, DB edges. Solvers > 2x2x2 face . 2x2x2 face solver, which solves a face of 2x2x2 cube.

. 2x2x2 face solver, which solves a face of 2x2x2 cube. Solvers > Cross + F2L . Cross and F2L solver, which solves Cross and 4 F2Ls with computer search, so the solution might be far from human solutions.

. Cross and F2L solver, which solves Cross and 4 F2Ls with computer search, so the solution might be far from human solutions. Solvers > Roux S1 + S2 . Roux 1st and 2nd step solver, which firstly solves a 1x2x3 block on the left face and then expend another 1x2x3 block on the right face with R, M, r, U.

. Roux 1st and 2nd step solver, which firstly solves a 1x2x3 block on the left face and then expend another 1x2x3 block on the right face with R, M, r, U. Solvers > 2x2x2 + 2x2x3 . Petrus 1st and 2nd step solver, which firstly solves an 2x2x2 block on the left and then expend it to a 2x2x3 on the left.

. Petrus 1st and 2nd step solver, which firstly solves an 2x2x2 block on the left and then expend it to a 2x2x3 on the left. Solvers > EOLine + ZZF2L . Eoline and ZZF2L solver, which firstly solves the EOLine and then solve one of left 1x2x3 or right 1x2x3 and the solve the other 2x2x3.

. Eoline and ZZF2L solver, which firstly solves the EOLine and then solve one of left 1x2x3 or right 1x2x3 and the solve the other 2x2x3. Solvers > SQ1 S1 + S2 . SQ1 1st and 2nd step solver, which firstly solves the shape of SQ1 and then split U pieces and D pieces.

. SQ1 1st and 2nd step solver, which firstly solves the shape of SQ1 and then split U pieces and D pieces. Solvers > Pyraminx V . Pyraminx V solver, which solves three corners and two edges to shape into a 'V' pattern for pyraminx.

. Pyraminx V solver, which solves three corners and two edges to shape into a 'V' pattern for pyraminx. Solvers > Skewb Face . Skewb face solver, which solves a layer of skewb, more specifically, 1 center and 4 neighbor corners.

. Skewb face solver, which solves a layer of skewb, more specifically, 1 center and 4 neighbor corners. Bluetooth Cube . Auxiliary tool for bluetooth cube, which is able to show current state, battery power, real-time reconstruction etc.

. Auxiliary tool for bluetooth cube, which is able to show current state, battery power, real-time reconstruction etc. InsertionFinder . Insertion finder, which is for FMC.

. Insertion finder, which is for FMC. metronome . Metronome, besides beeping at specific frequency, you make it beep at specific time after starting solve as well.

. Metronome, besides beeping at specific frequency, you make it beep at specific time after starting solve as well. Online Competition . Online competition, so you can login with WCA account and compete with all speedsolvers around the world with same scrambles.

. Online competition, so you can login with WCA account and compete with all speedsolvers around the world with same scrambles. stackmat. Auxiliary tool for Stackmat, which is able to view the status, power and noise level of the signal, etc.

Links

Color schemes