рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдбрд┐рдлрд╛рдЗрдВрдб рд░реЗрдбрд┐рдпреЛ - рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рднрд╛рдЧ 7

рд╣рд╛рдп, рд╣реИрдмреНрд░ред

рдЬреАрдПрдирдпреВ рд░реЗрдбрд┐рдпреЛ рдХреЛ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд┐рдЫрд▓реЗ рднрд╛рдЧ рдореЗрдВ, рд╕рд╡рд╛рд▓ рдкреВрдЫрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдПрд╕рдбреАрдЖрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЛрд░рд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ (рдХрдо-рд╢рдХреНрддрд┐ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рд╣рд╕реНрддрд╛рдВрддрд░рдг) рдХреЛ рдбрд┐рдХреЛрдб рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рдпрд╣ рд╡рд┐рд╖рдп рдореБрдЭреЗ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрд╛, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рд▓реЛрд░рд╛ рд╕рдВрдХреЗрдд рд╕реНрд╡рдпрдВ рдЕрд╕рд╛рдорд╛рдиреНрдп рд╣реИ - рддрдерд╛рдХрдерд┐рдд рдЪрд┐рд░ рд╕реНрдкреНрд░реЗрдб рд╕реНрдкреЗрдХреНрдЯреНрд░рдо рдореЙрдбреНрдпреВрд▓реЗрд╢рди, рдпрд╛ "рдЪрд┐рд░рдк рдореЙрдбреНрдпреВрд▓реЗрд╢рди"ред



рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдХрдЯ рдХреЗ рдиреАрдЪреЗ рдЬрд╛рд░реА рд░рд╣рд╛ред

рд╡реИрд╕реЗ, рдЪрд┐рд░рдк рдореЙрдбреНрдпреВрд▓реЗрд╢рди рдХрд╛ рд╢рд╛рдмреНрджрд┐рдХ рдЕрдиреБрд╡рд╛рдж "рдЯреНрд╡реАрдЯ рдореЙрдбреНрдпреВрд▓реЗрд╢рди" рдХреА рддрд░рд╣ рд▓рдЧ рд░рд╣рд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рдЧрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рд╕рд░рд▓ рд╢рдмреНрдж "рдЪрд┐рд░рдк" рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛ (рдЬреИрд╕рд╛ рдХрд┐ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд░реВрд╕реА рдореЗрдВ рдЗрд╕реЗ рд░реИрдЦрд┐рдХ-рдЖрд╡реГрддреНрддрд┐ рдореЙрдбреБрд▓рди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ )ред

рд▓реЛрд░рд╛ рдореЙрдбреНрдпреВрд▓реЗрд╢рди


рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЛрд░рд╛ рдХреЛ рдкреНрд░реЗрд╖рд┐рдд рдХрд░рддреЗ рд╕рдордп, "рдЪрд┐рд░рдкреНрд╕" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдореЙрдбреНрдпреВрд▓реЗрд╢рди рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╕реЗрдордЯреЗрдХ рджреНрд╡рд╛рд░рд╛ рдкреЗрдЯреЗрдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ рд╕реВрддреНрд░ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рд╡рд░рдг рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдкреАрдбреАрдПрдл рдХреЛ рд╕реЗрдореАрдЯреЗрдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдпрд╛ рдпрд╣рд╛рдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдпрд╣ рдмрд╣реБрдд рдЕрд╢рд┐рд╖реНрдЯ рд╣реИ, рддреЛ рдПрдХ "рдЪрд┐рд░рдк" рдПрдХ рдЖрд╡реГрддреНрддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рд╣реИ, рдФрд░ рдмрд┐рдЯ рд╕реНрдЯреНрд░реАрдо рдРрд╕реЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рд╕реЗ рдПрдиреНрдХреЛрдбреЗрдб рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЪрд┐рддреНрд░ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЛрд░рд╛ рдореЗрдВ рд╕рд┐рдЧреНрдирд▓ рдкреИрд░рд╛рдореАрдЯрд░ рдПрд╕рдПрдл (рдкреНрд░рд╕рд╛рд░ рдХрд╛рд░рдХ - рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ "рдЪрд┐рд░рдк" рдХреА рдЕрд╡рдзрд┐) рдФрд░ рдмреИрдВрдбрд╡рд┐рдбреНрде - рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдмреИрдВрдбрд╡рд┐рдбреНрде рд╣реИред SF рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд SF7 рдорд╛рдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - SF12, рдЬрд╣рд╛рдВ 7 рд╕рдмрд╕реЗ рддреЗрдЬ рд╣реИ рдФрд░ 12 рд╕рдмрд╕реЗ рдзреАрдорд╛ рдореЛрдб рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЕрдиреБрд╕рдВрдзрд╛рдирдЧреЗрдЯ рдХреЗ рд╕рд╛рде рдЪрд╣рдХрдиреЗ рдХреА рд╡рд┐рднрд┐рдиреНрди рдЧрддрд┐ рдХреЗ рдЪрд┐рддреНрд░рдг рдХреЗ рд╕рд╛рде рдПрдХ рддрд╕реНрд╡реАрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ)ред

