Generates slowscan television with QR code content, using an Arduino Uno and a VS1003 audio module.
|
2 jaren geleden | |
---|---|---|
images | 2 jaren geleden | |
Makefile | 2 jaren geleden | |
QRCode-licence.txt | 2 jaren geleden | |
README.md | 2 jaren geleden | |
VS1003.cpp | 2 jaren geleden | |
VS1003.h | 2 jaren geleden | |
main.c | 2 jaren geleden | |
qrcheck.sh | 2 jaren geleden | |
qrcode.c | 2 jaren geleden | |
qrcode.h | 2 jaren geleden | |
sine.h | 2 jaren geleden |
Mad Radio Scientist VK2CJB is proud to announce the invention of a mode more annoying than FT8!
This project allows an Arduino Uno, with a VS1003 audio module, to generate slowscan television with QR encoded messages. It's been noticed that an appropriate SSTV mode with a QR can be worked in spite of voice readability
I'm sick of seeing them too.
I did this once..
On the night that was sent, my path into that Net's repeater had unreadable voice... but sending something in slowscan, with the error-correction in QR, let everyone to know who (and where) it was. In a sense, it turns SSTV into a weak-signal mode..
Regarding its legality on the bands -- the slowscan output from this does not display a callsign in the clear image, only within the content of the QR code. If you operate in a country that has Amateur conditions saying callsigns must be in the clear image, you'll have to pass on this. Australia's ACMA recently made QR Codes a recognized labelling standard for telecommunications equipment, so there's no doubt of its official recognizability in VK. It's encoding but not encryption in any case-- but mileage may vary.
With the code flashed to the Arduino, connect to it with a Serial terminal program, and you'll get a line interface...
// AVEQ - Arduino + VS1003 Exchange QR
// Callsign: VK2CJB
// Mode: PD50
// Colours: 844,044
(7:1,3): _ VK2CJB
The callsign, mode, and colours should be initalized before use. See below.
Just type a message in and it'll start appearing where the _ is. There's no real input editing, with just backspace and enter supported.
"7" is the current length of the message. The limit for 29x29 QR matrixes (the current limit) is 53 bytes. (This alpha-release quality code hasn't been throughly tested on this..)
"1,3" is the QR version/size and ECC level that'll be used. Smaller QRs with larger pixels/modules and stronger FEC should help with weak conditions. There needs to be experiments to see what works!
Your callsign will be appended to every message.
> Message: "I've invented a mode more annoying than FT8!!! VK2CJB"
> 53 letters -- selecting size 29x29, ECC level 0
> Continue (y/N)?
> Generating QR
> Transmitting
All SET commands need to be entered in uppercase. Because I say so. These settings are saved to EEPROM.
SETMODE sstvmodename
SETMODE PD50
Currently there's just the PD modes to choose from: PD50, PD90, PD120, PD160, PD180, PD240, PD290.
PD50 works with everything during good conditions. PD90 and PD240 have the best SNR.
(The B&W Robot 12 mode needs doing..)
SETCALL callsign
SETCALL VK2CJB
Max of 11 characters.
SETCOLS <lum_on><cr_on><cb_on><lum_off><cr_off><cb_off>
SETCOLS 844044
Brain-bending time. Provides what frequencies to use for the pixels... in the YCbCr colourspace.
The digits 0-8 choose from 1500 to 2300Hz. White is "844", and black is "044". The "4" for 1900 Hz, which is neutral to the Chromatic difference components. Frob these for fun.