Initial scaffold for the RHZ Stylus maker firmware and supporting assets. This repository starts light so you can grow it alongside hardware bring-up and lab workflows.
firmware/
— PlatformIO projects (add stylus_maker_esp32s3/
or variants here)docs/
— Architecture notes, bring-up checklists, and EMC/Safety referenceshardware/
— BOMs, wiring tables, and PCB fabrication filestemplates/
— Config examples for logging, calibration, or CI pipelinesEach directory currently contains placeholders to keep the structure under version control; replace them with real assets as you iterate.
pip install platformio
or use the VS Code extension.templates/
into firmware/
and adjust board pins and logging paths.docs/
so your bench notes travel with the code.hardware/
(BOM, layout, enclosure).Use this repo as a template (recommended)
Use this template
on GitHub → pick a new name (e.g., my-stylus-firmware
) and set visibility.pip install --upgrade platformio
(or install the VS Code extension)python3 -m pip install --user numpy pandas scipy pyserial flake8
pio run
inside firmware/stylus_maker_esp32s3
to confirm the toolchain.Clone directly
git clone https://github.com/AceTheDactyl/PlatformIO.git
(or SSH equivalent).git remote rename origin upstream
so you can track upstream changes.Things to rename/customize immediately
mkdocs.yml
→ update site_name
/site_description
and verify the repo_url
.firmware/stylus_maker_esp32s3/platformio.ini
→ set the default environment name, board, and upload baud..github/workflows/*.yml
→ adjust badge links/secrets (e.g., NPM_TOKEN
, Pages URL) for your org.packages/rhz-stylus-arch/package.json
→ change the npm scope (@AceTheDactyl
) to yours or remove the package if unused.For a fuller checklist of files to touch when cloning this as a template, see docs/TEMPLATE_NOTES.md.
Full install guide → docs/INSTALL.md
cd firmware/stylus_maker_esp32s3
pio run
pio run -t upload
pio device monitor -b 115200
{"boot":"rhz_stylus_maker","ver":"vX.Y.Z"}
bootloader.bin
, partitions.bin
, firmware.bin
).esptool.py --chip esp32s3 --port /dev/ttyACM0 --baud 460800 write_flash 0x0000 bootloader.bin 0x8000 partitions.bin 0x10000 firmware.bin
pip install numpy pandas scipy pyserial flake8
python host/psd_quicklook.py sample.csv
python host/logger_serial.py --port /dev/ttyACM0 --baud 115200
packages/*
.package.json
(private, workspaces enabled).npm run ws:list
(from RHZ Stylus firmware/
).@AceTheDactyl/rhz-stylus-arch
packages/rhz-stylus-arch/
npx @AceTheDactyl/rhz-stylus-arch
(all)npx @AceTheDactyl/rhz-stylus-arch arch
(architecture only)npx @AceTheDactyl/rhz-stylus-arch llm
(LLM guide only)npm config set @AceTheDactyl:registry https://npm.pkg.github.com
read:packages
in ~/.npmrc
:
//npm.pkg.github.com/:_authToken=YOUR_GH_TOKEN
npm install @AceTheDactyl/rhz-stylus-arch
packages/rhz-stylus-arch/
and commit.git tag vX.Y.Z && git push origin vX.Y.Z
.github/workflows/npm-publish.yml
will:
X.Y.Z
NPM_TOKEN
.
read:packages
, write:packages
(add delete:packages
only if you need to yank).NPM_TOKEN
.npm run ws:pack
(creates dry-run tarballs for workspaces)