Skip to main content

· 15 min read

In this multi-part series, we will explore USB implementation on AVR microcontrollers, starting with the basics of USB enumeration. USB can be found all around us in our everyday lives. It's in our phones, our computers, our cars, and even our home appliances. It's a ubiquitous standard that has been around for decades and is still going strong. However we often take it for granted as engineers and developers. Silicon vendors have made it so easy to get a device up and running with USB via their libraries and examples that we don't often think about what's going on under the hood.

· One min read

After a prolonged hiatus, we're excited to be back writing blog posts again! A lot has changed since our last post, including name! We've rebranded from greatlakes dev to everyday⚡dev! We believe this new name aligns with how we feel: engineering isn't just a job - it's our passion. We thrive on the joy of creating innovative solutions day in and day out. We know a lot of folks can sympathize with this feeling and we hope to build a community around this.

So what's next?

Our mission is to share knowledge and help others grow in their personal and professional embedded journeys. In pursuit of our mission, we plan to post content on a more regular basis, including deep dives for embedded concepts and creating more open source hardware and firmware projects. Stay up to date by following the blog for updates.

Want to jump in?

Check out our ⚡DEV101 series now.

· One min read

The KiCAD project template just got even easier to use! The docs have had a new addition made for the template explaining how to configure and get designing quickly. It also documents several of the new features added that will increase the quality of life when developing KiCAD projects. To summarize - the template is pre-configured with the smallest possible tolerances while staying in the PCBWay standard stackup, allowing the most versatility while designing without costing too much money. A util/ folder has been added with a few python scripts making it easier to generate useful BOMs from a somewhat finicky system that KiCAD currently uses. Lastly a Github workflow has been added to automate the release process outputing your schematic, .step file of the board, Gerbers and your BOM. All of these artifacts are automatically uploaded to a Github release which has been tagged with the revision found in your PCB design files.

These features and workflows have been tested and documented but please reach out and create an issue if you have any trouble.

Happy tinkering!

· 7 min read

Well written and easy to follow documentation is a big part of creating and shipping a good product. Not only in the sense of documenting your design and code but the user instructions and usage as well. It can sometimes be difficult to instruct a user on how to interact with a product just through textual documentation and an image can go a long way in helping a user understand what you intend for them to do. An even better option is a quick and easy to follow animation that clearly shows the steps a user should take, leaving no room for a user to misconstrue instructions.

In this guide I'll show you how to go about making a quick 5 frame .gif (seen below) that illustrates how to jump the atmega32u4_breakout board into the USB DFU bootloader via a sequence of button presses. You can of course follow these steps and create an animation for any other user interaction you want to document.

gif animation showing the sequence to press buttons on a PCB. Press and hold RST, Press and hold USR, Release RST, Releast USR

· 6 min read

It often occurs in a developers day that they need to install a new application and be able to access it from the command line. In most cases a nicely packaged installer (.msi, .exe or .AppImage) is there to handle this process for you along with setting up directories and default config, all with a few clicks through a GUI. Same goes for installing packages via a package manger like apt for Ubuntu or choco for Windows. A single command and the process is done.

Although this is incredibly convenient, not all applications ship with an installer.

· One min read

Hi there 👋 my name is Stephen and I'm the creator and maintainer of everyday⚡dev - A collection of projects and products all containing FOSS and OSHW. The goal is to provide cool and useful tools, gadgets and software to you for free to build on your own.