
Epaper smart watch
AeroX2/aerox2.github.io
One repository and npm installation builds the workshop at jamesridey.dev and the professional site at cv.jamesridey.dev.

One repository and npm installation builds the workshop at jamesridey.dev and the professional site at cv.jamesridey.dev.
Motor controller is an open-source printed circuit board by AeroX2, from the AeroX2/aerox2.github.io repository on GitHub. It is a 4-layer board of 46 × 53 mm with 137 parts on 91 nets, routed with 783 tracks and 282 vias.
It is built around the STSPIN32G4, AS5048A and MAX3051EKA, with the BAT41KFILM, TPH4R50ANH,L1Q(M and RC0402FR-0710KL among its other parts. Its parts include 52 capacitors, 30 resistors, 13 diodes, 6 transistors and 3 ICs. It belongs with the robots and motor control boards of this library.
One repository and npm installation builds the workshop at jamesridey.dev
and the professional site at cv.jamesridey.dev.
npm ci
npm run buildOutputs are dist/workshop and dist/cv. The build validates assets, résumé
consistency, and Cloudflare Pages limits. Run npm run check for Svelte and
TypeScript validation.
The workshop is an Astro site (src/pages) that prerenders the Svelte app to
static HTML, with one page per project at /projects/<slug>. Project data
lives in src/data/projects.ts. The CV is plain HTML built by
vite.cv.config.ts.
Use npm run dev for the workshop and npm run dev:cv for the CV. Use
npm run preview and npm run preview:cv to inspect production outputs.
Both websites get their PDF from shared/James-Ridey-Resume.pdf.
GitHub Actions builds both once and deploys the matching output to each Cloudflare Pages project. Main pushes deploy both sites; pull requests only build and validate. GitHub Pages deployments are removed; the old site must be unpublished in repository Settings > Pages.
See build and migration instructions for account setup, secrets, rollout, and rollback.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 16 | 10uF 50V | Capacitor_SMD:C_1206_3216Metric | C22, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34, C35, C36, C37 |
| 15 | DNP | Capacitor_SMD:C_1206_3216Metric | C40, C41, C42, C43, C44, C45, C46, C47, C48, C49, C50, C51, C52, C53, C54 |
| 9 | BAT41KFILM | controller:SODFL1608X70N | D1, D5, D6, D7, D8, D9, D10, D11, D12 |
| 6 | 1.5k 1% | Resistor_SMD:R_0402_1005Metric | R3, R4, R10, R16, R19, R31 |
| 6 | 10 | Resistor_SMD:R_0402_1005Metric | R22, R23, R24, R25, R26, R27 |
| 6 | NetTie_2 | controller:NetTie-2_SMD_Pad0.2mm | NT1, NT4, NT5, NT6, NT7, NT8 |
| 6 | TPH1R204PLSOP_ADVANCE_8 | controller:SOP_ADVANCE_8 | Q1, Q2, Q3, Q4, Q5, Q6 |
| 5 | 100nF | Capacitor_SMD:C_0402_1005Metric | C1, C19, C20, C21, C39 |
| 5 | 1uF | Capacitor_SMD:C_0402_1005Metric | C3, C15, C17, C18, C38 |
| 5 | 22k 1% | Resistor_SMD:R_0402_1005Metric | R13, R28, R29, R33, R34 |
| 4 | MOUNT | MountingHole:MountingHole_3.2mm_M3_DIN965_Pad | M1, M2, M3, M4 |
| 4 | PAD24AWG_PAD | controller:24AWG_PAD | DA0, DB0, DC0, TEMP2 |
| 3 | 0.1uF | Capacitor_SMD:C_0402_1005Metric | C2, C13, C16 |
| 3 | 10k | Resistor_SMD:R_0402_1005Metric | R7, R9, R15 |
| 3 | 10uF | Capacitor_SMD:C_0402_1005Metric | C7, C12, C14 |
| 3 | 11k 1% | Resistor_SMD:R_0402_1005Metric | R14, R17, R18 |
| 3 | 5mOhm 1% 2W | Resistor_SMD:R_1206_3216Metric | RA0, RB0, RC0 |
| 3 | PAD16AWG_PAD | controller:16AWG_PAD | A0, B0, C0 |
| 2 | 0.1uF 50V | Capacitor_SMD:C_1206_3216Metric | C61, C63 |
| 2 | 22k | Resistor_SMD:R_0402_1005Metric | R8, R12 |
| 2 | 510 | Resistor_SMD:R_0402_1005Metric | R1, R2 |
| 2 | JST-PH3 | controller:JST_S3B-PH-SM4-TB(LF)(SN) | CAN1, CAN2 |
| 2 | MF-LED-0603-RED | LED_SMD:LED_0603_1608Metric | D2, D3 |
| 2 | SolderJumper_3_Bridged12 | Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mm | JP6, JP7 |
| 2 | XT30XT30PW_MALE | controller:XT30PW_MALE | J1, J2 |
| 1 | 0.01uF | Capacitor_SMD:C_0402_1005Metric | C57 |
| 1 | 0.1uF 50V | controller:C0603_NOBORDER | C62 |
| 1 | 100k | Resistor_SMD:R_0402_1005Metric | R5 |
| 1 | 120 | Resistor_SMD:R_0402_1005Metric | R11 |
| 1 | 18uH/1A | EasyEda2Kicad:IND-SMD_L5.8-W5.2_SCD0503T | L2 |
| 1 | 4.7k | Resistor_SMD:R_0402_1005Metric | R6 |
| 1 | 47k | Resistor_SMD:R_0603_1608Metric | TH2 |
| 1 | AS5048A | Package_SO:TSSOP-14_4.4x5mm_P0.65mm | U5 |
| 1 | DUAL_TVS | controller:SOT23-3 | D4 |
| 1 | JST-ZH6 | controller:JST_S6B-ZR-SM4A-TF(LF)(SN) | SWD0 |
| 1 | JST_ZH4 | controller:JST_S4B-ZR-SM4A-TF(LF)(SN) | ABS0 |
| 1 | MAX3051 | Package_TO_SOT_SMD:TSOT-23-8 | U1 |
| 1 | NM1210B224K251CEGN | Capacitor_SMD:C_1210_3225Metric | C6 |
| 1 | PICO-SPOX-6NOPASTE | controller:PICO-SPOX-SMT-RA-6-NOPASTE | ENC0 |
| 1 | STPS1H100A | Diode_SMD:D_SMA | D14 |
| 1 | STSPIN32G4 | SamacSys:QFN50P900X900X100-65N-D | IC2 |
| 1 | SolderJumper_2_Bridged | Jumper:SolderJumper-2_P1.3mm_Bridged_Pad1.0x1.5mm | JP1 |
| 1 | SolderJumper_2_Open | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | JP5 |
It measures 46 × 53 mm and has 4 copper layers, 1.6 mm thick.
137 parts, built around the STSPIN32G4, AS5048A, MAX3051EKA and BAT41KFILM. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the AeroX2/aerox2.github.io repository on GitHub, at the commit this page was made from: the board is public/boards/motor-controller.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask AeroX2 before reusing the design.

AeroX2/aerox2.github.io
One repository and npm installation builds the workshop at jamesridey.dev and the professional site at cv.jamesridey.dev.

AeroX2/aerox2.github.io
One repository and npm installation builds the workshop at jamesridey.dev and the professional site at cv.jamesridey.dev.



EPFLXplore/XRE_LeggedRobot_HW
PCB designs for Xplore Research's robot dog project

aidanbrzezinski/Prism-test
ΛMULET is a high-power brushless motor controller, compatible with the moteus firmware. It was specifically designed to be integrated in EPFL Xplore's Legged Robot actuators.




AlainPiallat/projet-1A-controleur-moteur
Projet de 1A : Création d'une carte de contrôle de moteur brushless