| 
    MRMS
    
   | 
 
  
Public Member Functions | |
| Mrm_lid_can_b2 (Robot *robot=NULL, uint8_t maxDevices=12) | |
| void | add (char *deviceName=(char *)"") | 
| void | calibration (uint8_t deviceNumber=0) | 
| void | defaults (uint8_t deviceNumber=0xFF) | 
| void | distanceMode (uint8_t deviceNumber, bool isShort=true) | 
| void | measurementTime (uint8_t deviceNumber, uint16_t ms=100) | 
| bool | messageDecode (uint32_t canId, uint8_t data[8]) | 
| uint16_t | reading (uint8_t deviceNumber=0) | 
| void | readingsPrint () | 
| void | roi (uint8_t deviceNumber, uint8_t x=16, uint8_t y=16) | 
| void | test () | 
| void | timingBudget (uint8_t deviceNumber, uint16_t ms=100) | 
  Public Member Functions inherited from SensorBoard | |
| SensorBoard (Robot *robot, uint8_t devicesOnABoard, const char *boardName, uint8_t maxNumberOfBoards, BoardId id) | |
| void | continuousReadingCalculatedDataStart (uint8_t deviceNumber=0xFF) | 
  Public Member Functions inherited from Board | |
| Board (Robot *robot, uint8_t maxNumberOfBoards, uint8_t devicesOnABoard, const char *boardName, BoardType boardType, BoardId id) | |
| void | add (char *deviceName, uint16_t canIn, uint16_t canOut) | 
| bool | alive (uint8_t deviceNumber=0, bool checkAgainIfDead=false, bool errorIfNotAfterCheckingAgain=false) | 
| uint8_t | count () | 
| void | aliveSet (bool yesOrNo, uint8_t deviceNumber=0) | 
| BoardType | boardType () | 
| uint8_t | deadOrAliveCount () | 
| uint8_t | devicesOnASingleBoard () | 
| uint8_t | devicesMaximumNumberInAllBoards () | 
| uint8_t | devicesScan (bool verbose=true, uint16_t mask=0xFFFF) | 
| uint8_t | errorCodeLast () | 
| uint8_t | errorWasInDeviceNumber () | 
| void | firmwareRequest (uint8_t deviceNumber=0xFF) | 
| uint16_t | fps (uint8_t deviceNumber=0) | 
| void | fpsDisplay () | 
| void | fpsRequest (uint8_t deviceNumber=0xFF) | 
| BoardId | id () | 
| void | idChange (uint16_t newDeviceNumber, uint8_t deviceNumber=0) | 
| void | info (uint8_t deviceNumber=0xFF) | 
| bool | isForMe (uint32_t canIdOut, uint8_t deviceNumber) | 
| bool | isFromMe (uint32_t canIdOut, uint8_t deviceNumber) | 
| uint32_t | lastMessageMs (uint8_t deviceNumber=0) | 
| bool | messagePrint (uint32_t msgId, uint8_t dlc, uint8_t *data, bool outbound) | 
| ** Prints a frame  More... | |
| void | messageSend (uint8_t *data, uint8_t dlc, uint8_t deviceNumber=0) | 
| char * | name (uint8_t deviceNumber) | 
| char * | name () | 
| void | notificationRequest (uint8_t commandRequestingNotification, uint8_t deviceNumber) | 
| void | oscillatorTest (uint8_t deviceNumber=0xFF) | 
| void | reset (uint8_t deviceNumber=0xFF) | 
| void | start (uint8_t deviceNumber=0xFF, uint8_t measuringModeNow=0, uint16_t refreshMs=0) | 
| void | swap (uint8_t deviceNumber1, uint8_t deviceNumber2) | 
| void | stop (uint8_t deviceNumber=0xFF) | 
| virtual void | test (uint8_t deviceNumber=0xFF, uint16_t betweenTestsMs=0) | 
Additional Inherited Members | |
  Protected Member Functions inherited from Board | |
| bool | messageDecodeCommon (uint32_t canId, uint8_t data[8], uint8_t deviceNumber=0) | 
  Protected Attributes inherited from Board | |
| uint32_t | _alive | 
| bool | _aliveReport = false | 
| char | _boardsName [12] | 
| BoardType | _boardType | 
| uint8_t | canData [8] | 
| uint8_t | devicesOnABoard | 
| uint8_t | errorCode = 0 | 
| uint8_t | errorInDeviceNumber = 0 | 
| std::vector< uint16_t > * | fpsLast | 
| BoardId | _id | 
| std::vector< uint32_t > * | idIn | 
| std::vector< uint32_t > * | idOut | 
| std::vector< uint32_t > * | lastMessageReceivedMs | 
| std::vector< uint32_t > * | _lastReadingMs | 
| uint8_t | maximumNumberOfBoards | 
| uint8_t | measuringMode = 0 | 
| uint8_t | measuringModeLimit = 0 | 
| uint8_t | _message [29] | 
| std::vector< char[10]> * | _name | 
| int | nextFree | 
| Robot * | robotContainer | 
Constructor
| robot | - robot containing this board | 
| esp32CANBusSingleton | - a single instance of CAN Bus common library for all CAN Bus peripherals. | 
| hardwareSerial | - Serial, Serial1, Serial2,... - an optional serial port, for example for Bluetooth communication | 
Constructor
| robot | - robot containing this board | 
| esp32CANBusSingleton | - a single instance of CAN Bus common library for all CAN Bus peripherals. | 
| hardwareSerial | - Serial, Serial1, Serial2,... - an optional serial port, for example for Bluetooth communication | 
| maxNumberOfBoards | - maximum number of boards | 
| void Mrm_lid_can_b2::add | ( | char * | deviceName = (char*)"" | ) | 
Add a mrm-ref-can sensor
| deviceName | - device's name | 
Add a mrm-lid-can-b device
| deviceName | - device's name | 
| void Mrm_lid_can_b2::calibration | ( | uint8_t | deviceNumber = 0 | ) | 
Calibration, only once after production
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. | 
| void Mrm_lid_can_b2::defaults | ( | uint8_t | deviceNumber = 0xFF | ) | 
Reset sensor's non-volatile memory to defaults (distance mode, timing budget, region of interest, and measurement time, but leaves CAN Bus id intact
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. 0xFF - resets all. | 
| void Mrm_lid_can_b2::distanceMode | ( | uint8_t | deviceNumber, | 
| bool | isShort = true  | 
        ||
| ) | 
Distance mode. Short mode has better ambient light immunity but the maximum distance is limited to 1.3 m. Long distance ranges up to 4 m but is less performant under ambient light. Stored in sensors non-volatile memory. Allow 50 ms for flash to be written.
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. | 
| isShort | - if not short, long. | 
Measurement time (IMP) in ms. IMP must be >= TB. Probably the best value is IMP = TB. Stored in sensors non-volatile memory. Allow 50 ms for flash to be written.
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. | 
| ms | - default 100. | 
Read CAN Bus message into local variables
| canId | - CAN Bus id | 
| data | - 8 bytes from CAN Bus message. | 
Read CAN Bus message into local variables
| canId | - CAN Bus id | 
| data | - 8 bytes from CAN Bus message. | 
Reimplemented from SensorBoard.
Analog readings
| receiverNumberInSensor | - single IR transistor in mrm-ref-can | 
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. | 
Analog readings
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. | 
| void Mrm_lid_can_b2::readingsPrint | ( | ) | 
Print all readings in a line
ROI, region of interest, a matrix from 4x4 up to 16x16 (x, y). Smaller x and y - smaller view angle. Stored in sensors non-volatile memory. Allow 50 ms for flash to be written.
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. | 
| x | - default 16. | 
| y | - default 16. | 
| void Mrm_lid_can_b2::test | ( | ) | 
Test
Timing budget (TB) in ms. TB improves the measurement reliability but increases power consumption. Stored in sensors non-volatile memory. Set before measurement time as measurement time checks this value and returns error if not appropriate. Allow 50 ms for flash to be written.
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. | 
| ms | - (TB) in ms possible values [20, 50, 100, 200, 500]. Default 100. |