Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Safety: Upcoming change in Watchdog #65

Closed
Peter-van-Tol opened this issue Dec 28, 2023 Discussed in #62 · 1 comment · Fixed by #67
Closed

Safety: Upcoming change in Watchdog #65

Peter-van-Tol opened this issue Dec 28, 2023 Discussed in #62 · 1 comment · Fixed by #67
Assignees
Labels
enhancement New feature or request

Comments

@Peter-van-Tol
Copy link
Owner

Discussed in #62

Originally posted by Peter-van-Tol December 10, 2023
There are some upcoming changes in the watchdog, for safety reasons:

  • bug resolved in the driver. The signal when the watchdog has bitten was not relayed to the HAL.
  • if the watchdog has bit and the has_bitten bit is True, the user can reset it to False to resume operation.
  • added an physical enable_out pin to the watchdog. Which pin it has to be, can be chosen in the configuration (see example below). I use this pin with the HUB75HAT project. When the board is running enable_out is HIGH. When the watchdog times out (either due to communication disruption or LinuxCNC stops sending signals) the pin becomes LOW. On the HUB75HAT this means that all input and output will go in high-Z mode. This means the watchdog safety is completely in hardware and does not depend on LinuxCNC or the communication.

Example configuration (default for HUB75HAT):

{
    "board_name": "EMCO5_SPI",
    "board_type": "HUB75HAT v8.0",
    "clock_frequency": 50000000,
    "connection": {
        "connection_type": "spi",
            "mosi": "spi:0",
            "miso": "spi:1",
            "clk":  "spi:2",
            "cs_n": "spi:3"
    },
    "watchdog": {
        "pin":"ena:0"
    },
    "modules": [
        ...
    ]
}

Two open actions before I commit this change are:

  • making the physical enable_out pin optional;
  • create a working example where the watchdog is part of the E-stop latch circuit. This requires some additional components, to drive the has_bitten pin low before enabling the E-stop chain.
@Peter-van-Tol
Copy link
Owner Author

This issue only addresses the watchdog setting the external ENA-pin. External triggers (i.e. E-stop completely within the FPGA) will be another issue.

@Peter-van-Tol Peter-van-Tol self-assigned this Dec 28, 2023
@Peter-van-Tol Peter-van-Tol added the enhancement New feature or request label Dec 28, 2023
@Peter-van-Tol Peter-van-Tol linked a pull request Dec 28, 2023 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant