Release Notes
Syrus Cloud
Version 0.8.2
2023-04-28
Additions
- Added, support for ecu-imports file on ecu profiles install/update.
- Added, cipia information in Summary data tables.
- Added, a switch on the 'Add devices' dialog in applications and profiles looking for filter-disabled devices.
- Added, support for cipia configs on download-command shortcuts.
- Added, allow sorting by Name and Online State on devices dashboard

- Added, speed on maps location title.

- Added, play-and-pause live table sorting button and update-led in mobile view.

Changes
- Shared-components updated to 0.3.1 and 0.3.4
- Mobile view in Management Applications and Profiles views.
- A snackbar is shown when there is no information in the editor config on device calibration.
- Changed, the way to show updated information, warnings, and errors in the single device dashboard. Now these actions are confirmed.
- On the single-device dashboard, empty states are now better handled.
- Data tables with device tags, had changed to export in CSV, adding Conn, Name, IMEI, and serial columns.
- On the device sidebar, was added copy IMEI or serial function.

Fixes
- Fixed, editing an instance does not let's create a new instance's file.
- Fixed, a bug in the editor dialog on the device dashboard. This dialog used to crash when a user selects "view file" in accelerometer single dashboard.
- Fixed, not auto-checking devices when added to some new profiles.
- Fixed, profile-copy does not copy config-file contents on some profile types.
- Fixed, video tree updates with multiple events files, for instance, snapshot + video
Version 0.8.0
2023-03-28
Additions
- Added, a button to freeze information in data tables.

- Added, support and pretty format for new videos in diagnostics messages.
- Added, automatic creation of devices in Syrus-Cloud from Syrprod reports (factory QC report)
Changes
- Images no longer need to be downloaded to view their content, now they can be viewed from the application.
- Next to the freeze button, there is a badge that lights up when the table is updating data.

- App now detects when a video is no longer available on the device.

- The following views had been updated in mobile: Summary, Diagnostics, Commands, Videos, Accelerometer, Applications - Overview, Profiles - Overview, Users, Devices, Organizations, all devices and Admins.

- Support updating the videos-list with incremental changes instead of triggering a list-videos command on new video-event.
- Shared components updated to version 0.3.0
Fixes
- Fixed, state of icons from syrus lite, now is clear these devices are using SIM cards.
- Restored showing versions on device's summary info panel
- Fixed, sometimes not reading the min Apex Version requirement when editing instance
- Fixed, installed instances of the device now show up correctly in sync, because previously they would show out of sync when they were not.
- Fixed, a bug on warranty start detection.
- Fixed, a batch correction of some devices that were assigned a wrong warranty start date.
- Fixed, a bug when selecting predefined paths for file download.
Version 0.7.0
2023-02-25
Additions
Dashboard with all devices view with the following features:
-
Added, a filter to find a device by name, IMEI or serial number.
-
Added, button to show or hide maps for all devices.
-
Added, button to maximize map for each device.
-
Added, in action button an option to copy IMEI or serial number to clipboard.
-
Added, a row with icons showing the information of the device, just let the mouse over the icon to see the information.
Summary side bar has the following features:
- Added, a section in the sidebar with the name and model of device (requires latest ApexOS version)

- Added, a diagnostics section reports last three errors or warnings occurred in the last two weeks.
- Added, an instances section to show all instances of the selected device.
- Added, an accelerometer section to show calibration status and settings.
Other views: - Added, copy and download button in command response side bar.
- Added, copy and download button in advanced options on summary and diagnostics side bar.
- Added, Number of devices per group in management group section.
- Added, Status icons for each device showing errors or warnings.
Created a new Dashboard for each device with the following features:
- Added, Summary Card with the main information of the device.
- Added, Accessory Card with the information of the accessories linked to the device.
- Added, Accelerometer card that displays the calibration status and settings.
- Added, Profiles and Instances cards giving information about configuration profiles and instances.
- Added, Diagnostic Information, Diagnostic Warnings, Diagnostic Errors cards that show last three messages of each type occurred in the last two weeks.
- Added, Warranty information card that shows the warranty information of the device.
- Added, Mobile card with all the information related with mobile and network status of the device.
- Added, Video and Location cards that reports the last video, with a button to go to the video panel and the last location of the device.
Changes
- Commands and diagnostics tables of the device view was moved to a new tab called "COMM".
Fixes
- Fixed, sizing of device tables to give a better view.
Apex OS
Apex 23.20.1 beta
Upgrade command
Syrus 4
apx-os-update start -f -p https://syrus4.dctserver.com/apex/releases/apex-23.20.1
Syrus 4 Lite
apx-os-update start -f -p https://syrus4.dctserver.com/apex/releases/apex-lite-23.18.1
Additions
- Added, an apex tool for every serial mode.
- Added, ISO15765 OBD2 to syrus-ecu application.
- Added, the instruction to clear ecu parameters when ecumonitor.conf file is changed. This clears the ecu parameters list that is consulted with the apx-ecu list_parameters command.
- Implemented, MDT ascii mode for serial applications.
- Implemented, serial user mode, in this mode the user has total control on the serial interface, the serial app does not run in this mode.
Fixes
- Fixed, recording issue when 2 cameras were used. The second camera never started the recording process.
Changes
- Changed, the way to package the API, now it is a WEB app and its size was reduced.
- Disabled, audio for F6 dashcams. This camera has a problem with the audio stream that causes the recording not to start.
Improvements
- Improved, organization and legibility of the syrus-ecu code.
- Improved, the way to update the video list in syrus cloud, now, differentials are used.
- Improved, the routine to execute an electrical reset in the LTE modem when communication issues are detected.
Apex 23.11.1
Additions
- Added, a routine to restart the OS when i2c driver crash is detected. This was causing a failure in reporting the accelerometer motion and it was related with freezed odometers.
- Added, a routine to restart the OS after 5 minutes of communication error with microcontroller.
- Added, reset code to the apex started diagnostic message. Something like this is sent to cloud:
apex-23.18.2 started, session counter: 834, reset code: 1
1: Normal reset
0: Reset code not found
-1: Operating system has finished unexpectedly
Changes
- Decreased, the wait time for changing from one led state to the next one.
- Improved, now, creation of clips with old ranges is allowed even if the camera is switched off.
- Increased, from 10 to 20 minutes, the time to kill a process started by syrus-watcher. It was done because sometimes 10 minutes is not enough to download and install an application in syrus lite when it is done by using the syrus cloud UI.
- Increased, the 10-day limit to 30 days for the apx-video history request.
Fixes
- Fixed, a bug with the update cipia command. It returned error and the process never started.
- Fixed, apx-mdm status was returning the temperature value in a wrong format.
- Fixed, battery being drained with external power connected. It was done on the microcontroller side version 1.0.2L.
- Fixed, the apx-ndm-cipia status was not returning the correct connection state.
- Fixed, the device did not enter into PSM (Power saving mode) after upgrading the microcontroller. The device needed a reset in order it to work again.
- Fixed, the error that caused no more than 10 video events were saved in the SD card.
- Fixed, the OS update process was not validating the key.
- Fixed, the routine to restart the syrus lite device when heartbeat (WATCHDOG) fails. It was done on the microcontroller side version 1.0.2L
- Fixed, the syrus lite Europe model was not using the correct USB interface to start the ppp session.
Apex 23.08.2 beta
Added
apx-gps antenna-st
command- antenna status to the
apx-gps status
command - virtual ignition support (23.04.1)
- jamming detection (23.04.1)
- temperature value from modem (23.04.1)
- added a command to query the apx-bbs configuration (bluetooth beacon sensors) (23.04.1)
- Added, the routine to move the blue led according to wifi/hotspot state (23.08.1)
- Added, Ignition state to the periodic diagnostic message (23.08.1)
- Added, the mechanism to include modem manufacturer, model and revision to the OS state (23.08.1)
- Added, a routine to restart the system when microcontroller communication fails (23.08.1)
- Added, a new command to consult the list of geofences that are inside (23.08.1)
- Added,
apx-bbs
enable/disable command to start/stop the syrus-bbs application (23.08.1) - Added, new ECU variables to the SDK (23.08.1)
- Added, syrus-leds as a new package (23.08.1)
- Added, HW type to the full OS state (23.08.1)
- Added, the way to add a diagnostic message to the reboot command (23.08.1)
Changes
- Outputs are activated in sequence (23.04.1)
- Disabled, the syrus-bbs service by default (23.08.1)
- Removed, apx-leds as part of the apex tools (23.08.1)
Improvements
- Improved, the mechanism to restart the OS by microcontroller communication error
- Added, apx-bbs (Bluetooth Beacon Sensors) tool (23.03.1)
- Improved, the debug for microcontroller critical message (23.08.1)
Apex 22.51.1 stable
2022-12-24
Additions
Added, a routine in syrus-watcher to close the redis client when an error is received
Added, PWR state to the full system state
Added, the mechanism to rotate GNSS backlog files
Added, the instruction to validate the hardware type before updating, apex lite file is different from apex full
Changes
Changed, the critical size warning message periodicity, now is sent every hour if it is detected
Fixes
Fixed, the apx-ndm-cipia configure respones, it was not generating a valid json
Fixed, the syrus-ndm app finalized unexpectedly when cipia was not fully configured
Fixed, the mechanism to rotate file events in internal memory when only cipia is used
Apex 22.50.2 BETA 2022-12-16
Additions
- Added, a instruction to force RMC valid field to 'V' when speed is empty. It is a bug found in the quectel GNSS
- Added, a publication to notfy that the last onewire-ID information were cleared
- Added, an option to update peripherals full state
- Added, support for EG915U
- Added, the first version of apx-ndm-cipia, status option was included
- Added, the first version of the ECU warnings module
- Added, the instruction to fill the onewire-ID with zeros to the left
- Added, the instruction to restart the Apex OS when the wifi driver fails to get the interface up
- Added, the instruction to set the gps engine in syrus lite apex tool
- Added, the mechanism to detect when a network device is connected/disconnected
- Added, the mechanism to detect when a video device is connected/disconnected
- Added, the mechanism to update the full system state with informacion about the state of the network devices connected to syrus
- Added, the udev rule to support the EG915 modem series
Changes
- Changed, the apx-onewire tool help format
Fixes
- Fixed, sometimes the onewire application does not start correctly due to a problem with the optimization flag
- Fixed, the gps state initialization, it was configuring XM1110 instead of LC86L for syrus lite
- Fixed, the instruction to escape special characters
Improvements
- Improved, application debug for catching acceleration issues
- Improved, the modem test in production for syrus lite
- Improved, the way in configuring cipia, now it is done by demand
- Improved, the way to get the modem imei in the provisioning test
Apex 22.46.1 2022-11-25
Recommended SyrusJS version 1.45.3
Additions
- Added, a mechanism to restart the OS when syrus-watcher crashes, this is a workaround to avoid the OS blocking when connection is not stable
- Added, some instructions to avoid sending messages and opening MQTT connections when the device has not internet access
- Added, the instruction to activate the buzzer in production, it is used to indicate that the device test can be started
- Added, the instruction to configure default gateway when USB is connected, it is for using the USB as internet interface
- Added, the instruction to return outputs to default state after ending apx-bist
- Added, the instruction to set the timestamp file. This file is used for controlling the buzzer in production
- Added, the mechanism to avoid evaluating time windows if the system clock is not sync
Changes
- Changed, the syrus-watcher service watchdog time from 120 to 300, the mqtt send message function does not return faster when the device does not have connection with the MQTT server
Fixes
- Fixed, a security issue, now the time-windows tool only allows apex commands
- Fixed, the microcontroller update was started in the first start after flashing the OS
Improvements
- Improved, apx-bist-lite accelerometer test
- Improved, the time-windows tool help
Apex 22.44.1 2022-10-31
Recommended SyrusJS version 1.45.3
Additions
- Added, People counting camera
- Added, Cipia error signal detection
- Added, Time window system tool
- Added, Safe Engine Immobilization mechanism
- Added, ability to capture snapshots from video
Apex 22.28.1 (2022-07-14)
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
Additions
- Added, apx-ext-memory status option without optional arguments.
- Added, Cipia version to the apex global state.
- Added, motion by accelerometer as an anti drift filter variable
- Added, the apx-shutdown script for setting a file with the last timestamp. It helps the system clock to not go back when the clock is unsynchronized due to electrical resets or system updates.
- Added, the apx-video option to set/get the ID for the cipia device.
- Added, the apx-video option to start a cipia update.
- Added, the instruction to limit the HDOP, PDOP and VDOP to 9.99 as max value.
- Added, the instruction to read the value of motion used for GNSS filtering.
- Added, the instruction to update external memory information when the system starts.
- Added, the mechanism to add hidden SSIDs in the apx-wifi tool
- Added, the mechanism to calculate acceleration and trigger notifications. It was done in the GNSS application
- Added, the mechanism to check if the external memory is running out of space.
- Added, the mechanism to delete older files in /data/logs.
- Added, the mechanism to format external memories when they can not be unmounted. It causes the system to be rebooted two times.
- Added, the mechanism to set system time when the OS is updated. It avoids the system clock to go back in time.
- Added, the mechanism to support lazy videos.
- Added, the mechanism to update the external memory information as soon as it is inserted/removed. It is reflected in the global system state.
- Added, the mechanism to update the geofence state that is included in the global system state.
- Added, the patch to change the wifi warning level when BA sessions are exceeded.
- Added, the support for video links. They are used when two or more clips are created in less than 10 seconds.
- Added, will now send messages to Syrus Cloud when Cipia FS10 errors are detected.
Changes
- Changed, some variable names for apx-bist which are reported to Syrprod. It was done for syrus lite.
- Changed, the MQTT QOS from 1 to 2. It was done in the application used for sending diagnostic messages to syrus-cloud.
- Changed, the number of decimal used in GNSS publications.
- Changed, the user permissions for apx-eeprom, apx-ecu, apx-geofences, apx-onewire and apx-video. syrus4g user was using them without sudo.
- Removed, the mechanism that avoids updating the system state in a time window of 30 seconds
Fixes
- Fixed, add_camera command did not work if the config file had an empty json object.
- Fixed, an error reading the hdop threshold for the GNSS filtering algorithm.
- Fixed, create_clip command, sometimes the instruction were not executed due to a C pointer issue.
- Fixed, issue where NDM would edit WiFi config sent to Cipia FS10 when its not supposed to.
- Fixed, the apx-video update_list and status command when cipia is in the config file but it is not initialized
- Fixed, the initialization to auto-stop the accelerometer calibration process after 2 hours, it had not taken into account if the process was already started.
- Fixed, the initialization when a camera is not available. It was not retrying.
- Fixed, the instruction to change the external memory properties did not return if it had vfat as file system.
- Fixed, the mechanism to update video list for cipia and movon.
Improvements
- Improved the mechanism to restart the system by the wifi driver crash
- Improved, diagnostic messages when OS is updated.
- Improved, the apx-video options when camera is not available or the config file is empty or not exists.
- Improved, the debug when evaluating GNSS filtering.
- Improved, the mechanism to update the clips data structure.
- Improved, the mechanism used to concatenate json state files in the global system state.
Apex 22.23.3 (2022-06-09) - Latest
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
- Added, 8.8.4.4 in the DNS setting command when mobile network is used
- Added, apx-bist for syrus4 lite
- Added, GNSS simulation mode
- Added, IMU autocalibration diagnostic messages to cloud
- Added, logrotate tool
- Added, nmea-log mode. It writes raw nmea frames to file
- Added, reboot instruction by redis not available and redis clients limit
- Added, the mechanism to cancel the IMU autocalibration mechanism after 2 hours of being trying
- Added, the mechanism to check low battery
- Added, the mechanism to delete data/uploads files when more than 10 are stored
- Added, the mechanism to reboot the system when wifi driver is broken
- Added, warning message in case the external device for saving videos wasnt ext4
- Added, wl18xx-fw_8.9.0.0.86. Now this firmware is used for wl18 module
- Changed, Bluetooth now publishes a JSON message instead of ENABLED/DISABLED when notifying the mode to be used.
- Changed, Bluetooth tries to restart internal engine ten times before giving up and no longer retrying to initialize it.
- Changed, Debug off in apx-geofences
- Changed, In evaluate geofences function fast_cos was replaced by c library cos. It was causing to report fake geofences events
- Changed, the file system used in formating external memories, now ext4 is used
- Changed, the initialization sequence in order the "apex os started" message is the first message to be queued when initializing
- Fixed, an error message was returned by apx-video status when folders were not created and the OS update was started
- Fixed, interface application was broken due to an unexpected redis message
- Fixed, some memory leaks in the main geofences app
- Fixed, some memory leaks in the main GNSS app
- Fixed, the apps manager section in the User Interface
- Fixed, the phone-book list when numbers include +
- Improved, Bluetooth Now properly detects i2c components controlled by drivers/modules.
- Improved, the back-off mechanism to recover mobile connection when DNS resolution is blocked
- Improved, The interface now checks battery status on application start up instead of 60s later.
- Improved, the mechanism to report device diagnostics and system updates to syrus cloud, now the state is included in the diag message
- Improved, the modem IMEI parsing
- Improved, the queue process for clips, now software links are created when two or more videos are requested at the same time
Apex 22.17.1 (2022-04-29) - Latest
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
- Added, fuel sensor mode to serial tool
- Added, now one pipeline is used for record and streaming
- Added, restrictions to h265 - dashcam,
- Added, the apx-serial-fs fuel sensor tool
- Added, the apx-serial-rfid tool
- Added, the first version of the rfid reader
- Added, the option in apx-wifi to connect to a wifi network preconfigured
- Added, the option in apx-wifi tool to manually configure the wireless interface
- Added, the rfid mode to apx-serial
- Changed: Now checks target Cipia-FS10 MAC before attempting to set up WiFi and hotspot to reconfigure Cipia-FS10. This is done to allow everything to work when Cipia-FS10 and S4G is connected to an external AP. Requires that Cipia-FS10 knows the IP given to S4G by the AP
- Enabled, some debug features in mosquitto broker
- Fixed, the clips list were not correctly updated after creating more than 2 clips at the same time
- Fixed, the memory leak caused by popen in syrus-watcher
- Implemented, NDM now changes the connection status of Cipia-FS10 whenever the device connects to our MQTT broker. This broker requires a custom configuration file that allows logging and sends log information to a SYS related topic. Also, handles when Cipia-FS10 disconnects from the MQTT broker. Sends connection status to ndm/notification/cipia/update and updates video_current_state
- Implemented, support for H265
- Implemented, the option to remove the information about the last ibutton read.
- Improved, Core now must fail 5 times before sending to cloud an alert that it failed to set up onewire drivers/modules
- Reduced, the memory limits for the watcher service
Apex 22.12.4 (2022-03-28)
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
- Added, a mechanism to validate IMSI and SIM card ID
- Added, a new mechanism to avoid parsing not valid frames. The parse of not valid frames was causing memory leaks in syrus-gps
- Added, new BIST command for the provisioning of S4GLite.
- Added, redis publications when video streaming is used
- Added, the interactive API documentation to the UI
- Added, the mechanism to restart redis connection when the command to consult the redis queue returns empty. It fixes a synchronization issue between syrus-watcher and syrus cloud
- Added, the option to configure the LTE communication module in data only mode
- Changed, no longer attempts to change system time with microcontroller reference when returning from PSM.
- Changed, removed the function that would attempt to set up the CAN interfaces. This function was causing ecuS4 to fail on S4GLite.
- Changed, the stop streaming message sent to cloud
- Deprecated, apx-bt list_paired
- Disabled, audio for hikvision dashcams
- Disabled, the debug for gpios when kernel starts
- Fixed, clips-supervisor memory leak and the number of subprocess it generated
- Fixed, from - to option in video update list
- Fixed, the ADAS buzzer implementation for S4GFull.
- Fixed, the calculation of the video.conf.json hash, the core app was including an extra \n to the file
- Fixed, the clip status command was not returning the cipia seatbelt event
- Fixed, the dependency to Redis being functional. Application should no longer crash when Redis is unavailable.
- Fixed, the reference to add 100 to the nmea year
- Fixed, the UI was not returning error when formatting a non existing SD card
- Implemented, able to disable buzzer or ADAS buzzer depending on hardware type.
- Implemented, considers S4GLite hardware limitations where less inputs and outputs exist. This also applies for entering and exiting PSM.
- Implemented, increased the number of input_events saved from 99 to 500.
- Implemented, now interface is able to know if it is running on a S4GLite or S4GFull based on microcontroller version and if it discovers an RTC I2C component.
- Implemented, partials in video update_list
- Implemented, the S4GLite buzzer through GPIO.
- Improved, the way in which the gps application publishes the current time
- Removed, the "was accepted" message when configuring PSM mode
- Removed, the wrong message when setting the ethernet route
Apex 22.10.3 (2022-03-08)
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
- Added, a mechanism to check the state of a cloud script process and return a response
- Added, a mechanism to discard duplicate messages sent by cloud
- Added, Cipia UnfastenedSeatbelt event
- Added, clips-supervisor application
- Added, diagnostic messages when a cloud script does not return after 10 minutes
- Added, DriverDistraction and DriverDrowsiness Cipia events.
- Added, retry streaming case when “linking failed” error is found caused by the unavailability of audio on the selected camera
- Added, the instruction to flush the sms inbox when modem application starts
- Added, the instruction to release resources when the video application is recording and an Apex upgrade is started
- Added, the stream id to the apex command that starts the streaming, it is a mandatory parameter
- Added, upload, view, and download extra menu items in shared accelerometer
- Changed, the apx-mdm tool, now it uses flags
- Changed, the tcp port range used for applications to instance control. Now it is above 61100
- Changed, the time that video application sleeps when idling
- Changed, Uses the Cipia-FS10 event string sent in lieu of unknown_event when encountering an event that is not recognized.
- Fixed, apx-video status bug when ext. device isn't mount
- Fixed, bug in adding a clip to the queue when camera name is included in the command.
- Fixed, bug when clip is queued and CLIP_IN_PROGRESS is stored instead of CLIP_QUEUED.
- Fixed, bug where the maximum size for the event folder is not sent when calling apx-disk_cleaner
- Fixed, Cipia default configuration in shared video component (hotspot key to true).
- Fixed, gps were not publishing updates when the Quectel gnss module has not valid data
- Fixed, rm_camera bug when the “name” key is in another position.
- Fixed, some modem parameters were not updated after returning from airplane mode
- Fixed, The command used to edit cipia_fs10.settings.json.
- Fixed, the option to add and remove wifi networks when they include spaces
- Improved the way to manage run cloud scripts, the application was broken with heavy processes
- Improved, apx-core update and install, now the repository file is erased before updating
- Improved, connection error timestamp were not cleared when ppp interface was not used
- Improved, the apx-video status command, now it returns faster due to the improvent in consulting the history range
- Improved, the mechanism to switch from SOC to MDM audio
- Improved, the size of the libraries used by api and UI
- Improved, the way to delete sms already processed
- Improved, the way to report "cloud script executed"
- Improvedt, now the gps application uses the system clock when there is not valida nmea data
- Removed, disk-cleaner, gsoap, gstreamer-libav and gstreamer-rtsp-server. It caused a reduction of 12Mb in the apex output file
- Removed, the instruction to set the system time when the apex os is restarted
- SC-0054:(feat) Accel - Added long options to apx-imu
- SC-0056:(feat) Accel - Integration of Accel shared component in UI
Apex 22.05.3 (2022-02-04)
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
- Added, the backlog mechanism
- Added, the mechanism to configure Caredrive MR688 parameters
- Changed, some keys in the json output when apx-video status is used
- Fixed, some bugs on video create_clip command
- Fixed, the airplane mode state were not updated when the application changed its state
- Implemented, a failsafe mechanism for the bluetooth service
- Implemented, a mechanism to queue message broker messages that are to be later sent
- Implemented, several Cipia FS10 events
- Improved, the apex serial console when the command finishes by something different from LF
Apex 21.51.3 (2021-12-23)
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
User Interface and API
- Video, filter dates method changed to apx-video update_list
- ECU, add option to read while vehicle is OFF flag
- ECU, add ecumonitor.conf file if not exists
- System, new Format/Erase dialog
- System, added information on the external memory usage
- Accelerometer, adjust milli-G labels for mobile
- Power Saving Mode, add field validation to awake time
- Bluetooth, improvements while scanning and unpair process
- App, added version in about section
- Added, the instruction to restart the gps service when apx-gps restart is executed
- Implemented, ECU now uses a new key to allow reading from CAN network regardless of ignition state. The new key to be added to ecumonitor.conf is READ_WHILE_VEHICLE_OFF
- Improved, the modem initialization routine, some devices have a delay in the modem power on and it causes the application to break up
- Changed, in command apx-video update_list, new functionality was added to recover the information about the "history" folder if the argument "–include_history" is set, the arguments "–from" "–to" must be set
Apex 21.50.2 (2021-12-14)
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
- Added, "cipia_config" command in apx-video, this allows users to modify the cipia configuration file passing the JSON key and the value, for example: apx-video cipia_config --key=WifiSettings.Password --value=syrus1234
- Added, in syrus-mdm the instruction to change to data centric mode
- Added, publication messages to redis during accelerometer calibration process
- Added, the apex tool to read and write the eeprom memory
- Changed, timeline mechanism in apx-video, now it reads and process the data extracted from the redis hash “video_history_cameraname”, creating a json output with the ranges available in the history
- Fixed, Bug in syrus-video create_clip in "--from --to" mode when one camera doesn’t have a history folder
- Fixed, Bug in syrus-video diagnostic messages that did not include the clip name
- Fixed, in syrus-mdm the routine to restart the no connection time variable
- Fixed, the audio channel switch when incoming calls, the BT speaker was not connected again
- Improved, in syrus-mdm the initialization when sim card is not inserted, the SMS commands returned error
- Improved, the accelerometer calibration process, now it doesn't have an strong dependency on GNSS
Apex 21.48.1 (2021-12-03)
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
- Fixed, hotspot - Terminal app change internet source
- Fixed, mobile - Airplane mode, not connecting.
- Fixed, bug with power save mode field validations in Syrus 4 UI
- Fixed, bug with Wifi - Add/Remove networks with spaces
Apex 21.47.1 (2021-11-24)
Recommended SyrusJS version 1.36.0 (Compatible with version 1.34.0 or newer)
- Added, a new functionality in the UI to format the SD card
- Added, an instruction to avoid starting the GNSS configuration routine if the Quectel device is being used.
- Added, supports for configuration files with cipia cameras.
- Added, the destination phone number used by voice call and SMS to the modem status
- Changed, Added the device type to the JSON published through Redis for MDSM7 events.
- Changed, The list that MDSM7 protocol uses is no longer fatigue_mdsm7_events. Now it is ndm_fatigue_events.
- Fixed, Bug in "set" and "status" when an external device is just formatted.
- Fixed, Bug in "timeline" when type is not included in the config file.
- Fixed, Bug in create_clip in "--from --to" mode when one camera doesn’t have a history folder.
- Fixed, Bug in diagnostic messages that did not include the clip name.
- Fixed, the way to get the name of the parent command
- Implements, Cipia-FS10 protocol to parse DMS events and saves videos related to particular DMS events.
- Implements, Mosquitto based clients that will extract data once subscribed to a Mosquitto MQTT broker.
- Improved, Stream pipeline changed for only video.
- Improved, the diagnostic messages when sim card is changed
- Improved, the initialization of the redis service, it includes to set the redis db folder owner
- Improved, the LAC and CID parsing
- Improved, the syrus-mdm app in order for it to not restart so frequently (It causes the gps not to be available during the reset)
- Improved, the UI video section
Apex 21.43.1 (2021-11-04)
Compatible SyrusJS version 1.34.0 or newer
- Improved, video create_clip command and ending videos
- Changed, now appends the name defined in ACCESSORY_TYPE key to the unique ID regardless of the protocol section used if a name is used.
Apex 21.42.1 (2021-10-04)
Compatible SyrusJS version 1.34.0 or newer
- Fixed the ssl issue which caused the Apex OS updates to fail
- Enabled, the validation of the ssl certificate when downloading files for updates
- Added, start-shell and send-message as new options in the syrus-apps-manager tool
- Improved, the BIST modem test
- Improved, the BIST rs232 test
- Added, an option to set the data files structure when device starts for the first time
- Changed, the state key value in the status response; now it is lowercase, it was done in apx-ethernet, apx-wifi, and apx-hotspot tools
- Improved, the mechanism for restarting the SOC when a device is under-provisioning. Microchip 1.0.12
- Added, openssl to Apex OS
- Added, disk cleaner
- Changed, the size of the APEX partitions in order to have more space on the operating system. It is only done on devices provisioned with SD card or Syrprod
- Changed, The UI and the syrus API to support the breaking changes in BT, WIFI, HOTSPOT and ETHERNET sections
- Changed: apx-bt now accepts getopt --long option format arguments.
- Changed: The format of what is printed within the apx-bt help message.
- Implemented: Now can request a list of BLE connected and recently disconnected devices with the new action, apx-bt ble_status.
- Changed: The redis channel from
bluetooth/user_apps_console/MESSAGE
tobluetooth/messages/user_apps_console
. - Changed: The value of call-button to call.
- Changed: The key of button-multiplier to action_multiplier.
- Changed: The key audioroutedto to audio_routed
- Added the mechanism to set apex clock when the OS is shutting down
- Fixed the LAC issue in the json response returned by apx-mdm state
- Implemented: syrus-ndm util_configure_ethernet now uses jsmn to properly identify if eth0 is enabled and if the correct ip is used.
- Added, the Video Streaming mechanism
- Improved, some video mechanisms.
- Added, stream command to notify the core app for a start or stop the streaming.
- Changed, 10 seconds were substracted in apx-video status and apx-video timeline from the "from" key value
- Improved, notify and help in apx-video record command
- Improved, the following apex tools in order them to receive flags; the help section was also changed and now every tool returns its version:
- Improved, the status response returned by apx-hotspot status
- Fixed, a bug in the initialization of video core application when the cameras array was empty in the config file
- Fixed. the streaming state setting bug
- Added, the initialization of disk_cleaner to monitor the video events folder space
- Fixed, some details in the Bluetooth and video UI sections
- Fixed: syrus-ndm util_configure_ethernet now properly handles when the ip field is empty from apx-ethernet status.
- Fixed, dns and gateway were not properly read when returning apx-ethernet status
- Fixed, the MENDER variable that specifies the available space in the root file system partition. It causes the root file system to have more available space
Apex 21.40.1 (2021-10-04) - Latest
Compatible SyrusJS version 1.34.0 or newer
- Due to an SSL incompatibility issue, the following release (21.40.1) was created. To update you must use the following command:
$ apx-os-update force https://syrus4.dctserver.com/apex/releases/apex-21.40.1
- Fixed, apx-video tool was not adding cameras
- Fixed, video application was crashing after removing cameras
- Fixed, the performance issue when BT and Wifi were enabled at the same time
- Decreased: the wl18xx interface clock from 50MHz to 5MHz
- Improved, the way to restore the routing table when an interface becomes available
- Improved, syrus-video diagnostic logs levels
- Fixed, the compability of apx-ecu when it receives arguments
- Removed, the validation of the ssl certificate when downloading the Apex latest version file
- Removed, the validation of the ssl certificate when downloading a syrus cloud script
- Removed, the validation of the ssl certificate when downloading the file that contains the latest version of a customer application
- Added, the mechanism to check the wifi fallback when activated via apx-hotspot tool
- Implemented: syrus-ndm now saves status related information in the Redis hash table video_current_state. The statuses saved are: DISCONNECTED, CONNECTED, and FAILURE_TO_CREATE_SOCKET
- Implemented: syrus-ndm publishes a JSON containing the connection status, the ip from which the device connected from, and the port used to ndm/notification/mdsm7/update whenever mdsm7 connects or disconnects
- Changed: In the JSON published when a syrus-ndm video clip is saved, the value of the key “state” was changed from ready to CLIP_READY
- Changed: The name of the channel used to publish mdsm7 video clips related events is now ndm/notification/mdsm7/event
- Improved, the nodejs start time, it was pre-compiled
- Changed, the apx-wifi tool , now it accepts flags
- Changed, the apx-wifi help information
- Fixed, the error returning SSIDs with spaces at the end
- Added, priority when adding a new wifi network
- Improved, the apx-wifi status option, now it always includes the mac address
- Changed, the apx-hotspot tool, now it accepts flags
- Changed, the apx-hotspot help information
- Added, the apx-hotspot option for starting a wifi fallback
- Changed, the apx-ethernet tool, now it accepts flags
- Changed, the apx-ethernet help information
- Improved, the apx-ethernet status option, now it returns more information
Apex 21.37.2 (2021-09-21) - Latest
Compatible SyrusJS version 1.34.0 or newer
- Improved wifi and bluetooth performance when both modes are in use
- Improved, the way to check internet connection with ppp interface, now it is only tested if the ppp interface is being used
- Added, the way to check if video camera supports audio
- Added, audio to the video clips
- Added, the mechanism to notify that the BT speaker call button was pressed
- Fixed, hostname was not set when IMEI was not available. It happens when apex emmc is flashed
- Fixed, the initialization of always on flag for syrus-watcher
- Added, the integration of dashcam
- APX0038: Improved, the routine to turn the modem on
- Fixed, empty list error on wifi state
- Improved, the value reported for cpu usage, sometimes it reported values above 100%
- Added, config level to the apx-logger
- Fixed, the re initialization of the gstreamer pipeline when it ended abruptly
- Changed, the video application to support the new data structure in video file names
- Changed, the format of the ECU configuration file
- Added, the first version of network device manager. It supports mdsm-7 device for video events
- Added, the apx-ext-memory tool for formatting external storage devices
- Changed, the folder name where video events are stored
- Changed, the UI ecu monitor section in order it to use the ECU monitor component
- Improved, the UI Ethernet section
- Improved, The apex system logs
Apex 21.28.1 (2021-07-14)
- Removed, syrus-buffer-manager and syrus-event-manager
- Added, driver for realtek USB-wifi dongle
- Added, drivers for USB-Bluetooth dongles
- Improved, file browser look and feel in the management tool
- Added, the mechanism for reading ECU parameters in inverse order
- Improved, the multi threading for gstreamer pipelines in syrus-video
- Improved, the mechanism for taking clips in syrus-video
- Fixed, the examples typed in the apx-watcher tool help
Apex 21.25.1 (2021-06-30)
Compatible SyrusJS version 1.32.11 or newer
- Changed, the default time for switching sim card when no connection, it changed from 8 to 4 hours
- Added, the way to change the BT advertise name
- Changed, the default state of BT app, now it starts doing advertising during 5 minutes
- Added to syrus watcher the mechanism for supporting always on connection with syrus cloud
- Added the option for configuring always on flag for syrus watcher application
- Added, the mechanism for restarting the hotspot mode when no clients are connected
- Added, apx-ecu decode option for j1939 diagnostic codes
- Added, ecu definition files for movon and mobileye
- Added, the first version of video application, it includes the history buffer, the creation of video clips and the UI section. This is a BETA version
- Added, apx-video tool
- Added, PSM profile used by syrus cloud
- Added, serial profile used by syrus cloud
- Changed, the range of ip addresses that the hotspot assignates in automatic way. Now it is from 192.168.9.100 to 192.168.9.254. If the user needs to work with static ip address, the user can use from 192.168.9.2 to 192.168.9.99
- Added, gstreamer version 1.18.4
- Reduced, the ping time for fatigue sensor, it changed from 5 to 2 seconds
- Improved, ecu monitor application, now it includes the way to interact with can accesories (movon, mobileye, etc) based on the configuration file
- Added, file browser in the UI section
- Added, the mechanism for switching the network interface when the device losses internet access
- Added, tree to the apex OS
- Added, the motd for the ssh welcome message
- Changed, the look and feel for ssh sessions
- Added, ll as alias for ls -lF
- Improved, the serial modem state response for being used by apx-system full_state
- Increased, the max size of the response returned to syrus cloud, it changed from 2000 to 4000 characters
- Added, the instruction to remove the hash code for geofences files when they are removed
- Added, the instruction to set redis as owner of /data/users/redis after the OS upgrade
Apex 21.17.3 (2021-04-30)
- Added, python3 and nodejs 12
- MDT-001: The first commit of mdt application
- Fixed, the state of the custom applications were not preserved between updates
- Fixed, the format of the json returned by apx-about when an SD card was inserted and it had a folder called root
- Added, mdns to the network configuration to support the network access using the hostname
- Added, the md5 code for configuration files in the apx-system full-state option
- Added, cronie, mdns, gsoap and x264 packages to the Apex OS
- Added, redis monitor to the core instance in order syrus4g user can monitor the redis debug
- Changed, the name and the path for ecumonitor configuration file
- Fixed, a typo in the start/stop option for syrus-apps-manager
- Added: A ping command that is to be used to maintain a keep alive connection between a BLE device and the Syrus 4 unit
- Fixed: J1939 parameter parser now handles the case if there is no space between the value and the ‘:’ delimiter. Without this, ecumonitor would ignore the value and load nothing for the key for the parameter line
- Changed: Ecumonitor no longer uses j1939_params file. Now it uses
ecumonitor.conf
file which is stored in the desktop for syrus4g user. /data/users/syrus4g/ecumonitor - Implemented: Constantly monitors ecumonitor.conf file and on any change done, it will calculate the MD5 hash of the file
- Added, the ability for dispatching events depending on destination points in the event-generator and buffer-manager apps
- Increased, the memory reserved for event-generator app
- Fixed: The algorithm to compute the circular geofences was fixed. It was erroneously reporting the “inside” event.
- Added: MD5 hash code calculation for the geofences files.
- Fixed: Options “count”, “count namespace”, and “getall namespace” were returning the wrong number of geofences when there were namespaces with the same prefix (i.e. test, test3, test4)
- Added: A maximum limit of 20kms for the radius of a circular geofence
- Added: MD5 hash code for the geofences file that are manipulated through the apx-geofences tool
- Increase the size of the namespace for tracking criteria. It was increased from 30 to 60 characters
- Improved, the way to refresh data in the UI mobile section
- Fixed, the json returned by apx-mdm state when the CID starts by 0
- Changed: The name for the onewire white list file. Now they are
ibutton.onewire.conf
andtemperature.onewire.conf
respectively. - Implemented: Saves an MD5 hash of the onewire configuration files when any modification is experienced on any of these files.
- Added, the option for sending data through the serial port
- Increased, the memory reserved for watcher service. Now it is used for synchronizing syrus cloud profiles
Apex 21.12.2 (2021-03-24)
- Added, Bluetooth as destination point and device console
- Changed, the exit code returned by syrus-apps-manager when the application is already installed. Now code 0 is returned
- Added, the cloud state to the device shadow
- Added, syrus-apps-manager option to set a hash code for applications states
- Added, geofences evaluation to event generator
- Added, the way to add a custom script at the end of the apex initialization script
- Fixed, error strings were not returned to syrus cloud console
- Removed, ffmpeg
- Added, lftp
- Added, wvdial
Apex 21.10.4 (2021-03-15)
- Fixed, UI ecu monitor section, some pgn values were not shown
Apex 21.10.2 (2021-03-11)
Compatible SyrusJS version 1.31.7 or newer
- FS-001: Added, all the options to support fatigue_sensor mode
- Fixed, the run cloud script was not returning the exit code
- Added, the first version of syrus-event-generator
- Added, the fisrt version of buffer manager
- Added, the instruction for validating the min apex version when installing an application
- Changed the syrus-apps-manager start/stop options, now it enables and disables the service
- Fixed, big geofences files were not uploaded by using the UI
- Fixed, the tts tool could remain returning audio in progress
- Fixed, the reboot option when it was sent from a remote source, the OS stayed rebooting all the time
- Added, fatigue sensor to the serial section in the UI
- Added, ibutton and temperature on the onewire section in the UI
Apex 21.06.0 (2021-02-10)
- Fixed, syrus-api was returning an error when no applications installed
- Improved, the UI section to edit configuration files and check application logs
- Improved, the port-forwarding tool, add and delete options were included
- Improved, apx-system option to organize the data partition files, it also creates the /data folders structure. The option changed from set_owner to set_data_files
- Fixed, apx-bt was failing to return the current state of the BT interface. It starts failing on apex-21.04
- Added, nano and json-c to the apex OS
- Added, the run-cloud-script tool used for syrus cloud to execute remote scripts
Apex 21.05.0 (2021-02-05)
- Changed, the json key for reporting battery warnings to syrus cloud
- Install the UI as syrus4g user
- Install the syrus-api as syrus4g user
- Added, terminal section in the User interface
- Fixed, the syrus-apps-manager list-instances option
- Changed, redis version from 5 to 6
- Changed, the way to authenticate the redis connection for core applications
- Fixed, documentation about send_sms option in the apx-mdm tool
- Added, a condition for allowing syrus4g user to use systemctl for custom apex apps
- Added, an instruction for allowing syrus4g to use port-forwarding tool
- Added, apx-cfg package for adding some configuration files to apex OS
- Added, syrus-apps-manager package. It is replacing the old apx-apps tool
- Added, an option in the apx-system tool for setting the /data owner for syrus4g files
- Deprecated, apx-apps tool, now it is installed as syrus-apps-manager as part of the syrus-apps package
- Add an script for forwarding ports
- Removed, iptables --flush in order it doesn't clear the port forwarding rules previosly configured
- Changed, net-notifier as apx-tool application
- Added, an instruction for calling the script that organizes the /data partition owner for syrus4g files. It is called when the Apex OS is updated
- Changed, the instruction for setting the custom apps symlinks when the Apex OS is updated
- Removed, [email protected] template and net-notifier from apx-start package
- Add a new package for installing configuration files
Apex 21.03.0 (2021-01-24)
- Implemented: A command to extract the status of the onewire core application. This command is status. Returns JSON with a value of 0 for normal operation and -1 for suspected error in the onewire bus.
- Changed: The add function to properly disregard duplicate onewire devices so that they are not added to the white list.
- Changed: Now the tool forces alias and device IDs to use lower case letters.
- Implemented: A working remove functionality for the tool. This remove allows the tool to remove lines from the whitelist.txt regardless of their position also if the lines are terminated with CR+LF or just LF.
- Changed: The way the reset function works within the tool. Tool now uses systemctl to restart the onewire core application instead of the core application calling systemctl inside itself.
- Implemented: A command that returns the version of both the tool and the core application.
- Changed: The order in which tasks for onewire state machine are done. This is done to avoid missing devices that are already connected to the onewire bus. This is because when loading onewire devices that are already connected when S4 restarts, not all of the connected devices appear in the list of w1_master_slaves. Resulting in missing devices that are connected, but not loaded into the onewire application. Set up for udev is now done before loading devices found in w1_master_slaves.
- Implemented: The utility to call the apx-logger function to announce to SyrusCloud when a possible problem exists on the onewire bus.
- Changed: When S4 restarts and a onewire device that was already connected to the onewire bus is detected again; the original connection epoch doesn’t get overwritten or lost.
- Changed: Made it so that onewire information of the last connected device is saved differently so that the get_last function of the apx-onewire tool no longer depends on the onewire device existing in the white list.
- Changed: Core application now correctly lets the tool restart the application.
- Fixed: There was an issue that caused applications to get stuck in an infinite loop when the maximum number of onewire devices was reached.
- Fixed: Application was not able to search its internal list when the maximum number of onewire devices was reached.
- Added, netcat-openbsd for supporting unit sockets
- Improve, README file in the apex yocto repository
- Added, releases.md document in the apex yocto repository
Apex 21.02.0 (2021-01-14)
- Fixed, the apx-serial modem state response when modem mode is not used
- Improved, the UI mobile section for phone book
- Fixed, the execution of syrus-cloud messages when the message length was greater than 100 characters
- Added, apx-mdm restart command to execute a software reset
- Deprecated, apx-mdm modem_reset command
- Changed, the name of the redis channel used to receive the comand for restarting the modem device
- Added, the redis notifications for publishing changes in the modem state variables
- Added, a routine for updating the NO_CONN_TIME value returned by apx-mdm state command
- Changed, the redis config files for disabling replicaof command
- Added, mobile package to the syrus API
SyrusJS
Fixes
- Fixed some issues on serial interface
Features
- Added support for 82 ECU OBD2 standard parameters
- Added Taip tag JO for jamming detection
- Added support for
>STX<
command to send data from and to Pegasus - Added the following signals and states to interact with the serial interface
# Signals
- @serial.event - Triggered when any data arrives to serial port
- @serial.message - Triggered when a message arrives in console mode
- @mdt.message - Triggered when a mesage arrives in mdt mode
# States
- $serial.mode - The serial mode [ mdt | modem | console ]
- $serial.message - The last arrived console message in string
- $mdt.message - The mdt message string in hexadecimal or asci
Changes
- Removed the Unmanaged serial mode
- Console serial mode now supports Taip and
syrus-apps-manager
commands
Serial interface usage instructions
Make sure to use the latest apx-serial an syrus-serial packages using apx-core install syrus-serial
Serial as destination point
Use this feature to send Taip events to the serial port
# In destinations.syrus.conf add the following destination
define destination serial_destination taip serial://_._ ack=disabled
# Add the serial destination in the configurations.syrus.conf file
set destinations group=tracking pegasus,serial_destination
Send plain data from serial to Pegasus using an event
- Define only one of the following events depending on the serial mode
define event incoming_mdt group=tracking fieldset=default code=91 [email protected]
define event incoming_console group=tracking fieldset=default code=90 [email protected]
- Send some data over the serial interface
hellopegasus
- Watch it arrive to the Pegasus console
"hellopegasus"
Taip over serial
- Enable serial console mode using
apx-serial set --mode=console
- Send taip commands and watch the response
>QPV<
Send data to pegasus using STX
- Use the command STX to send data
>STXsomedata<
- Watch it arrive on the pegasus mdt console and rawdata
"somedata"
Fixes
- CV fieldsets not showing if value = 0
Features
- Added a way to use the serial interface as destination point
- Added support for TAIP commands over the serial interface
Improvements
- Bundled again version using esbuild
Changes
- Unified MDT, Serial modem and Console callbacks.
Serial interface usage instructions
Make sure to use the lastest apx-serial an syrus-serial packages using apx-core install syrus-serial
Serial as destination point
- Use the following script in destinations.syrus.conf:
define destination serial_destination taip serial://_._ ack=disabled
- And add it in configuration.syrus.conf:
set destinations group=tracking pegasus,serial_destination
- Enable the unmanaged serial interface mode
apx-serial set --mode=unmanaged
- See the TAIP events arrive to the serial terminal and send TAIP querys from the terminal
>QPV<
To use the serial as MDT
- Enable the mdt mode
apx-serial set --mode=mdt
- Set a for ascii or x for hexadecimal
apx-serial-mdt set --type=a
To use the serial as a Satcom Modem
- Set the satcom destinations.syrus.conf:
define destination satcom_destination taip satcom://_:_ ack=disable
- And add it in configuration.syrus.conf:
set destinations group=tracking pegasus,satcom_destination
- Enable the modem mode
apx-serial set --mode=modem
To use the serial to send data to the serial but not from the destination
- Enable the user mode
apx-serial set --mode=user
- Send data
apx-serial-user send --msg="somedata"
- Minimum Apex Version: 22.44.1
Fixes
- Fixed TCP acks disabled bug (v1.50.0)
- Fixed a bug with the definition of global counters (v1.49.2)
- Fixed a bug with the unit conversion when setting a counter value (v1.49.2)
- Fixed MQTT transmission error (v1.47.3)
- Fixed caredrive not uploading photo bug (v1.47.3)
- Fixed ble negative temperature bug (v1.47.3)
Added
- Added command for querying the FTP destination (
>QXAFSA<
) (v1.50.0) - Added support for TAIP user signals
>SSSU0XY<
(v1.50.0) - X: User signal number 0-5
- Y: Desired state 1 = true, 0 = false
- when true is sent, it sets
$variables.user_signal_X
= true
- when true is sent, it sets
- virtual ignition support (v1.48.1)
- jamming detection (v1.48.1)
- temperature value from modem (v1.48.1)
- Bluetooth beacons docs (v1.48.1)
- Added bluetooth status update (v1.47.3)
- Added gnss.acceleration.mphs (v1.47.3)
- Added support for ECU warnings (v1.47.3)
- Added Support for BLE Gateway mode (v1.47.3)
Improvements
- Improved the application bundle to be lighter and more optimized
- Improved the geofence state synchronization at startup (v1.50.0)
Changes
- outputs are activated in sequence (v1.48.1)
Added Set/Update commands for counters
# Change/set thresholds settings
set counters globals speed_threshold=30
set counters globals begin_idle_time=2min
set counters globals rpm_threshold=700
# Change counter value
set counters globals odometer=0
set counters globals ignition_time=0
set counters globals idle_time=0
set counters globals over_speed=0
set counters globals hard_brakes=0
set counters globals harsh_fwd_acceleration=0
set counters globals over_rpm=0
set counters globals distance=0
Added BLE Gateway (v1.47.1)
Signals
- @ble.event - Triggered at any ble event
- @ble.(MAC or ALIAS).temperature.change - Triggered when a change in temperature is detected
States
- $ble.(MAC_ADDRESS or ALIAS).mac - Device mac address
- $ble.(MAC_ADDRESS or ALIAS).name - Advertised name
- $ble.(MAC_ADDRESS or ALIAS).alias - Assigned alias
- $ble.(MAC_ADDRESS or ALIAS).timestamp - Scanned time
- $ble.(MAC_ADDRESS or ALIAS).temperature - Reported temperature value in degrees celsius
- $ble.(MAC_ADDRESS or ALIAS).humidity - Reported humidity value in percentage
- $ble.(MAC_ADDRESS or ALIAS).movement - Reported number of movements detected
###### BLE GATEWAY ######
# -- Use apx-ble to add the desired BLE devices and enable continous scanning
# apx-ble add --mac=MAC_ADDRESS --alias=cooler
# apx-ble set --scan_time=60 --enabled=true
# -- Variables definitions
define variable movement
set variable movement 0
define variable temperature
set variable temperature 0
# -- Fieldsets
define fieldset default fields=$io,$ble
# -- Signals - Used previously defined alias "cooler"
define signal sg_hightemp $ble.cooler.temperature > 20
define signal sg_lowtemp $ble.cooler.temperature <= 20
define signal sg_movement $ble.E7973F682A94.movement > movement
# -- Events - trigger only used on the action
define event ev_hightemp group=tracking ack=seq label=hitemp code=70 fieldset=tracking
define event ev_lowtemp group=tracking ack=seq label=lotemp code=71 fieldset=tracking
define event ev_movement group=tracking ack=seq label=mvnt code=72 fieldset=tracking
# -- Actions
define action ac_hightemp trigger=sg_hightemp
set variable temperature {{$ble.cooler.temperature}}
send event ev_hightemp
speak "High temperature detected at {{$variables.cooler.temperature}}"
define action ac_lowtemp trigger=sg_lowtemp
set variable temperature {{$ble.cooler.temperature}}
send event ev_lowtemp
speak "Low temperature detected at {{$variables.cooler.temperature}}"
define action ac_movement trigger=sg_movement
set variable movement {{$ble.E7973F682A94.movement}}
send event ev_movement
speak "Movement detected at {{$variables.E7973F682A94.movement}}"
########################
Added ECU Warnings (v1.47.1)
Signals
- @ecu_warning.event - Triggered at any ecu warning event
- @ecu_warning.(ECU_ID).(ECU_INTERVAL) - Triggered only when the specified interval is reached
##### ECU WARNINGS #####
# -- Signal Use the full description to assign to a signal name
define signal fuel_warning @ecu_warning.fd6e_1-2.delta?time=20&value=100
# -- Event Use the signal name as trigger
define event ev_fuel_warning group=tracking fieldset=default ack=seq label=flwrng code=90 trigger=fuel_warning
########################
- Minimum Apex Version: 22.43.0
- Node JS SDK: 0.67.0
Fixes
- Fixed, engine tire values reported when there's only 1 tire present
- Fixed, queue and repeated tx bug
- Fixed, mqtt transmission error
Additions
- Added gnss.acceleration.mphs
- Added bluetooth status update
- Added more ECU compatible keys with Pegasus
- People counting camera
- Cipia signals for tampering
- Time windows
- Video snapshots
- Safely immobilize the engine docs
Changes
- Changed taip acceleration transmitted from kph/s to mph/s
People counting camera
Added in SyrusJS v1.45.2, requires Apex: 22.43.0
Connect
Develop - Syruslang
Develop - System tool
Signals
Events (oneshot)
@people.adult_enter
@people.adult_exit
@people.children_enter
@people.children_exit
@people.requested
@people.start
@people.stop
@people.restarted
@people.cam_connected
@people.cam_disconnected
@people.daily_report
@people.weekly_report
States
$people.event
$people.adult.enter
$people.adult.exit
$people.children.enter
$people.children.exit
$people.adults_inside
$people.children_inside
$people.global_adult.enter
$people.global_adult.exit
$people.global_children.enter
$people.global_children.exit
#### START PEOPLE COUNTER #####
define signal sg_pc_max $people.adults_inside >= 20
define event ev_pc_enter group=tracking fieldset=default
ack=seq label=pcenter code=60
[email protected]_enter
define event ev_pc_exit group=tracking fieldset=default
ack=seq label=pcexit code=61
[email protected]_exit
define event ev_pc_max group=tracking fieldset=default
ack=seq label=pcmax code=62
trigger=sg_pc_max
#### END PEOPLE COUNTER #####
Cipia signals for tampering
Added in SyrusJS v1.43.7, requires Apex: 22.38.1
- Fixed Queue and repeated tx bug
- Expanded Cipia fatigue sensor signals and events
- Requires updated Cipia and ndm >= 0.4.4 (Cipia 1.0.1.30 or newer & latest apex)
Signals
Events (Oneshot booleans)
@dms.cipia.event
Triggered when any cipia event is detected.@dms.cipia.fatigue_warning
@dms.cipia.fatigue_alarm
@dms.cipia.driver_changed
@dms.cipia.driver_missing
@dms.cipia.distraction
@dms.cipia.driver_identified
@dms.cipia.ignition_off
@dms.cipia.ignition_on
@dms.cipia.phone
@dms.cipia.smoking
@dms.cipia.seatbelt
@dms.cipia.seatbelt_off
@dms.cipia.unknown_driver
@dms.cipia.tamper_alert
@dms.cipia.system_boot
@dms.cipia.system_boot_failure
@dms.cipia.system_ok
@dms.cipia.system_reset
@dms.cipia.system_error.event
Triggered when any error event is reported.@dms.cipia.system_error.emmc_failed
@dms.cipia.system_error.over_exposure
@dms.cipia.system_error.blurred_image
@dms.cipia.system_error.device_not_calibrated
@dms.cipia.system_error.power_lost
@dms.cipia.system_error.mcu_upgrade_ok
@dms.cipia.system_error.device_shifted
@dms.cipia.system_error.cable_disconected
@dms.cipia.system_error.overheat
@dms.cipia.system_error.gps_loss
@dms.cipia.system_error.sdcard_hw_malfunction
States
$fatigue_sensor.photos
$fatigue_sensor.channel
$fatigue_sensor.epoch
$fatigue_sensor.event
$fatigue_sensor.media.system_epoch
$fatigue_sensor.media.event
$fatigue_sensor.media.camera
$fatigue_sensor.media.file.type
$fatigue_sensor.media.file.state
$fatigue_sensor.media.file.path
Time windows
Added in SyrusJS v1.44.0, requires Apex: 22.38.1
Signals
Events (Oneshot booleans)
@windows.name.start
@windows.name.end
States
$windows.name.in
$windows.name.out
###### TIME WINDOWS CONFIG ######
define time_window working_hours
start=01/09/2022 end=30/09/2022
from=08:00:00 to=17:05:30
days=0,1,1,1,1,1,0
enabled=true state=false tz=America/NewYork
# -- Events
define event ev_start group=tracking fieldset=default
ack=seq label=started code=10
define event ev_stop group=tracking fieldset=default
ack=seq label=stopped code=11
define event ev_test group=tracking fieldset=default
ack=seq label=test code=12
# -- Actions
# (Driver state: Working) Wroking shift started
define action start_working [email protected]_hours.start
speak "Working hours started"
send event ev_start
# (Driver state: Resting) Wroking shift ended
define action stop_working [email protected]_hours.end
speak "Working hours stopped"
send event ev_stop
# (Driver state: TestButton) Test current shift time
define action test_hours trigger=$io.in1
speak "Testing time window {{$window.working_hours.state}}"
send event ev_test
###### END TIME WINDOW CONFIG ####
Video snapshots
Added in SyrusJS v1.45.3, requires Apex: 22.43.0
##### START SNAPSHOTS CONFIG #####
# -- Video events (same event different options)
define event ev_tamper group=tracking ack=seq label=tamper code=13 fieldset=tracking
video=$variables.braking_video
photo=$variables.braking_video
camera=MyCameraName
upload=automatic
# -- Video recording action @dms.cipia.tamper_alert
define action ac_braking_video trigger=sg_test
set variable braking_video {{$gnss.timestamp}}-braking
create video --name={{$variables.braking_video}} --time_win=-5,+5 --with_snapshot
send event ev_tamper
##### END SNAPSHOTS CONFIG #####
Safely immobilize the engine
Added in SyrusJS v1.45.0, requires Apex: 22.39.0
Signals
Events (Oneshot booleans)
@seco.event
Trigger when any seco event arrives@seco.enabled
Trigger when the feature mode in enabled (powered ON)@seco.active
Trigger when the feature is waiting for correct moment to realize the engine cut off.@seco.idle
@seco.canceled
User canceled the activation@seco.power_restored
Output has been deactivated or the engine power restored@seco.deactivated
Output has been deactivated or the engine power restored@seco.power_suspended
Output has been activated or the engine power suspended@seco.activated
Output has been activated or the engine power suspended@seco.activating
Waiting for conditions to suspend the engine power (speed < 10kph for 20s)@seco.waiting_no_motion
Waiting for conditions to suspend the engine power (no motion for 5 min)@seco.waiting_for_gps
Safe conditions not met, either motion was detected or vehicle speed is above 10kph@seco.periodic_report
Periodic report, the SECO mechanism is running but waiting for safety conditions
States
$seco.enabled
Safe engine cut off module enabled$seco.active
Safe engine cut off feature actived$seco.state
Number of the current state (see apx-seco help)
Actions
enable seco
Enables the safe engine moduledisable seco
Disables the safe engine modulestart seco
Start safe engine cut off, waiting for conditions for tunrn off motorstop seco
Stop safe engine cut off, enables the motor again
##### START SAFE ENGINE CUT OFF #####
# (Driver state: Cutting motor)
define action test_seco_on trigger=sg_ign_on
speak "Stopping Motor Safetly"
exec apx-seco set --mode=enable
exec apx-seco set --trigger=enable
send event ev_seco_on
# (Driver state: Cutting motor)
define action test_seco_off trigger=sg_ign_off
speak "Starting Again Motor"
exec apx-seco set --trigger=disable
send event ev_seco_off
# (Seco event arrived)
define action test_seco_ev [email protected]
set variable eventNumber {{$seco.state}}
speak "Seco event received {{$variables.eventNumber}}"
#### END SAFE ENGINE CUT OFF #####
v1.43.0
- Minimum Apex Version: 22.23.0
- Node JS SDK: 0.61.2
- Added support for lazy videos
- Fix for GPS Source & Age in TAIP messages
- CSV (feature) - Added support for values with commas like BTT or BTP tags
- Destinations (feature) - Added shortcut path to file destination, use $MEDIA_PATH or $USER_PATH to indicate /media/mmcblk0p1 or /data/users/syrus4g
- Tracking (bug) - Fixed when setting tracking_resolution
- Counters (feature) - Added support for counters based on any signal (count, elapsed time, and traveled distance)
- Variables (feature) - Added support for increment and decrement variables
Expanded Counters Implementation
This feature gives the user a set of variables that accumulate when a certain signal stays true. So far is possible to get:
- Number of times the signal occurred
- Accumulated time (total time) in seconds
- The difference in time since last event
- Traveled distance (total distance) in meters
- The traveled distance since the last event
Signals
States
$counters.name.total_count
Stores number of times a signal becomes true$counters.name.total_time
Stores the total time a signal stays true, stops counting when false$counters.name.time_increment
Stores the time passed while a signal is true, reset count when false$counters.name.total_distance
Stores the total distance traveled while a signal is true, stops counting when false$counters.name.distance_increment
Stores the distance traveled while a signal is true, reset count when false$counters.name.state
Stores the counter state (true when counting)
Actions
start counters name
Start/enable the counting function and listen for change in the selected signalsstop counters name
Stop/disable the counting function, any change in the signals will be ignoredreset counters name
Reset/restart the states values, like total_count, total_time, etc ...
###### START COUNTERS CONFIGURATION ######
# -- Definition - In the definition we relate any signal with the counter name, and start watching the signal (optional)
define counters name signal=sg_in1_on start=true
# -- Fieldsets
define fieldset default fields=$io,$gnss,CV01:$counters.name.total_count,CV02:$counters.name.total_time,CV03:$counters.name.total_distance
# -- Signals
# The signal to keep the count
define signal sg_in1_on $io.in1
define signal sg_in1_off $io.in1 == false
define signal sg_limit $counters.name.total_time >= 60
# -- ACTIONS
# Reset when a minute active has passed
# define action ac_stop_ign trigger=sg_limit reset counters name
# -- Event
define event ev_count_begin group=tracking fieldset=default
ack=seq label=cnt_begin code=200 trigger=sg_in1_on
define event ev_count_end group=tracking fieldset=default
ack=seq label=cnt_end code=201 trigger=sg_in1_off
##### END COUNTERS CONFIGURATION ######
Increment and decrement variables
This feature gives a way to increment or decrement a numeric variable, this is useful if we are just interested in the number of times a certain condition happens, or when we need to create logic for a number of retries
Signals
States
$variables.name
Stores the variable value
Actions
set variable name increment
Increments the variable value by 1set variable name decrement
Decrement the variable value by 1set variable name reset
Set the variable value to 0
##### START VARIABLES CONFIG #####
# -- Definition - Create the variable and initialize it
define variable count
set variable count 0
# -- Signal
define signal sg_in1 $io.in1
define signal count_over $variables.count >= 10
# -- Actions
define action ac_increment trigger=sg_in1 set variable count increment
define action ac_reset trigger=count_over set variable count reset
# -- Event
define event ev_count group=default fieldset=fields label=resttart code=20 trigger=count_over
##### START VARIABLES CONFIG #####
v1.41.0
- Minimum Apex Version: 22.23.0
- Node JS SDK: 0.61.1
- CSV protocol support
- Stores in CSV format any fieldset
- Automatic log rotation
- Just create a destination and select protocol "csv"
define destination log csv file:///media/mmcblk0p1/file_csv
This feature prints into the file those fieldsets that contains data, then starts saving the events. So far, default extra values include "timestamp", "event_label" and "event_code".
##### START CSV LOG CONFIGURATION #####
define group accelerations
# -- Fieldsets
define fieldset default fields=$io,$gnss,$ecu,VO:$counters.globals.odometer,CE:$counters.globals.ignition_time
# -- Events
define event ev_accelog group=accelerations fieldset=default ack=seq label=accelev code=21 [email protected]
# -- Destination
set destinations group=accelerations log
# -- In destinations.syurs.conf select csv protocol ( default compress and rotate every day)
define destination log csv file:///media/mmcblk0p1/file_csv
##### END CSV LOG CONFIG #####
v1.39.1
- Minimum Apex Version: 22.17.1
- Node JS SDK: 0.60.0
Added black box gps event logging
Any file:/// type destination will now automatically log files on a folder that is autorotated and can be compressed based on configuration of the destination.
define destination logs taip file:///media/mmcblk0p1/gps_logs ack=disabled rotate=5D size=10MB compress=true
v1.37.5
- Minimum Apex Version: 22.17.1
- Node JS SDK: 0.58.2
- Fixed, bluetooth restarting syrusjs bug due a bad json
- Fixed, backlog requesting acknowledgement from file destination
- Added support for serial RFID reader
- Added support for serial fuel sensor
RFID Reader
Signals
Events (Oneshot booleans)
@rfid.event
Triggered when any rfid event is detected.@rfid.change
Triggered when the id changed.@rfid.read
Triggered when a card aproach the reader, even if it's the same id.@rfid.authorized
Triggered when the id is whitelisted.@rfid.unauthorized
Triggered when the id is not whitelisted.
States
-
$rfid.last.id
Stores the last id. -
$rfid.last.alias
Stores the last alias. -
$rfid.last.whitelisted
Stores the last whitelisted state (boolean). -
$rfid.last.conn_epoch
Stores the last connection timestamp. -
$rfid.authorized.last.id
Stores the last authorized id. -
$rfid.authorized.last.alias
Stores the last authorized alias. -
$rfid.authorized.last.whitelisted
Stores the last authorized whitelisted state. -
$rfid.authorized.last.conn_epoch
Stores the last authorized connection timestamp.
# Example of event whenever a card is aproached to the reader define fieldset default fields=RI:$fuel.last.id define event ev_rfid group=tracking fieldset=default ack=seq label=rfid [email protected]
TAIP - Extended tag
;RI:$rfid.last.id
Serial Fuel Sensor
Signals
Events (Oneshot booleans)
@fuel.event
Triggered when any fuel event is detected.@fuel.state
Triggered when a state arrives.@fuel.fuelling
or@fuel.fueling
Triggered when a fuelling notification arrives.@fuel.warning
Triggered when a discharge warning notification arrives.@fuel.connected
Triggered when a transition from disconnected to connected is detected.@fuel.disconnected
Triggered when a transition from connected to disconnected is detected.
States
-
$fuel.connected
Stores the last connected state (boolean). -
$fuel.level
Stores the last fuel level (number). -
$fuel.temperature
Stores the last temperature level (number). -
$fuel.frequency
Stores the last frequency (number). -
$fuel.timestamp
Stores the last notification timestamp (epoch). -
$fuel.event
Stores the last event (string).
# Example of event whenever a card is aproached to the reader define fieldset default fields=$fuel define signal sg_fuel_over $fuel.level > 100 define signal sg_fuel_under $fuel.level < 10 define event ev_fuel group=tracking fieldset=default ack=seq label=over trigger=sg_fuel_over define event ev_fuel group=tracking fieldset=default ack=seq label=over trigger=sg_fuel_under
TAIP - Extended tag
;FF
added whenfields=$fuel
v1.36.0 Latest
- Minimum Apex Version: 22.05.3
- Node JS SDK: 0.55.0
Compatible apx core versions
Applications (apps): 0.0.4-r0.1
Bluetooth (bt): 1.1.9-r0.0
Counters (counters): 1.0.6-r0.0
Disk Cleaner (disk): 0.0.3-r0.0
ECU (ecu): 2.0.4-r0.0
Geofences (geofences): 1.0.2-r0.2
GNSS (gps): 1.4.3-r0.0
Interial Measurement Unit (imu): 1.1.2-r0.0
Interface (interface): 1.0.9-r0.1
Modem (mdm): 1.5.3-r0.0
Net Devices Manager (ndm): 0.1.5-r0.0
Onewire (onewire): 1.0.2-r0.0
Serial (serial): 0.2.3-r0.0
Video (video): 0.4.2-r0.1
Watcher (watcher): 0.2.5-r0.5
Safe Engine Immobilization
- added variable
$safe_immo
that is set to true automatically whenever Syrus4 receives the Safe Engine Immobilization command from Pegasus App. You could define a signal based on this variable and trigger your own logic
define signal safe_immo $variables.safe_immo
GPS Backlog
- added support for GPS backlog (second by second event data recording)
Video
- added support for Video clips creation and uploading to backend server, there are two possibilities, either instructing a compatible video camera to capture a video based on a signal and attach it to an event, or the camera itself captures the event and SyrusJS uploads it to the destination server, such as a fatigue camera
Bug fixes
- fixed a bug with the speak instruction, to make it compatible with other Languages rather than English
- fixed a bug with the definition of variables that are not just strings
Changes
- removed verbose logging for tpms tire parameters
- defaults amount of GPS Satellites to 0 instead of leaving value empty
v1.34.1 Latest
- Minimum Apex Version: 21.40.1
- Node JS SDK: 0.54.0
Changes that bump up the Apex version
- Full support of Movon Fatigue Sensor MDSM-7 in Apex-21.40.2 or newer
- Full support of bluetooth destination queuing and ack management using TAIP in Apex-21.40.2 or newer
- Full support of SyrusCloud ECU profile component in Apex-21.42.3 or newer
Compatible apx core versions
Applications (apps): 0.0.2
Bluetooth (bt): 1.1.8
Counters (counters): 1.0.6
ECU (ecu): 2.0.3
Geofences (geofences): 1.0.2
GNSS (gps): 1.3.1
Inertial Measurement Unit (imu): 1.1.1
Interface (interface): 1.0.8
Modem (mdm): 1.3.5-r0.1
Net Devices Manager (ndm): 0.0.8
Onewire (onewire): 1.0.2
Serial (serial): 0.2.2
Video (video): 0.3.18
Watcher (watcher): 0.2.5
Fatigue
- Updated codebase to use new ECU.d structure, fixes an error with taip value for ecu_distance, tag
;OD
- Support for mdsm7 fatigue signals (prefix with
@fatigue_sensor.
or@mdsm7.fatigue_sensor.
) camera_blocked
distraction
fatigue_alarm
fatigue_warning
phone
smoking
# either signal will work
define event fatigue_distraction fieldset=default ack=seq group=fatigue label=distract [email protected]_sensor.distraction
define event fatigue_distraction fieldset=default ack=seq group=fatigue label=distract [email protected]_sensor.distraction
Bluetooth
- BT destination point support
define destination bluetooth_d taip bluetooth://_:_ ack=disabled
- BT call button signals
@bluetooth.button.call_2x
@bluetooth.button.signal
- BT destination points retry indefinitely until apx-bt returns successful, and messages are acknowledged where applicable
Signal, variable and value improvements
set [variable|value] [name] [value]
infers type (true, false, number, string)
set variable new_var "lorem"
or set variable new_var lorem
{{$variables.new_var}} = 'lorem'
set variable new_var "lorem ipsum"
{{$variables.new_var}} = 'lorem ipsum'
set value $gnss.latitude == 25.123456
(works for any non internal signal (non @ signals))
fire signal signal_name
does not require @ as prefix
Changes
;IB
|;IS
: iButton Syrus 3 compatibility fix;EA
: tag temperature field no separator;AW
: tag sends empty value for analog input values instead of*
, changed reported position of differential input1/2 in taip ;AW tag to position 9>SSL...
|>SXAEC::...
: do not requiere an ;ID or ;SI when sent remotely to the device>QSSIP#<
fixed response
>SSLget events<
>SXAEC::apx-gps state<
Other
- http destinations respect url schema
- long commands can be split into multiple lines
- removed verbose logging for tpms tire parameters
define counters globals speed_threshold=100kph
rpm_threshold=3000rpm
begin_idle_time=300sec
odometer=0mts
ignition_time=0mts
define fieldset default
fields=$io,$gnss,$net,$ecu,
VO:$counters.globals.odometer,CE:$counters.globals.ignition_time,
CL:$counters.globals.idle_time,CS:$counters.globals.over_speed,
CR:$counters.globals.over_rpm
define action ac_start_ign_on trigger=sg_ign_on
set tracking_resolution move 3min 35deg
define action ac_start_ign_off trigger=sg_ign_off
set tracking_resolution stop 12hr
- actions can have multiple commands (requires indentation)
define action ac_my_action trigger=ignitionOn
set variable driver "john smith"
set output2 on
create video --name={{$gnss.timestamp}}_cornering_left --time_win=-30,+10
v1.32.11
- Minimum Apex Version: 21.24.1
- Node JS SDK: 0.53.0
Changes
- Improved ack support for TAIP/tcp, supported modes are
imei
(default),disabled
andseq
- ECU Errors, SPI, FMI, OC, SM and MIL supported
- ECU events supports signals, see the respective pgn in the SDK ECU.d
- ECU distance taip tag added missing multiplier
- ECU added taip_multiplier to engine pressure values reported as kPa to convert to PSI
- MOVON and Mobileye support, loaded from internal json files.
- Fixed, queues are loaded in proper order
- Improved callbacks for TCP
v1.31.7
- Minimum Apex Version: 21.10.0
- Node JS SDK: 0.52.0
Fatigue Sensor support
Signals
@fatigue_sensor.fatigue_remind
@fatigue_sensor.fatigue_warning
@fatigue_sensor.fatigue_alarm
@fatigue_sensor.distraction
@fatigue_sensor.no_portrait
@fatigue_sensor.photo
define event fatigue_remind fieldset=defeault ack=seq group=fatigue photo=fatigue_sensor.fatigue_remind label=remind [email protected]_sensor.fatigue_remind
define event fatigue_warning fieldset=defeault ack=seq group=fatigue photo=fatigue_sensor.fatigue_warning label=warning [email protected]_sensor.fatigue_warning
define event fatigue_alarm fieldset=defeault ack=seq group=fatigue photo=fatigue_sensor.fatigue_alarm label=alarm [email protected]_sensor.fatigue_alarm
define event fatigue_distraction fieldset=defeault ack=seq group=fatigue photo=fatigue_sensor.distraction label=distract [email protected]_sensor.distraction
define event fatigue_no_driver fieldset=defeault ack=seq group=fatigue photo=fatigue_sensor.no_portrait label=no_driver [email protected]_sensor.no_portrait
define event fatigue_photo_captured fieldset=defeault ack=seq group=fatigue photo=fatigue_sensor.photo label=photo [email protected]_sensor.photo
MDT support
- @mdt.message signal is required on the trigger to use the message, it's recommended that you do not mix this with other signals
define event mdt group=mdt fieldset=default code=0 [email protected]
- TAIP:
STX
is now reserved for MDT, useSSL
for sending syruslang commands
Bugfixes
false
|true
|Number
are parsed as their respective types, not as strings (eg repeated=false)- min_duration improvements
- improved signal propagation
v1.30.1
- Minimum Apex Version: 21.06.0
- Node JS SDK: 0.51.0
TPMS support
Signals supported
@tpms.alarm_ok
@tpms.sensor_mute
@tpms.sensor_defective
@tpms.tire_leak
@tpms.temperature_warning
@tpms.over_inflation_critical
@tpms.over_inflation_warning
@tpms.under_inflation_warning
@tpms.under_inflation_critical
Updated 9 days ago