I have set up the hardware and installed the given firmware code sourced from the GitHub repo to two radios.
Both radios have trained successfully and are linked.
Both radios have the same settings, and respond to the AT commands. Airspeed is 4800.
Problems:
I cannot find documentation in how to actually use the radio. How do I initiate a serial send from one to another? I want to know how to initiate this from the AT commands and/or via a function. Ideally I could set up a ping-pong type code as seen in the youtube channel.
I cannot watch two serial monitors, whether it is Arduino or teraterm. When I open two serial monitors the radios enter a resetting sequence. Both radios reset simultaneously, reboot and then reset again, until I close one of the two monitors.
Here are the user defined parameters. Each radio has the same settings. At this point, my two radios are resetting each other when not in training mode.
I have no problem opening and having TeraTerm running twice simultaneously, one TeraTerm connected to each radio. I’m using an old Win10 machine here, but it should pretty much work on whatever machine TeraTerm runs on. I don’t know why you’re getting the resetting behavior. Guess you could try using two computers but you shouldn’t have to.
Once you are able to command each radio with AT commands, then type ATO to exit the AT command mode. Then anything you type into one TeraTerm should appear in the other TeraTerm window. You may or may not see what you type in the window you’re typing in depending on the local echo setting (this last bit can be confusing at first.)
And that’s what the radios do - transmit serial characters they receive to the other radio’s serial port.
The radios don’t “initiate” anything themselves, your other hw and sw create the data stream, send it to the radio, and the other radio receives it.
Not sure what I toggled but I am now able to use two TeraTerm windows. (I did at one point try using two computers to troubleshoot).
I have spent a lot of troubleshooting and debugging at this point and this is what I have found…
One radio sets a reset command to the other and then resets itself
I know this because if AT-ENCRYPTDATA = 1 or = 0 on both radios, this reset behaviour continues
if AT-ENCRYPTDATA = 1 on one radio, and = 0 on the other radio, this reset behaviour does not exist
I have looked through the code base and I think there is an issue with petting the watchdog. The devices seem to reset at a consistent ~4.5ms. There is a note in the code about the SAMD21 having to reset its timers at this approx time.
Other issue:
when opening the packaging, I found that one radio did not have a train button. I have been training by shorting the two pads where the button should exist. This is a hardware defect and makes me worried that I have been trying to debug a hardware defect elsewhere on the board. I have reached out to SparkFun customer service about the defect and hope to receive another set of radios.