==== GetSystemItem ==== Fetch the value of a given system parameter === Description === GetSystemItem( item ) Returns the value of a given system parameter === Parameters === | ''item'' | The system item to return (see below) | ^ Parameter ^ Description ^ | ''SYSITEM_GPSX'' | GPS latitude in degrees x 106| | ''SYSITEM_GPSY'' | GPS longitude in degrees x 106 | | ''SYSITEM_GPSZ'' | GPS elevation in meters x 10 | | ''SYSITEM_GPSSIGNAL'' | Received signal level from GPS | | ''SYSITEM_UPTIME'' | Number of seconds since last restart | | ''SYSITEM_CELLINHIBIT'' | 0=normal operation. >0 cellular modem is off, remaining seconds | | ''SYSITEM_RSSI'' | Received signal level for cellular modem (0=no signal. 31=max signal strength) | | ''SYSITEM_ETHLINK'' | 0=No Ethernet connection. 1=Ethernet connection detected | | ''SYSITEM_ETHCONN'' | 0=Not using Ethernet connection. 1=Using Ethernet connection | | ''SYSITEM_CELLCONN'' | 0=Not using cellular connection. 1=Using cellular connection | | ''SYSITEM_GPSLOCK'' | 0=No current GPS position. 1=GPS position current | | ''SYSITEM_YEAR'' | Real time clock, year | | ''SYSITEM_MONTH'' | Real time clock, month | | ''SYSITEM_DAY'' | Real time clock, day | | ''SYSITEM_WDAY'' | Real time clock, weekday (0=Sunday, 6=Saturday) | | ''SYSITEM_YDAY'' | Real time clock, day of year | | ''SYSITEM_HOUR'' | Real time clock, hour | | ''SYSITEM_MINUTE'' | Real time clock, minutes | | ''SYSITEM_SECOND'' | Real time clock, seconds | | ''SYSITEM_EPOCH'' | Real time clock, Epoch (number of seconds since 1970-01-01) | | ''SYSITEM_RND'' | Random number | | ''SYSITEM_OUT3RCPWM'' | Output 3 mode (0=0-100%, 1=1-2ms servo) | | ''SYSITEM_RESETCAUSE'' | Cause of last hardware reset, bitmap or RESETCAUSE flags defined below | | ''SYSITEM_SCRIPT_RESETCAUSE'' | Cause of last script restart, current script (see below) | | ''SYSITEM_HIBERNATE'' | Nonzero if running as part of sleep cycle | | ''SYSITEM_EXPn'' | ezeio-CAN Expander status (0=no comm, 1=comm ok), where n=1 through 7 | == Flags returned by SYSITEM_RESETCAUSE == ^ constant ^ meaning ^ | RESETCAUSE_EXT | Any external reset | | RESETCAUSE_POR | Board was powered on | | RESETCAUSE_BOR | Board detected brown-out (voltage dip) | | RESETCAUSE_BOR | Software caused the reset | | RESETCAUSE_WDOG | Internal watchdog caused the reset | | RESETCAUSE_HIB | Board woke up from hibernation | == Flags returned by SYSITEM_SCRIPT_RESETCAUSE == ^ constant ^ meaning ^ | SCRIPT_BOOT | Script started due to board reset | | SCRIPT_ERROR | Script restarted due to script error | | SCRIPT_USER | Script restarted by user | | SCRIPT_CHANGE | Script restarted due to config change | | SCRIPT_BUTTON | Script restarted with hardware button | === Return value === Depends on parameter requested. See above. === Example usage === new x; x = GetSystemItem(SYSITEM_YEAR); // x is now 2019 (as of this writing) if( GetSystemItem( SYSITEM_RESETCAUSE ) & RESETCAUSE_HIB ) { // this code will run if board came back from a hibernation cycle }