Skip to content
#software testing Dataset Open access

BATSY4-PRO - Multichannel Ultrasound Recorder's Firmware, Code, and Analyses

Sep 2026 · Zenodo (CERN European Organization for Nuclear Research)

Abstract

Analysis software, figure-generation workflows, processed Batsy4-Pro validation data, and firmware for Batsy4-Pro, an open-source four-channel ultrasonic recorder for field bioacoustics. Current release: version 1.1.0 (16 September 2026) This repository accompanies the manuscript: Batsy4-Pro: An Open-Source Multichannel Ultrasound Recorder for Field Bioacoustics Ravi Umadi Preprint: https://doi.org/10.1101/2025.08.11.669530 The repository supports reproducibility of the reported signal quality, spectral clustering, three-dimensional localisation, and grid simulation analyses. It also provides the recorder firmware source and the corresponding compiled Teensy release artefacts. Repository contents analysis/ Analysis and figure-generation scriptsdata/processed/ Prepared audio clips used in the analysesdata/derived/ Analysis tables and grid-simulation resultsdiagrams/ Standalone TikZ sources for Figures 2 and 3docs/FIGURE_PROVENANCE.md Figure-to-code and data provenance tablefirmware/Batsy4-Pro/ Teensy firmware, build information, and BOMfirmware/img/ Open-source hardware certification artworklegacy/firmware/ Firmware distributed with release 1.0.0outputs/reference_figures/ Figures used in the manuscriptoutputs/generated/ Output directory for reproduced figuressrc/ MATLAB functions and localisation classestests/ MATLAB regression tests Reproducing the analyses Open MATLAB with the repository root as the current folder, then initialise the project paths: setup Run the validation suite: run_checks This verifies the processed-data inventory, the published cluster membership, the firmware artifacts, the propagation-buffer regression tests, and the principal numerical results reported in the manuscript. Generate the MATLAB-produced manuscript figures: run_all_figures New figures and analysis tables are written to outputs/generated/. Source inputs and reference figures are never overwritten. Figure 5B is excluded from run_all_figures because its professional-audio- interface recordings belong to a separate study and are not distributed here. The analysis script remains available and can be run against that external dataset by setting the BATSY_SOUNDCARD_DATA environment variable. Grid simulation Figure 8 is generated from the corrected trial-level results in data/derived/grid/. This allows the figure and associated statistics to be reproduced without repeating the full Monte Carlo simulation. To regenerate all 272,322 trials from first principles, run: run('analysis/figure8_run_grid_simulation.m') The full simulation is computationally intensive. Its signal renderer allocates a common output buffer that retains the complete waveform at every microphone, including the largest relative propagation delay. The associated regression tests are provided in tests/test_no_delay_clipping.m. WAH-i geometry-to-hub conversion Supplementary Figure S2 converts a WAH-i Cartesian microphone geometry into physical hub settings. The workflow reports the target arm length, azimuth, and elevation for each microphone, together with the signed changes from a tetrahedral starting geometry: run('analysis/figureS2_wahi_hub_conversion.m') For another WAH-i output, call wahiGeometryToHubSettings with a headerless three-column x,y,z CSV in metres. Microphone identity follows row order. A custom starting geometry and the hub's angular and radial graduation increments can be supplied as optional arguments. System diagrams Figures 2 and 3 can be compiled independently with a LaTeX distribution that includes TikZ and the standalone document class: cd diagramspdflatex system_architecture.texpdflatex ring_buffer.tex Software requirements The MATLAB workflows require: MATLAB R2025b; Signal Processing Toolbox; Statistics and Machine Learning Toolbox; Optimization Toolbox; Communications Toolbox; Curve Fitting Toolbox; Parallel Computing Toolbox for the optional process-based grid rerun. Data included in the repository The repository contains the processed inputs required by the manuscript analyses: 368 validated, synchronised, four-channel Batsy4-Pro call clips; a prepared laboratory playback segment used for the waveform example; derived duration, localisation, SNR, and clustering tables; complete corrected grid-simulation results. Continuous field recordings and the call-detection and extraction pipeline are outside the scope of this repository. The included audio files are processed analysis inputs rather than the original continuous recordings. Additional details are available in data/README.md. Recordings and derived tables from the professional-audio-interface comparison are not included because they form part of a separate study. The published Figure 5B panel is retained solely as a reference output used by the Batsy4-Pro manuscript. Figure provenance A complete mapping between manuscript figures, source scripts, input data, and reference outputs is provided in docs/FIGURE_PROVENANCE.md. The original raw-data plotting script for the sequence spectrogram in Figure 6A was not retained. The exact PDF and editable MATLAB .fig used in the manuscript are included to preserve that panel. All other code-generated panels have repository-contained analysis or plotting scripts. Firmware The firmware/Batsy4-Pro/ directory contains Batsy4-Pro firmware version 1.1.0: the Arduino/Teensy source (batsy4pro.ino); compiled HEX, ELF, and EEP files; firmware build metadata; the bill of materials and operating documentation. The included build targets the Teensy 4.1 and records four synchronised 16-bit channels at 192 kHz. The version 1.1.0 interface presents separate carrier, heterodyne-channel, and volume controls on the 128 x 64 OLED. Pressing the rotary encoder cycles through these controls, and rotation adjusts the selected parameter. The heterodyne monitoring input can be selected from channels 1--4; this selection affects only the audible monitoring path and does not alter the four-channel full-spectrum recording. At startup, the firmware reads the next available WAV number from the SD card. The recording and saved-status screens display the corresponding filename, and the two-second saved confirmation no longer pauses audio queue servicing. Audio acquisition begins only after the startup splash has completed. Build-specific information is documented in firmware/Batsy4-Pro/firmware/BUILD_INFO.md. The source header contains a concise version history and operating summary. Firmware from release 1.0.0 is retained under legacy/firmware/ for traceability. Citation If you use Batsy4-Pro or the accompanying analysis workflows, please cite the manuscript and the corresponding software release. Machine-readable citation metadata are provided in CITATION.cff. Preprint DOI: 10.1101/2025.08.11.669530 Licences Different project components are distributed under the following licences: software and firmware: GPL-3.0-only; hardware documentation: CERN-OHL-S-2.0; documentation and figures: CC-BY-SA-4.0. See LICENSE.md for the complete licensing statement. Processed acoustic data are supplied for reproducibility of the manuscript analyses; contact the author before redistributing the recordings as a standalone dataset.

