Files
SN-L00/hardware/kicad/scripts/freeroute.sh
T
florian.berthold 1ae49dc1bb Add 8HP layout with fully automated routing pipeline
- Update PCB to 8HP format (40x100mm) with v2 component placement
- Add automated routing scripts (autoroute.py runs full pipeline headlessly)
- Update panel spec and SVG for 8HP dimensions
- Board routes in <1 second with 0 unconnected pads

Scripts:
- autoroute.py: Full CLI pipeline (place → export → route → import → DRC)
- autoroute_full.py: Same pipeline for KiCad scripting console
- place_8hp.py: Component placement only
- route.sh/freeroute.sh: Routing helpers
2026-01-23 07:59:50 +01:00

47 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Freerouting automation script
# Usage: ./scripts/freeroute.sh
#
# Prerequisites: Export DSN from KiCad first (File → Export → Specctra DSN)
set -e
cd "$(dirname "$0")/.."
DSN_FILE="SN-L00.dsn"
SES_FILE="SN-L00.ses"
FREEROUTING_JAR="/tmp/freerouting.jar"
FREEROUTING_URL="https://github.com/freerouting/freerouting/releases/download/v2.0.1/freerouting-2.0.1.jar"
echo "=================================="
echo "SN-L00 Freerouting Automation"
echo "=================================="
# Check DSN exists
if [ ! -f "$DSN_FILE" ]; then
echo "ERROR: $DSN_FILE not found"
echo "Export from KiCad: File → Export → Specctra DSN"
exit 1
fi
# Download Freerouting if needed
if [ ! -f "$FREEROUTING_JAR" ]; then
echo "Downloading Freerouting..."
curl -L -o "$FREEROUTING_JAR" "$FREEROUTING_URL"
fi
# Run Freerouting
echo "Running Freerouting..."
java -jar "$FREEROUTING_JAR" \
-de "$DSN_FILE" \
-do "$SES_FILE" \
-mp 200 \
-mt 1 \
-oit
echo ""
echo "=================================="
echo "DONE! Import in KiCad:"
echo " File → Import → Specctra Session"
echo " Select: $SES_FILE"
echo "=================================="