# wspr-tools Code for the WSPR protocol ## encode.py ```python3 encode.py callsign locator power``` Currently only simple callsigns and 4-symbol locators are accepted. Power is in dBm. This can be used directly for producing transmission sequences for the Arduino/AD9851 based transmitter below, or as a library to encode the WSPR protocol. ## manual.py ```python3 manual.py callsign locator power``` Used to display the straight-key transmission sequence for a narrow-band frequency shift transmitter. Please refer to my web page on non-standard WSPR equipment for more information. ## arduino_ad9851.ino Arduino program to actually transmit the data generated by `encode.py` using an AD9851 module. **Note**: if you use the square wave output (QOUT1 or its inverse QOUT2), make sure to tune the comparator voltage to achieve a reasonable duty cycle. If followed by a class E amplifier this is about 45% for maximum power output (anywhere near 50% should be OK). I use a DC voltmeter and approximate the duty cycle with V/5, so that a measured 2V reading translates into a 40% duty cycle. You could of course also take either of the sine wave outputs (ZOUT1, ZOUT2) and amplify or feed directly into a low-pass filter to the antenna.