Keeping a record of the projects that you build is more important than you may think. Even if you have really well-commented code saved somewhere, or a schematic, it’s still really helpful to keep notes in a project notebook.
Each of my projects gets written up in my notebook, which is open on my table as I work on a project. I keep notes as I work on the project, including pinout diagrams, oscilloscope traces, issues I’m having, open questions I need to research, PCB footprints, parts I need to order, calculations, diagrams, and so on.
What you should document for each project:
- the date
- name of the project
- project objective(s)
- initial plan(s) for getting the project to work
- truth tables / state diagrams / circuit diagrams / schematics / pinouts (basically, any information you need to understand how the circuit works)
- BOM (bill of materials) or parts list
- status of the project and any open questions or action items
The date is particularly useful when I’m trying to find documentation on a project I’ve put onto a PCB. Because I always have the date on my PCB, I know approximately where to look to find my notes on that project. (I’ve thought about creating a table of contents, which wouldn’t be too hard to print out and staple into the front of a notebook after filling one up, but I haven’t gotten around to it.)
Additional things to include as needed:
- pinout diagram (I will print out the front page of a data sheet and tape the pinout into my notebook for any chip that’s more complicated than an AND/OR/NOT chip, if using a PAL/GAL chip I will include a pinout from WinCUPL)
- schematic (typically from Multisim, as a simulation is usually part of my design process)
- PCB footprint (I discuss this in my post about designing hobby project PCBs)
- printouts of any configuration files or important code or HDL (particularly for microcontroller or Raspberry Pi projects)
- block diagrams (any particularly large projects need a block diagram so I know how to break the project down into smaller pieces)
- map or outline of how I will solder parts onto a protoboard, including debug steps I’ll take to ensure I soldered it correctly
I’ve gone back to my project notebook for many reasons. Here are a few of the things I find myself going to my project notebook for:
- reminding myself how I designed something because…
- …I want to build something similar
- …a student asks how I built it, and I can’t remember
- troubleshooting a broken or problematic board
- repairing a board that has a broken part
- picking up on a project weeks, months, or even years after starting preliminary design
An engineering notebook that you may keep in a senior design class (or for work that may be patented) typically may have strict rules around page numbering and/or carbon duplicates. Typically an official engineering notebook should have bound pages that can’t easily be removed (no spiral-bound notebooks, for example). UNC Charlotte has a great resource for keeping an official engineering record [PDF, 21 kB].
While it’s great to keep an official engineering record, if you are working on hobbyist projects and have no desire to patent them, you don’t need to be quite as thorough with your notebook. (Don’t let the fear of having a “perfect” notebook prevent you from keeping one in the first place!) I like using grid-paper composition notebooks and write my own page numbers in the corners of each page in red marker. I don’t worry about making mistakes (which I have made, do make, and will continue to make in the future). When I make a mistake in my notebook, I will address it later once I’ve figured it out. This record of mistakes is good from a standpoint of learning from them and avoiding making them in the future! I also don’t worry about my permanent record of design changes, which is also part of the engineering process and nothing to be ashamed of.