Skip to content

Fix/century pump setdrivestate error - #1169

Merged
tagyoureit merged 1 commit into
tagyoureit:masterfrom
celestinjr:fix/century-pump-setdrivestate-error
Apr 10, 2026
Merged

Fix/century pump setdrivestate error#1169
tagyoureit merged 1 commit into
tagyoureit:masterfrom
celestinjr:fix/century-pump-setdrivestate-error

Conversation

@celestinjr

Copy link
Copy Markdown
Contributor

This pull request focuses on improving the reliability and accuracy of RegalModbus pump communication in the Nixie controller system. The main changes ensure that only messages from known, configured RegalModbus pumps are accepted, and they refine how drive state commands are sent to these pumps.

Inbound message filtering improvements:

  • Updated the testRegalModbusHeader method in Messages.ts to only accept messages from RegalModbus pumps that are explicitly configured in the system, preventing misidentification of noise or broadcast fragments.

Pump command handling adjustments:

  • Added clarifying comments in NixiePumpRegalModbus.setDriveStateAsync about the behavior of the Go command and its requirements for the motor state and error handling.
  • Changed the outbound command options in setDriveStateAsync to use zero retries and not expect a response, likely to avoid unnecessary command retries or waiting for responses that may not be sent in certain pump states.

@celestinjr celestinjr closed this Apr 10, 2026
@celestinjr celestinjr reopened this Apr 10, 2026
@celestinjr
celestinjr marked this pull request as draft April 10, 2026 13:59
…validation, and fault response

- Enhanced header validation to only accept messages from known RegalModbus pumps
- Improve collision detection by verifying pump address against configured devices
- Add special handling for NACK responses on Go/Stop commands (0x41, 0x42)
- When pump returns NACK to control commands, set driveState and command to fault state (4)
- Log pump faults with descriptive error messages instead of silent retries
- Optimize Go/Stop command parameters: disable retries and response flag for fault scenarios
- Add documentation for Go command behavior and NACK handling expectations
@celestinjr
celestinjr force-pushed the fix/century-pump-setdrivestate-error branch from 05ada91 to 582c934 Compare April 10, 2026 14:03
@celestinjr
celestinjr marked this pull request as ready for review April 10, 2026 14:16
tagyoureit pushed a commit that referenced this pull request Apr 10, 2026
…ents

- testRegalModbusHeader: resolve configured pump via getValue('regalmodbus') and sys.pumps.find
- RegalModbusStateMessage / setDriveStateAsync: merge PR #1169 with review follow-up

Made-with: Cursor
@tagyoureit
tagyoureit merged commit 2eaf015 into tagyoureit:master Apr 10, 2026
1 of 2 checks passed
@celestinjr
celestinjr deleted the fix/century-pump-setdrivestate-error branch April 11, 2026 01:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants