TinyTrainable
 
Loading...
Searching...
No Matches
TinyTrainable Class Reference

TinyTrainable base class. More...

#include <TinyTrainable.h>

Public Member Functions

 TinyTrainable (InputType inputType, OutputType outputType)
 TinyTrainable constructor.
 
 ~TinyTrainable ()
 TinyTrainable destructor.
 
template<typename T >
void debugPrint (T message)
 
void setupInstrument (bool serialDebugging)
 setup debugging
 
void setupLEDs ()
 initialize LEDs of Arduino
 
void setStateLEDBuiltIn (bool turnOn)
 set state of LED built-in
 
void setStateLEDRGB (bool turnOn, Colors color)
 set state of LED RGB
 
void blinkLEDBuiltIn (int blinks)
 blink LED built-in
 
void blinkLEDRGB (int blinks, Colors color)
 blink LED RGB
 
void identify ()
 input, identify class
 
void trainKNN (int k, int examplesPerClass, String objects[3])
 input color, train KNN algorithm
 
void setupGestureModel (String gestures[3], const unsigned char *model=nullptr)
 input gesture, setup TensorFlow model
 
void gesturePrintHeader ()
 input gesture, print header for database
 
void gestureReadData ()
 input gesture, read data for database
 
void gestureSetAcceleration (float newVal)
 input gesture, sets custom acceleration threshold
 
void gestureSetNumberSamples (int newVal)
 input gesture, sets custom number of samples
 
void setupSpeechModel (String sounds[3], const unsigned char *model=nullptr)
 input speech, setup TensorFlow model
 
void setupOutputTest ()
 output, test if it is working
 
void playOutput (int classification)
 output, react to classification
 
void setupOutputBuzzer (int outputPin)
 
void getBuzzerParam (int object, int buzzerParamArray[])
 
void setBuzzerFrequency (int object, int frequency)
 
void setBuzzerFrequency (int object, int freqMin, int freqMax)
 
void setBuzzerFrequency (int object, int *arrayFrequencies, int arrayFreqCount)
 
void setBuzzerDuration (int object, int duration)
 
void setBuzzerDuration (int object, int durationMin, int durationMax)
 
void setBuzzerDuration (int object, int *arrayDurations, int arrayDurationCount)
 
void setupOutputLED (int object, int outputPin)
 
void setupOutputMIDI (byte midiChannel)
 
void setMIDINote (int object, int note)
 
void sendMIDINoteOn (byte channel, byte note, byte velocity)
 
void sendMIDINoteOff (byte channel, byte note)
 
void sendMIDIAllNotesOff (byte channel)
 
void setupOutputPrinter ()
 
void setPrinterBaudRate (int rate)
 
void setPrinterBegin ()
 
void setPrinterPause (int pause)
 
void setPrinterSleep ()
 
void setPrinterWake ()
 
void setPrinterTest ()
 
void setupOutputScreen ()
 
void screenDrawWelcome ()
 
void setupOutputSerial ()
 
void setupOutputServo (int outputPin)
 
void setServoTempo (int object, int tempo)
 
int bpmToMs (int tempo)
 
void setServoMaxAngle (int angle)
 
void setServoMinAngle (int angle)
 
int getServoMaxAngle ()
 
int getServoMinAngle ()
 
void moveServo (int classification)
 

Static Public Attributes

static bool _serialDebugging = false
 pin for output
 
static int _baudRate = 9600
 static integer, baud rate for serial communication
 
static int _timeBlinkLED = 500
 static integer, time for blinking LED
 

Protected Attributes

InputmyInput = nullptr
 Input pointer.
 
OutputmyOutput = nullptr
 Output pointer.
 

Detailed Description

TinyTrainable base class.

Constructor & Destructor Documentation

◆ TinyTrainable()

TinyTrainable::TinyTrainable ( InputType  inputType,
OutputType  outputType 
)

TinyTrainable constructor.

constructor

Parameters
InputType
OutputType

◆ ~TinyTrainable()

TinyTrainable::~TinyTrainable ( )

TinyTrainable destructor.

destructor

Member Function Documentation

◆ blinkLEDBuiltIn()

void TinyTrainable::blinkLEDBuiltIn ( int  blinks)

blink LED built-in

Parameters
blinksinteger, number of blinks

◆ blinkLEDRGB()

void TinyTrainable::blinkLEDRGB ( int  blinks,
Colors  color 
)

blink LED RGB

Parameters
blinksinteger, number of blinks

◆ bpmToMs()

int TinyTrainable::bpmToMs ( int  tempo)

◆ debugPrint()

template<typename T >
void TinyTrainable::debugPrint ( message)
inline

◆ gesturePrintHeader()

void TinyTrainable::gesturePrintHeader ( )

input gesture, print header for database

◆ gestureReadData()

void TinyTrainable::gestureReadData ( )

input gesture, read data for database

◆ gestureSetAcceleration()

void TinyTrainable::gestureSetAcceleration ( float  newVal)

input gesture, sets custom acceleration threshold

◆ gestureSetNumberSamples()

void TinyTrainable::gestureSetNumberSamples ( int  newVal)

input gesture, sets custom number of samples

◆ getBuzzerParam()

void TinyTrainable::getBuzzerParam ( int  object,
int  buzzerParamArray[] 
)

◆ getServoMaxAngle()

int TinyTrainable::getServoMaxAngle ( )

◆ getServoMinAngle()

int TinyTrainable::getServoMinAngle ( )

◆ identify()

void TinyTrainable::identify ( )

input, identify class

◆ moveServo()

void TinyTrainable::moveServo ( int  classification)

◆ playOutput()

void TinyTrainable::playOutput ( int  classification)

output, react to classification

◆ screenDrawWelcome()

void TinyTrainable::screenDrawWelcome ( )

◆ sendMIDIAllNotesOff()

void TinyTrainable::sendMIDIAllNotesOff ( byte  channel)

◆ sendMIDINoteOff()

void TinyTrainable::sendMIDINoteOff ( byte  channel,
byte  note 
)

◆ sendMIDINoteOn()

void TinyTrainable::sendMIDINoteOn ( byte  channel,
byte  note,
byte  velocity 
)

◆ setBuzzerDuration() [1/3]

void TinyTrainable::setBuzzerDuration ( int  object,
int *  arrayDurations,
int  arrayDurationCount 
)

◆ setBuzzerDuration() [2/3]

void TinyTrainable::setBuzzerDuration ( int  object,
int  duration 
)

◆ setBuzzerDuration() [3/3]

void TinyTrainable::setBuzzerDuration ( int  object,
int  durationMin,
int  durationMax 
)

◆ setBuzzerFrequency() [1/3]

void TinyTrainable::setBuzzerFrequency ( int  object,
int *  arrayFrequencies,
int  arrayFreqCount 
)

◆ setBuzzerFrequency() [2/3]

void TinyTrainable::setBuzzerFrequency ( int  object,
int  freqMin,
int  freqMax 
)

◆ setBuzzerFrequency() [3/3]

void TinyTrainable::setBuzzerFrequency ( int  object,
int  frequency 
)

◆ setMIDINote()

void TinyTrainable::setMIDINote ( int  object,
int  note 
)

◆ setPrinterBaudRate()

void TinyTrainable::setPrinterBaudRate ( int  rate)

◆ setPrinterBegin()

void TinyTrainable::setPrinterBegin ( )

◆ setPrinterPause()

void TinyTrainable::setPrinterPause ( int  pause)

◆ setPrinterSleep()

void TinyTrainable::setPrinterSleep ( )

◆ setPrinterTest()

void TinyTrainable::setPrinterTest ( )

◆ setPrinterWake()

void TinyTrainable::setPrinterWake ( )

◆ setServoMaxAngle()

void TinyTrainable::setServoMaxAngle ( int  angle)

◆ setServoMinAngle()

void TinyTrainable::setServoMinAngle ( int  angle)

◆ setServoTempo()

void TinyTrainable::setServoTempo ( int  object,
int  tempo 
)

◆ setStateLEDBuiltIn()

void TinyTrainable::setStateLEDBuiltIn ( bool  turnOn)

set state of LED built-in

Parameters
turnOnboolean, on/off

◆ setStateLEDRGB()

void TinyTrainable::setStateLEDRGB ( bool  turnOn,
Colors  color 
)

set state of LED RGB

Parameters
turnOnboolean, on/off
colorColor

◆ setupGestureModel()

void TinyTrainable::setupGestureModel ( String  gestures[3],
const unsigned char *  model = nullptr 
)

input gesture, setup TensorFlow model

input gesture, setup TensorFlow

◆ setupInstrument()

void TinyTrainable::setupInstrument ( bool  serialDebugging)

setup debugging

method for initial setup

Parameters
serialDebuggingto toggle serial debugging on/off
serialDebuggingto output or not debug info over serial

◆ setupLEDs()

void TinyTrainable::setupLEDs ( )

initialize LEDs of Arduino

◆ setupOutputBuzzer()

void TinyTrainable::setupOutputBuzzer ( int  outputPin)

◆ setupOutputLED()

void TinyTrainable::setupOutputLED ( int  object,
int  outputPin 
)

◆ setupOutputMIDI()

void TinyTrainable::setupOutputMIDI ( byte  midiChannel)

◆ setupOutputPrinter()

void TinyTrainable::setupOutputPrinter ( )

◆ setupOutputScreen()

void TinyTrainable::setupOutputScreen ( )

◆ setupOutputSerial()

void TinyTrainable::setupOutputSerial ( )

◆ setupOutputServo()

void TinyTrainable::setupOutputServo ( int  outputPin)

◆ setupOutputTest()

void TinyTrainable::setupOutputTest ( )

output, test if it is working

◆ setupSpeechModel()

void TinyTrainable::setupSpeechModel ( String  sounds[3],
const unsigned char *  model = nullptr 
)

input speech, setup TensorFlow model

◆ trainKNN()

void TinyTrainable::trainKNN ( int  k,
int  examplesPerClass,
String  objects[3] 
)

input color, train KNN algorithm

Parameters
kint, for KNN
examplesPerClassint, examples per class
objects[]String array, names of classes

Member Data Documentation

◆ _baudRate

int TinyTrainable::_baudRate = 9600
static

static integer, baud rate for serial communication

static variable, integer, baud rate

◆ _serialDebugging

bool TinyTrainable::_serialDebugging = false
static

pin for output

static variable, boolean, serial debugging

static boolean, toggles debugging over serial port

TinyTrainable

for each input

for each output

◆ _timeBlinkLED

int TinyTrainable::_timeBlinkLED = 500
static

static integer, time for blinking LED

◆ myInput

Input* TinyTrainable::myInput = nullptr
protected

Input pointer.

◆ myOutput

Output* TinyTrainable::myOutput = nullptr
protected

Output pointer.


The documentation for this class was generated from the following files: