Skip to content
CAI
Software that uses CAICheck a score

OpenIPC/configurator

49.0

Weak · 28 September 2026

6.8k

lines of production code

VB.NET

with C#

5

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

Features

Add new video and wireless broadcast presets

Added new preset configurations for video and wireless broadcast settings, including 1080p60 at 15Mbps, RunCam wifilink at 20MHz high bitrate, and Emax Wyvern 100mW at 40MHz for both high and low bitrate scenarios. Each preset configures video resolution, bitrate, wireless transmission power, channel width, and telemetry settings.

presets · high confidence

Added application and resource configuration files for the My Project namespace

The project now includes auto-generated Visual Basic files (Application.Designer.vb, Resources.Designer.vb) and their corresponding metadata files (Application.myapp, Resources.resx). These files define the application's startup behavior, visual style settings, and resource management infrastructure, enabling the application to properly initialize and manage localized resources.

My Project · high confidence

Initial release of OpenIPC Configurator with cross-platform support

The OpenIPC Configurator is introduced as a Windows and Linux-compatible tool for managing OpenIPC cameras. The release includes the main Visual Basic GUI (\Configurator.vb\), a new CLI project (\OpenIPCConfigurator.Cli\), and an Avalonia-based GUI (\OpenIPCConfigurator.Avalonia\). The configuration is managed via a new YAML-based file system (\majestic.yaml\, \wfb.yaml\) alongside legacy \.conf\ files, with shell scripts (\channels.sh\, \kill.sh\) and batch files (\Extern.bat\) handling device communication and firmware updates.

(repo-wide) · high confidence

Initial release of the OpenIPC Configurator desktop application

The OpenIPC Configurator desktop application is introduced, providing a graphical interface for managing OpenIPC, NVR, and Radxa devices. This update adds the Avalonia-based UI layer, including the main window with connection and configuration tabs, view models, and shared parsing logic for reading device configurations from YAML and text files. Users can now connect to devices, view and edit settings such as frequency, power, and video parameters, and manage device states through the new desktop client.

OpenIPCConfigurator.Avalonia, OpenIPCConfigurator.Shared · high confidence

Introduce CLI tool for managing OpenIPC, NVR, and Radxa device configurations

The OpenIPCConfigurator.Cli project now provides a command-line interface for downloading and uploading configuration files, managing FPV encryption keys, toggling UART console access, and controlling background services on supported devices. The tool supports three device profiles—OpenIPC cameras, NVR receivers, and Radxa controllers—and allows users to specify connection details via command-line arguments or a persistent settings file.

OpenIPCConfigurator.Cli · high confidence

Behavioural changes

8 commits (0 fixes) modifying sensors

A change to existing behaviour in sensors — 8 commits, 7 files.

sensors · medium confidence · unverified

Reset script now supports 40MHz bandwidth and AP mode

The reset scripts have been updated to include a new configuration for the Adaptive Link ground station (alink\_gs.conf) and a stream.sh script that allows toggling between 20MHz and 40MHz bandwidth via a long-press on the MHZ button. The stream.sh script also introduces an AP mode that can be toggled by long-pressing the MHZ button, allowing users to connect to a 'RadxaGroundstation' network to access files. Additionally, the reset process now includes configuration files for OSD (osd, osd.json) and screen mode (screen-mode, rec-fps), ensuring that the system resets to a known good state with 60fps recording and 1280x720@60 screen mode.

reset · medium confidence

Updated transmission profile ranges and parameters

The txprofiles directory now contains two configuration files, txprofiles.conf and TipoMan.conf, which define transmission profiles with specific ranges, guard intervals, MCS, FEC, bitrate, GOP, power, and other parameters. These profiles establish the baseline settings for different transmission modes, with each profile specifying a frequency range and associated technical parameters that affect how the device transmits data.

txprofiles · high confidence

Test coverage

Added unit tests for CLI command-line parsing

Added new unit tests for the \CommandLineParser\ in the \OpenIPCConfigurator.Cli.Tests\ project. These tests verify the correct parsing of command-line arguments, including IP addresses, passwords, and port numbers, as well as error handling for invalid inputs like non-numeric port values.

