make speechTX more polite and more verbose

This commit is contained in:
Morgan Redfield 2019-07-18 18:06:38 -07:00
parent 3d3f6a36b6
commit 4006afff64
3 changed files with 11 additions and 6 deletions

View File

@ -2,6 +2,10 @@
* Example: SpeechTX - This example used the basic JustTransmit example from the above site * Example: SpeechTX - This example used the basic JustTransmit example from the above site
* This example uses the Talkie Arduino speech library. It transmits pre-encoded speech over the air. * This example uses the Talkie Arduino speech library. It transmits pre-encoded speech over the air.
* More info at: https://github.com/going-digital/Talkie * More info at: https://github.com/going-digital/Talkie
*
* Make sure you're using an Arduino Uno or equivalent. The Talkie library doesn't work
* with hardware that doesn't use the ATMega328 or ATMega168.
*
* Connect the HamShield to your Arduino. Screw the antenna * Connect the HamShield to your Arduino. Screw the antenna
* into the HamShield RF jack. Connect the Arduino to * into the HamShield RF jack. Connect the Arduino to
* wall power and then to your computer via USB. After * wall power and then to your computer via USB. After
@ -251,7 +255,10 @@ void setup() {
radio.setRfPower(0); radio.setRfPower(0);
radio.frequency(145010); radio.frequency(145010);
radio.waitForChannel(); // wait for the channel to be empty
radio.setModeTransmit(); radio.setModeTransmit();
delay(100); // wait for PA to come up
voice.say(spKILO); // to change these to the words you would like to say, or a ham radio call sign - uncomment above encoded words voice.say(spKILO); // to change these to the words you would like to say, or a ham radio call sign - uncomment above encoded words
voice.say(spSIX); // more word choices can be found at the talkie github site voice.say(spSIX); // more word choices can be found at the talkie github site
voice.say(spALPHA); voice.say(spALPHA);
@ -267,10 +274,8 @@ void setup() {
voice.say(spON); voice.say(spON);
voice.say(spFIRE); voice.say(spFIRE);
radio.setModeReceive();
} }
void loop() { void loop() {
radio.frequency(144025);
radio.setModeTransmit();
for(;;) { }
} }

View File

@ -1682,7 +1682,7 @@ Does not take in account the millis() overflow
*/ */
bool HamShield::waitForChannel(long timeout = 0, long breakwindow = 0, int setRSSI = HAMSHIELD_EMPTY_CHANNEL_RSSI) { bool HamShield::waitForChannel(long timeout, long breakwindow, int setRSSI) {
int16_t rssi = 0; // Set RSSI to max received signal int16_t rssi = 0; // Set RSSI to max received signal
for(int x = 0; x < 20; x++) { rssi = readRSSI(); } // "warm up" to get past RSSI hysteresis for(int x = 0; x < 20; x++) { rssi = readRSSI(); } // "warm up" to get past RSSI hysteresis
long timer = HSmillis() + timeout; // Setup the timeout value long timer = HSmillis() + timeout; // Setup the timeout value

View File

@ -515,7 +515,7 @@ class HamShield {
char parseMorse(uint8_t rx_morse_char, uint8_t rx_morse_bit); char parseMorse(uint8_t rx_morse_char, uint8_t rx_morse_bit);
uint8_t morseLookup(char letter); uint8_t morseLookup(char letter);
uint8_t morseReverseLookup(uint8_t itu); uint8_t morseReverseLookup(uint8_t itu);
bool waitForChannel(long timeout, long breakwindow, int setRSSI); bool waitForChannel(long timeout = 0, long breakwindow = 0, int setRSSI = HAMSHIELD_EMPTY_CHANNEL_RSSI);
void SSTVVISCode(int code); void SSTVVISCode(int code);
void SSTVTestPattern(int code); void SSTVTestPattern(int code);
void toneWait(uint16_t freq, long timer); void toneWait(uint16_t freq, long timer);