рдЬрд╛рд╣рд┐рд░ рд╣реИ, "рдЪрд┐рд░рдк" рдХреА рд▓рдВрдмрд╛рдИ рдФрд░ рдмреИрдВрдб рдЬрд┐рддрдирд╛ рдЪреМрдбрд╝рд╛ рд╣реЛрдЧрд╛, рдЙрддрдирд╛ рд╣реА рдЖрдк рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдХреА рдЧрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╕рдм рдЗрд╕ рддрд░рд╣ рд╕реЗ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реИ:



рд╕реАрдорд╛ рдФрд░ рд╢реЛрд░ рдкреНрд░рддрд┐рд░реЛрдзрдХ рдХреНрд╖рдорддрд╛ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдзреАрд░реЗ-рдзреАрд░реЗ рдФрд░ рджреБрдЦрдж рд░реВрдк рд╕реЗ рд╕рдВрдЪрд╛рд░рд┐рдд рдХрд░рдирд╛ рд▓рд╛рднрдкреНрд░рдж рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдЧрддрд┐ рдЦреЛ рджреЗрддреЗ рд╣реИрдВ, рджреВрд╕рд░реЗ, рд╣рдо рд╕рдордп рдореЗрдВ рдЦреЛ рджреЗрддреЗ рд╣реИрдВ, рдФрд░ рд▓реЛрд░рд╛ рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдбрд┐рд╡рд╛рдЗрд╕ 1% рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕рдВрдЪрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рджреВрд╕рд░реЛрдВ рдХреЛ рдкрд░реЗрд╢рд╛рди рди рдХрд░реЗрдВред рдЙрдкрдХрд░рдгреЛрдВред рддреЛ рдХрдо-рд╢рдХреНрддрд┐ рд╡рд╛рд▓реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╖реНрдЯрддрдо рд╕рдВрдЪрд░рдг рдЧрддрд┐ рдХрд╛ рдЪреБрдирд╛рд╡ рднреА рдЖрд╕рд╛рди рдХрд╛рдо рдирд╣реАрдВ рд╣реИред

рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рд╕рд╛рде, рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ, рдЕрдм рдПрд╕рдбреАрдЖрд░ рдФрд░ рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред

рд▓реЛрд╣рд╛


рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ LoRa рдХреНрд▓рд┐рдХ RN2483 рдФрд░ Arduino M0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдХреЗрд╡рд▓ рдЗрд╕рд▓рд┐рдП рдХрд┐ рд╡реЗ рдЙрдкрд▓рдмреНрдз рдереЗред



рдпрд╣ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рдлреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд░реВрдк рдХрд╛рд░рдХ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рд╕реЛрд▓реНрдбрд░рд┐рдВрдЧ рдХреЗ рдмрд┐рдирд╛ рдмреЛрд░реНрдб рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рдЗрд╕ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ, рдЬрд┐рд╕реЗ рдорд┐рдХреНрд░реЛрдмрд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рдзреАрдп рдЙрдкрд▓рдмреНрдз рд╣реИрдВ)ред

рдбреНрд░реЙрдлреНрдЯ рдХреЛрдб, рдЙрддреНрдкрд╛рджрди рдХреЗ рдмрд╣рд╛рдиреЗ рдирд╣реАрдВ, рд╕реНрдкреЙрдЗрд▓рд░ рдХреЗ рддрд╣рдд рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред рдорд╛рди "1234" рдПрдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