OpenIPCConfigurator.Cli.Tests · high confidence

Dependencies

Introduce .NET 8.0-based project structure for OpenIPC Configurator

Added five new project files that establish the build and dependency structure for the OpenIPC Configurator application. The solution now targets .NET 8.0 across the CLI, shared, and test projects, and introduces an Avalonia-based UI project. Dependencies are explicitly defined, including SSH.NET 2024.2.0 for network operations, the full Avalonia 11.1.3 framework for the UI, and xUnit 2.5.1 for testing.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.

Score

  • CAI 52 → 49 (-2.5)
  • Rubric changed (rubric-2026.08.15 → rubric-2026.09.16) — scores are not directly comparable.

Lenses

  • Code Health 75 → 70 (-5.4)
  • Architecture 86 → 86 (+0.4)
  • Maturity 49 → 54 (+5.4)
  • Readiness 44 → 33 (-11.4)
  • Security 57 → 71 (+14.1)

Resolved (40)

  • Bounded contexts not declared
  • Build status unknown
  • Duplicated block (10 lines × 2) (Configurator.vb)
  • Duplicated block (10 lines × 2) (Configurator.vb)
  • Duplicated block (10 lines × 3) (Configurator.vb)
  • Duplicated block (10 lines × 5) (Configurator.vb)
  • Duplicated block (10 lines × 6) (Configurator.vb)
  • Duplicated block (11 lines × 2) (Configurator.vb)
  • Duplicated block (11 lines × 22) (Configurator.vb)
  • Duplicated block (11 lines × 8) (Configurator.vb)
  • Duplicated block (12 lines × 2) (Configurator.vb)
  • Duplicated block (12 lines × 2) (Configurator.vb)
  • Duplicated block (12 lines × 4) (Configurator.vb)
  • Duplicated block (13 lines × 2) (Configurator.vb)
  • Duplicated block (13 lines × 3) (Configurator.vb)
  • Duplicated block (14 lines × 2) (Configurator.vb)
  • Duplicated block (14 lines × 2) (OpenIPCConfigurator.Cli/Program.cs)
  • Duplicated block (15 lines × 2) (OpenIPCConfigurator.Cli/Program.cs)
  • Duplicated block (15 lines × 2) (OpenIPCConfigurator.Cli/Program.cs)
  • Duplicated block (17 lines × 2) (OpenIPCConfigurator.Cli/Program.cs)
  • …and 20 more

New (42)

  • Deprecated: Avalonia.Diagnostics
  • Deprecated: xunit
  • Duplicated block (10 lines × 2) (OpenIPCConfigurator.Shared/ConfigurationParser.cs)
  • Duplicated block (11 lines × 2) (Configurator.vb)
  • Duplicated block (12 lines × 2) (Configurator.vb)
  • Duplicated block (12 lines × 9) (OpenIPCConfigurator.Cli/Program.cs)
  • Duplicated block (12–13 lines × 2) (Configurator.vb)
  • Duplicated block (13 lines × 2) (Configurator.vb)
  • Duplicated block (13 lines × 2) (Configurator.vb)
  • Duplicated block (23 lines × 6) (Configurator.vb)
  • Duplicated block (24 lines × 2) (Configurator.vb)
  • Duplicated block (26 lines × 2) (Configurator.vb)
  • Duplicated block (30 lines × 4) (Configurator.vb)
  • Duplicated block (9 lines × 3) (Configurator.vb)
  • Duplicated block (9 lines × 3) (Configurator.vb)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • Hotspot: Configurator.vb (Configurator.vb)
  • Members sharing a duplicated core (4 members, 50+ identical tokens) (Configurator.vb)
  • …and 22 more

Architecture

  • Unchanged — 2 containers · 0 contexts · 0 edges

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

OpenIPC/configurator was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 28 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 30136ce617eecc5e1b5a69ea4ea9c603e180056d — the exact code this score is about.
  • Scored under rubric-2026.09.16 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-2d9048c36d26.