Top expert inDigital Hardware Design and Verification
Lars-peter Clausen is a seasoned embedded software engineer with 26 years of experience building low-level drivers, hardware–software co-design, and high-performance signal processing systems. Based in San Francisco, he has driven embedded platforms at Analog Devices and Cruise, improving performance, latency, and robustness across Linux kernel drivers, FPGA HDL, and device backends. His open-source contributions span critical projects like libiio and Analog Devices’ no-OS drivers, where he optimized memory usage, fixed kernel-edge bugs, and added features for real hardware testing and interpolation in high-speed DACs. Known for tackling thorny platform and kernel issues, he blends pragmatic system architecture with hands-on coding—from AVR/FPGA bring-up to CUDA/AVX2 acceleration—making him a reliable technical lead for complex sensor and data-acquisition stacks.
A GTK+ based oscilloscope application for interfacing with various IIO devices
Role in this project:
Back-end Developer
Contributions:154 commits in 6 years 1 month
Contributions summary:Lars-peter contributed primarily to the oscilloscope application's back-end functionality, focusing on adding and improving data acquisition and processing capabilities. They implemented a virtual sampling function for testing, added support for FFT calculations using libfftw, and configured the display of the sampling frequency. Furthermore, the user worked on incorporating device and channel selection and made improvements to data alignment in the system.
A cross platform library for interfacing with local and remote Linux IIO devices
Role in this project:
Back-end Developer
Contributions:242 commits, 4 PRs, 11 comments in 5 years 9 months
Contributions summary:Lars-peter primarily focused on improving the local device backend, implementing several bug fixes and workarounds for kernel issues related to data transfer. They addressed issues such as handling potential kernel crashes in transmit mode and ensuring the correct number of blocks are allocated. Furthermore, the user added features like the ability to cancel buffer operations and improved error handling, and improved robustness by addressing EINTR. The user also contributed to the Python bindings and introduced a new tool to check for ADI AXI ADC/DAC core overflows/underflows.
iioindustrial-linuxlibiiolinuxlinux-iio-drivers
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.