csTimer version 2023.06.28-24-g3204f8d - 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
This is a modded csTimer to include scorecards and mo10ao5 functionality. Email cubemasterofficial@gmail.com for questions/major bugs.
All credit to original designers: https://github.com/cs0x7f/cstimer
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
- Plenty of statistics functions, it supports time-split timing; Any number of
sessions, session split/merge, etc.
- Varieties of solver, such as Cross, Xcross, 2x2x2 face, Skewb Face, SQ1 shape, 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.
- 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.
- 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.
- 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.
- 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 |
Option details
- Hide All Elements 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.
- time format. 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.
- 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.
- 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.
- Show Avg Label. 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.
- select timer's font. Font of the main timer.
- UI design is. You can switch ui design to material-like, or hide shadows
by this option.
- UI style is. Switch between desktop and mobile views.
- Scramble panel display style. Make scramble panel embedded into background.
- Statistics panel display style. Make list times panel embedded into
background.
- Tools panel display style. Make tool panel embedded into background.
- background image opacity. 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.
- timer size. 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 mouse timer. 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.
- voice alert of WCA inspection. Alert at 8s/12s of inspection, to simulate
the alert from judge in WCA competitions.
- Voice volume. 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.
- 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?
- timer update is. 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.
- multi-phase. 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.
- scramble size. 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.
- monospaced scramble. 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.
- Alignment of scramble area. 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.
- 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.
- 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.
- Action when clicking scramble. Behavior when you click on the scramble
text, copy scramble or generate next scramble.
- Number of solves trimmed at better side. 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.
- print scramble(s) in statistics. Print scramble in round statistics
dialog.
- print solving date in statistics. Print solving date in round statistics
dialog.
- rename session immediately after creation. Immediately rename a session
after creating it.
- create new session when switching scramble type. 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.
- 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.
- 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 stat. when clicking solve number. 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.
- 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.
- time distribution precision. 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.
- Scramble Image Size. Set the size of scramble image.
- number of tools. 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.
- 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.
- multi-phase. 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.
- Mark scrambled if stay. 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.
- Mark scrambled by doing. Use specific move sequences on the bluetooth cube
to mark scrambled.
- Beep when mark scrambled. 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.
- 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.
- 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.
- cross-session stats. You are able to do cross-session statistics with
this tool.
- Statistics. 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 trend. Shows a trend curve of all solves in current session.
- Daily Statistics. Count number of solves each day/week/month/year.
- draw scramble. 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.
- Solvers > solve EOLine. 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.
- Solvers > 2x2x2 face. 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.
- 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.
- 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.
- 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.
- 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.
- Solvers > Pyraminx V. 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.
- Bluetooth Cube. Auxiliary tool for bluetooth cube, which is able to
show current state, battery power, real-time reconstruction etc.
- metronome. Metronome, besides beeping at specific frequency, you make it
beep at specific time after starting solve as well.
- Common Scramble. Using same scrambles with friends by setting a common
seed.
- stackmat. Auxiliary tool for Stackmat, which is able to view the
status, power and noise level of the signal, etc.
Links
Color schemes
Thank you for your willingness to support csTimer! Your donation will be used to support our development and
maintenance costs.
If you would like to offer us a donation through PayPal, please click the button below or through PayPal.me.
You can also fund us by Alipay, scan the next two-dimensional code or please pay to the account:
cs0x7f@gmail.com
Thank you again for your donation!
In case of failure check that Bluetooth is enabled on your system!
Browser you are using must support Web Bluetooth API. Consider using compatible browser, the best choice is:
- Chrome on macOS, Linux, Android or Windows
- Bluefy on iOS
Also you can check Web Bluetooth
Community Group implementation status for complete list of different browsers and supported Web Bluetooth
API features.