Development Roadmap
From
Milestones
- First full CAD implementation
port all parts to NopSCADlib, upstream
- First full physical implementation
- Automated frame factory prototype
- Reduction of vitamins components
- Community bazaar
- VR pathfinder
- part choice, translation, rotation, enumeration
- implement verbs
- app store applications
- Debian package
Tasks
New contributors
This list of items is curated especially for new contributors to the project, to provide introductory projects with which to familiarize themselves with the project infrastructure, function, and development process.
- Install the replimat software and clone the replimat git repo
- Expand ferrule.scad to produce all ferrules in the accompanying datasheet
Interns
Developing an engineering pathfinder project in VRBecome familiar with the production toolchainLoad production code and operate production equipmentAttend group work and regular company meetingsOutreach prep
Video production
- workstation bringup
- web dev bringup
- video production bringup
- creating / updating a project
Segments
- production montage
- cnc router
- chop saw
- packing
- use montage
- building a project
- driving a cargo cycle
- disassembly and packing away
- philosophy / voice over
- closing statement
- introduction
- pitch
- motion graphics and overlays
Director / Interviewer
- lead ins
- points of interest
Experienced contributors
- finish converting CNC router to grbl/Candle
port CAD library to nopscadlib- implement .glb file export for OpenSCAD
implement 40mm standardmodel perforated T slot aluminum- automatic nut/bolt height adjustment when mounting plates
- add scale to renders
- parts should be indexed at first mounting hole, at origin
- model HGH20CA linear bearing as nopscadlib part
- model / find model for bicycle crank, arms, pedals
nopscadlib translation and rotation functions - translate_x, translate_y, translate_z?- nopscadlib lumber library
- implement cord library - point-to-point, curves, wires, hoses - based on NopSCADlib belt(); or sweep();
- implement fabrics library - curved flats for seats, etc
- implement linear axes in nopscadlib
- NESE module
- charge controller
- inverter / motor controller
- power cube assembly
solar panel - standard sizeshydraulic parts- acquired from OSE, need to be imported fully- motor - existing file
- VR CAD
part STL model loadingpart model positioningpart model physicshand modeling and basic controls- snap part models to grid
- enumerate loaded parts, parameters, and write out to file
- load file, placing and parameterizing parts
- load assembly of parts, snap to grid, and avoid loading any part which clobbers an existing one.
Tim
- contact Ashton about 40mm square tube
- reverse DNS
Forest
Hardware:
- realtime Ethernet (UDP and maybe PTP) on microcontrollers
- implementing a DDS/DDA (numerically controlled oscillator essentially) on a microcontroller with high performance
- implementing a realtime Ethernet system on an FPGA, ideally without relying on a soft processor to handle packets
I do have a lot of ideas about using soft processors on FPGAs too, but I don't want it to be a complete crutch nor threaten the main realtime datapath
- there are a lot of PCBs that need to be designed, most of which are relatively simple or even trivial
- a lot of FPGA cores use the WishBone bus, but a lot of them also use the AXI bus (derived from ARM). I am not familiar with either one, but it seems like the AXI bus is a bit more complicated and easier to crash if you use it improperly
Software:
- I really really want to write EDA software, but it can't be our first project unless it somehow will directly generate revenue
- learn more about OpenGL to where we can write an efficient CNC toolpath previewer
- implement a non-linear constraint solver for parametric 2D CAD
- create a GUI to display/edit parametric constraints/dimensions similar to Fusion 360, SolidWorks, FreeCAD, SolveSpace, etc.
- implement a traveling salesman algorithm for toolpath generation (Tim's used space curves before to approximate it)
- implement a trajectory planner that does acceleration and maybe jerk limiting. We don't necessarily need to limit ourselves to outputting lines and arcs only, because we are in control of the hardware, not to mention you can always approximate as arcs (or lines) at the final step of post-processing
- write a replacement for dxflib for importing DXFs, and use that replacement library to implement a reusable DXF geometry importer (better than the current ones out there...)
Assisting VillageKit
- Automated drilling machine
- establish expectations
demo Replimat infrastructure, drill assembly mockup, detailed discussion of function- machine design
- prototype construction
- proving run
- develop operating procedures
- develop maintenance procedures
- develop safety precautions
- tabulate bill of materials and consumables, labor