Here’s what the first week of development looks like to build an open source function generator in time for for OSHWA 2020. Each day’s entry represents an hour’s work per day - the hour before I leave for my job every morning, to be precise.

# Feb 7 2020

• Initial placement underway!
• Like the cross-association between layout and schematics in KiCAD.
• Highlight a component in EESchema, and it will be highlighted/selected in PCBNew
• Kind of hard to do on my Macbook. I wish I had a second monitor.
• Wish there was a way to select a cmpt, then hit a button that was like “Jump to Layout Editor” - I always seem to select a component in EESchema, then click into PCBNew, and find it’s been de-highlighted.
• Deleted the secondary LDO
• Not really using any analog functions of my MCU
• Could use it as aux power to the DDS, but that’d mean a long power route somewhere that I don’t really want to futz with.
• Starting to think about test point placement

# Feb 6 2020

• Make LFCSP-10 footprint for AD9837
• No need! I was searching for the wrong footprint in the default library. Looking for LFCSP-WD package found it. It was already there! And a check in the footprint editor showed the dimensions matched.
• Finish assigning footprints
• This is more nerve-racking than I expected. Constant thought: “What if I fuck one up?” Instant empathy for team of PCB designers at work.
• SeikoEpson - your recommended footprint pattern for SG5032 oscillators calls out the wrong part number! WHY!!!
• Find the right footprint for the crystal (not the oscillator)

# Feb 5 2020

• Replaced LDOs with MIC5504 (much cheaper!)
• Added missing power net for 3.3V rail to DDS oscillator
• Assign RefDes’es
• Done! Easy!
• Make layout floorplan!!
• Assign footprints
• Wow, this takes a long time, and is anxiety ridden.
• Would make a whole lot more sense if they connected to something though

# Feb 4 2020

• Broke SCH into hierarchical components. Never done a design this way before - we’ll see how this goes!
• Implemented STM32F072C8T7 Reference Design
• I didn’t do this, and may end up regretting it. Note to self - buy a ground strap.
• Add JTAG connector for MCU!
• Done - went with SWD connection. Compatible with ST-Link, or that Segger I have kicking around in my box of random debugger crap.

# Feb 3 2020

• Not a whole lot of sch work, but a lot of questioning my Arch choices.
• Might STM32 be a better choice?
• https://www.st.com/en/microcontrollers-microprocessors/stm32f0x2.html
• STM32F072C8T7
• Datasheet https://www.mouser.com/datasheet/2/389/stm32f072c8-956183.pdf
• Supports Mac toolchain (AVR does not)
• Familiar debug protocol (SWD)
• Just about identical pricing ($2.75 for 10) • STM32 HW Quickstart Guide (Includes HW Reference Design) - https://www.st.com/content/ccc/resource/technical/document/application_note/c9/19/d7/b8/6b/0e/4c/d3/DM00051986.pdf/files/DM00051986.pdf/jcr:content/translations/en.DM00051986.pdf # Jan 31 2020 • Make symbol for AD9837 • This is easy, and pretty intuitive • The symbols are the reverse of what I’m used to (orcad) - bubble is the connection point for the wire, not for the symbol box • I like that you can automagically include the datasheet link and part information • Also really enjoying the hot keying setup - just hit a button and you bring up a new dialog • Also - how do you make the interior of the SCH symbol yellow like everything else? • Start reference design of AD9837 • Issue number 1: what’s the primary power source of this thing? • Lots of jumper options for selecting power into the device • Do I gather from the reference design that the AD9837 is supposed to be powered by its own POL, and everything else has a separate POL? If so, I’ll definitely be finding a cheaper LDO. • Packaged oscillators. Convenience = yay! Price = woof.$1.10 per piece.
• Hierarchical design!
• That’s very cool, and a really different design paradigm than I’m used to.
• See a lot of advantages to it - easily replicate circuit “chunks”
• Is it as easy to do in layout as it is in SCH? Do you get layout rooms by default as well?

# Jan 30 2020

• Start SCH capture of ATSAMD21 MCU
• Use Datasheet Section 42 (SCH Checklist) as guideline for SCH capture
• Note to MFGs: this is a great way to get HW engineers to use your parts
• It’s also a shitload cheaper and more scalable than hiring a bunch of FAEs - paper scales, people don’t!
• Have a step-by-step guide saying “This is how to implement this thing in HW”
• We’re typically some combination of time-crunched, and lazy
• Brilliant!