rsmp-nordic / rsmp_sxl_traffic_lights

RSMP Signal Exchange List (SXL) for Traffic Controllers
MIT License
12 stars 4 forks source link

Ability to reset alarms #176

Open otterdahl opened 10 months ago

emiltin commented 10 months ago

Would this be clearing alarms?

otterdahl commented 10 months ago

This type of command exists in other protocols and we've gotten feedback that it is missing in RSMP.

I'm not sure if it really applies to all kinds of alarm, but the typical use case is alarms that is generated in software. For instance A0302: Detector error (logic error).

That alarm monitors that the detector has remained on or off for an unreasonable long time. It would indicate that the detector is faulty. It may use a timer to achieve this. But if the detector gets fixed, then the alarm may remain active for a long time afterwards. It would be useful to reset the alarm timer.

I don't know what the best term to use: "reset" or "clearing" alarms. I also don't know if it only applies to all alarms or only a few.

SwarcoPalm commented 10 months ago

We have previously implemented this as the "restart" command (don't remember the exact name), which will reset the errors. (this also implies that if the intersection is in a major fault, it will attempt to start up again).

emiltin commented 10 months ago

Resetting an alarm sounds like something you can do for a single alarm, or a set of alarms, whereas a general 'reset controller' would affect all alarms, and probably many other things as well?

SwarcoPalm commented 10 months ago

Resetting single alarms is overdoing it. In some countries it's a requirement to be able to reset detector errors separately.

Henr1O commented 10 months ago

The reset alarms/errors should clear all active alarms/errors on controller, simple as that. After resetting errors, the alarms will come again active, if they can't be "fixed" by resetting alarms.

Basically controllers should always clear all alarms/errors automatically, but in some cases they need manually error reset.

Henr1O commented 10 months ago

As Andres wrote, Swarco controllers uses command M0004 to clear = reset alarms. This is why we need own function for clearing alarms. For example, now LS Cartesio will restart the controller with that command, but there is no command to reset alarms for example after all starting retries are used after lamp failure. Solution = let's made clear/reset errors/alarms command.

otterdahl commented 7 months ago

Since resetting alarms needs a new command. Should we target 1.2.1 or 1.3? @emiltin

emiltin commented 6 months ago

I suggest 1.3

emiltin commented 1 month ago

In some countries it's a requirement to be able to reset detector errors separately.

Then we should probably support this. We could have an attribute like "types" where you can specify which types of alarms to clear. If you leave it out, it just clears everythíng. (This requires optional attributes in the core spec, which is currently planned for core 3.3)