OpenCellular icon indicating copy to clipboard operation
OpenCellular copied to clipboard

Feature request: Asynchronous active/clear alert

Open Dineshraghuwanshi opened this issue 7 years ago • 0 comments

Product: (OC-SDR, OC-LTE, OC-LTE, OC-Power, others)

Component: (PSU, GBC, BBU, FEM, LED, ME)

Category: (Hardware, Software/stack, Firmware/bootloader, Documentation)

Describe the solution you'd like

  1. This issue deals with alert e.g. if value of ambient current or temperature or any other parameter of a sensor exceeds from certain limit or threshold then alert or interrupt has to be generated to user to indicate fault or problem.
  2. By serving interrupt one can take certain action to handle the issue
  3. To implement this feature certain registers of a particular sensor needs to configure in interrupt mode so that once sensor's readings exceeds certain limit(set by user) an interrupt will be generated from sensor to TIVA, then a message will be sent to host containing current readings, this would be called as asynchronous active alert
  4. Once sensor's readings comes down the limit then again a message will be sent to host stating alarm got clear with current sensor readings, this would called as asynchronous clear alert

Host changes:

  1. Command need to implement using schema from host CLI. EXAMPLE : system.comp_all.getAlert
  2. MiddleWare will convert this command into OCMP message and will send it to the FW.
  3. Framework need to create to except multiple message for singal command and create a response.
  4. MiddleWare will send response to CLI and CLI will display it into console into tabular format as well as store it into log file for future reference.

FirmWare changes:

  1. Once interrupt/alert will comes from particular sensor then ISR will analyze it by reading sensor's internal register to find source of alert.
  2. Then it will store the alert into SPI flash memory with RTC time stamping and also send alert to host.
  3. Then it will take certain actions to clear it.
  4. Once alert gets clear, it will save the data into SPI flash memory with RTC time stamping.
  5. Once request comes from middleware for alerts, FW will read data from SPI flash memory and send back to middleware.

Message Frame will contain following payload field:

  1. First Byte of payload to indicate MW that more alert messages are coming in sequence (Position = 0, Size = 1 Byte).
  2. Next two Byte will be the alert timestamp in the payload(Position = 1, Size = 2 Byte).
  3. From 4th position in the payload actual value will come depending on the parameter type(Position = 3, Size = 2 Byte).
  4. 6th Position will be field by limit value for the parameter(Position = 5, Size = 2 Byte). Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is.

Dineshraghuwanshi avatar Oct 02 '18 18:10 Dineshraghuwanshi