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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions