Logging improvements
This commit is contained in:
@@ -1,15 +1,19 @@
|
||||
#include "../../include/main.h"
|
||||
#include "Nmea2kTwai.h"
|
||||
#include "driver/gpio.h"
|
||||
#include "driver/twai.h"
|
||||
|
||||
#define LOGID(id) ((id >> 8) & 0x1ffff)
|
||||
|
||||
// Logging
|
||||
static const char* TAG = "TWAI";
|
||||
|
||||
static const int TIMEOUT_OFFLINE = 256; // number of timeouts to consider offline
|
||||
|
||||
Nmea2kTwai::Nmea2kTwai(gpio_num_t _TxPin, gpio_num_t _RxPin, unsigned long recP, unsigned long logP):
|
||||
tNMEA2000(), RxPin(_RxPin), TxPin(_TxPin)
|
||||
{
|
||||
if (RxPin < 0 || TxPin < 0){
|
||||
if (RxPin < 0 || TxPin < 0) {
|
||||
disabled = true;
|
||||
} else {
|
||||
// timers.addAction(logP,[this](){ logStatus(); });
|
||||
@@ -27,32 +31,34 @@ bool Nmea2kTwai::CANSendFrame(unsigned long id, unsigned char len, const unsigne
|
||||
message.identifier = id;
|
||||
message.extd = 1;
|
||||
message.data_length_code = len;
|
||||
memcpy(message.data, buf,len);
|
||||
memcpy(message.data, buf, len);
|
||||
esp_err_t rt = twai_transmit(&message, 0);
|
||||
if (rt != ESP_OK){
|
||||
if (rt != ESP_OK) {
|
||||
if (rt == ESP_ERR_TIMEOUT) {
|
||||
if (txTimeouts < TIMEOUT_OFFLINE) txTimeouts++;
|
||||
if (txTimeouts < TIMEOUT_OFFLINE) {
|
||||
txTimeouts++;
|
||||
}
|
||||
}
|
||||
// logDebug(LOG_MSG,"twai transmit for %ld failed: %x",LOGID(id),(int)rt);
|
||||
LOGW(TAG, "twai transmit for %ld failed: %x", LOGID(id), (int)rt);
|
||||
return false;
|
||||
}
|
||||
txTimeouts = 0;
|
||||
// logDebug(LOG_MSG,"twai transmit id %ld, len %d",LOGID(id),(int)len);
|
||||
LOGD(TAG, "twai transmit id %ld, len %d", LOGID(id), (int)len);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Nmea2kTwai::CANOpen()
|
||||
{
|
||||
if (disabled){
|
||||
// logDebug(LOG_INFO,"CAN disabled");
|
||||
if (disabled) {
|
||||
LOGD(TAG, "CAN disabled");
|
||||
return true;
|
||||
}
|
||||
esp_err_t rt = twai_start();
|
||||
if (rt != ESP_OK){
|
||||
// logDebug(LOG_ERR,"CANOpen failed: %x",(int)rt);
|
||||
if (rt != ESP_OK) {
|
||||
LOGE(TAG, "CANOpen failed: %x", (int)rt);
|
||||
return false;
|
||||
} else {
|
||||
// logDebug(LOG_INFO, "CANOpen ok");
|
||||
LOGI(TAG, "CANOpen ok");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -73,10 +79,11 @@ bool Nmea2kTwai::CANGetFrame(unsigned long &id, unsigned char &len, unsigned cha
|
||||
id = message.identifier;
|
||||
len = message.data_length_code;
|
||||
if (len > 8) {
|
||||
// logDebug(LOG_DEBUG,"twai: received invalid message %lld, len %d",LOGID(id),len);
|
||||
LOGD(TAG, "twai: received invalid message %lld, len %d", LOGID(id), len);
|
||||
len = 8;
|
||||
}
|
||||
// logDebug(LOG_MSG,"twai rcv id=%ld,len=%d, ext=%d",LOGID(message.identifier),message.data_length_code,message.extd);
|
||||
LOGD(TAG, "twai rcv id=%ld,len=%d, ext=%d",
|
||||
LOGID(message.identifier), message.data_length_code, message.extd);
|
||||
if (! message.rtr) {
|
||||
memcpy(buf, message.data, message.data_length_code);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user