Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .github/workflows/compile-sketch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@ on:
push:
branches:
- main
#- pull_request
pull_request:
branches:
- main
workflow_dispatch:


jobs:
Expand Down Expand Up @@ -108,4 +111,3 @@ jobs:

# outputs:
# report-artifact-name: ${{ steps.report-artifact-name.outputs.report-artifact-name }}

1 change: 0 additions & 1 deletion src/sfTk/sfTkISerial.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@

// clang-format off
#include "sfTkError.h"
#include <cstdint>
// clang-format on

/**
Expand Down
1 change: 0 additions & 1 deletion src/sfTk/sfTkISerialBus.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
#include "sfTkError.h"
#include "sfTkIBus.h"
#include "sfTkISerial.h"
#include <cstdint>
// clang-format on

const uint8_t ksfTkBusTypeSerialBus = 0x03;
Expand Down
1 change: 0 additions & 1 deletion src/sfTk/sfTkIUART.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
// clang-format off
#include "sfTkError.h"
#include "sfTkISerial.h"
#include <cstdint>
// clang-format on

// Enums follow the Arduino Serial API constants.
Expand Down
101 changes: 53 additions & 48 deletions src/sfTkArdUART.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
#include <stdarg.h>

#include <Arduino.h>
#include <api/HardwareSerial.h>
#include <HardwareSerial.h>

// clang-format off
#include "sfTkArdUART.h"
Expand All @@ -22,7 +22,7 @@
#include "sfTk/sfTkIUART.h"
// clang-format on

sfTkError_t sfTkArdUART::init(arduino::HardwareSerial &hwSerial, sfTkIUART::UARTConfig_t &config, bool bInit)
sfTkError_t sfTkArdUART::init(HardwareSerial &hwSerial, sfTkIUART::UARTConfig_t &config, bool bInit)
{
_hwSerial = &hwSerial; // set the serial port

Expand All @@ -34,7 +34,7 @@ sfTkError_t sfTkArdUART::init(arduino::HardwareSerial &hwSerial, sfTkIUART::UART
return ksfTkErrOk;
}

sfTkError_t sfTkArdUART::init(arduino::HardwareSerial &hwSerial, uint32_t baudRate, bool bInit)
sfTkError_t sfTkArdUART::init(HardwareSerial &hwSerial, uint32_t baudRate, bool bInit)
{
_hwSerial = &hwSerial; // set the serial port

Expand Down Expand Up @@ -103,7 +103,11 @@ sfTkError_t sfTkArdUART::read(uint8_t *data, size_t length, size_t &bytesRead)

bytesRead = 0; // zero out value

bytesRead = readBytes(data, length);
// #ifdef ARDUINO_ARCH_AVR
bytesRead = _hwSerial->readBytes(data, length);
// #else
// bytesRead = readBytes(data, length);
// #endif

if (bytesRead == 0)
return ksfTkErrFail;
Expand Down Expand Up @@ -179,7 +183,12 @@ sfTkError_t sfTkArdUART::_start(void)
if (_running)
end(); // close the port if already running
// set the config
#ifdef ARDUINO_ARCH_ESP8266
// ESP8266 does not support setting stop bits, parity, and data bits in a stanard manner.
_hwSerial->begin(_config.baudRate);
#else
_hwSerial->begin(_config.baudRate, _config.stopBits | _config.parity | _config.dataBits);
#endif
if (!availableForWrite())
return ksfTkErrSerialNotInit; // check if the port is available
// set the running flag to true
Expand Down Expand Up @@ -241,31 +250,32 @@ unsigned long sfTkArdUART::getTimeout()
return _hwSerial->getTimeout();
}

bool sfTkArdUART::find(const char *target)
#if !defined(ARDUINO_ARCH_AVR) && !defined(ARDUINO_ARCH_ESP8266)
bool sfTkArdUART::find(CONSTVAR char *target)
{
if (!_hwSerial)
return false;

return _hwSerial->find(target);
}

bool sfTkArdUART::find(const uint8_t *target)
bool sfTkArdUART::find(CONSTVAR uint8_t *target)
{
if (!_hwSerial)
return false;

return _hwSerial->find(target);
}

bool sfTkArdUART::find(const char *target, size_t length)
bool sfTkArdUART::find(CONSTVAR char *target, size_t length)
{
if (!_hwSerial)
return false;

return _hwSerial->find(target, length);
}

bool sfTkArdUART::find(const uint8_t *target, size_t length)
bool sfTkArdUART::find(CONSTVAR uint8_t *target, size_t length)
{
if (!_hwSerial)
return false;
Expand All @@ -281,53 +291,71 @@ bool sfTkArdUART::find(char target)
return _hwSerial->find(target);
}

bool sfTkArdUART::findUntil(const char *target, const char *terminator)
bool sfTkArdUART::findUntil(CONSTVAR char *target, CONSTVAR char *terminator)
{
if (!_hwSerial)
return false;

return _hwSerial->findUntil(target, terminator);
}

bool sfTkArdUART::findUntil(const uint8_t *target, const char *terminator)
bool sfTkArdUART::findUntil(CONSTVAR uint8_t *target, CONSTVAR char *terminator)
{
if (!_hwSerial)
return false;

return _hwSerial->findUntil(target, terminator);
}

bool sfTkArdUART::findUntil(const char *target, size_t targetLen, const char *terminate, size_t termLen)
bool sfTkArdUART::findUntil(CONSTVAR char *target, size_t targetLen, CONSTVAR char *terminate, size_t termLen)
{
if (!_hwSerial)
return false;

return _hwSerial->findUntil(target, targetLen, terminate, termLen);
}

bool sfTkArdUART::findUntil(const uint8_t *target, size_t targetLen, const char *terminate, size_t termLen)
bool sfTkArdUART::findUntil(CONSTVAR uint8_t *target, size_t targetLen, CONSTVAR char *terminate, size_t termLen)
{
if (!_hwSerial)
return false;

return _hwSerial->findUntil(target, targetLen, terminate, termLen);
}

long sfTkArdUART::parseInt(arduino::LookaheadMode lookahead, char ignore)
#ifdef ARDUINO_ARCH_ESP8266
long sfTkArdUART::parseInt()
{
if (!_hwSerial)
return 0;

return _hwSerial->parseInt();
}

float sfTkArdUART::parseFloat()
{
if (!_hwSerial)
return 0.0f;

return _hwSerial->parseFloat();
}
#else
long sfTkArdUART::parseInt(LookaheadMode lookahead, char ignore)
{
if (!_hwSerial)
return 0;

return _hwSerial->parseInt(lookahead, ignore);
}

float sfTkArdUART::parseFloat(arduino::LookaheadMode lookahead, char ignore)
float sfTkArdUART::parseFloat(LookaheadMode lookahead, char ignore)
{
if (!_hwSerial)
return 0.0f;

return _hwSerial->parseFloat(lookahead, ignore);
}
#endif

size_t sfTkArdUART::readBytes(char *buffer, size_t length)
{
Expand Down Expand Up @@ -361,18 +389,18 @@ size_t sfTkArdUART::readBytesUntil(char terminator, uint8_t *buffer, size_t leng
return _hwSerial->readBytesUntil(terminator, buffer, length);
}

arduino::String sfTkArdUART::readString()
String sfTkArdUART::readString()
{
if (!_hwSerial)
return arduino::String("");
return String("");

return _hwSerial->readString();
}

arduino::String sfTkArdUART::readStringUntil(char terminator)
String sfTkArdUART::readStringUntil(char terminator)
{
if (!_hwSerial)
return arduino::String("");
return String("");

return _hwSerial->readStringUntil(terminator);
}
Expand All @@ -381,15 +409,15 @@ arduino::String sfTkArdUART::readStringUntil(char terminator)
* @brief Print mappings
*
*/
size_t sfTkArdUART::print(const arduino::__FlashStringHelper *ifsh)
size_t sfTkArdUART::print(const __FlashStringHelper *ifsh)
{
if (!_hwSerial)
return 0;

return _hwSerial->print(ifsh);
}

