The next portion of design documentation revolves around how you define your release package. The importance here is to thoroughly capture all of the needed information to have your design produced organized in a logical and sane manner. Here the lowest level folder are your fabrication files. These are the collection of mechanical files and […]
Year: 2017
Documenting Your Designs: Project Files
After you’ve designed your board and ordered a prototype the job is only partially done. The design itself needs to be properly documented and stored outside of your standard working directory to ensure data integrity. This way you never accidentally make a change and save over an archieved design. To go along with this, it’s […]
Xilinx ISE Official Support for Windows 10… Sort of
Xilinx has released an installer to run ISE on Windows 10! The downside is that it’s simply a virtual machine running Linux and only supports the Spartan 6 product line. Download from Xilinx’s Website
EAGLE Tip: Detailed Library Examples
To support one of my previous posts I’ve put together some examples on how to build a thoroughly detailed component library in EAGLE. You can always place general components and then attribute them one-by-one. The issue with this is that it simply takes forever. Then if a component goes EOL you have to go through […]
EAGLE Tip: Using Attributes to create hands-off BOMs
When starting out with EAGLE it’s easy to overlook the attribute tool. However, this is crucial when putting together a professional release package and ensuring proper documentation. Attributed paramaters show as collumns and information on a BOM export. Properly adding this information to the component allows for hands-off BOM generation when it comes time to […]
Altium Designer Shortcuts
After using ExpressPCB, EAGLE, Mentor PADs, and OrCAD I’ve found Altium to be above and beyond in usability and horsepower. Below are some useful keyboard shortcuts to get you up and running quickly. PCB Shortcuts Keys Description J L Jump to location Q Switch between metric and imperial units Ctrl + M Measure distance between […]
C# Example – Hash Checker
In part of an effort to push documentation, traceability, and verification to the production and engineering workflows I created a simple WPF calculator and comparator for MD5 and SHA1 cryptographic hashes. The program currently supports MD5 and SHA1 hashes. Running the software Download the repository from the GitHub link below. Run the EXE file located […]
Creating a Low-Level Serial Protocol
When developing systems of any complexity we’re tasked with either making multiple modules inside a system talk to each other, or the system itself talks to the outside world. It’s at this point that we need to develop a protocol to be able to send any amount of coherent data back and forth. Whether you’re […]
Hashes in the Firmware Development Workflow
Hashes are like checksums in that it takes an individual binary file and uses an algorithm based on the original file to generate an individual number. This number can then be compared to a reference number to determine integrity and authenticity of the file. These hashes play an integral part in production releases of a […]
C# Example – CRC8 Implementation
In support of my previous post on the CRC8 checksum. I compiled this basic program to provide a real-world implementation. The example uses a potential serial communication protocol that consists of a START and END deliminter using GREATER-THAN and LESS-THAN symbols. The first two bytes L1 and L0 indicate the length of the payload (Command […]