=3D Solid modeling=

Video

<youtube>c1K-jBWytSQ</youtube> <youtube>u8otDF_C_fw</youtube> <youtube>z8lqDGMTbZs</youtube> <youtube>4EZL4O6b0BE</youtube>

Reading

* https://urish.medium.com/designing-3d-printable-mechanisms-in-openscad-5838dcb65b39 * [https://mastering-openscad.eu/ Guide to mastering OpenSCAD] * [https://queue.acm.org/detail.cfm?id=3469844 A New Era for Mechanical CAD: Time to move forward from decades-old design] * [https://github.com/m2n037/awesome-mecheng Awesome mechanical engineering resources] * [https://doi.org/10.1371/journal.pone.0225795 Parametric CAD modeling for open source scientific hardware: Comparing OpenSCAD and FreeCAD Python scripts] * [https://gusmith.wordpress.com/2015/09/18/simple-tool-for-creating-polyhedrons-in-openscad/ Simple tool for creating polyhedrons in openscad]

Lesson plan

* Introduction to the Replimat CAD stack(s) [https://en.wikipedia.org/wiki/Constructive_solid_geometry CSG and solid primitives] [https://en.wikipedia.org/wiki/Boolean_operations_on_polygons Boolean operations] 2D drawing with [https://en.wikipedia.org/wiki/Constraint_(computer-aided_design) constraints] and extrusion [https://www.openscad.org/ OpenSCAD] [https://github.com/nophead/NopSCADlib NopSCADlib] ==Badge== =Digital electronics= ==Tools== * [https://sigrok.org/wiki/PulseView PulseView] ==Reading== * [https://hackaday.com/2016/09/21/creating-a-pcb-in-everything-introduction/ Creating a PCB in Everything] ==Lesson plan== * lithography and etching * purpose of a jumper ==References== * [https://www.arstemlabs.com/ AR STEM Labs Alektra electronics simulation] =Power electronics= * Battery electric solar power systems ==Reading== ==Lesson plan== =Integrated circuit design= ==Tools== * [https://icestudio.io/ ICEStudio] ==Video== <youtube>aRAyVoljc_w</youtube> <youtube>RKKXaWz9mMQ</youtube> <youtube>Qs1gSzAy4Q4</youtube> <youtube>NBIaS6GA0cQ</youtube> ==Reading== * [http://fpgacpu.ca/fpga/index.html FPGA Design Elements] * [https://github.com/RAPcores RAPcores github] ==Lesson plan== =3D Printing and CNC machining= <youtube>OnmLKIVN6g4</youtube> <youtube>ht4tbCiFxeM</youtube> ==Reading== * [https://lcamtuf.coredump.cx/gcnc/ Guerilla Guide To CNC Machining, Mold Making, And Resin Casting] ==Lesson plan== * [https://softsolder.files.wordpress.com/2009/01/cnc-introduction-2011.pdf Why CNC? An Introduction] * introduction to 3D printing processes design criteria * overhangs * delamination and through-hole orientation * sharp corners toolpath generation with FreeCAD * import mesh * part workbench * part→create shape from mesh * path workbench * create path object * post-process the selected job ==References== * [https://100kgarages.com/ 100k garages] * [https://emachineshop.com/ eMachineShop] =Firmware development w/ C++, Rust= ==Reading== * [https://gamemath.com/book/intro.html 3D Math Primer for Graphics and Game Development] * [https://fabiensanglard.net/floating_point_visually_explained/ Floating Point Visually Explained] * [https://en.algorithmica.org/hpc/ Algorithms for Modern Hardware] * [https://beej.us/guide/bgnet/ Beej's Guide to Network Programming] * [https://beej.us/guide/bgipc/ Beej's Guide to Unix Interprocess Communication] * [https://docs.rust-embedded.org/book/interoperability/c-with-rust.html A Little C With Your Rust] * [https://docs.rust-embedded.org/book/interoperability/rust-with-c.html A Little Rust With Your C] * [https://luckyresistor.me/knowledge/learn-cpp/ Learn Effective C++ for Embedded] * [https://youtube.com/c/NoBoilerplate YouTube: No Boilerplate] * [https://github.com/rust-unofficial/awesome-rust GitHub: Awesome Rust] ==Lesson plan== * introduction to the AVR microcontroller [https://ww1.microchip.com/downloads/en/devicedoc/atmel-2549-8-bit-avr-microcontroller-atmega640-1280-1281-2560-2561_datasheet.pdf datasheet] [https://www.nongnu.org/avr-libc/user-manual/index.html avr-libc] [https://www.nongnu.org/avr-libc/user-manual/malloc.html memory layout] arduino (avr-gcc, avrdude, IDE - [https://en.wikipedia.org/wiki/Wiring_(development_platform) wiring] / [https://processing.org/ processing]) * [https://www.arduino.cc/en/main/standalone building an arduino on a breadboard] [https://reprap.org/mediawiki/images/thumb/2/20/Rumba_wiring.svg/800px-Rumba_wiring.svg.png electronics block diagram] * [http://www.dein.fr/2015-02-18-maslows-pyramid-of-code-review.html maslow's pyramid of code review] * introduction to RepRap lineage firmwares firmware block diagram gcode parsing - marlin_main.cpp motion planning - planner.cpp stepper driving - stepper.cpp time domains / block buffer [https://en.wikipedia.org/wiki/General-purpose_input/output GPIO] Pins timers interrupts ** signal generation

=Food production=

Reading
Lesson plan

=Robot Operating System=

Reading

<youtube>M9ABtlEM788</youtube> <youtube>dEPvZZ4luV4</youtube> <youtube>9D33R0Me9Bw</youtube> <youtube>tIob2_Rze80</youtube> <youtube>ugx82hz-oMc</youtube> <youtube>IN8tjTk8ExI</youtube>

=Computer troubleshooting and repair=

Reading

thumb * [https://tldp.org/docs.html#howto The Linux Documentation Project] * [https://www.linuxfromscratch.org/ Linux From Scratch] * [https://www.deviantart.com/sonic840/art/Computer-Hardware-Chart-2-0-587798335 Computer Hardware Chart] * [https://en.wikipedia.org/wiki/BIOS BIOS] and [https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface UEFI] *smartmontools (smartctl -a), badblocks / memtest86+ * [https://en.wikipedia.org/wiki/Linux_startup_process Linux startup process] * [http://btmgr.sourceforge.net/about.html Smart Boot Manager] * [http://www.guzu.net/linux/datarecovery.php Data recovery resources] * [https://github.com/pikvm/pikvm PiKVM] * [http://dbp-consulting.com/tutorials/debugging/linuxProgramStartup.html Linux ELF program startup] * [https://www.madebygps.com/an-intro-to-finding-things-in-linux/ An Intro To Finding Things In Linux] * [https://web.stanford.edu/class/cs101/ Stanford.edu: CS101] * [https://lym.readthedocs.io/en/latest/index.html Welcome to Linux command line for you and me!] * [https://github.com/corkami/pics/blob/master/binary/README.md Infographics]

Toolkit

* USB ↔ Hard drive adapter * Multimeter * A Port 80 card for diagnosing POST problems * a pre-configured, ready to launch, kernel compile (best memory test ever) * [http://www.cgsecurity.org/wiki/PhotoRec PhotoRec] - recover files without needing to recover partitions * [http://www.cgsecurity.org/wiki/TestDisk TestDisk] - recover partitions & files * [http://gparted.sourceforge.net/ gparted] - create, copy, edit, resize, and delete partitions graphically * ddrescue * dmidecode * flashrom * [http://etherboot.org/wiki/ Etherboot/gpxe], iSCSI, ATAoE * kvm, libvirt, virt-manager * [https://www.ventoy.net/en/index.html Ventoy multi-boot USB disk]

Lesson plan