After finishing the layout it was time to manufacture the PCB.Setting up a project in STM32 Cube IDE is trivial work, however – I discovered that I had used a slightly incompatible footprint for the MCU. I was also trying to stay as close as possible to the original, including all the drill holes and the placement of the components. The original PCB had 2 layers, so I have sticked with that.But, we will soon enough find out.Stay tuned for hardware patching and new revisions! Categories: electronics Tags: embedded, FreeCAD, KiCAD, PCB Capture-the-Flag PCB: The Long Con 2019For 2019’s iteration of The Long Con, I volunteered to help wrangle up some brain teasers for their “capture the flag” contest – a tech convention standard wherein attendees compete to solve assorted technical puzzles. I am not yet sure if this will be fast enough to meet the timing requirements of the Gameboy – I was unsure about 84MHz being fast enough. Luckily, STM32 Cube IDE makes it trivial to configure global clock settings. That’s the price you pay for feverish hobbyist development, I suppose! Fortunately, I have GPIO to spare (At the top of the PCB), so I can do a hardware patch without any issues.In bringing the board up, however, I have found that I am unable to get the MCU running at the intended 84 MHz – anything above 48MHz triggers hard faults in the CPU.
![]() ![]() These on-board sensors meant I wouldn’t need to add external sensors, which would increase the unit cost. I settled on the attiny84a based on it’s capacitive touch capability, as well as an internal temperature sensor. With these design goals in mind, I began my digikey search for an inexpensive but capable microcontroller. It has to do something neat. It has to be cheap, and 3. I think it looks pretty sharp with the silkscreen logo!As this is a small local convention, there wasn’t much budget available to go off-the-wall with technical capability – so, my three design goals were: 1. Dmg Cartridge Pcb Kicad Software Itself IsBased on this experience, I have resolved not to use Atmel components for a while… I got the feeling that Atmel Studio is a second class citizen since the Microchip buyout.The actual software itself is not terribly complicated (or optimized) – Atmel’s QTouch library, for all of its installation issues, was easy to code with. I wrote up my experiences on their forums here. I have uploaded the KiCAD project to github, check it out! Schematic diagram for the CTF boardKiCAD/PCBNew view of the circuit board 3D rendering of the PCBThe software was very dependent on Atmel’s QTouch library – most of the challenge was actually in configuring their IDE to work correctly. I didn’t feel like going any further down this rabbit hole, so I opted for the simpler design that Atmel’s documentation suggested.The rest of the design was reasonably boilerplate MCU work – I stuck to standard components that were available from Digikey, and preferred components that exist in their KiCAD libraries. I tried a few different ways of importing their recommended design, but couldn’t quite get it to work.I had intended to use svg2mod to import the auto-generated footprint, but the polygon approximation didn’t seem to work out to a workable resolution. The hardest part was designing the capacitive touch sensor – I opted for the simpler rotary sensor design due to its ease of entry into KiCAD. Ats download for macLuckily(?) only a couple teams got far enough in the CTF to get to the “PCB challenge”, so we were never short on units despite the poor yield.Another conclusion – try a different MCU vendor next time, Atmel Studio/QTouch installation was a torturous experience!The general intention was for participants to look up the datasheet of the single IC to see what peripherals it had – QTouch and temperature sensing – and work from there.Puzzle 1 – this conference takes place during the daylight savings time change. Unfortunately, out of the 30 that I had tried to manufacture, only 6 worked to their fullest extent! I attribute this to my ambitious use of tiny resistor arrays – it appeared most of the failed units featured poor connections on these components, and my reflow repair skills were simply not up to the task. But, it did work!3d printed programming jig, complete with “Pogo pins” Demonstrating fit on the jig ConclusionsThe project was an overall success, and people enjoyed the challenge. It is far from the “cleanest” code I’ve written, and was written in a time crunch. And so, I spent no time optimizing this device for power consumption.You can see the source code for my solution on github here. What mac os is available for download 2017So, it simply looks at the temperature delta since the unit turned on instead of comparing against an absolute temperature. This was a fun puzzle to figure out from a software point of view – the calibration on the sensors was not great out of the factory, and I didn’t intend on taking multiple calibration points for each board. This could easily be done by taking the unit outside. Users had to get the unit 15 degrees Celsius colder than when they plugged in the battery. 4 complete rotations would prompt the LEDs to display a byte pattern.Puzzle 2 – the weather had just begun getting cold in Manitoba (where this conference took place).
0 Comments
Leave a Reply. |
AuthorSonia ArchivesCategories |