Skip to content

Omniscan 450: Cannot change speed of sound. Wrong message id. #171

@Maexerich

Description

@Maexerich

This is my first issue/PR on open-source code. I used AI to navigate the process but have manually reviewed to the best of my knowledge.

The core issue stems from the ping-protocol repository. Issue is opened there too.

Description

The set_speed_of_sound message for OMNISCAN450 sonar is defined with message ID 1002
in src/definitions/omniscan450.json, but the device expects ID 116.
This can be deducted from the documentation here: https://docs.ceruleansonar.com/c/omniscan-450/application-programming-interface.

Expected Behavior

When setting speed of sound on OMNISCAN450, the library should use message ID 116.

Current Behavior

Library sends/expects ID 1002, causing the device to ignore the message (returns a 'not-acknowledged'/NACK response)

Steps to Reproduce

  1. Create OMNISCAN450 instance
  2. Call set_speed_of_sound() method
  3. Device does not update speed of sound (ignores command)

Environment

  • Device: Cerulean Omniscan450 FS
  • Library: bluerobotics-ping (latest)
  • OS: Ubuntu (WSL 2)

Severity

High - breaks core feature (speed of sound configuration)

Proposed Solution

Change omniscan450.json set_speed_of_sound ID from 1002 to 116.
Two PR's have been created;

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions