Can anyone help with this problem so I can move forward with building an Arduino/NTX2B tracker?:-
The UKHAS “Linking an Arduino to a Radiometrix NTX2B Transmitter” guide Test Schedule, Part 1 Guide worked, however Part 2 is not the producing the correct characters. I have re-checked the Arduino code several times for typos & it was, as the UKHAS Guide guide strongly recommends, hand typed, not using Copy & Paste. A copy is attached. This is what I am getting:-
``p|`p~s|@````p|`p~s|@```Cx`x```p|`p~s|@````p|`p~s|@```Cx`x```p|`p~s|@````p|`p~s|@```Cx`x`s|`p~s|@``p|`p|`p~s I think the sequence starts.. ``p`p|`p~s|@````p|`p~s|@```Cx`x`
The dl-fldigi settings are as on the guide (see attached photo) & changing them doesn't help. Looking at https://en.wikipedia.org/wiki/ASCII doesn't assist either - this is all new territory to me.
The .ino file is attached & code that was uploaded to the Arduino Pro are copied below this post. The Arduino output is to Pin 13, not 10 as per the guide, as that must be a typo as it only produces a single line in the waterfall.
The fldigi RTTY Custom settings are all correct with Baud rate5.0 /Parity nil/Stop bits 2/7 bits per character. the Carrier frq shift is set to 685Hz due to the resistors used & the board is an Arduino Pro 3.3V/8MHz.
The output is from Pin 13, not 10 as in the circuit diagram & description as this produces only a single line in the Waterfall. I assume that this is a legacy issue "typo" in the Guide. The board LED flashes nicely & the AR9000 & Airspy audio sounds OK with USB selected on both, although I am only using one of them, not both together. See attached photos & .ino file.
Can anyone help please?
Code as uploaded to Arduino Pro:-
/* NTX2 Radio Test Part 2
Transmits data via RTTY with a checksum.
Created 2012 by MOUPU as part of a UKHAS Guide on Linking NTX2 Modules to Arduino.
RTTY code from Rob Harrison Icarus Project.
*/
#define RADIOPIN 13
#include <string.h>
#include <util/crc16.h>
char datastring[80];
void setup()
{
pinMode(RADIOPIN,OUTPUT); // sets the digital pin as output
}
void loop()
{
sprintf(datastring,"RTTY TEST BEACON RTTY TEST BEACON"); // Puts the text in the datastring
unsigned int CHECKSUM = gps_CRC16_checksum(datastring); //Calculates the checksum for this datastring
char checksum_str[6];
sprintf(checksum_str, "*%04X\n", CHECKSUM);
strcat(datastring,checksum_str);
rtty_txstring (datastring);
delay(2000);
}
void rtty_txstring (char * string)
{
/* Simple function to send a char at a time to
** rtty_txbyte function
** NB Each char is one byte (8 Bits)
*/
char c;
c = *string++;
while ( c != '\0')
{
rtty_txbyte (c);
c = *string++;
}
}
void rtty_txbyte (char c)
{
/* Simple function to send each bit of a char to
** rtty_txbit function.
** NB The bits are sent Least Sgnificant Bit first
**
** ALL chars should be preceded with a 0 and
** proceded with a 1. 0 = Start bit; 1 = Stop bit
**
*/
int i;
rtty_txbit (0); // Start bit
// Send bits for char LSB first
for (i=0;i<7;i++) // Change this here 7 or 8 for ASCII-7 / ASCII-8
{
if (c & 1) rtty_txbit(1);
else rtty_txbit(0);
c = c >> 1;
}
rtty_txbit (1); // Stop bit
rtty_txbit (1); // Stop bit
}
void rtty_txbit (int bit)
{
if (bit)
{
// high
digitalWrite(RADIOPIN, HIGH);
}
else
{
// Low
digitalWrite(RADIOPIN, LOW);
}
// delayMicrosconds(3370); // 300 baud
delayMicroseconds(10000); // For 50 Baud uncomment this and the line below.
delayMicroseconds (10150); // You can't do 20150 it just doesn't work as the
// Largest value that will produce an accurate delay is 16383
// See : http://arduino.cc/en/Reference/DelayMicroseconds
}
uint16_t gps_CRC16_checksum (char *string)
{
size_t i;
uint16_t crc;
uint8_t c;
crc = 0xFFFF;
// Calculate checksum ignoring first two $s
for (i = 2; i < strlen(string); i++)
{
c = string[i];
crc = _crc_xmodem_update (crc, c);
}
return crc;
}
Hi Nick,
Thanks for the prompt response. I will copy & paste, upload & re-test!.
Yes, you guessed...I am one of those that do not yet understand Binary do a sufficient extent. We will get there eventually....we always do!
Cheers
Ian
--
You received this message because you are subscribed to the Google Groups "UKHAS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukhas+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/2ec292fe-7979-4f75-90ee-9bee2e0f6b6co%40googlegroups.com.
/* NTX2 Radio Test Part 2
Transmits data via RTTY with a checksum.
Created 2012 by M0UPU as part of a UKHAS Guide on linking NTX2 Modules to Arduino.
RTTY code from Rob Harrison Icarus Project.
http://ukhas.org.uk
*/
#define RADIOPIN 13 #include <string.h> #include <util/crc16.h> char datastring[80]; void setup() { pinMode(RADIOPIN,OUTPUT); }
void loop() { sprintf(datastring,"RTTY TEST BEACON RTTY TEST BEACON"); // Puts the text in the datastring
unsigned int CHECKSUM = gps_CRC16_checksum(datastring); // Calculates the checksum for this datastring
/* Simple function to sent a char at a time to
** rtty_txbyte function.
** NB Each char is one byte (8 Bits)
*/char c; c = *string++; while ( c != '\0') { rtty_txbyte (c); c = *string++; } } void rtty_txbyte (char c) {
/* Simple function to sent each bit of a char to
** rtty_txbit function.
** NB The bits are sent Least Significant Bit first
**
** All chars should be preceded with a 0 and
** proceded with a 1. 0 = Start bit; 1 = Stop bit
**
*/int i; rtty_txbit (0); // Start bit
// Send bits for for char LSB first for (i=0;i<7;i++) // Change this here 7 or 8 for ASCII-7 / ASCII-8 { if (c & 1) rtty_txbit(1); else rtty_txbit(0); c = c >> 1; } rtty_txbit (1); // Stop bit rtty_txbit (1); // Stop bit } void rtty_txbit (int bit) { if (bit) { // high digitalWrite(RADIOPIN, HIGH); } else {
// low
digitalWrite(RADIOPIN, LOW);
}
// delayMicroseconds(3370); // 300 bauddelayMicroseconds(10000); // For 50 Baud uncomment this and the line below.
delayMicroseconds(10150); // You can't do 20150 it just doesn't work as the // largest value that will produce an accurate delay is 16383
// See : http://arduino.cc/en/Reference/DelayMicroseconds
}
uint16_t gps_CRC16_checksum (char *string)
{
size_t i;
uint16_t crc;
uint8_t c;
crc = 0xFFFF;
// Calculate checksum ignoring the first two $s--
You received this message because you are subscribed to the Google Groups "UKHAS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukhas+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/a3cd20a4-1a77-422d-b2b8-d572abd9c1c0o%40googlegroups.com.
Ian.
Note too, that you need to set dlFldigi's RTTY parameters correctly to match the format you are sending.
Number of data bits, stop bits, baud rate (speed) and the frequency shift.
Note too, that you'll need a SSB capable radio in USB mode, this won't work with a FM handheld!
(But something like a FunCube or RTL dongle and suitable SDR software will suffice too, but the fun bit then, especially with Windows10, is piping the recovered audio into dlFldigi.)
Take one step at a time.
73.
Dave G8KBV.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB5929AB303E2F29309DB1A7F2A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
-- Created on and sent from a Unix like PC running and using free and open source software:
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/4a388920-e609-26f6-ec0f-5cb47a17c4c9%40googlemail.com.
Hi Mark,
Thanks & I will review that, however am determined to know what the problem here is first - determined that is until it becomes too difficult - hopefully not!.
Many thanks
Ian
From: uk...@googlegroups.com [mailto:uk...@googlegroups.com] On Behalf Of Mark Gledhill
Sent: 02 July 2020 13:03
To: uk...@googlegroups.com
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/FC1E0190-CA9D-4838-92B2-BA443246082C%40gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB5929E8B116A92444A4479C70A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
The Rv button can get confusing. Not sure about dlFldigi, but in Fldigi, you have to be very careful about the interaction between the Rv button, and the USB/LSB setting, Best to stick with USB on the radio, and keep Rv OFF.
I to have fallen foul of Arduino CPU speed settings! It's not obvious at times.
73.
Dave G8KBV
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBpu6gfsb0_zexEt4OEZq4RyTmyppBAAM1yqnzzFUb2N9g%40mail.gmail.com.
Hi David,
Thanks - well spotted I should have worked that out myself - you are correct. I have just put a multi-meter across VCC & ground on the Arduino Pro when plugged into a USB port supply. it measures 5.3V
However, I did order (I am 99% certain) a 3.3V & 8Mhz Arduino Pro & on the actual board both these markers have been inked in, leaving the 5V,16MHz & 20MHz unmarked. My understanding was that the 3.3V board has an internal V reg, so I used 3.3V for the R calculations. So this board is marked 3.3V yet VCC is 5.3V - can you help me on that one?
The waterfall shift is 685Hz, so is it that this is the reason why the characters are incorrect & that if I change the resistors to bring it down to 425Hz, it should work?
Part of the puzzle solved at least - thanks.
Ian
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBr7f1Xnp1__dw_Zb_6Q5uLJtGY1%2BoZZgxRDmNqTwK0QVQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "UKHAS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukhas+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/d02fb82e-8c3c-3050-3248-16c5dfdcf2cf%40googlemail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB59299CD374FEAFB365A9B207A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB59299CD374FEAFB365A9B207A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
Hi David,
Your input is excellent & much appreciated.
Yes, I am measuring between VCC pin & ground= 5.3V, & not measuring input voltage to Arduino.
I will shortly try your suggestion about 16MHz in Arduino set up (Board purchased I think, from SK Pang & can't find details of the order.)
I have looked at the components on the board & the main chip is Mega 328P, AU 1044. Various others are marked F, C106 (2 of these), 4B33 & 103.
I am correct in assuming that, all other things being correct, which it looks as though they aren't, even with the 685Hz shift, the character output should be correct, as the guide somewhere implies that it "just" needs to be below 1000 Hz.
Let me draw breath & go & try some of your suggestions. I also have a Mini pro, which is again marked up as 3.3V & 8MHz, so I can try that as well, but will need to solder some header pins onto it, so, not a task for today, but the weekend.
Many thanks indeed.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBrxOxw-caVjjxE%2BPAMeJ-Q8Ko%2Bhui49RWaB3he2dsV8YQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB59290100AC57B5B86F6E59C7A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
Dave,
Thanks & will do & report.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBpcHCu27Cg7g2aXyxVy1a2JJBFfsipEuotAFAERaSkUEg%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "UKHAS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukhas+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/20200702134019.GA26264%40cubitt.dbrooke.me.uk.
Dave,
Pse see me reply to David B's comments.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBpcHCu27Cg7g2aXyxVy1a2JJBFfsipEuotAFAERaSkUEg%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB5929555F9F3C770030C787A4A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
David,
Ref the audio input, I have spent days trying to get the waterfall working & haven't yet succeeded on my WIN 10 PC & have given up for the time being - tried EVERYTHING on settings, but managed fairly easily to get it working on my WIN 10 laptop, both with the AR8000 plugged into Mic socket & also raw audio from the latte's speaker held against the Laptop onboard mic & at various volume levels. It works on laptop also with RTL SDR & AirSpy OK, the only problem there is that I can't disconnect or turn the volume down on the audio from the Laptop speakers without it cutting off the waterfall.
All sound enhancements have been turned off as far as I am aware. I will double cx in the laptop settings.
It's bound to be finger trouble, but usually when it is, someone else has done it before.
Ian
From: uk...@googlegroups.com [mailto:uk...@googlegroups.com] On Behalf Of David Akerman
Sent: 02 July 2020 14:44
To: UKHAS
Subject: Re: [UKHAS] Re: Help - UKHAS "Linking an Arduino to a Radiometrix NTX2B Transmitter” guide Test Schedule Part 2 not the producing the correct characters in fldigi
Yeah that's a good point. The programmer board should have options for 3.3 and 5V, and it may well be that he's running an 8MHz board at 5V.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBrFFrapOrMgBG3sXOhALqP0obORmyfX%3DG-Du%2BGEjht01g%40mail.gmail.com.
Hi David,
I have selected the processor as 3.3V & 8MHz , recompiled & uploaded. The VCC to ground is still 5.3V when connected to my PC USB as per breadboard image attached - you can just see the 3.3V & 8MHz markers blacked out, although blurred.
There is no Mic boost or other audio effects selected, I have checked that in the Sound Panel Control Panel> Recording >Microphone>Advanced
The audio has shifted slightly higher than before, but with the same bandwith of about 685Hz. The characters are different but still incorrect. With my AR8000 in USB & plugged into my Laptop Mic socket, I am getting:-
|YTtd|YQb9|YTtd,IL2@EbEYTtd|YQb9|YTtd,IL2b9|YTtd|YQb9|YTtd,IL2b9|YTtd|YQb9| etc. Not sure the start/ finish point, but generally the same repeating pattern. The AR8000 is quite clear (when unplugged from mic lead) & varying volume level doesn't make any difference, except when, of course, very low.
See attached screenshot which includes RTTY settings window50 Baud, 7 ascii, parity none, stop bits 2
Further thoughts?
Cheers
Ian
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBqWfctWXE-jrmaQczd9h5SV24xe7-QTWK9N9_aiqEP%3DhA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB592958C34D9D775AC2B391A1A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
Dave,
Thanks,
Give me a few minutes to switch it all on again & will report.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBqj%3DJO96NXTkbsjU_qjDMYd95Vij05G_KdO7pqF1QG85g%40mail.gmail.com.
Dave, (& everyone else that responded)
Have a drink on me send me the bill sometime!
Pressing the RV button worked & it is now printing out (nearly) correctly - I hadn't seen any reference to doing that in my research on how to use the software, although now I see a few comments, so what does it actually do?
It isn't 100% correct, as before moving down a line it adds *CF08 (see screenshot) I guess this is a script error - any thoughts?
Many thanks & I will post a couple of other, hopefully minor queries over the next few weeks, starting with how to cut out/turn down the volume of AirSpy audio output from AirSpy to the WIN 10 laptop speakers & still have it output to fldigi, but I think a break is in order.
Everyone's help has been much appreciated & I will move on now to making an aerial & ground-plane for the NTX2B.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBqj%3DJO96NXTkbsjU_qjDMYd95Vij05G_KdO7pqF1QG85g%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB59295ADB7A703B0C1EABEA08A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBqq-PEFO1BrHcZvM7ugC9NGLhCCakiSvwufTQU7bWoaEw%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB5929D063CFBD613EA974AF3EA86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
On 2 Jul 2020, at 16:37, David Akerman <da...@sccs.co.uk> wrote:
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CAN3_bBo5BhsfGpURwyXmp%3DmGKCDp_LZN1Z_Wu8LWmZdkhpS4uA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB59298B3F8AD854588F23ECCCA86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB59298ADCFD092F6E60DBDB14A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB59294A6715DF98E72365FCF0A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB59295ADB7A703B0C1EABEA08A86D0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
On 3 Jul 2020, at 12:53, 'Dave Baxter' via UKHAS <uk...@googlegroups.com> wrote:
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CABDW77Jtd%3D2zkJQswKWXdm70QEDAi5aWpiA3COPe68opdCogvQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/DB7PR06MB592977DFF4F55EE82050009DA86A0%40DB7PR06MB5929.eurprd06.prod.outlook.com.
Not wishing to complicate things but have you considered sending RTTY using a LoRa module using FSK? Not only are the modules a lot cheaper, it also leaves the option available to send LoRa as well.
A few examples of the code required can be found can be found on github. This one for example works pretty much out of the box:
Mark
Sent from my iPhone
On Jul 2, 2020, at 12:35 PM, Ian Wilde <ianr...@hotmail.com> wrote:
I have just done what Nick suggested, that is copy & paste the code from the UKHAS guide. The result is the same. I get the same repeating series of characters as per my original post.
Instead of RTTY TEST BEACON RTTY TEST BEACON This is what fldigi is printing:-``p|`p~s|@````p|`p~s|@```Cx`x```p|`p~s|@````p|`p~s|@```Cx`x```p|`p~s|@````p|`p~s|@```Cx`x`s|`p~s|@``p|`p|`p~s............etc.
fldigi RTTY settings are correct as per earlier screenshot.
Can anyone sort me out with this please?.....Here is what I copied & pasted:-/* NTX2 Radio Test Part 2 Transmits data via RTTY with a checksum. Created 2012 by M0UPU as part of a UKHAS Guide on linking NTX2 Modules to Arduino. RTTY code from Rob Harrison Icarus Project. http://ukhas.org.uk */ #define RADIOPIN 13 #include <string.h> #include <util/crc16.h> char datastring[80]; void setup() { pinMode(RADIOPIN,OUTPUT); } void loop() { sprintf(datastring,"RTTY TEST BEACON RTTY TEST BEACON"); // Puts the text in the datastring unsigned int CHECKSUM = gps_CRC16_checksum(datastring); // Calculates the checksum for this datastring char checksum_str[6]; sprintf(checksum_str, "*%04X\n", CHECKSUM); strcat(datastring,checksum_str); rtty_txstring (datastring); delay(2000); } void rtty_txstring (char * string) { /* Simple function to sent a char at a time to ** rtty_txbyte function. ** NB Each char is one byte (8 Bits) */ char c; c = *string++; while ( c != '\0') { rtty_txbyte (c); c = *string++; } } void rtty_txbyte (char c) { /* Simple function to sent each bit of a char to ** rtty_txbit function. ** NB The bits are sent Least Significant Bit first ** ** All chars should be preceded with a 0 and ** proceded with a 1. 0 = Start bit; 1 = Stop bit ** */ int i; rtty_txbit (0); // Start bit // Send bits for for char LSB first for (i=0;i<7;i++) // Change this here 7 or 8 for ASCII-7 / ASCII-8 { if (c & 1) rtty_txbit(1); else rtty_txbit(0); c = c >> 1; } rtty_txbit (1); // Stop bit rtty_txbit (1); // Stop bit } void rtty_txbit (int bit) { if (bit) { // high digitalWrite(RADIOPIN, HIGH); } else { // low digitalWrite(RADIOPIN, LOW); } // delayMicroseconds(3370); // 300 baud delayMicroseconds(10000); // For 50 Baud uncomment this and the line below. delayMicroseconds(10150); // You can't do 20150 it just doesn't work as the // largest value that will produce an accurate delay is 16383 // See : http://arduino.cc/en/Reference/DelayMicroseconds } uint16_t gps_CRC16_checksum (char *string) { size_t i; uint16_t crc; uint8_t c; crc = 0xFFFF; // Calculate checksum ignoring the first two $s for (i = 2; i < strlen(string); i++) { c = string[i]; crc = _crc_xmodem_update (crc, c); } return crc;}
On Thursday, 2 July 2020 11:05:51 UTC+1, Ian Wilde wrote:Can anyone help with this problem so I can move forward with building an Arduino/NTX2B tracker?:-
The UKHAS “Linking an Arduino to a Radiometrix NTX2B Transmitter” guide Test Schedule, Part 1 Guide worked, however Part 2 is not the producing the correct characters. I have re-checked the Arduino code several times for typos & it was, as the UKHAS Guide guide strongly recommends, hand typed, not using Copy & Paste. A copy is attached. This is what I am getting:-
``p|`p~s|@````p|`p~s|@```Cx`x```p|`p~s|@````p|`p~s|@```Cx`x```p|`p~s|@````p|`p~s|@```Cx`x`s|`p~s|@``p|`p|`p~s I think the sequence starts.. ``p`p|`p~s|@````p|`p~s|@```Cx`x`
The dl-fldigi settings are as on the guide (see attached photo) & changing them doesn't help. Looking at https://en.wikipedia.org/wiki/ASCII doesn't assist either - this is all new territory to me.
The .ino file is attached & code that was uploaded to the Arduino Pro are copied below this post. The Arduino output is to Pin 13, not 10 as per the guide, as that must be a typo as it only produces a single line in the waterfall.
The fldigi RTTY Custom settings are all correct with Baud rate5.0 /Parity nil/Stop bits 2/7 bits per character. the Carrier frq shift is set to 685Hz due to the resistors used & the board is an Arduino Pro 3.3V/8MHz.
The output is from Pin 13, not 10 as in the circuit diagram & description as this produces only a single line in the Waterfall. I assume that this is a legacy issue "typo" in the Guide. The board LED flashes nicely & the AR9000 & Airspy audio sounds OK with USB selected on both, although I am only using one of them, not both together. See attached photos & .ino file.
Can anyone help please?
Code as uploaded to Arduino Pro:-
/* NTX2 Radio Test Part 2
Transmits data via RTTY with a checksum.
Created 2012 by MOUPU as part of a UKHAS Guide on Linking NTX2 Modules to Arduino.
RTTY code from Rob Harrison Icarus Project.
*/
#define RADIOPIN 13
#include <string.h>
#include <util/crc16.h>
char datastring[80];
void setup()
{
pinMode(RADIOPIN,OUTPUT); // sets the digital pin as output
}
void loop()
{
sprintf(datastring,"RTTY TEST BEACON RTTY TEST BEACON"); // Puts the text in the datastring
unsigned int CHECKSUM = gps_CRC16_checksum(datastring); //Calculates the checksum for this datastring
char checksum_str[6];
sprintf(checksum_str, "*%04X\n", CHECKSUM);
strcat(datastring,checksum_str);
rtty_txstring (datastring);
delay(2000);
}
void rtty_txstring (char * string)
{
/* Simple function to send a char at a time to
** rtty_txbyte function
** NB Each char is one byte (8 Bits)
*/
char c;
c = *string++;
while ( c != '\0')
{
rtty_txbyte (c);
c = *string++;
}
}
void rtty_txbyte (char c)
{
/* Simple function to send each bit of a char to
** rtty_txbit function.
** NB The bits are sent Least Sgnificant Bit first
**
** ALL chars should be preceded with a 0 and
** proceded with a 1. 0 = Start bit; 1 = Stop bit
**
*/
int i;
rtty_txbit (0); // Start bit
// Send bits for char LSB first
for (i=0;i<7;i++) // Change this here 7 or 8 for ASCII-7 / ASCII-8
{
if (c & 1) rtty_txbit(1);
else rtty_txbit(0);
c = c >> 1;
}
rtty_txbit (1); // Stop bit
rtty_txbit (1); // Stop bit
}
void rtty_txbit (int bit)
{
if (bit)
{
// high
digitalWrite(RADIOPIN, HIGH);
}
else
{
// Low
digitalWrite(RADIOPIN, LOW);
}
// delayMicrosconds(3370); // 300 baud
delayMicroseconds(10000); // For 50 Baud uncomment this and the line below.
delayMicroseconds (10150); // You can't do 20150 it just doesn't work as the
// Largest value that will produce an accurate delay is 16383
// See : http://arduino.cc/en/Reference/DelayMicroseconds
}
uint16_t gps_CRC16_checksum (char *string)
{
size_t i;
uint16_t crc;
uint8_t c;
crc = 0xFFFF;
// Calculate checksum ignoring first two $s
for (i = 2; i < strlen(string); i++)
{
c = string[i];
crc = _crc_xmodem_update (crc, c);
}
return crc;
}
--
You received this message because you are subscribed to the Google Groups "UKHAS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukhas+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/a3cd20a4-1a77-422d-b2b8-d572abd9c1c0o%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "UKHAS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukhas+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/FC1E0190-CA9D-4838-92B2-BA443246082C%40gmail.com.
--
You received this message because you are subscribed to the Google Groups "UKHAS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukhas+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/fafaf431-f74e-4a96-bcaf-23bd06427e80o%40googlegroups.com.
On 4 Jul 2020, at 17:47, Ben Z en de rest <hoofdei...@gmail.com> wrote:
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/CACbGgOs0sxbV%3DkA%2BtZ3iVZhxAak4v7sc5i53yRJUxmOiHySVEQ%40mail.gmail.com.
Nick, if I put 7 volt on the raw input and get 3.3 v vcc it’s 8 MHz and if vcc measures 5 v it’s a 16 MHz , thats how I check them if they are “out of the bag”
Might help others?
On 21 Jul 2020, at 14:58, 'Ian Leitch' via UKHAS <uk...@googlegroups.com> wrote:
For what it might be worth; when tuning to a signal, tune from low frequency to high. That way you, hopefully, don't pick up image signals before intercepting the real one.
And, humerously, if you are tuning a violin, you know that the obviously incorrect note is low and not high of it's target. Less chance of breaking a string too/
Ian_
--
You received this message because you are subscribed to the Google Groups "UKHAS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukhas+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukhas/811556cf-6e1e-447a-83c3-85894e53f256o%40googlegroups.com.