GET IN TOUCH

A Client-Server System for Test & Measurement Applications

IoT Custom software development Industrial solutions Web development FPGA

Testing electronic devices normally require setting up an electronics laboratory with expensive equipment and tools. But what if these tools could all be accessed by any web browser from a tablet or laptop computer?

Request

A Slovenian test and measurement equipment manufacturing company developed an ecosystem of open-source out-of-the-box applications that allow electronics enthusiasts to test their electronic projects. While the entire ecosystem was open source, some of the test and measurement applications were supposed to be paid. The company was looking for a software development agency that could implement a software licensing mechanism to ensure that paid applications could not be distributed without a license.

Solution

We came up with a software licensing mechanism that generates a special license key on the server using an encryption algorithm. When a user buys an app or makes in-app purchases this mechanism initiates a license check, making it harder for hackers to remove security controls built into the software application.

After we successfully completed this project, our client decided to continue working with us. Together we improved their existing oscilloscope app and created a number of new apps including a spectrum analyzer with in-app purchases, a bode analyzer (an app for building amplitude-frequency characteristics), and a logic analyzer.

We automated the build delivery process, built frontend and backend, and provided proper documentation for our client.

Scope of work

Software licensing mechanism development. We implemented the licensing procedures for the paid applications.

Software development for test and measurement applications:


Technologies used


Challenges solved

Minimized dead-time. When the oscilloscope is processing data, it can't capture and display signals. The dead-time or delay between the acquired signal and the displayed signal was about two seconds. We dug into the library and optimized rendering signals. We also optimized the web user interface to reduce the amount of data it needed to process. As a result, we reduced the dead-time to less than a second.

Improved performance. The logic analyzer uses eight channels to capture multiple signals. This is approximately four billion data points captured simultaneously. We improved the performance of eight concurrent channels to achieve the max ACQ speed of 125 MS/s per channel and up to five seconds per signal at a frequency of 125 MS/s.


Result

We helped the test and measurement company integrate a software licensing mechanism that allows users to buy applications and make in-app purchases. We also developed a client-server system with a backend based on customized Nginx. 

The system provides web access for starting and manipulating numerous applications for a measurement device from the browser. It allows users to measure signals with ACQ speed up to 125 MS/s, extract some information such as spectrum and decompose signals into logical data.

Fast analog inputs

2

Fast analog outputs

2

Developed applications

10 +

Digital inputs for a logic analyzer

8

Max ACQ speed 

10+

Integra Sources' engineering team exceeded expectations. Daily reports on development projects made it easy for the client to stay on top of every task. The team at Integra Sources is easy to talk to, regardless of the topic of discussion.

CTO of Test & Measurement Equipment Company

 

Make some noise

Make some noise

You might also like...

We use cookies to improve your experience on our website. Our Cookies Policy explains what cookies are, how we use cookies and how third-parties we may partner with may use cookies. Please find more information here.