rn2483_tx.ino
// RN2483 Modem and LoRa Click test TX. Tested with Arduino M0 int reset = A2; int rts = 9; // CS int cts = 3; // INT // the setup routine runs once when you press reset: void setup() { Serial1.begin(57600); // Serial port to radio // output LED pin pinMode(LED_BUILTIN, OUTPUT); pinMode(cts, INPUT); pinMode(rts, OUTPUT); digitalWrite(rts, HIGH); // Reset rn2483 pinMode(reset, OUTPUT); digitalWrite(reset, LOW); delay(100); digitalWrite(reset, HIGH); delay(100); sendCommand("sys get ver\r\n"); sendCommand("sys get hweui\r\n"); sendCommand("mac pause\r\n"); sendCommand("radio set mod lora\r\n"); sendCommand("radio set pwr -3\r\n"); // the transceiver output power, from -3 to 15 sendCommand("radio set sf sf8\r\n"); // sf7..sf12, sf7 the fastest spreading factor but gives the shortest range // sendCommand("mac set dr 0\r\n"); // data rate: 0-4, 4 faster sendCommand("radio set freq 869100000\r\n"); // sendCommand("radio set afcbw 41.7\r\n"); sendCommand("radio set rxbw 125\r\n"); // sendCommand("radio set prlen 8\r\n"); sendCommand("radio set crc on\r\n"); // sendCommand("radio set iqi off\r\n"); sendCommand("radio set cr 4/8\r\n"); // sendCommand("radio set wdt 60000\r\n"); // disable for continuous reception // sendCommand("radio set sync 12\r\n"); sendCommand("radio set bw 125\r\n"); } void sendCommand(const char *cmd) { Serial1.print(cmd); String incoming = Serial1.readString(); // SerialUSB.print(cmd); // SerialUSB.println(incoming); } // the loop routine runs over and over again forever: void loop() { char data[64] = {0}; // hexadecimal value representing the data to be transmitted, from 0 to 255 bytes for LoRa modulation and from 0 to 64 bytes for FSK modulation. sprintf(data, "radio tx 1234\r\n"); sendCommand(data); if (msg_num > 10000) msg_num=0; digitalWrite(LED_BUILTIN, 1); delay(400); digitalWrite(LED_BUILTIN, 0); delay(600); } 

рд╡реИрд╕реЗ, RN2483 рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо рдШреЛрд╖рд┐рдд рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рд░реЗрдВрдЬ 15 рдХрд┐рдореА рддрдХ рд╣реИ, рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдПрдХ-рдХрд╣рд╛рдиреА рд╡рд╛рд▓реА рдЗрдорд╛рд░рдд рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╕рдВрдХреЗрдд рдкрд╣рд▓реЗ рд╕реЗ рд╣реА 1 рдХрд┐рдореА рдХреЗ рд▓рд┐рдП рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╢рд╣рд░реА "рдПрдиреНрдерд┐рд▓реНрд╕" рдореЗрдВ 100 рдореАрдЯрд░ рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╣рдо рдореЙрдбреЗрдо рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред

рдбрд┐рдХреЛрдбрд┐рдВрдЧ


