Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

3D Design & Printing Curriculum - Non-Visual Toolchain Edition

Author: Michael Ryan Hunsaker, M.Ed., Ph.D.
Last Updated: 2026-02-20
Target Audience: Blind and visually impaired high school students; anyone learning 3D design and printing through screen reader-accessible workflows.


Overview

This curriculum teaches 3D design and digital fabrication using a fully accessible, command-line-driven toolchain centered on OpenSCAD (text-based CAD), 3DMake (non-visual build automation), and accessible editors (VS Code, Notepad++, command-line editors) with screen reader support. Students progress from foundational command-line skills through guided projects to real-world, stakeholder-driven design challenges.

Who This Course Is For

This course is explicitly designed for blind and visually impaired learners who use screen readers (NVDA, JAWS, VoiceOver). It eliminates GUI navigation and visual feedback in favor of keyboard-driven, text-based workflows that screen readers can fully access.

Accessibility is not an add-on. It is the foundation of every tool, workflow, and lesson in this curriculum.

Core Philosophy

  1. Text-First Design: All core work happens in text editors and command-line interfaces-no graphical CAD previews, no mouse-dependent menu navigation.

  2. Parametric Thinking: Students learn to express geometry as code using OpenSCAD, enabling precise, reproducible, and iterable designs without visual feedback.

  3. Automation and Independence: 3DMake automates the journey from code to printed object, handling compilation, slicing orchestration, and metadata management through simple command-line commands and text configuration files.

  4. Screen Reader Mastery: Students develop fluency with accessibility technologies (NVDA, JAWS, VoiceOver) and accessible editors, building skills that apply to careers in software, engineering, and digital fabrication.

  5. Real-World Impact: Projects culminate in designing assistive-technology solutions for real stakeholders, combining technical skill with human-centered design and documentation.


Curriculum Structure & Scope/Sequence

Part 1: PowerShell Foundation (Prerequisite - 6-8 hours)

Start here: PowerShell Introduction

Students who have never opened a terminal begin with foundational command-line skills:

ComponentDurationContent
PowerShell Introduction45 minWhat is a terminal, opening PowerShell, first 5 commands, screen reader tricks
Screen Reader Accessibility Guide1-2 hoursNVDA/JAWS reference, navigation sequences, handling output, keyboard shortcuts
PS.0: Basic Commands1 hourpwd, ls, cd, echo, cat, file operations
PS.1: Navigation & Files1 hourFile system navigation, creating/editing files, organizing work
PS.2: Variables & Scripting1 hourVariables, simple scripts, basic logic
PS.3: Loops & Iteration1 hourFor loops, foreach, batch operations
PS.4: Functions & Modules1 hourFunctions, parameters, reusable code blocks
PS.5: Error Handling1 hourTry-catch, debugging, troubleshooting
PowerShell Curriculum Overview30 minStudy guide, practice strategies, learning paths

Outcomes:

  • Comfort with terminal/command-line interface
  • File system navigation and manipulation
  • Basic scripting and automation
  • Screen reader optimization for terminal work
  • Foundation for 3DMake automation tasks

Note: Students should complete PowerShell Foundation before starting 3dMake Lesson 9 (Automation). Lessons 1-8 can begin without PowerShell, but Lesson 9+ requires command-line fluency.


Part 2: 3dMake Foundation (Main Curriculum - 14-18 hours)

Start here: 3dMake Introduction

11 progressive lessons building from foundational concepts to leadership-level design thinking, organized in 5 parts:

Part 1: Foundations (Lessons 1-3 | ~3 hours)

LessonFocusDurationProject
Lesson 1Environmental Configuration + How 3D Printing Works60-90 minNone
Lesson 2Primitives & Boolean Operations + Debugging60 minNone
Lesson 3Parametric Architecture & Modules60 minNone

Part 2: Verification & Safety (Lessons 4-5 | ~2 hours)

