Skip to content

FirePoint

Overview

Addressable fire point function for panels that expose per-address status bitmaps: disabled, test, alarm, active input, active output, and trouble.

Use FirePoint for the address-level state machine. Add FireDetector on the same Thing when the address is a physical detector.

  • Added in: PQ Framework 2.3
  • Namespace: Pq.Adapters.Framework

When to Use

  • Addressable fire detector addresses
  • Panel-defined system addresses that can be enabled/disabled/tested
  • Fire inputs and outputs represented as address states
  • Vendor protocols that report per-address state bitmaps

States

State Status id Description
Clear detection.clear (hidden) No active condition
Alarm fire.alarm Fire alarm active
AlarmGeneral fire.alarm.general General alarm active
AlarmSection fire.alarm.section Section alarm active
AlarmConditional fire.alarm.conditional Conditional alarm active
Prealarm fire.prealarm Pre-alarm active
InputActive fire.input.active Input address active
OutputActive fire.output.active Output address active
Disabled fire.disabled Address disabled
Test fire.test Address in test
TestActivation fire.test.activation Test activation active
TestPassed fire.test.passed Address tested successfully, test not finished yet
TestPartial fire.test.partial Group test partially completed across detectors
Trouble fire.trouble Address trouble/fault

Clear is the hidden default state: SetClear(ct) publishes no status string, so an inactive address reports the function as cleared.

Actions

Action Target State Event
FirePointGeneralAlarm(timestamp) AlarmGeneral pq.event.fire.alarm.general
FirePointSectionAlarm(timestamp) AlarmSection pq.event.fire.alarm.section
FirePointGeneralAlarmCleared(timestamp) Clear pq.event.fire.alarm.general.cleared
FirePointSectionAlarmCleared(timestamp) Clear pq.event.fire.alarm.section.cleared
FirePointConditionalAlarm(timestamp) AlarmConditional pq.event.fire.alarm.conditional
FirePointPreAlarm(timestamp) Prealarm pq.event.fire.prealarm
FirePointInputActivated(timestamp) InputActive pq.event.fire.input.activated
FirePointInputDeactivated(timestamp) Clear pq.event.fire.input.deactivated
FirePointOutputActivated(timestamp) OutputActive pq.event.fire.output.activated
FirePointOutputDeactivated(timestamp) Clear pq.event.fire.output.deactivated
FirePointDisabled(timestamp) Disabled pq.event.fire.address.disabled
FirePointEnabled(timestamp) Clear pq.event.fire.address.enabled
FirePointTestStarted(timestamp) Test pq.event.fire.test.started
FirePointTestCompleted(timestamp) Clear pq.event.fire.test.completed
FirePointTestActivation(timestamp) TestActivation pq.event.fire.test.activation
FirePointTestPassed(timestamp) TestPassed pq.event.fire.test.passed
FirePointTestPartial(timestamp) TestPartial pq.event.fire.test.partial
FirePointSuppressionActivated(timestamp) OutputActive pq.event.fire.suppression.activated
FirePointTrouble(timestamp) Trouble pq.event.fire.trouble
FirePointTroubleCleared(timestamp) Clear pq.event.fire.trouble.cleared
FirePointLost(timestamp) Trouble pq.event.fire.address.lost
FirePointDuplicate(timestamp) Trouble pq.event.fire.address.duplicate
FirePointOutOfConfiguration(timestamp) Trouble pq.event.fire.address.out_of_configuration
FirePointAutoAddressing(timestamp) no state change pq.event.fire.address.auto_addressing

YAML Example

device_types:
  - type_id: AddressableDetector
    name: "Addressable Detector"
    functions:
      FirePoint:
      FireDetector:
      Tamper:

Notes

  • FirePoint is status-oriented. Audit events from panel history should still be routed with device timestamps.
  • Use StatusBatch for full bitmap snapshots to avoid transient mixed states.

See Also