size_t sfTkArdUART::print(const arduino::String &s)
size_t sfTkArdUART::print(const String &s)
{
if (!_hwSerial)
return 0;
Expand Down Expand Up @@ -477,23 +505,23 @@ size_t sfTkArdUART::print(double n, int digits)
return _hwSerial->print(n, digits);
}

size_t sfTkArdUART::print(const arduino::Printable &x)
size_t sfTkArdUART::print(const Printable &x)
{
if (!_hwSerial)
return 0;

return _hwSerial->print(x);
}

size_t sfTkArdUART::println(const arduino::__FlashStringHelper *ifsh)
size_t sfTkArdUART::println(const __FlashStringHelper *ifsh)
{
if (!_hwSerial)
return 0;

return _hwSerial->println(ifsh);
}

size_t sfTkArdUART::println(const arduino::String &s)
size_t sfTkArdUART::println(const String &s)
{
if (!_hwSerial)
return 0;
Expand Down Expand Up @@ -581,7 +609,7 @@ size_t sfTkArdUART::println(double n, int digits)
return _hwSerial->println(n, digits);
}

size_t sfTkArdUART::println(const arduino::Printable &x)
size_t sfTkArdUART::println(const Printable &x)
{
if (!_hwSerial)
return 0;
Expand All @@ -596,27 +624,4 @@ size_t sfTkArdUART::println(void)

return _hwSerial->println();
}

size_t sfTkArdUART::printf(const char *format, ...)
{
if (!_hwSerial)
return 0;

va_list argptr;
va_start(argptr, format);
size_t retVal = _hwSerial->printf(format, argptr);
va_end(argptr);
return retVal;
}

size_t sfTkArdUART::printf_P(const char *format, ...)
{
if (!_hwSerial)
return 0;

va_list argptr;
va_start(argptr, format);
size_t retVal = _hwSerial->printf_P(format, argptr);
va_end(argptr);
return retVal;
}
#endif
Loading