LessonFocusDurationProject
Lesson 4AI-Enhanced Verification & Feedback45-60 minNone
Lesson 5Safety Protocols & Material Introduction60-90 minNone

Part 3: Applied Projects (Lessons 6-8 | ~4 hours)

LessonFocusDurationProject
Lesson 6Practical 3dm Commands & Text Embossing60-90 minCustomizable Keycap
Lesson 7Parametric Transforms & Assembly75-90 minPhone Stand
Lesson 8Advanced Parametric Design & Interlocking90-120 minStackable Bins

Part 4: Advanced Topics (Lessons 9-10 | ~3 hours)

LessonFocusDurationProject
Lesson 9Automation & 3dm Workflows (requires PS Foundation)60-90 minBatch Processing Automation
Lesson 10Troubleshooting & Mastery with Measurement120-150 minQA Testing + Accessibility Audit

Part 5: Leadership (Lesson 11 | ~2 hours)

LessonFocusDurationProject
Lesson 11Stakeholder-Centric Design & Design Thinking90-120 minBeaded Jewelry Holder

Total: 14-18 hours of instruction + projects


4 Comprehensive Reference Appendices

Located in /3dMake_Foundation/ alongside the lessons:

Appendix A: Comprehensive Slicing Guide (1,500+ lines)

Reference for 7 major slicers:

  • PrusaSlicer, Bambu Studio, Cura, SuperSlicer, OrcaSlicer, IdeaMaker, Fusion 360
  • Setup guides, parameter explanations, troubleshooting, command-line integration
  • Use when: Slicing questions, switching slicers, quality issues

Appendix B: Material Properties & Selection (1,200+ lines)

Complete material reference for 6 materials:

  • PLA, PETG, ABS, TPU, Polycarbonate, Nylon
  • Properties tables, printing parameters, quality verification, cost analysis
  • Use when: Choosing material, troubleshooting prints, cost analysis

Appendix C: Tolerance Testing & QA Matrix (1,200+ lines)

Measurement-based quality assurance procedures:

  • Caliper techniques, weight verification, functional testing, tolerance stack-up
  • Step-by-step procedures, checklist templates, CSV tracking
  • Use when: Starting a project, verifying dimensions, quality issues

Appendix D: PowerShell Integration for SCAD Workflows (1,100+ lines)

Complete automation guide for PowerShell + 3dMake:

  • 5 complete PowerShell scripts for workflow automation
  • Parametric sweeps, batch processing, print logging, printer communication
  • Use when: Automating tasks, testing variations, batch printing

Learning Progression: Student Roles

Students move through roles across the curriculum:

PhaseRoleCore ToolsFocus
PowerShell FoundationObserver/LearnerTerminal, command lineCLI fundamentals and keyboard navigation
3dMake Lessons 1-5Observer/LearnerOpenSCAD, 3DMake, editorUsing CLI tools, safety, concepts, measurement
3dMake Lessons 6-8OperatorEditor, OpenSCAD, 3DMake, slicerHands-on practice with structured projects
3dMake Lessons 9-10DesignerFull toolchainParametric design, automation, troubleshooting
3dMake Lesson 11Problem-SolverFull toolchain + documentationStakeholder design, real-world impact

The Accessible Toolchain: How It Works

OpenSCAD - Text-Based 3D Design

OpenSCAD is a free, open-source CAD tool that uses a programming language to describe 3D geometry. Students write code that defines shapes, transforms them, and combines them using Boolean operations.

Why OpenSCAD?

  • Screen reader friendly: All work happens in a text editor; no visual-only 3D preview.
  • Repeatable: Code is version-controlled, documented, and shareable.
  • Parametric: Variables allow students to design once and generate variations by changing numbers.
  • No visual dependency: Students reason about geometry through code structure and testing.

3DMake - The Non-Visual Build Bridge

3DMake is a command-line tool that automates the journey from OpenSCAD code to a printable file:

3dm build        
3dm info         
3dm slice        