рдЬреАрдПрдирдпреВ рд░реЗрдбрд┐рдпреЛ рдореЗрдВ рд╕реНрд╡рдпрдВ рд▓реЛрд░рд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЙрдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ рджреЛ рдереЗ, рдФрд░ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рджреЛрдиреЛрдВ рд▓реЗрдЦрдХреЛрдВ рдиреЗ рдирд╛рдо рдореЗрдВ рдХреЛрдИ рдХрд▓реНрдкрдирд╛ рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ, рдФрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рд╡реИрд╕рд╛ рд╣реА рдХрд╣рд╛ - рдЬреАрдЖрд░-рд▓реЛрд░рд╛ ( https://github.com/rpp0/gr-lora рдФрд░ https://github.com/ рдмреИрд╕реНрдЯрд┐рд▓.рд╕рд░реНрдЪ / рдЬреАрдЖрд░-рд▓реЛрд░рд╛ рдХреНрд░рдорд╢рдГ)ред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдХреНрдпреЛрдВрдХрд┐ рдЬреАрдПрдирдпреВ рд░реЗрдбрд┐рдпреЛ рдореЗрдВ рджреЛрдиреЛрдВ рдШрдЯрдХ рдПрдХ рд╕рд╛рде рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рдШрдЯрдХ рдХрд╛ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рджреВрд╕рд░реЗ рдХреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░ рджреЗрддрд╛ рд╣реИред

rpp0 / рдЬреАрдЖрд░-рд▓реЛрд░рд╛

рдЖрдк рдбрд┐рдХреЛрдбрд░ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдЧрд┐рддреБрдм рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдорд╛рдирдХ рд╣реИ рдФрд░ рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдХрд╛ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ:

 git clone https://github.com/rpp0/gr-lora.git cd gr-lora mkdir build cd build cmake .. make && sudo make install && sudo ldconfig 

рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж, рдЬреАрдПрдирдпреВ рд░реЗрдбрд┐рдпреЛ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдмреНрд▓реЙрдХ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдбрд┐рдХреЛрдбрд░ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдбрд┐рдХреЛрдбрд░ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдкрдХреЛ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдмреИрдВрдбрд╡рд┐рдбреНрде, рд╕реНрдкреНрд░реЗрдбрд┐рдВрдЧ рдлреИрдХреНрдЯрд░, рдПрд╕рдбреАрдЖрд░ рдХреА рдХреЗрдВрджреНрд░ рдЖрд╡реГрддреНрддрд┐ рдФрд░ рд░рд┐рд╕реЗрдкреНрд╢рди рдЖрд╡реГрддреНрддрд┐ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред



рдЬреАрдПрдирдпреВ рд░реЗрдбрд┐рдпреЛ рдореЗрдВ рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЛ рдорд╛рдирдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрд░рдЯреАрдПрд▓-рдПрд╕рдбреАрдЖрд░ рдЬреИрд╕реЗ рдХрд┐рд╕реА рднреА рд░рд┐рд╕реАрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдореИрдВрдиреЗ SDRPlay рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдХрдВрд╕реЛрд▓ рдХреЛ рдбреЗрдЯрд╛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд╛рдпрдерди рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

udp_receive.py
 import socket UDP_IP = "127.0.0.1" UDP_PORT = 40868 sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # UDP sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.bind((UDP_IP, UDP_PORT)) sock.settimeout(0.5) while True: try: data, addr = sock.recvfrom(128) # buffer size is 1024 bytes print("Msg:", ' '.join('{:02x}'.format(x) for x in data)) except socket.timeout: pass 

рдХрд╛рд░реНрдп рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЖрдХреГрддрд┐ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред



рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╣реЗрдбрд░ рдФрд░ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдХреЗ рдЕрдВрдд рдмреНрд▓реЙрдХ рд╣реИрдВ, рдФрд░ рдмреАрдЪ рдореЗрдВ рд╣рдо рдЕрдкрдирд╛ рдбреЗрдЯрд╛ "1234" рджреЗрдЦрддреЗ рд╣реИрдВред

рдмрд╛рд╕реНрдЯрд┐рд▓ .Research / рдЬреАрдЖрд░-рд▓реЛрд░рд╛

рдпрд╣ рдореЙрдбреНрдпреВрд▓ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ рдХрд┐ рдпрд╣ рди рдХреЗрд╡рд▓ рд░рд┐рд╕реЗрдкреНрд╢рди рдкрд░, рдмрд▓реНрдХрд┐ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдкрд░ рднреА рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╕реНрдерд╛рдкрдирд╛ рдЙрд╕реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ: рдШрдЯрдХ рдХреЛ рд╕реНрд░реЛрдд рд╕реЗ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

 git clone git://github.com/BastilleResearch/gr-lora.git cd gr-lora mkdir build cd build cmake .. make && sudo make install && sudo ldconfig 

рдЗрд╕ рдбрд┐рдХреЛрдбрд░ рдХреЗ рд▓рд┐рдП рдХрдиреЗрдХреНрд╢рди рдЧреНрд░рд╛рдл рдЪрд┐рддреНрд░ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред



рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдзрд┐рдХ рдмреНрд▓реЙрдХ рд╣реИрдВред рд░реЛрдЯреЗрдЯрд░ рдФрд░ рдкреЙрд▓реАрдлрд╝реЗрдЬрд╝ рд░реЗрд╕рдорд▓рд░ рд╡рд╛рдВрдЫрд┐рдд рдЖрд╡реГрддреНрддрд┐ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рдЯ рджреЗрддреЗ рд╣реИрдВ, рдбреЗрдореЛрдбреБрд▓реЗрдЯрд░ "рдЪрд┐рд░рдкреНрд╕" рдХреЛ рдПрдХ рдмрд╛рдЗрдирд░реА рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ (рдЖрдЙрдЯрдкреБрдЯ рдПрдХ рдЕрдиреБрдХреНрд░рдо рд╣реИ рдЬреИрд╕реЗ "17 00 3e 00 38 00 2f 00 01 00 00 00 00 2 00 00 00 30 00 C6 00 18 00 7e 00 d5 00 d5 00) 85 00 e9 00 d8 00 67 00 c4 00 тАЭ), рдФрд░ рдбрд┐рдХреЛрдбрд░ рдЕрдВрддрд┐рдо рдкреИрдХреЗрдЬ рдмрдирд╛рддрд╛ рд╣реИред

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рдХрднреА рдареАрдХ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдореЙрдбреЗрдо рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдбреЗрдЯрд╛ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░рд╛рдкреНрдд рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рдкреНрд░реЗрд╖рд┐рдд рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред



рдореБрдЭреЗ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛, рдпрд╛ рддреЛ рдореИрдВрдиреЗ рдХрд╣реАрдВ рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рдЧрд▓рддреА рдХреА, рдпрд╛ рдпрд╣ рдбрд┐рдХреЛрдбрд░ рдХреЗрд╡рд▓ рдореЗрд░реЗ рд╣реА рдПрдирдХреЛрдбрд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИред рдЬреЛ рд▓реЛрдЧ рдЪреИрдирд▓ рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рджрдо рдкрд░ рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

LoRaWAN


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдХреА рдирд┐рдЪрд▓реА, рднреМрддрд┐рдХ рдкрд░рдд рдХреЛ рдпрд╣рд╛рдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛ред рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рд▓реЛрд░рд╛рд╡рди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ, рдПрдХ рдФрд░ рддрд╛рд░реНрдХрд┐рдХ рдкрд░рдд рд╢реАрд░реНрд╖ рдкрд░ рд░рдЦреА рдЧрдИ рд╣реИ - рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди, рдХреБрдВрдЬреА рдФрд░ рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рдеред рдЬреЛ рд▓реЛрдЧ рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд╡реЗ рдСрдирд▓рд╛рдЗрди рдбрд┐рдХреЛрдбрд░ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рд╡реИрд╕реЗ, рдпрд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ рдХрд┐ рднрд▓реЗ рд╣реА рд╣рдореЗрдВ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХреБрдВрдЬрд┐рдпреЛрдВ (рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд╕рд░реНрд╡рд░ рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИ) рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд┐рдирд╛, рдПрд╕рдбреАрдЖрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд▓реЛрд░рд╛рд╡рди рд╕рдВрдХреЗрдд рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рд╣рдо рдЕрднреА рднреА рдкреИрдХреЗрдЯ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдирд╣реАрдВ рдкрд╣рдЪрд╛рдирддреЗ рд╣реИрдВред

рдирд┐рд╖реНрдХрд░реНрд╖


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрд╕рдбреАрдЖрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЛрд░рд╛ рдХреЛ рдбрд┐рдХреЛрдб рдХрд░рдирд╛ рдХрд╛рдлреА рд╕рдВрднрд╡ рд╣реИред рдмреЗрд╢рдХ, рдПрд╕рдбреАрдЖрд░ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рд╡реЗрд╢ рджреНрд╡рд╛рд░ рдмрдирд╛рдирд╛ рд╢рд╛рдпрдж рд╣реА рдЙрдЪрд┐рдд рд╣реИ - рдЗрд╕рдХреА рд╕рдВрд╡реЗрджрдирд╢реАрд▓рддрд╛ "рд╡рд╛рд╕реНрддрд╡рд┐рдХ" рдореЛрдбреЗрдо рдХреА рд╕рдВрд╡реЗрджрдирд╢реАрд▓рддрд╛ рд╕реЗ рднреА рдмрджрддрд░ рд╣реЛрдЧреА, рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХрдордЬреЛрд░ рд╕рдВрдХреЗрддреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХреА рдЧрдИ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдВрдХреАрд░реНрдг-рдмреИрдВрдб рдлрд┐рд▓реНрдЯрд░ рдФрд░ рдПрд▓рдПрдирдП рд╣реИрдВред рд▓реЗрдХрд┐рди рдкрд░реАрдХреНрд╖рдг рдпрд╛ рдЕрдиреБрд╕рдВрдзрд╛рди рдХреЗ рд▓рд┐рдП, рдпрд╣ рдХрд╛рдлреА рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдЬреЛ рд▓реЛрдЧ рдЗрд╕реЗ рдЕрдкрдиреЗ рджрдо рдкрд░ рдЖрдЬрд╝рдорд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдЬреАрдПрдирдпреВ рд░реЗрдбрд┐рдпреЛ рд╕реНрд░реЛрдд рдХреА рдЬреАрдЖрд░рд╕реА рдлрд╛рдЗрд▓реЗрдВ рд╕реНрдкреЙрдЗрд▓рд░ рдХреЗ рдиреАрдЪреЗ рд╣реИрдВред

receive1.grc
 <?xml version='1.0' encoding='utf-8'?> <?grc format='1' created='3.7.11'?> <flow_graph> <timestamp>Mon Jun 3 09:39:45 2019</timestamp> <block> <key>options</key> <param> <key>author</key> <value></value> </param> <param> <key>window_size</key> <value></value> </param> <param> <key>category</key> <value>[GRC Hier Blocks]</value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>description</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(8, 8)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>generate_options</key> <value>wx_gui</value> </param> <param> <key>hier_block_src_path</key> <value>.:</value> </param> <param> <key>id</key> <value>top_block</value> </param> <param> <key>max_nouts</key> <value>0</value> </param> <param> <key>qt_qss_theme</key> <value></value> </param> <param> <key>realtime_scheduling</key> <value></value> </param> <param> <key>run_command</key> <value>{python} -u {filename}</value> </param> <param> <key>run_options</key> <value>prompt</value> </param> <param> <key>run</key> <value>True</value> </param> <param> <key>thread_safe_setters</key> <value></value> </param> <param> <key>title</key> <value></value> </param> </block> <block> <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(760, 12)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>bw</value> </param> <param> <key>value</key> <value>125000.0</value> </param> </block> <block> <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>_coordinate</key> <value>(936, 12)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>code_rate</value> </param> <param> <key>value</key> <value>4</value> </param> </block> <block> <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>_coordinate</key> <value>(848, 12)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>header</value> </param> <param> <key>value</key> <value>True</value> </param> </block> <block> <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>_coordinate</key> <value>(680, 12)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>ldr</value> </param> <param> <key>value</key> <value>True</value> </param> </block> <block> <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(400, 12)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>offset</value> </param> <param> <key>value</key> <value>-100000.0</value> </param> </block> <block> <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(8, 76)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>samp_rate</value> </param> <param> <key>value</key> <value>1000000</value> </param> </block> <block> <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>_coordinate</key> <value>(544, 12)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>spreading_factor</value> </param> <param> <key>value</key> <value>8</value> </param> </block> <block> <key>blocks_rotator_cc</key> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>_coordinate</key> <value>(416, 252)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>blocks_rotator_cc_0</value> </param> <param> <key>maxoutbuf</key> <value>0</value> </param> <param> <key>minoutbuf</key> <value>0</value> </param> <param> <key>phase_inc</key> <value>(2 * math.pi * offset) / samp_rate</value> </param> </block> <block> <key>blocks_socket_pdu</key> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>_coordinate</key> <value>(944, 452)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>host</key> <value>127.0.0.1</value> </param> <param> <key>id</key> <value>blocks_socket_pdu_0</value> </param> <param> <key>mtu</key> <value>10000</value> </param> <param> <key>maxoutbuf</key> <value>0</value> </param> <param> <key>minoutbuf</key> <value>0</value> </param> <param> <key>port</key> <value>40868</value> </param> <param> <key>tcp_no_delay</key> <value>False</value> </param> <param> <key>type</key> <value>"UDP_CLIENT"</value> </param> </block> <block> <key>import</key> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(296, 12)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>import_0</value> </param> <param> <key>import</key> <value>import math</value> </param> </block> <block> <key>lora_decode</key> <param> <key>alias</key> <value></value> </param> <param> <key>code_rate</key> <value>code_rate</value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>header</key> <value>header</value> </param> <param> <key>_coordinate</key> <value>(648, 452)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>lora_decode_0</value> </param> <param> <key>low_data_rate</key> <value>ldr</value> </param> <param> <key>maxoutbuf</key> <value>0</value> </param> <param> <key>minoutbuf</key> <value>0</value> </param> <param> <key>spreading_factor</key> <value>spreading_factor</value> </param> </block> <block> <key>lora_demod</key> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>fft_factor</key> <value>2</value> </param> <param> <key>beta</key> <value>25.0</value> </param> <param> <key>_coordinate</key> <value>(384, 452)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>lora_demod_0</value> </param> <param> <key>low_data_rate</key> <value>ldr</value> </param> <param> <key>maxoutbuf</key> <value>0</value> </param> <param> <key>minoutbuf</key> <value>0</value> </param> <param> <key>spreading_factor</key> <value>spreading_factor</value> </param> </block> <block> <key>pfb_arb_resampler_xxx</key> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>_enabled</key> <value>1</value> </param> <param> <key>_coordinate</key> <value>(656, 292)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>pfb_arb_resampler_xxx_0</value> </param> <param> <key>maxoutbuf</key> <value>0</value> </param> <param> <key>minoutbuf</key> <value>0</value> </param> <param> <key>nfilts</key> <value>32</value> </param> <param> <key>rrate</key> <value>bw/samp_rate</value> </param> <param> <key>samp_delay</key> <value>0</value> </param> <param> <key>atten</key> <value>100</value> </param> <param> <key>taps</key> <value></value> </param> <param> <key>type</key> <value>ccf</value> </param> </block> <block> <key>sdrplay_rsp2_source</key> <param> <key>agc_enabled</key> <value>False</value> </param> <param> <key>antenna</key> <value>'A'</value> </param> <param> <key>bw</key> <value>400</value> </param> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>dc_offset_mode</key> <value>True</value> </param> <param> <key>debug_enabled</key> <value>False</value> </param> <param> <key>device_serial</key> <value>'0'</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(144, 196)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>sdrplay_rsp2_source_0</value> </param> <param> <key>if_atten_db</key> <value>30</value> </param> <param> <key>ifType</key> <value>0</value> </param> <param> <key>iq_balance_mode</key> <value>True</value> </param> <param> <key>lna_atten_step</key> <value>3</value> </param> <param> <key>lo_mode</key> <value>1</value> </param> <param> <key>maxoutbuf</key> <value>0</value> </param> <param> <key>minoutbuf</key> <value>0</value> </param> <param> <key>rf_freq</key> <value>869.0e6</value> </param> <param> <key>sample_rate</key> <value>samp_rate</value> </param> </block> <block> <key>wxgui_fftsink2</key> <param> <key>avg_alpha</key> <value>0</value> </param> <param> <key>average</key> <value>False</value> </param> <param> <key>baseband_freq</key> <value>0</value> </param> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>fft_size</key> <value>1024</value> </param> <param> <key>freqvar</key> <value>None</value> </param> <param> <key>_coordinate</key> <value>(1000, 116)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>grid_pos</key> <value></value> </param> <param> <key>id</key> <value>wxgui_fftsink2_0</value> </param> <param> <key>notebook</key> <value></value> </param> <param> <key>peak_hold</key> <value>False</value> </param> <param> <key>ref_level</key> <value>0</value> </param> <param> <key>ref_scale</key> <value>2.0</value> </param> <param> <key>fft_rate</key> <value>15</value> </param> <param> <key>samp_rate</key> <value>samp_rate</value> </param> <param> <key>title</key> <value>FFT Plot</value> </param> <param> <key>type</key> <value>complex</value> </param> <param> <key>win_size</key> <value></value> </param> <param> <key>win</key> <value>None</value> </param> <param> <key>y_divs</key> <value>10</value> </param> <param> <key>y_per_div</key> <value>10</value> </param> </block> <connection> <source_block_id>blocks_rotator_cc_0</source_block_id> <sink_block_id>pfb_arb_resampler_xxx_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>blocks_rotator_cc_0</source_block_id> <sink_block_id>wxgui_fftsink2_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>lora_decode_0</source_block_id> <sink_block_id>blocks_socket_pdu_0</sink_block_id> <source_key>out</source_key> <sink_key>pdus</sink_key> </connection> <connection> <source_block_id>lora_demod_0</source_block_id> <sink_block_id>lora_decode_0</sink_block_id> <source_key>out</source_key> <sink_key>in</sink_key> </connection> <connection> <source_block_id>pfb_arb_resampler_xxx_0</source_block_id> <sink_block_id>lora_demod_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>sdrplay_rsp2_source_0</source_block_id> <sink_block_id>blocks_rotator_cc_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> </flow_graph> 


receive2.grc
 <?xml version='1.0' encoding='utf-8'?> <?grc format='1' created='3.7.11'?> <flow_graph> <timestamp>Mon Jun 3 09:39:45 2019</timestamp> <block> <key>options</key> <param> <key>author</key> <value></value> </param> <param> <key>window_size</key> <value></value> </param> <param> <key>category</key> <value>[GRC Hier Blocks]</value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>description</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(8, 8)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>generate_options</key> <value>wx_gui</value> </param> <param> <key>hier_block_src_path</key> <value>.:</value> </param> <param> <key>id</key> <value>top_block</value> </param> <param> <key>max_nouts</key> <value>0</value> </param> <param> <key>qt_qss_theme</key> <value></value> </param> <param> <key>realtime_scheduling</key> <value></value> </param> <param> <key>run_command</key> <value>{python} -u {filename}</value> </param> <param> <key>run_options</key> <value>prompt</value> </param> <param> <key>run</key> <value>True</value> </param> <param> <key>thread_safe_setters</key> <value></value> </param> <param> <key>title</key> <value></value> </param> </block> <block> <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(184, 12)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>samp_rate</value> </param> <param> <key>value</key> <value>1000000</value> </param> </block> <block> <key>lora_lora_receiver</key> <param> <key>bandwidth</key> <value>125000</value> </param> <param> <key>alias</key> <value></value> </param> <param> <key>crc</key> <value>True</value> </param> <param> <key>center_freq</key> <value>869e6</value> </param> <param> <key>channel_list</key> <value>[869.1e6]</value> </param> <param> <key>cr</key> <value>4</value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>conj</key> <value>False</value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>decimation</key> <value>1</value> </param> <param> <key>disable_channelization</key> <value>False</value> </param> <param> <key>disable_drift_correction</key> <value>False</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(456, 332)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>lora_lora_receiver_0</value> </param> <param> <key>implicit</key> <value>False</value> </param> <param> <key>maxoutbuf</key> <value>0</value> </param> <param> <key>minoutbuf</key> <value>0</value> </param> <param> <key>reduced_rate</key> <value>False</value> </param> <param> <key>samp_rate</key> <value>1e6</value> </param> <param> <key>sf</key> <value>8</value> </param> </block> <block> <key>lora_message_socket_sink</key> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(696, 364)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>lora_message_socket_sink_0</value> </param> <param> <key>ip</key> <value>127.0.0.1</value> </param> <param> <key>layer</key> <value>1</value> </param> <param> <key>port</key> <value>40868</value> </param> </block> <block> <key>sdrplay_rsp2_source</key> <param> <key>agc_enabled</key> <value>False</value> </param> <param> <key>antenna</key> <value>'A'</value> </param> <param> <key>bw</key> <value>400</value> </param> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>dc_offset_mode</key> <value>True</value> </param> <param> <key>debug_enabled</key> <value>False</value> </param> <param> <key>device_serial</key> <value>'0'</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(72, 148)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>id</key> <value>sdrplay_rsp2_source_0</value> </param> <param> <key>if_atten_db</key> <value>30</value> </param> <param> <key>ifType</key> <value>0</value> </param> <param> <key>iq_balance_mode</key> <value>True</value> </param> <param> <key>lna_atten_step</key> <value>3</value> </param> <param> <key>lo_mode</key> <value>1</value> </param> <param> <key>maxoutbuf</key> <value>0</value> </param> <param> <key>minoutbuf</key> <value>0</value> </param> <param> <key>rf_freq</key> <value>869.0e6</value> </param> <param> <key>sample_rate</key> <value>samp_rate</value> </param> </block> <block> <key>wxgui_fftsink2</key> <param> <key>avg_alpha</key> <value>0</value> </param> <param> <key>average</key> <value>True</value> </param> <param> <key>baseband_freq</key> <value>0</value> </param> <param> <key>alias</key> <value></value> </param> <param> <key>comment</key> <value></value> </param> <param> <key>affinity</key> <value></value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>fft_size</key> <value>1024</value> </param> <param> <key>freqvar</key> <value>None</value> </param> <param> <key>_coordinate</key> <value>(688, 108)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> <param> <key>grid_pos</key> <value></value> </param> <param> <key>id</key> <value>wxgui_fftsink2_0</value> </param> <param> <key>notebook</key> <value></value> </param> <param> <key>peak_hold</key> <value>True</value> </param> <param> <key>ref_level</key> <value>0</value> </param> <param> <key>ref_scale</key> <value>2.0</value> </param> <param> <key>fft_rate</key> <value>15</value> </param> <param> <key>samp_rate</key> <value>samp_rate</value> </param> <param> <key>title</key> <value>FFT Plot</value> </param> <param> <key>type</key> <value>complex</value> </param> <param> <key>win_size</key> <value></value> </param> <param> <key>win</key> <value>None</value> </param> <param> <key>y_divs</key> <value>10</value> </param> <param> <key>y_per_div</key> <value>10</value> </param> </block> <connection> <source_block_id>lora_lora_receiver_0</source_block_id> <sink_block_id>lora_message_socket_sink_0</sink_block_id> <source_key>frames</source_key> <sink_key>in</sink_key> </connection> <connection> <source_block_id>sdrplay_rsp2_source_0</source_block_id> <sink_block_id>lora_lora_receiver_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>sdrplay_rsp2_source_0</source_block_id> <sink_block_id>wxgui_fftsink2_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> </flow_graph> 


рд╕рднреА рд╕рдлрд▓ рдкреНрд░рдпреЛрдЧред

Source: https://habr.com/ru/post/hi454666/


All Articles