Bad Weather Mount Tester
When you buy a new telescope mount, the first things to do is to measure the periodic error, because if the periodic error is really high, you would like to complain and send it back as fast as possible. Unfortunately, most of the time there will be bad weather after buying astro gear for an indefinite amount of time.
Bad Weather Mount Tester to the rescue!
Using this program you can test the periodic error of your mount any time, any place, provided you have a spare computer and monitor and a little bit of space.
Documentation
The full user manual is available at https://jscheidtmann.github.io/BadWeatherMountTester/.
How to Install
From PyPI (all platforms)
Using pip:
pip install BadWeatherMountTester
Or using pipx for an isolated install:
pipx install BadWeatherMountTester
Then run the application:
bwmt
From GitHub Releases (pre-built binaries)
Download the latest release from the GitHub Releases page.
- Linux: Download the
.tar.gzarchive, extract it, and run./bwmt - Windows: Download the
.ziparchive, extract it, and runbwmt.exe - macOS: Download the
.tar.gzarchive, extract it, and run./bwmt
From Source
git clone https://github.com/jscheidtmann/BadWeatherMountTester.git
cd BadWeatherMountTester
Install uv if you don't have it, then:
uv sync
uv run bwmt
How to Contribute
-
Fork the repository and clone your fork
-
Install development dependencies:
uv sync --dev
-
Install just for common development tasks:
Platform Command Windows winget install Casey.JustmacOS brew install justLinux / Raspberry Pi curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to ~/.local/bin -
List all available recipes:
just
Key recipes:
Recipe Description just testRun the test suite just lintRun ruff and flake8 just translationsExtract strings, update .pofiles, compile.mofilesjust compile-translationsCompile .po→.moonlyjust runRun the application -
Internationalization: The project supports German, English, and French via Flask-Babel. Translation files live in
src/badweathermounttester/translations/. After editing.pofiles runjust compile-translations. -
Submit a pull request against
main
CHANGELOG.md
This project keeps a CHANGELOG.
Credit
This software is based on the idea by Klaus Weyer from Solingen, Germany. Rest in Peace, Klaus!
Author, Copyright & License
Copyright (c) 2026 Jens Scheidtmann and contributors (see CONTRIBUTORS.md)
This file is part of BWMT, the Bad Weather Mount Tester.
BWMT is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
BWMT is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with BWMT. If not, see http://www.gnu.org/licenses/.
Metadata
Release files for badweathermounttester 0.9.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| badweathermounttester-0.9.0.tar.gz | 11.8 MB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| badweathermounttester-0.9.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.9 MB
Release files / badweathermounttester-0.9.0.tar.gz
| Download URL | badweathermounttester-0.9.0.tar.gz |
|---|---|
| Size | 11.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2087dff59737d399e2426cebffa1b2584941b5809c03639fc099abe272b6e793
|
|
BLAKE2b-256 checksum How to use checksums |
89c732626ce6e610d5b1a616a9b89d6baebd54750a55bf28b43ded8feb00c960
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 1, 2026.
Transparency logRelease files / badweathermounttester-0.9.0-py3-none-any.whl
| Download URL | badweathermounttester-0.9.0-py3-none-any.whl |
|---|---|
| Size | 106.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c6365c21aa486fc80ba703198c03db3778173911cf4f9192a82335ac7e8a9365
|
|
BLAKE2b-256 checksum How to use checksums |
8486cdfcce0adc229f12cf64a4528a162abd05751f8c1512fa657f937d246426
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 1, 2026.
Transparency logSecurity for badweathermounttester 0.9.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for badweathermounttester-0.9.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 1, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.