Why 3DMake?

  • No GUI navigation: All interaction is keyboard-driven and text-based.
  • Automation: Eliminates repetitive manual steps.
  • Metadata tracking: Configuration files store parameters as human-readable text.
  • Error reporting: Diagnostic output is text that screen readers can read aloud.

Accessible Editors

Students write OpenSCAD code using screen reader-accessible editors:

  • VS Code (Windows, macOS, Linux): Industry-standard with built-in screen reader support
  • Notepad++ (Windows): Lightweight, keyboard-driven, excellent screen reader support
  • Command-line editors (Nano, Vim, Emacs): Full keyboard control, no mouse needed

Prerequisites by Section

SectionPrerequisitesWhat You’ll Learn
PowerShell FoundationNone - start hereTerminal basics, keyboard navigation, file operations, basic scripting
3dMake Lessons 1-5PowerShell Foundation3D printing concepts, safety, measurement, OpenSCAD basics, debugging
3dMake Lessons 6-8Lessons 1-5Building projects, parametric design, transforms, tolerances
3dMake Lessons 9-10Lessons 6-8 (Lesson 9 requires PS Foundation)Automation, troubleshooting, advanced measurement and QA
3dMake Lesson 11Lessons 9-10Stakeholder design, real-world prototyping, leadership

Grading Rubric

All projects are scored on a 0-9 scale across three equally weighted categories (3 points each):

CategoryPointsWhat We Measure
Problem & Solution0-3Does the design solve the stated problem? Are all functional requirements met?
Design & Code Quality0-3Is the OpenSCAD code clean, well-commented, and well-structured? Does the print work well? Is there evidence of iteration?
Documentation0-3Are all sections complete? Are reflections thoughtful and specific? Are measurements recorded?

Category 1: Problem & Solution (0-3 points)

ScoreDescription
3The prototype clearly and effectively solves the stated problem. All functional requirements are met. The solution shows evidence of testing against the requirements.
2The prototype mostly meets the problem. Most functional requirements are met. Minor gaps between the design and the requirements.
1The prototype partially addresses the problem. Several functional requirements are not met or were not clearly tested.
0The prototype does not address the stated problem, or no functional requirements were established.

Category 2: Design & Code Quality (0-3 points)

OpenSCAD code is central to this course. We evaluate the clarity, structure, and documentation of your code as much as the print quality.

ScoreDescription
3Code is clean, well-organized, and thoroughly commented. Variables/modules are used appropriately. Print quality is excellent. Design shows original thinking and at least one meaningful iteration.
2Code works but lacks clear structure or comments. Variables are used but could be better named. Print quality is acceptable. Some iteration evident.
1Code is functional but poorly organized. Comments are minimal or missing. Print quality has defects. Little or no iteration.
0Code does not work, is not submitted, or shows no original thinking. Print is not functional.

Category 3: Documentation (0-3 points)

ScoreDescription
3All required sections are present, complete, and specific. Reflections are thoughtful and reference specific decisions, problems encountered, and learning. Photos/measurements are included.
2Most required sections are present. Some sections are vague or missing detail. Reflections show some thought but are brief or generic.
1Documentation is incomplete. Major sections are missing or consist of one-line responses. Reflections are minimal.
0Documentation is not submitted or is essentially empty.

Score Interpretation

Total ScoreInterpretationNext Step
8-9Excellent workMove on to next project
6-7Good work with room for improvementMove on; instructor may suggest revisiting one element
4-5Meets basic expectationsResubmission of specific weak areas recommended
2-3Does not meet expectationsResubmission required
0-1Missing major deliverablesMeet with instructor; create a completion plan

Resubmission Policy

Students may resubmit any project as many times as they need to improve their score. Resubmissions must include a one-paragraph explanation of what was changed and why. The resubmission score replaces the original score.


Core Design Toolchain

OpenSCAD:

3DMake:

Editors:

Screen Reader & Accessibility

Screen Readers:

Accessibility Configuration:

Terminal & Command Line:

Slicing & Printing

Slicer Software & Documentation:

OpenSCAD Learning

Tutorials & Documentation:

Advanced Resources:

Supplemental Textbooks

EPUB Textbooks:

Online Companion Resources:

Assistive Technology Design & Research

Organizations & Communities:

Research & Resources:

Community & Forums

OpenSCAD Community:

3D Printing Community:

Troubleshooting Resources

Common Issues:

Tools for Debugging:

Printer-Specific Guides

Prusa Printers:

Bambu Lab Printers:

Anycubic Printers:

Creality Printers:


Local Resources: Utah Makerspaces & Community Printing

Public Library Make Spaces

Salt Lake City Public Library:

  • SLC Public Creative Lab - Main Library (Level 1)
    • Hardware: Prusa i3 MK3, LulzBot Taz 5, Elegoo Mars 2 (resin)
    • Pricing: Free for prints under 6 hours; $0.50/hr + material cost otherwise
    • Website: https://services.slcpl.org/creativelab

Salt Lake County Library System:

  • County Library “Create” Spaces - Locations: Daybreak, Granite, Kearns, Syracuse, Tooele, and more
    • Hardware: Flashforge Adventurer 5M Pro, LulzBot Workhorse, laser cutters
    • Pricing: $0.06 per gram of filament used
    • Website: https://www.slcolibrary.org/what-we-have/create

Makerspaces & Community Centers

Make Salt Lake:

  • Location: 663 W 100 S, Salt Lake City, UT 84101
  • Website: https://makesaltlake.org/
  • Equipment: Full metal shop, CNC machines, large-scale FDM and resin printing
  • Membership: Required; offers certification classes for advanced tools
  • Community: Active maker community with regular workshops

University of Utah Maker Spaces:

Utah Valley University:

  • UVU Maker Hub - Open to community members
  • Equipment: Large format 3D printers, laser cutters, CNC machines

School & Educational Programs

Salt Lake City Schools:

  • STEM Lab programs in select elementary and secondary schools
  • Advanced manufacturing pathways in Career and Technical Education (CTE)
  • Contact: Salt Lake City School District STEM Coordinator

Weber School District:

  • Advanced Manufacturing Programs
  • 3D Design and Fabrication courses in multiple high schools

Online Printing Services (When Local Access Unavailable)

National & International Services:

  • Shapeways - Professional print service with multiple materials
  • Sculpteo - Online 3D printing platform
  • Ponoko - Custom manufacturing platform
  • 3D Hubs - Community-based distributed manufacturing
  • Local Motors - Custom manufacturing and consulting

Material Suppliers (Utah & Regional)

Local Filament Suppliers:

  • MatterHackers - Online with local Utah roots; wide material selection
  • Hatchbox - Reliable filament available at local retailers
  • Prusament - Premium Prusa filament

Regional Retailers:

  • Local Best Buy, Micro Center, and Fry’s Electronics locations carry common filaments
  • Amazon Prime for next-day delivery on most materials
  • Local makerspaces often sell filament at cost

Recycling & Sustainability

3D Printing Waste:

  • Fused Filament Fab - Filament recycling programs
  • Salt Lake City Recycling Center: Accepts PLA and PETG at select locations
  • Local makerspaces: Often have filament recycling programs

Professional Development & Certifications

Organizations Offering Training:


Troubleshooting & Getting Help

If you’re stuck:

  1. Check Common Issues and Solutions
  2. Post in OpenSCAD Discord or Reddit
  3. Visit your local makerspace for hands-on support
  4. Check printer-specific forums (Prusa, Bambu Lab, Anycubic, etc.)

For accessibility support:

  • Contact your NVDA/JAWS vendor directly for technical assistance
  • Post accessibility-specific questions in OpenSCAD community
  • This course’s GitHub Issues page for curriculum-specific questions