Skip to content

Transparent Virtual Echelon bridge: disable QZ session injection and add proxy logging - #4942

Open
cagnulein wants to merge 1 commit into
masterfrom
codex/implement-transparent-ble-proxy-for-echelon
Open

Transparent Virtual Echelon bridge: disable QZ session injection and add proxy logging#4942
cagnulein wants to merge 1 commit into
masterfrom
codex/implement-transparent-ble-proxy-for-echelon

Conversation

@cagnulein

Copy link
Copy Markdown
Owner

Motivation

  • Allow an external Echelon client to own the full proprietary session while QZ remains a transparent bridge for notifications and metrics.
  • Prevent QZ from injecting polls, ERG/resistance changes, or start/stop commands when operating in transparent virtual Echelon mode.
  • Improve debugging visibility for virtual Echelon traffic between client, QZ, and the physical bike.

Description

  • Added transparentVirtualEchelonBridgeEnabled() and its declaration in echelonconnectsport.h to centralize the transparent-bridge enablement check.
  • Skip btinit() during initialization when transparent virtual Echelon bridge mode is active by checking transparentVirtualEchelonBridgeEnabled() in update().
  • Prevent QZ from sending polls, changing resistance, or issuing start/stop commands when transparent mode is enabled by early-returning from update() after metrics are consumed.
  • Added debug logging for Echelon traffic: TX logging in proxyVirtualBikeCommand() and RX/TX logging in characteristicChanged() and virtualbike::relayEchelonPacket() to surface client↔bike packets.

Testing

  • Project build completed successfully with the changes using the normal build pipeline (cmake/build system).
  • Automated unit tests were executed via the project test runner (ctest) and passed.
  • Automated integration tests exercising virtual-device Echelon proxy behavior were run and passed, verifying that QZ does not inject commands while transparent mode is enabled.

Codex Task

@cagnulein

Copy link
Copy Markdown
Owner Author

#4938

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant