gitlab logo on a gradient background

Source Code Control Best Practices at Endigit

Andrew - May 21, 2021

GitLab sent out an email today (as I’m writing) about best practices for source code control for collaboration. GitLab’s five best practices are: Determine a branching strategy Make frequent small changes Write descriptive commit messages Develop using Branches Conduct regular code reviews As I looked over them, I was impressed at how well their best practices aligned with the best practices Endigit had developed internally from our experience. I want to brag on our team...
Standard hardware platform

Process for Creating a Standard Hardware and Software Platform

Bryan - March 1, 2021

Large organizations can have many test systems. As the number of products created increases the possibility of increasing test stands also increases. A universal tester that can “test everything” is typically not a good idea. Too many people have tried and failed at creating a universal tester. A standard test platform is a great idea for reducing the cost of testing. Creating a standard platform means selecting instrumentation and tools that can be used across...
Obsolete computer hardware

Process for Updating Legacy Testers

Wes - February 12, 2021

Introduction One simple truth that test and automation engineers know well is that technology is always changing and advancing. Even the most state-of-the-art system today will be obsolete tomorrow. Obsolescence is caused by a number of factors, but regardless of the cause, if you don’t closely support your system, it will eventually become outdated and it will need to be updated. That being the case, it is important to have a good strategy for updating...
Simulation system wiring

Simulation to Minimize Development Risk

Bryan - February 11, 2021

You have a legacy control system that needs to be updated to new hardware and software while maintaining the same behavior as the old system. Building a system that simulates the environment of the legacy system can help. For example: if you are creating a new control system for a rocket launch facility, you would create a system that simulates the rocket and the launch facility. The simulation system can verify that the new controls...
Reentrancy settings

Reentrancy and Stateful VI's

Blake - November 21, 2018

Whether you’re new to LabVIEW or have been around the block the topic of VI reentrancy is an important one especially when dealing with stateful VI’s. In this post we’re going to briefly define the different reentrancy settings and then talk about the dangers of stateful VI’s who have the wrong reentrancy settings or are used in the wrong context. We define a stateful VI as one that stores data within itself from one call...
SCPI

SCPI Makes Life Easy

Brian - October 10, 2018

How many times have you looked for an instrument driver, and find that it doesn’t exist? It happens, and that overwhelming feeling of doom looms overhead. Don’t let that feeling overcome you until you have verified that there is not a SCPI interface. SCPI stands for “Standard Commands for Programmable Instruments.” As the name says there could possibly be a set of standard commands that will help you still be able to control your instrument...
close up of a spectrum analyzer

Taking Control of Instruments With LabVIEW

Brian - March 16, 2018

If you have ever thought "Man, I am so sick of pushing these buttons on this instrument I could punch someone!", or your instrument is strategically placed on the opposite side of the lab from your computer, then you are in luck. The everyday mundane tasks of using instrumentation for your projects is inevitable. Sometimes it requires pushing buttons every hour or so, and sometimes it requires pushing those buttons 30+ times a minute. In...
"Powered by LabVIEW" Icon

Learning a new Language: LabVIEW

Jake - November 27, 2017

Every once in a while we have the opportunity to learn a programming language. With each new language comes the challenges of learning new “vocabulary” as well as the various things that make each language unique. As with any new language, habits from our “native” language carry over. For example as someone who learned to program in Java and C++, leaving types off variables is still hard in Python! LabVIEW, unlike most programming languages is...
piggy bank with coins

How I Saved My Client over $200k with 15 Minutes of LabVIEW Code

Robert - November 17, 2017

"Sorting this material by hand will take two guys about six months and cost us around $60,000," said my client. Someone on the production line had installed the wrong component leading to one dimension being off enough to be unusable, and 3 million parts had gone through before they realized the problem. Even though only 1 in 22 parts were bad, the whole batch was tainted and headed for scrap unless the good parts could...
Two resources used by two different pieces of code

Dining Philosophers in LabVIEW

Shawn - September 18, 2017

History As I program in LabVIEW I am surprised by the number of times small bits of code cause large problems. For example, I was working with a large system that communicated with many instruments. I made some changes, tried running the code, and the program locked up! My gut reaction was to blame the LabVIEW development environment or a driver, but in the end I discovered the code I changed caused the hang. Dining...