Cooking Hacks Forum https://www.cooking-hacks.com/forum/ |
|
LoRA data rate https://www.cooking-hacks.com/forum/viewtopic.php?f=19&t=10419 |
Page 1 of 1 |
Author: | oyj0594 [ Fri Jul 21, 2017 5:37 am ] |
Post subject: | LoRA data rate |
Hi there, I bought several lora modules with raspberry pi shields, and I want to know about the data rate of LoRa . In your own implemented code, ardupiLoRa, there is several tx code like this. /* * LoRa 868 / 915MHz SX1272 LoRa module * * Copyright (C) Libelium Comunicaciones Distribuidas S.L. * http://www.libelium.com * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see http://www.gnu.org/licenses/. * * Version: 1.2 * Design: David Gasc처n * Implementation: Covadonga Albi챰ana, Victor Boria, Ruben Martin */ // Include the SX1272 and SPI library: #include "arduPiLoRa.h" int e; char message1 [] = "Packet 1, wanting to see if received packet is the same as sent packet"; char message2 [] = "Packet 2, broadcast test"; void setup() { // Print a start message printf("SX1272 module and Raspberry Pi: send packets with ACK\n"); // Power ON the module e = sx1272.ON(); printf("Setting power ON: state %d\n", e); // Set transmission mode e |= sx1272.setMode(4); printf("Setting Mode: state %d\n", e); // Set header e |= sx1272.setHeaderON(); printf("Setting Header ON: state %d\n", e); // Select frequency channel e |= sx1272.setChannel(CH_10_868); printf("Setting Channel: state %d\n", e); // Set CRC e |= sx1272.setCRC_ON(); printf("Setting CRC ON: state %d\n", e); // Select output power (Max, High or Low) e |= sx1272.setPower('H'); printf("Setting Power: state %d\n", e); // Set the node address e |= sx1272.setNodeAddress(3); printf("Setting Node address: state %d\n", e); // Print a success message if (e == 0) printf("SX1272 successfully configured\n"); else printf("SX1272 initialization failed\n"); delay(1000); } void loop(void) { // Send message1 and print the result e = sx1272.sendPacketTimeoutACK(8, message1); printf("Packet sent, state %d\n",e); delay(4000); // Send message2 broadcast and print the result e = sx1272.sendPacketTimeoutACK(0, message2); printf("Packet sent, state %d\n",e); delay(4000); } int main (){ setup(); while(1){ loop(); } return (0); } in loop() code, there is delay(4000); line. it means device will transmit LoRa packet with 4sec interval right? what i want to know is that this delay is really necessary or not. if delay is necessary, how much we can decrease that delay? |
Author: | libelium-dev [ Fri Jul 21, 2017 7:10 am ] |
Post subject: | Re: LoRA data rate |
Hi oyj0594, This delay was configured by our developers to ensure the communication. You can remove it but maybe the module fail some times. Regards |
Page 1 of 1 | All times are UTC + 1 hour |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |