From 71329d548477daae873fd0bbe92fa7a3a6dc0113 Mon Sep 17 00:00:00 2001 From: KenwoodFox Date: Tue, 26 Dec 2023 16:55:02 -0500 Subject: [PATCH] Import from https://github.com/KenwoodFox/Project-Template --- .github/workflows/docs_workflow.yml | 72 ++++ .github/workflows/firmware_workflow.yml | 76 ++++ .github/workflows/hardware_workflow.yml | 104 ++++++ .gitignore | 51 +++ CAD/Cube.FCStd | Bin 0 -> 9703 bytes Docs/.gitignore | 5 + Docs/Makefile | 17 + Docs/README.md | 21 ++ Docs/conf.py | 57 +++ Docs/index.rst | 9 + Docs/introduction/introduction.rst | 7 + Docs/requirements.txt | 5 + Docs/resources/logo.kra | Bin 0 -> 150424 bytes Docs/resources/logo.png | Bin 0 -> 46433 bytes Firmware/.gitignore | 2 + Firmware/Makefile | 46 +++ Firmware/build_flags.py | 76 ++++ Firmware/include/boardPins.h | 7 + Firmware/lib/README.md | 1 + Firmware/platformio.ini | 23 ++ Firmware/src/main.cpp | 31 ++ Firmware/test/README | 11 + .../InstrumentVisor/InstrumentVisor.kicad_pcb | 2 + .../InstrumentVisor/InstrumentVisor.kicad_pro | 332 ++++++++++++++++++ .../InstrumentVisor/InstrumentVisor.kicad_sch | 20 ++ Hardware/InstrumentVisor/Libraries/README.md | 3 + Hardware/InstrumentVisor/Stencils/README.md | 3 + .../Stencils/SolderMaskStencil.FCStd | Bin 0 -> 20524 bytes Hardware/config.kibot.yaml | 230 ++++++++++++ README.md | 37 ++ Static/Banner.kra | Bin 0 -> 61758 bytes Static/Banner.png | Bin 0 -> 16728 bytes 32 files changed, 1248 insertions(+) create mode 100644 .github/workflows/docs_workflow.yml create mode 100644 .github/workflows/firmware_workflow.yml create mode 100644 .github/workflows/hardware_workflow.yml create mode 100644 .gitignore create mode 100644 CAD/Cube.FCStd create mode 100644 Docs/.gitignore create mode 100644 Docs/Makefile create mode 100644 Docs/README.md create mode 100644 Docs/conf.py create mode 100644 Docs/index.rst create mode 100644 Docs/introduction/introduction.rst create mode 100644 Docs/requirements.txt create mode 100644 Docs/resources/logo.kra create mode 100644 Docs/resources/logo.png create mode 100644 Firmware/.gitignore create mode 100644 Firmware/Makefile create mode 100644 Firmware/build_flags.py create mode 100644 Firmware/include/boardPins.h create mode 100644 Firmware/lib/README.md create mode 100644 Firmware/platformio.ini create mode 100644 Firmware/src/main.cpp create mode 100644 Firmware/test/README create mode 100644 Hardware/InstrumentVisor/InstrumentVisor.kicad_pcb create mode 100644 Hardware/InstrumentVisor/InstrumentVisor.kicad_pro create mode 100644 Hardware/InstrumentVisor/InstrumentVisor.kicad_sch create mode 100644 Hardware/InstrumentVisor/Libraries/README.md create mode 100644 Hardware/InstrumentVisor/Stencils/README.md create mode 100644 Hardware/InstrumentVisor/Stencils/SolderMaskStencil.FCStd create mode 100644 Hardware/config.kibot.yaml create mode 100644 README.md create mode 100644 Static/Banner.kra create mode 100644 Static/Banner.png diff --git a/.github/workflows/docs_workflow.yml b/.github/workflows/docs_workflow.yml new file mode 100644 index 0000000..2bb56be --- /dev/null +++ b/.github/workflows/docs_workflow.yml @@ -0,0 +1,72 @@ +name: Docs + +permissions: + contents: write + +on: + push: + branches: + - "main" + tags: + - "*" + pull_request: + paths: + - "Docs/**" + - ".github/workflows/**" + +# +jobs: + make_docs: + runs-on: ubuntu-latest + name: Build Docs + steps: + - name: Setup Python + uses: actions/setup-python@v2 + with: + python-version: "3.10" + architecture: x64 + + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - run: sudo apt update && sudo apt install texlive-latex-recommended texlive-latex-extra texlive-pictures pandoc rename latexmk + + - name: Install docs requirements + run: pip install -r Docs/requirements.txt + + - name: Build pdf + run: cd Docs && make + + # + - run: mv Docs/_build/latex/*.pdf Docs/_build/latex/InstrumentVisor.pdf + + - uses: actions/upload-artifact@v2 + with: + name: Uniform_and_Style_Guide + path: Docs/_build/latex/InstrumentVisor.pdf + # + + publish_docs: + # Only run on tags + if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') + runs-on: ubuntu-latest + name: Publish Docs + needs: [make_docs] + + steps: + - uses: actions/download-artifact@v2 + with: + name: Uniform_and_Style_Guide + + - name: Upload Docs to release + uses: svenstaro/upload-release-action@v2 + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: "*.pdf" + tag: ${{ github.ref }} + overwrite: true + prerelease: true + # + body: "Kitsune Scientific, Automated with github ci/cd." + file_glob: true diff --git a/.github/workflows/firmware_workflow.yml b/.github/workflows/firmware_workflow.yml new file mode 100644 index 0000000..e4900f4 --- /dev/null +++ b/.github/workflows/firmware_workflow.yml @@ -0,0 +1,76 @@ +name: Firmware + +on: + push: + branches: + - "main" + tags: + - "*" + pull_request: + paths: + - "Firmware/**" + - ".github/workflows/**" + +# +jobs: + make_firmware: + runs-on: ubuntu-latest + name: Firmware Builder + + steps: + - uses: actions/checkout@v2 + - name: Cache pip + uses: actions/cache@v2 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} + restore-keys: | + ${{ runner.os }}-pip- + - name: Cache PlatformIO + uses: actions/cache@v2 + with: + path: ~/.platformio + key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }} + - name: Set up Python + uses: actions/setup-python@v2 + - name: Install PlatformIO + run: | + python -m pip install --upgrade pip + pip install --upgrade platformio + + - name: Run PlatformIO + run: cd Firmware && make build + + - uses: actions/upload-artifact@v2 + with: + name: Display_Binaries + path: Firmware/.pio/build/ATmega328P/firmware.* + + delint: + runs-on: ubuntu-latest + name: Delinter + + steps: + - uses: actions/checkout@v2 + - name: Cache pip + uses: actions/cache@v2 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} + restore-keys: | + ${{ runner.os }}-pip- + - name: Cache PlatformIO + uses: actions/cache@v2 + with: + path: ~/.platformio + key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }} + - name: Set up Python + uses: actions/setup-python@v2 + - name: Install PlatformIO + run: | + python -m pip install --upgrade pip + pip install --upgrade platformio + + - name: Run Delinter + run: cd Firmware && pio check +# diff --git a/.github/workflows/hardware_workflow.yml b/.github/workflows/hardware_workflow.yml new file mode 100644 index 0000000..895a338 --- /dev/null +++ b/.github/workflows/hardware_workflow.yml @@ -0,0 +1,104 @@ +name: Hardware + +permissions: + contents: write + actions: read + checks: write + +on: + push: + branches: + - "main" + tags: + - "*" + pull_request: + paths: + - "Hardware/**" + - ".github/workflows/**" + +# +jobs: + KiCad_Hardware: + runs-on: ubuntu-latest + name: KiCad Hardware + + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + submodules: true + + - uses: INTI-CMNB/KiBot@v2_k7 + with: + # Config file + config: Hardware/config.kibot.yaml + # Prefix for output in config file. + dir: _hardwareOutput + + # Hardware Files + # + schema: "Hardware/InstrumentVisor/InstrumentVisor.kicad_sch" + board: "Hardware/InstrumentVisor/InstrumentVisor.kicad_pcb" + # + + - name: upload results + uses: actions/upload-artifact@v2 + with: + name: Board-Hardware + path: _hardwareOutput + + dev-publish: + # publish only to devs + if: github.event_name == 'pull_request' + runs-on: ubuntu-latest + name: Dev-Publish + needs: [KiCad_Hardware] + + steps: + - uses: actions/download-artifact@v2 + with: + name: Board-Hardware + + - name: Upload KiCAD Artifacts + uses: edunad/actions-image@v2.0.3 + with: + path: "*-3D_top.png" + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + title: "PCB" + + publish: + # Only run on tags + if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') + runs-on: ubuntu-latest + name: Publish + needs: [KiCad_Hardware] + + steps: + # Be in our repo + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - uses: actions/download-artifact@v2 + with: + name: Board-Hardware + + - run: mkdir -p _staging/ + + - run: cp *.step _staging/ + + # Copy gerbers + - run: cp PCBWay/*.zip _staging/Board-$(git rev-parse --short HEAD)-PCBWay.zip + - run: cp JLCPCB/*.zip _staging/Board-$(git rev-parse --short HEAD)-JLCPCB.zip + + - name: Upload artifacts to release + uses: svenstaro/upload-release-action@v2 + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: "_staging/*" + tag: ${{ github.ref }} + overwrite: true + prerelease: true + # + body: "Kitsune Scientific, Automated with github ci/cd." + file_glob: true diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c642030 --- /dev/null +++ b/.gitignore @@ -0,0 +1,51 @@ +# Build artifacts +version.h +_build + +# Binaries +*.FCStd1 +*.stl +*.pdf +*.zip +*.*~ + +# CAD Artifacts +*.stl + +# Doc artifacts +_*/ + +# Temporary files +*.000 +*.bak +*.bck +*.kicad_pcb-bak +*.kicad_sch-bak +*-backups +*.kicad_prl +*.sch-bak +*~ +_autosave-* +*.tmp +*-save.pro +*-save.kicad_pcb +fp-info-cache +*auto_saved_files# +*.lck + +# Netlist files (exported from Eeschema) +*.net + +# Autorouter files (exported from Pcbnew) +*.dsn +*.ses + +# Exported BOM files +*.xml +*.csv + +# Pio +.pio + +# dev artifacts +.vscode diff --git a/CAD/Cube.FCStd b/CAD/Cube.FCStd new file mode 100644 index 0000000000000000000000000000000000000000..949d7083feca9308b77effc644147f1cf3b5a93f GIT binary patch literal 9703 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 R2_R-~Y%DA&Lil&m{U0Hz0{Q>| literal 0 HcmV?d00001 diff --git a/Docs/.gitignore b/Docs/.gitignore new file mode 100644 index 0000000..e04e21a --- /dev/null +++ b/Docs/.gitignore @@ -0,0 +1,5 @@ +# Dev +Pipfile* + +# Build +_build diff --git a/Docs/Makefile b/Docs/Makefile new file mode 100644 index 0000000..0aeea3c --- /dev/null +++ b/Docs/Makefile @@ -0,0 +1,17 @@ +SPHINXOPTS ?= +SPHINXBUILD ?= sphinx-build +SOURCEDIR = . +BUILDDIR = _build + +# Refactored from minimal makefile + +all: latexpdf + +clean: + git clean -fdX + +latexpdf: Makefile + @$(SPHINXBUILD) -M latexpdf "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +html: Makefile + @$(SPHINXBUILD) -M html "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/Docs/README.md b/Docs/README.md new file mode 100644 index 0000000..0c30a0b --- /dev/null +++ b/Docs/README.md @@ -0,0 +1,21 @@ +# Building the Docs + +To get started, you'll need a few things, you should have `pipenv` +(or your favorite python container tool). And some familiarly with RST. + +To begin, install the requirements into your python environment + +``` +pipenv install -r requirements.txt +pipenv shell +``` + +To make things easier, this project uses a build tool called make + +To use it just run + +``` +make +``` + +Thats it! Make some edits, and then run `make html` diff --git a/Docs/conf.py b/Docs/conf.py new file mode 100644 index 0000000..c9f8ba5 --- /dev/null +++ b/Docs/conf.py @@ -0,0 +1,57 @@ +import os +import sys +import subprocess +import sphinx_theme + +# Revision/git information +try: + release = ( + subprocess.check_output( + [ + "git", + "describe", + "--abbrev=4", + "--always", + "--tags", + ] + ) + .strip() + .decode("utf-8") + ) +except subprocess.CalledProcessError: + release = "NotARepo" + + +# Project Information +project = "InstrumentVisor" +copyright = "2023, Joe" +author = "Joe" + + +# General Config +extensions = [ + "sphinx.ext.autosectionlabel", +] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ["_templates"] + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +# This pattern also affects html_static_path and html_extra_path. +exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"] + + +# HTML output options +html_theme = "sphinx_rtd_theme" + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +# html_static_path = ['_static'] + + +# PDF output options +latex_elements = {"extraclassoptions": "openany,oneside"} + +latex_logo = "resources/logo.png" diff --git a/Docs/index.rst b/Docs/index.rst new file mode 100644 index 0000000..2cee3b3 --- /dev/null +++ b/Docs/index.rst @@ -0,0 +1,9 @@ +InstrumentVisor Docs +=============================== + +.. toctree:: + :maxdepth: 3 + :caption: Contents: + + introduction/introduction + \ No newline at end of file diff --git a/Docs/introduction/introduction.rst b/Docs/introduction/introduction.rst new file mode 100644 index 0000000..68cc3da --- /dev/null +++ b/Docs/introduction/introduction.rst @@ -0,0 +1,7 @@ +Introduction +############ + +Welcome! +======== + +Put an introduction here! diff --git a/Docs/requirements.txt b/Docs/requirements.txt new file mode 100644 index 0000000..6c9ee86 --- /dev/null +++ b/Docs/requirements.txt @@ -0,0 +1,5 @@ +# Sphinx +sphinx +sphinx-theme +sphinx-rtd-theme +readthedocs-sphinx-search diff --git a/Docs/resources/logo.kra b/Docs/resources/logo.kra new file mode 100644 index 0000000000000000000000000000000000000000..a188c32e5479f03650acd5c21d839935e8c08528 GIT binary patch literal 150424 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 Zt9O8TKbqdW{SW*nBcUK(`1H;D{|B6Z9k&1g literal 0 HcmV?d00001 diff --git a/Firmware/.gitignore b/Firmware/.gitignore new file mode 100644 index 0000000..b9f3806 --- /dev/null +++ b/Firmware/.gitignore @@ -0,0 +1,2 @@ +.pio +.vscode diff --git a/Firmware/Makefile b/Firmware/Makefile new file mode 100644 index 0000000..069a30f --- /dev/null +++ b/Firmware/Makefile @@ -0,0 +1,46 @@ +# A very simple makefile full of shortcuts + +# What port the arduino is on +ifndef SERIAL_DEV + ifneq (,$(wildcard /dev/ttyUSB0)) + SERIAL_DEV = /dev/ttyUSB0 + else ifneq (,$(wildcard /dev/ttyACM0)) + SERIAL_DEV = /dev/ttyACM0 + else + SERIAL_DEV = unknown + endif +endif + +.PHONY: help + +help: ## Prints this help message + @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' + +build: ## Invokes pio run + pio run + +# For CI +binaries: ## Builds the binaries + pio run + pio run -t .pio/build/uno328/firmware.hex + +flash: ## Flashes the code to the processor + pio run -t upload + +deep: ## Flashes the code to processor with fresh EEPROM values + pio run -t uploadeep + +clean: ## Cleans the repo of artefacts + pio run -t clean + git clean -fdx + +lint: ## De-lints the repo + pio check + +test: ## Run automated tests + pio test --upload-port $(SERIAL_DEV) + +debug: flash monitor ## Flashes then Monitors + +monitor: ## Monitors the device serial + pio device monitor --filter=direct --filter=time diff --git a/Firmware/build_flags.py b/Firmware/build_flags.py new file mode 100644 index 0000000..3ff0b4e --- /dev/null +++ b/Firmware/build_flags.py @@ -0,0 +1,76 @@ +import logging +import subprocess + +from datetime import date + + +today = date.today() + +try: + revision = ( + subprocess.check_output( + [ + "git", + "describe", + "--abbrev=8", + "--dirty", + "--always", + "--tags", + ] + ) + .strip() + .decode("utf-8") + ) + + print(f"-D REVISION='\"{revision}\"'") +except Exception as e: + logging.warning("Getting git revision failed!! Check that you have git installed?") + logging.warning(e) + + print("-D REVISION='Unknown'") + +try: + host = ( + subprocess.check_output( + [ + "hostname", + ] + ) + .strip() + .decode("utf-8") + ) + + print(f"-D FWHOST='\"{host}\"'") +except Exception as e: + logging.warning("Getting host failed!! Are you using a UNIX compatible system?") + logging.warning(e) + + print("-D FWHOST='Unknown'") + +try: + username = ( + subprocess.check_output( + [ + "id", + "-u", + "-n", + ] + ) + .strip() + .decode("utf-8") + ) + + # Cleanup CI + if username == "root": + username = "git" + host = "git" + + print(f"-D USERNAME='\"{username}\"'") +except Exception as e: + logging.warning("Getting host failed!! Are you using a UNIX compatible system?") + logging.warning(e) + + print("-D USERNAME='Unknown'") + +# Print to enable debugging +# print("-D DEBUG") diff --git a/Firmware/include/boardPins.h b/Firmware/include/boardPins.h new file mode 100644 index 0000000..fbd1ce3 --- /dev/null +++ b/Firmware/include/boardPins.h @@ -0,0 +1,7 @@ +#ifndef _BOARD_PINS_H +#define _BOARD_PINS_H + +// LEDs +#define STAT_LED 13 + +#endif diff --git a/Firmware/lib/README.md b/Firmware/lib/README.md new file mode 100644 index 0000000..bef5d2e --- /dev/null +++ b/Firmware/lib/README.md @@ -0,0 +1 @@ +PIO stores lib data in here, you can create lib folders with objects inside. \ No newline at end of file diff --git a/Firmware/platformio.ini b/Firmware/platformio.ini new file mode 100644 index 0000000..16f009e --- /dev/null +++ b/Firmware/platformio.ini @@ -0,0 +1,23 @@ +; PlatformIO Project Configuration File + +[env:ATmega328P] +platform = atmelavr ; Platform to build for +board = ATmega328P ; Supported board +framework = arduino ; What framework we're using + +board_build.mcu = atmega328p ; Microcontroller +board_build.f_cpu = 16000000L ; Frequency + +build_flags = !python build_flags.py ; Build flags before we push + +check_tool = clangtidy ; De-linter +check_flags = + clangtidy: --fix --checks=abseil,boost,bugprone,cert,cppcoreguidelines,clang-analyzer,google,hicpp,modernize,performance,portability,readability,cppcoreguidelines-avoid-magic-numbers,fuchsia-statically-constructed-objects,cert-err58-cpp,cppcoreguidelines-avoid-non-const-global-variables,cppcoreguidelines-macro-usage + +lib_deps = ; External libraries + SPI + +# Monitor Settings +monitor_speed = 115200 +monitor_rts = 0 +monitor_dtr = 0 diff --git a/Firmware/src/main.cpp b/Firmware/src/main.cpp new file mode 100644 index 0000000..992bc3e --- /dev/null +++ b/Firmware/src/main.cpp @@ -0,0 +1,31 @@ +/** + * @file main.cpp + * @author Joe + * @brief Source code for InstrumentVisor + */ + +// Libs +#include + +// Headers +#include "boardPins.h" + +void setup() +{ + // Setup serial + delay(200); + Serial.begin(115200); + Serial.println(REVISION); + + // Pins + pinMode(STAT_LED, OUTPUT); +} + +void loop() +{ + // Flash LED + digitalWrite(STAT_LED, HIGH); + delay(1000); + digitalWrite(STAT_LED, LOW); + delay(1000); +} diff --git a/Firmware/test/README b/Firmware/test/README new file mode 100644 index 0000000..9b1e87b --- /dev/null +++ b/Firmware/test/README @@ -0,0 +1,11 @@ + +This directory is intended for PlatformIO Test Runner and project tests. + +Unit Testing is a software testing method by which individual units of +source code, sets of one or more MCU program modules together with associated +control data, usage procedures, and operating procedures, are tested to +determine whether they are fit for use. Unit testing finds problems early +in the development cycle. + +More information about PlatformIO Unit Testing: +- https://docs.platformio.org/en/latest/advanced/unit-testing/index.html diff --git a/Hardware/InstrumentVisor/InstrumentVisor.kicad_pcb b/Hardware/InstrumentVisor/InstrumentVisor.kicad_pcb new file mode 100644 index 0000000..2b8ba10 --- /dev/null +++ b/Hardware/InstrumentVisor/InstrumentVisor.kicad_pcb @@ -0,0 +1,2 @@ +(kicad_pcb (version 20221018) (generator pcbnew) +) \ No newline at end of file diff --git a/Hardware/InstrumentVisor/InstrumentVisor.kicad_pro b/Hardware/InstrumentVisor/InstrumentVisor.kicad_pro new file mode 100644 index 0000000..08c3991 --- /dev/null +++ b/Hardware/InstrumentVisor/InstrumentVisor.kicad_pro @@ -0,0 +1,332 @@ +{ + "board": { + "3dviewports": [], + "design_settings": { + "defaults": { + "board_outline_line_width": 0.1, + "copper_line_width": 0.2, + "copper_text_size_h": 1.5, + "copper_text_size_v": 1.5, + "copper_text_thickness": 0.3, + "other_line_width": 0.15, + "silk_line_width": 0.15, + "silk_text_size_h": 1.0, + "silk_text_size_v": 1.0, + "silk_text_thickness": 0.15 + }, + "diff_pair_dimensions": [], + "drc_exclusions": [], + "rules": { + "min_copper_edge_clearance": 0.0, + "solder_mask_clearance": 0.0, + "solder_mask_min_width": 0.0 + }, + "track_widths": [], + "via_dimensions": [] + }, + "layer_presets": [], + "viewports": [] + }, + "boards": [], + "cvpcb": { + "equivalence_files": [] + }, + "erc": { + "erc_exclusions": [], + "meta": { + "version": 0 + }, + "pin_map": [ + [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 2 + ], + [ + 0, + 2, + 0, + 1, + 0, + 0, + 1, + 0, + 2, + 2, + 2, + 2 + ], + [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 2 + ], + [ + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 2, + 1, + 1, + 2 + ], + [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 2 + ], + [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 2 + ], + [ + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 1, + 1, + 1, + 2 + ], + [ + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 2 + ], + [ + 0, + 2, + 1, + 2, + 0, + 0, + 1, + 0, + 2, + 2, + 2, + 2 + ], + [ + 0, + 2, + 0, + 1, + 0, + 0, + 1, + 0, + 2, + 0, + 0, + 2 + ], + [ + 0, + 2, + 1, + 1, + 0, + 0, + 1, + 0, + 2, + 0, + 0, + 2 + ], + [ + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2 + ] + ], + "rule_severities": { + "bus_definition_conflict": "error", + "bus_entry_needed": "error", + "bus_to_bus_conflict": "error", + "bus_to_net_conflict": "error", + "conflicting_netclasses": "error", + "different_unit_footprint": "error", + "different_unit_net": "error", + "duplicate_reference": "error", + "duplicate_sheet_names": "error", + "endpoint_off_grid": "warning", + "extra_units": "error", + "global_label_dangling": "warning", + "hier_label_mismatch": "error", + "label_dangling": "error", + "lib_symbol_issues": "warning", + "missing_bidi_pin": "warning", + "missing_input_pin": "warning", + "missing_power_pin": "error", + "missing_unit": "warning", + "multiple_net_names": "warning", + "net_not_bus_member": "warning", + "no_connect_connected": "warning", + "no_connect_dangling": "warning", + "pin_not_connected": "error", + "pin_not_driven": "error", + "pin_to_pin": "warning", + "power_pin_not_driven": "error", + "similar_labels": "warning", + "simulation_model_issue": "ignore", + "unannotated": "error", + "unit_value_mismatch": "error", + "unresolved_variable": "error", + "wire_dangling": "error" + } + }, + "libraries": { + "pinned_footprint_libs": [], + "pinned_symbol_libs": [] + }, + "meta": { + "filename": "InstrumentVisor.kicad_pro", + "version": 1 + }, + "net_settings": { + "classes": [ + { + "bus_width": 12, + "clearance": 0.2, + "diff_pair_gap": 0.25, + "diff_pair_via_gap": 0.25, + "diff_pair_width": 0.2, + "line_style": 0, + "microvia_diameter": 0.3, + "microvia_drill": 0.1, + "name": "Default", + "pcb_color": "rgba(0, 0, 0, 0.000)", + "schematic_color": "rgba(0, 0, 0, 0.000)", + "track_width": 0.25, + "via_diameter": 0.8, + "via_drill": 0.4, + "wire_width": 6 + } + ], + "meta": { + "version": 3 + }, + "net_colors": null, + "netclass_assignments": null, + "netclass_patterns": [] + }, + "pcbnew": { + "last_paths": { + "gencad": "", + "idf": "", + "netlist": "", + "specctra_dsn": "", + "step": "", + "vrml": "" + }, + "page_layout_descr_file": "" + }, + "schematic": { + "annotate_start_num": 0, + "drawing": { + "dashed_lines_dash_length_ratio": 12.0, + "dashed_lines_gap_length_ratio": 3.0, + "default_line_thickness": 6.0, + "default_text_size": 50.0, + "field_names": [], + "intersheets_ref_own_page": false, + "intersheets_ref_prefix": "", + "intersheets_ref_short": false, + "intersheets_ref_show": false, + "intersheets_ref_suffix": "", + "junction_size_choice": 3, + "label_size_ratio": 0.375, + "pin_symbol_size": 25.0, + "text_offset_ratio": 0.15 + }, + "legacy_lib_dir": "", + "legacy_lib_list": [], + "meta": { + "version": 1 + }, + "net_format_name": "", + "page_layout_descr_file": "", + "plot_directory": "", + "spice_current_sheet_as_root": false, + "spice_external_command": "spice \"%I\"", + "spice_model_current_sheet_as_root": true, + "spice_save_all_currents": false, + "spice_save_all_voltages": false, + "subpart_first_id": 65, + "subpart_id_separator": 0 + }, + "sheets": [ + [ + "894f620e-3404-4a40-a2a7-513bc1d5f99b", + "" + ] + ], + "text_variables": {} +} diff --git a/Hardware/InstrumentVisor/InstrumentVisor.kicad_sch b/Hardware/InstrumentVisor/InstrumentVisor.kicad_sch new file mode 100644 index 0000000..018f374 --- /dev/null +++ b/Hardware/InstrumentVisor/InstrumentVisor.kicad_sch @@ -0,0 +1,20 @@ +(kicad_sch (version 20230121) (generator eeschema) + + (uuid 894f620e-3404-4a40-a2a7-513bc1d5f99b) + + (paper "A4") + + (title_block + (title "InstrumentVisor") + (rev "${REVISION}") + (company "Kitsune Scientific") + ) + + (lib_symbols + ) + + + (sheet_instances + (path "/" (page "1")) + ) +) diff --git a/Hardware/InstrumentVisor/Libraries/README.md b/Hardware/InstrumentVisor/Libraries/README.md new file mode 100644 index 0000000..096c32f --- /dev/null +++ b/Hardware/InstrumentVisor/Libraries/README.md @@ -0,0 +1,3 @@ +# External Libraries + +Add external libraries here: `git submodule add ` diff --git a/Hardware/InstrumentVisor/Stencils/README.md b/Hardware/InstrumentVisor/Stencils/README.md new file mode 100644 index 0000000..e3db0d0 --- /dev/null +++ b/Hardware/InstrumentVisor/Stencils/README.md @@ -0,0 +1,3 @@ +# Stencils and Templates + +Assembly jigs and tools. \ No newline at end of file diff --git a/Hardware/InstrumentVisor/Stencils/SolderMaskStencil.FCStd b/Hardware/InstrumentVisor/Stencils/SolderMaskStencil.FCStd new file mode 100644 index 0000000000000000000000000000000000000000..0be8073240a8c6ad9d31f933070efb0acaaec752 GIT binary patch literal 20524 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 A^Z)<= literal 0 HcmV?d00001 diff --git a/Hardware/config.kibot.yaml b/Hardware/config.kibot.yaml new file mode 100644 index 0000000..9484ecf --- /dev/null +++ b/Hardware/config.kibot.yaml @@ -0,0 +1,230 @@ +kibot: + version: 1 +# Look into pcb_replace, looks sick! Also sch_replace + +preflight: + run_erc: true + update_xml: true + run_drc: false + check_zone_fills: false + ignore_unconnected: false + + # Replace variables + set_text_variables: + - name: "REVISION" + command: "git rev-parse --short HEAD" + - name: "FULL_REVISION" + command: "git describe --always --tags" + - name: "ISSUE" + command: "date '+%Y-%m-%d'" + # - name: "KENWOODFOX_3DMODELS" # My custom libs! + # command: "echo 'Hardware/InstrumentVisor/Libraries/kenwoodfox-kicad-libraries/3d'" + +filters: + - name: only_jlc_parts + comment: "Only parts with JLC code" + type: generic + include_only: + - column: "LCSC#" + regex: '^C\d+' + +variants: + - name: rotated + comment: "Just a place holder for the rotation filter" + type: kibom + variant: rotated + pre_transform: _rot_footprint + +outputs: + - name: "Images" + comment: "Schematics and media for use in docs" + type: svg_sch_print + + - name: "3D Models" + comment: "3D Models" + type: step + + - name: "3D Renders" + comment: "3D Renders for docs!" + type: render_3d + options: + ray_tracing: true + rotate_x: -1 + rotate_y: 2 + zoom: 3 + wait_render: 20 + width: 800 + + # ====== + # PCBWay + # ====== + + - name: PCBWay_gerbers + comment: Gerbers compatible with PCBWay + type: gerber + dir: PCBWay + options: + exclude_edge_layer: true + exclude_pads_from_silkscreen: true + plot_sheet_reference: false + plot_footprint_refs: true + plot_footprint_values: true + force_plot_invisible_refs_vals: false + tent_vias: true + use_protel_extensions: true + create_gerber_job_file: false + output: "%f.%x" + gerber_precision: 4.6 + use_gerber_x2_attributes: false + use_gerber_net_attributes: false + disable_aperture_macros: true + line_width: 0.1 + subtract_mask_from_silk: false + inner_extension_pattern: ".gl%N" + layers: + - copper + - F.SilkS + - B.SilkS + - F.Mask + - B.Mask + - F.Paste + - B.Paste + - Edge.Cuts + + - name: PCBWay_drill + comment: Drill files compatible with PCBWay + type: excellon + dir: PCBWay + options: + metric_units: false + minimal_header: true + zeros_format: SUPPRESS_LEADING + # left_digits: 3 + # right_digits: 3 + # See https://github.com/INTI-CMNB/kicad-ci-test-spora/issues/1 + # and https://docs.oshpark.com/design-tools/gerbv/fix-drill-format/ + left_digits: 2 + right_digits: 4 + pth_and_npth_single_file: false + pth_id: "" + npth_id: "-NPTH" + output: "%f%i.drl" + + - name: PCBWay + comment: ZIP file for PCBWay + type: compress + dir: PCBWay + options: + format: ZIP + files: + - from_output: PCBWay_gerbers + dest: / + - from_output: PCBWay_drill + dest: / + + # ====== + # JLCPCB + # ====== + + - name: JLCPCB_gerbers + comment: Gerbers compatible with JLCPCB + type: gerber + dir: JLCPCB + options: + exclude_edge_layer: true + exclude_pads_from_silkscreen: true + plot_sheet_reference: false + plot_footprint_refs: true + plot_footprint_values: true + force_plot_invisible_refs_vals: false + tent_vias: true + use_protel_extensions: true + create_gerber_job_file: false + disable_aperture_macros: true + gerber_precision: 4.6 + use_gerber_x2_attributes: false + use_gerber_net_attributes: false + line_width: 0.1 + subtract_mask_from_silk: true + inner_extension_pattern: ".gp%n" + layers: + - copper + - F.SilkS + - B.SilkS + - F.Mask + - B.Mask + - F.Paste + - B.Paste + - Edge.Cuts + + - name: JLCPCB_drill + comment: Drill files compatible with JLCPCB + type: excellon + dir: JLCPCB + options: + pth_and_npth_single_file: false + pth_id: "-PTH" + npth_id: "-NPTH" + metric_units: true + map: gerber + route_mode_for_oval_holes: false + output: "%f%i.%x" + + - name: "JLCPCB_position" + comment: "Pick and place file, JLCPCB style" + type: position + options: + variant: rotated + output: "%f_cpl_jlc.%x" + format: CSV + units: millimeters + separate_files_for_front_and_back: false + only_smd: true + columns: + - id: Ref + name: Designator + - Val + - Package + - id: PosX + name: "Mid X" + - id: PosY + name: "Mid Y" + - id: Rot + name: Rotation + - id: Side + name: Layer + + - name: "JLCPCB_bom" + comment: "BoM for JLCPCB" + type: bom + options: + output: "%f_%i_jlc.%x" + exclude_filter: "only_jlc_parts" + ref_separator: "," + columns: + - field: Value + name: Comment + - field: References + name: Designator + - Footprint + - field: "LCSC#" + name: "LCSC Part #" + csv: + hide_pcb_info: true + hide_stats_info: true + quote_all: true + + - name: JLCPCB + comment: ZIP file for JLCPCB + type: compress + dir: JLCPCB + options: + files: + - from_output: JLCPCB_gerbers + dest: / + - from_output: JLCPCB_drill + dest: / + - from_output: JLCPCB_position + dest: / + - from_output: JLCPCB_bom + dest: / diff --git a/README.md b/README.md new file mode 100644 index 0000000..0d8b10a --- /dev/null +++ b/README.md @@ -0,0 +1,37 @@ +[![Docs](https://github.com/Kenwood/InstrumentVisor/actions/workflows/docs_workflow.yml/badge.svg)](https://github.com/Kenwood/InstrumentVisor/actions/workflows/docs_workflow.yml) +[![Hardware](https://github.com/Kenwood/InstrumentVisor/actions/workflows/hardware_workflow.yml/badge.svg)](https://github.com/Kenwood/InstrumentVisor/actions/workflows/hardware_workflow.yml) +[![Firmware](https://github.com/Kenwood/InstrumentVisor/actions/workflows/firmware_workflow.yml/badge.svg)](https://github.com/Kenwood/InstrumentVisor/actions/workflows/firmware_workflow.yml) + + +# InstrumentVisor + +![Banner](Static/Banner.png) + +This repo contains all the firmware and hardware for the InstrumentVisor. + +If you're looking for the latest docs/builds, see our [Releases Page](https://github.com/Kenwood/InstrumentVisor/releases). + +# Getting Started + +First, clone this repo (and optionally checkout a branch) + +```shell +git clone https://github.com/Kenwood/InstrumentVisor.git +cd InstrumentVisor +``` + +# Init Submodules + +Some libraries and resources are included as submodules, run the following +command to initialize them before opening the main sch + +(If you get a missing library error, make sure to do this) + +```shell +git submodule update --init --recursive +``` + + +## Project Layout + +If you want to use this project template for yourself, you can find it [here!](https://github.com/KenwoodFox/Project-Template) diff --git a/Static/Banner.kra b/Static/Banner.kra new file mode 100644 index 0000000000000000000000000000000000000000..1a9fc92b69ef9fe51484756a7e7f2c39056c1804 GIT binary patch literal 61758 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 BP%;1j literal 0 HcmV?d00001 diff --git a/Static/Banner.png b/Static/Banner.png new file mode 100644 index 0000000000000000000000000000000000000000..5eab4209dc08170af304b0bd5f4842205e49f1e9 GIT binary patch literal 16728 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 literal 0 HcmV?d00001