View source

Similar papers

#computer vision Review Sep 2017

Agile Software Development Methods: Review and Analysis

This publication proposes a definition and a classification of agile software development approaches and analyses ten software development methods that can be characterized as being "agile" against the defined criterion.

P. Abrahamsson, O. Salo, Jussi Ronkainen et al. · 727 citations · ⚡54
#computer vision Jun 2008

The impact of agile practices on communication in software development

The study shows that agile practices improve both informal and formal communication, but indicates that, in larger development situations involving multiple external stakeholders, a mismatch of adequate communication mechanisms can sometimes even hinder the communication.

M. Pikkarainen, Jukka Haikara, O. Salo et al. · 401 citations · ⚡48
#machine learning Review Open access Oct 2014

Software development in startup companies: A systematic mapping study

The results indicate that software engineering work practices are chosen opportunistically, adapted and configured to provide value under the constrains imposed by the startup context.

Nicolò Paternoster, Carmine Giardino, M. Unterkalmsteiner et al. · 394 citations · ⚡54
#computer vision Review Mar 2008

Agile methods in European embedded software development organisations: a survey on the actual use and usefulness of Extreme Programming and Scrum

The results show that the embedded industry has been able to apply agile methods in its development processes and that the appreciation of the agile methods and their individual practices appears to increase once adopted and applied in practice.

O. Salo, P. Abrahamsson · 238 citations · ⚡9
#computer vision Open access Jul 2017

What happens when software developers are (un)happy

Consequences of happiness and unhappiness that are beneficial and detrimental for developers' mental well-being, the software development process, and the produced artifacts are found.

D. Graziotin, Fabian Fagerholm, Xiaofeng Wang et al. · 236 citations · ⚡13
#computer vision Open access Oct 2004

Mobile-D: an agile approach for mobile application development

The Mobile-D approach is briefly outlined here and the experiences gained from four case studies are discussed, which helped develop an agile development approach for mobile application development.

P. Abrahamsson, Antti Hanhineva, H. Hulkko et al. · 225 citations · ⚡18

Related blog posts

MIT News · Artificial Intelligence Oct 2, 2026

Documenting the tech worker movement

Writing as a participant and researcher, PhD student JS Tan SM ’22 has co-authored a new book about the rise of tech worker protests and the employer backlash that followed.

GPT-Lab Sep 23, 2026

Requirements Don’t Live in Isolation: What We’re Exploring with Req-Space

Requirements in large systems rarely exist in isolation. Their meaning depends on the wider project context - other requirements, policies, decisions, tests, and implementation details. That becomes especially important when AI is used for review, because spotting a possible conflict or gap is only the beginning. ReqSpace explores how AI, visualisation, and connected project context can help reviewers understand those findings, trace the relationships behind them, and focus on the questions that…

GPT-Lab Sep 17, 2026

Beyond Prompt Engineering: The Role of Tacit Knowledge in Software Engineering

AI is making software generation faster, but speed does not remove the need for expertise. As more work is delegated to AI, tacit knowledge may become one of the most important human advantages in software engineering. The post Beyond Prompt Engineering: The Role of Tacit Knowledge in Software Engineering appeared first on GPT-Lab.

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.