Compare commits
2
Commits
4737a5bae8
...
85a75b321d
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
85a75b321d | ||
|
|
d173328443 |
No files matched your search
@@ -8,3 +8,5 @@ brute
|
|||||||
.claude/
|
.claude/
|
||||||
__pycache__/
|
__pycache__/
|
||||||
*.ini
|
*.ini
|
||||||
|
build/
|
||||||
|
dist/
|
||||||
+2
-2
@@ -12,12 +12,12 @@ FROM python:3.13-slim AS base
|
|||||||
|
|
||||||
LABEL org.opencontainers.image.title="boxsim" \
|
LABEL org.opencontainers.image.title="boxsim" \
|
||||||
org.opencontainers.image.description="Boxsim project decoder and KiCad project generator" \
|
org.opencontainers.image.description="Boxsim project decoder and KiCad project generator" \
|
||||||
org.opencontainers.image.source="https://src.bundespruefstelle.ch/boxdev/re-boxsim" \
|
org.opencontainers.image.source="https://src.bundespruefstelle.ch/magdev/boxsim-fileformat-rev" \
|
||||||
org.opencontainers.image.licenses="MIT"
|
org.opencontainers.image.licenses="MIT"
|
||||||
|
|
||||||
WORKDIR /opt/boxsim
|
WORKDIR /opt/boxsim
|
||||||
|
|
||||||
COPY pyproject.toml README.md ./
|
COPY pyproject.toml README.md LICENSE ./
|
||||||
COPY boxsim ./boxsim
|
COPY boxsim ./boxsim
|
||||||
|
|
||||||
# Staged by tools/build-image.sh: the upgraded Visaton symbol library and the
|
# Staged by tools/build-image.sh: the upgraded Visaton symbol library and the
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2026 Marco Grätsch
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
v0.1.0 is delivered. The `boxsim` package decodes Boxsim containers in pure Python and generates KiCad 10 projects from their crossovers; see `README.md` for the format and the tool, and `CHANGELOG.md` for what changed.
|
v0.1.0 is delivered. The `boxsim` package decodes Boxsim containers in pure Python and generates KiCad 10 projects from their crossovers; see `README.md` for the format and the tool, and `CHANGELOG.md` for what changed.
|
||||||
|
|
||||||
Environment as of 2026-09-29: KiCad 10.0.6 installed natively, Python 3.13.15, Visaton library at `/home/magdev/workspaces/other/kicad-visaton-lib` (remote `pidock.local:3022`), upgraded to the KiCad 10 format as part of this work.
|
Environment as of 2026-09-29: KiCad 10.0.6 installed natively, Python 3.13.15, Visaton library checked out at `/home/magdev/workspaces/other/kicad-visaton-lib` from `ssh://git@src.bundespruefstelle.ch:2022/magdev/kicad-visaton-lib.git`, upgraded to the KiCad 10 format as part of this work.
|
||||||
|
|
||||||
Reference project for all work: `boxsim_dl/BoxSim 2.1 DE (Stand 12.2025)/Projekte/Default.BPJ`.
|
Reference project for all work: `boxsim_dl/BoxSim 2.1 DE (Stand 12.2025)/Projekte/Default.BPJ`.
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
Read Boxsim loudspeaker projects and turn their crossovers into KiCad projects.
|
Read Boxsim loudspeaker projects and turn their crossovers into KiCad projects.
|
||||||
|
|
||||||
[Boxsim](https://www.visaton.de/) is Visaton's free loudspeaker simulation program. Its project files (`.bpj`) and driver files (`.bch`) use an undocumented container, reverse engineered here. `boxsim` decodes them and generates a KiCad 10 project whose schematic mirrors the crossover you drew in Boxsim, with every part bound to a symbol and footprint from [kicad-visaton-lib](https://src.bundespruefstelle.ch/boxdev/kicad-visaton-lib).
|
[Boxsim](https://www.visaton.de/) is Visaton's free loudspeaker simulation program. Its project files (`.bpj`) and driver files (`.bch`) use an undocumented container, reverse engineered here. `boxsim` decodes them and generates a KiCad 10 project whose schematic mirrors the crossover you drew in Boxsim, with every part bound to a symbol and footprint from [kicad-visaton-lib](https://src.bundespruefstelle.ch/magdev/kicad-visaton-lib).
|
||||||
|
|
||||||
## Install
|
## Install
|
||||||
|
|
||||||
@@ -15,6 +15,7 @@ Nothing is required at runtime beyond Python 3.11+. KiCad 10 is a hard dependenc
|
|||||||
Point the tool at the Visaton library and the Boxsim parts catalogue:
|
Point the tool at the Visaton library and the Boxsim parts catalogue:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
git clone ssh://git@src.bundespruefstelle.ch:2022/magdev/kicad-visaton-lib.git
|
||||||
export BOXSIM_KICAD_LIB=/path/to/kicad-visaton-lib
|
export BOXSIM_KICAD_LIB=/path/to/kicad-visaton-lib
|
||||||
export BOXSIM_CATALOG="/path/to/BoxSim 2.1 DE/Weichenbauteile/Visatonteile.txt"
|
export BOXSIM_CATALOG="/path/to/BoxSim 2.1 DE/Weichenbauteile/Visatonteile.txt"
|
||||||
```
|
```
|
||||||
@@ -157,4 +158,9 @@ Tests needing KiCad or the Boxsim distribution skip themselves when those are ab
|
|||||||
|
|
||||||
## Licence
|
## Licence
|
||||||
|
|
||||||
MIT.
|
MIT, see [LICENSE](LICENSE).
|
||||||
|
|
||||||
|
Two things this repository deliberately does not contain, and their terms if you assemble them yourself:
|
||||||
|
|
||||||
|
- `Boxsim.exe` and the Boxsim distribution are Visaton freeware. Only the development-only oracle touches the binary, and no part of it is redistributed here or in the image.
|
||||||
|
- [kicad-visaton-lib](https://src.bundespruefstelle.ch/magdev/kicad-visaton-lib) is CC-BY-SA-4.0. `tools/build-image.sh` copies it into the image it builds, so an image you publish carries that licence alongside this one.
|
||||||
+3
-2
@@ -1,5 +1,5 @@
|
|||||||
[build-system]
|
[build-system]
|
||||||
requires = ["setuptools>=68"]
|
requires = ["setuptools>=77"]
|
||||||
build-backend = "setuptools.build_meta"
|
build-backend = "setuptools.build_meta"
|
||||||
|
|
||||||
[project]
|
[project]
|
||||||
@@ -8,7 +8,8 @@ version = "0.1.0"
|
|||||||
description = "Read Boxsim loudspeaker projects and generate KiCad projects from their crossovers"
|
description = "Read Boxsim loudspeaker projects and generate KiCad projects from their crossovers"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
requires-python = ">=3.11"
|
requires-python = ">=3.11"
|
||||||
license = { text = "MIT" }
|
license = "MIT"
|
||||||
|
license-files = ["LICENSE"]
|
||||||
authors = [{ name = "Marco Grätsch", email = "magdev3.0@gmail.com" }]
|
authors = [{ name = "Marco Grätsch", email = "magdev3.0@gmail.com" }]
|
||||||
keywords = ["boxsim", "visaton", "kicad", "loudspeaker", "crossover"]
|
keywords = ["boxsim", "visaton", "kicad", "loudspeaker", "crossover"]
|
||||||
dependencies = []
|
dependencies = []
|
||||||
|
|||||||
Reference in new issue
Block a user