Libelium is offering new technical support channels, to contact with de Technical Support team to solve any issue our doubt please contact with your sales agent or visit our contact site



Post a new topicPost a reply Page 1 of 1   [ 4 posts ]
Author Message
 Post subject: Arduino Mega + Lora
PostPosted: Fri Feb 26, 2016 12:38 pm 

Joined: Fri Feb 26, 2016 11:41 am
Posts: 2
Hola a todos!!!
Estoy intentando conectar dos Arduino Mega con el modulo “LoRa Radio Shield for Arduino - 868 MHz “ (https://www.cooking-hacks.com/lora-radi ... no-868-mhz).
He descargado las librerías de vuestra web y he programado los arduinos con los ejemplos que vienen con ellas y este es el resultado que me sale por el puerto serie con el sketch de configurarcion:
Code:
SX1272 module configuration in Arduino
Setting power ON: state 1
Setting Mode: state 1
Setting Header ON: state -1
Setting Channel: state -1
Setting CRC ON: state -1
Setting Power: state -1
Setting node address: state -1
SX1272 initialization failed


y esto con el de recepcion:

Code:
SX1272 module and Arduino: receive packets without ACK
Setting power ON: state 1
Setting Mode: state 1
Setting Header ON: state -1
Setting Channel: state 1
Setting CRC ON: state 1
Setting Power: state 0
Setting node address: state 1
SX1272 successfully configured

Receive packet, state 1
Receive packet, state 1




Tambien he probado los modulos lora con dos Arduino Uno y aunque inician bien no consigo que se comuniquen...

Code:
SX1272 module and Arduino: receive packets without ACK
Setting power ON: state 0
Setting Mode: state 0
Setting Header ON: state 0
Setting Channel: state 0
Setting CRC ON: state 0
Setting Power: state 0
Setting node address: state 0
SX1272 successfully configured


Starting 'availableData'
** The timeout has expired **

Receive packet, state 1

Starting 'availableData'
** The timeout has expired **


¿Que puedo estar haciendo mal? ¿Los jumpers del radio shield deben de estar en alguna posicion determinada? ¿hay que cambiar algo en la libreria para que funcione con el mega?...
Muchas gracias y Un saludo


Top
 Profile  
 
 Post subject: Re: Arduino Mega + Lora
PostPosted: Mon Feb 29, 2016 8:48 am 

Joined: Mon Sep 28, 2009 12:06 pm
Posts: 11366
Hola Jano,

te recomendamos que primero pruebes los módulos con Arduino Uno, porque es en la única plataforma que los hemos probado, y más tarde trates de portarlo a Arduino Mega. Por favor envíanos unas fotos de tus módulos y el código que estas usando para ayudarte mejor.

¿Tienes la multiprotocol versión 1 o 2? Los jumpers deben estar en la posición izquierda (Arduino) y el interruptor en caso de estar (versión 1) debe estar en On.

Un saludo.


Top
 Profile  
 
 Post subject: Re: Arduino Mega + Lora
PostPosted: Tue Mar 01, 2016 10:00 am 

Joined: Fri Feb 26, 2016 11:41 am
Posts: 2
¡Hola!
Estoy probando el código que sale en los ejemplos que vienen con las librerías. Lo he probado tanto con arduino mega como con el uno. Ahí va el código que uso:

Para el que recibe:

Code:
#include <Wire.h>

// Cooking API libraries
#include <arduinoUtils.h>

// Include the SX1272 and SPI library:
#include "arduinoLoRa.h"
#include <SPI.h>

int e;
char my_packet[100];

void setup()
{
  // Open serial communications and wait for port to open:
  Serial.begin(9600);

  // Print a start message
  Serial.println(F("SX1272 module and Arduino: receive packets without ACK"));

  // Power ON the module
  e = sx1272.ON();
  Serial.print(F("Setting power ON: state "));
  Serial.println(e, DEC);
 
  // Set transmission mode and print the result
  e |= sx1272.setMode(4);
  Serial.print(F("Setting Mode: state "));
  Serial.println(e, DEC);
 
  // Set header
  e |= sx1272.setHeaderON();
  Serial.print(F("Setting Header ON: state "));
  Serial.println(e, DEC);
 
  // Select frequency channel
  e |= sx1272.setChannel(CH_10_868);
  Serial.print(F("Setting Channel: state "));
  Serial.println(e, DEC);
 
  // Set CRC
  e |= sx1272.setCRC_ON();
  Serial.print(F("Setting CRC ON: state "));
  Serial.println(e, DEC);
 
  // Select output power (Max, High or Low)
  e |= sx1272.setPower('H');
  Serial.print(F("Setting Power: state "));
  Serial.println(e, DEC);
 
  // Set the node address and print the result
  e |= sx1272.setNodeAddress(8);
  Serial.print(F("Setting node address: state "));
  Serial.println(e, DEC);
 
  // Print a success message
  if (e == 0)
    Serial.println(F("SX1272 successfully configured"));
  else
    Serial.println(F("SX1272 initialization failed"));
}

void loop(void)
{
  // Receive message
  e = sx1272.receivePacketTimeout(10000);
  if ( e == 0 )
  {
    Serial.print(F("Receive packet, state "));
    Serial.println(e, DEC);

    for (unsigned int i = 0; i < sx1272.packet_received.length; i++)
    {
      my_packet[i] = (char)sx1272.packet_received.data[i];
    }
    Serial.print(F("Message: "));
    Serial.println(my_packet);
  }
  else {
    Serial.print(F("Receive packet, state "));
    Serial.println(e, DEC);
  }
}


Para el que emite..

Code:
#include <Wire.h>

// Cooking API libraries
#include <arduinoUtils.h>

// Include the SX1272 and SPI library:
#include "arduinoLoRa.h"
#include <SPI.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()
{
  // Open serial communications and wait for port to open:
  Serial.begin(9600);
 
  // Print a start message
  Serial.println(F("SX1272 module and Arduino: send packets without ACK"));
 
  // Power ON the module
  e = sx1272.ON();
  Serial.print(F("Setting power ON: state "));
  Serial.println(e, DEC);
 
  // Set transmission mode and print the result
  e |= sx1272.setMode(4);
  Serial.print(F("Setting Mode: state "));
  Serial.println(e, DEC);
 
  // Set header
  e |= sx1272.setHeaderON();
  Serial.print(F("Setting Header ON: state "));
  Serial.println(e, DEC);
 
  // Select frequency channel
  e |= sx1272.setChannel(CH_10_868);
  Serial.print(F("Setting Channel: state "));
  Serial.println(e, DEC);
 
  // Set CRC
  e |= sx1272.setCRC_ON();
  Serial.print(F("Setting CRC ON: state "));
  Serial.println(e, DEC);
 
  // Select output power (Max, High or Low)
  e |= sx1272.setPower('H');
  Serial.print(F("Setting Power: state "));
  Serial.println(e, DEC);
 
  // Set the node address and print the result
  e |= sx1272.setNodeAddress(3);
  Serial.print(F("Setting node address: state "));
  Serial.println(e, DEC);
 
  // Print a success message
  if (e == 0)
    Serial.println(F("SX1272 successfully configured"));
  else
    Serial.println(F("SX1272 initialization failed"));
}

void loop(void)
{
  // Send message1 and print the result
  e = sx1272.sendPacketTimeout(8, message1);
  Serial.print(F("Packet sent, state "));
  Serial.println(e, DEC);

  delay(4000); 

  // Send message2 broadcast and print the result
  e = sx1272.sendPacketTimeout(0, message2);
  Serial.print(F("Packet sent, state "));
  Serial.println(e, DEC);

  delay(4000); 
}


He probado diferentes modos, direcciones y potencias... y con el Arduino Uno no llegan los mensajes.
La multiprotocol es la version 2.

Aqui la foto:
https://www.dropbox.com/s/30dfctt0mkbdo ... 3.jpg?dl=0

Es la primera vez que pruebo estas antenas y la verdad no tengo muy claro como hacerlas funcionar.

Y ya que estoy aprovecho para preguntaros: ¿Solo funcionan con emisor o receptor o pueden hacer las dos cosas a la vez? Comunicacion Duplex de esa que creo que le llaman..
Un saludo y muchas gracias por vuestro tiempo


Top
 Profile  
 
 Post subject: Re: Arduino Mega + Lora
PostPosted: Wed Mar 02, 2016 9:20 am 

Joined: Mon Sep 28, 2009 12:06 pm
Posts: 11366
Hola Jano,
Pudes utilizar cada módulo como emisor o receptor pero no como emisor/recetor al mismo tiempo. Es decir, puede poner un módulo a recibir y cuardo recibe el paquete ponerlo como emisor y emitir ese paquete u otra cosa.
Los ejemplos están hechos para enlazar sin tocar nada. Deberían funcionar a la primera. ¿Puedes mandarnos unas imágenes de lo que te sale por pantalla?
Saludos


Top
 Profile  
 
Display posts from previous:  Sort by  
Post a new topicPost a reply Page 1 of 1   [ 4 posts ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
cron


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Libelium theme based on 610nm Style by Daniel St. Jules of http://www.gamexe.net


© Libelium Comunicaciones Distribuidas S.L. | Terms of use.