首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >发送或接收时的Lilygo ttgo t波束和Lora问题

发送或接收时的Lilygo ttgo t波束和Lora问题
EN

Stack Overflow用户
提问于 2020-06-08 00:12:43
回答 2查看 1.7K关注 0票数 0

是否可以从T形波束发送lora有效载荷并从LoRa32 SX1276 OLED (v2)接收它?如果我遵循这两个教程:https://randomnerdtutorials.com/ttgo-lora32-sx1276-arduino-ide/https://randomnerdtutorials.com/esp32-lora-rfm95-transceiver-arduino-ide/,我可以毫无问题地从两个LoRa32设备发送和接收。

但是,如果我打开LoRa32接收器,并尝试从T型梁T22V1.0发送,似乎什么都没有发生。

T波束代码:(设置了一些与gps相关的变量,但为了清楚起见,我删除了gps代码。GPS确实工作得很好。)

我做错了什么?

(如果我不适合这种初学者的问题,请告诉我,我会试着找一个更合适的地方。)

代码语言:javascript
复制
#include <TinyGPS++.h>
#include <axp20x.h>
#include <SPI.h>
#include <LoRa.h>

#define SCK     5    // GPIO5  -- SX1278's SCK
#define MISO    19   // GPIO19 -- SX1278's MISnO
#define MOSI    27   // GPIO27 -- SX1278's MOSI
#define SS      18   // GPIO18 -- SX1278's CS
#define RST     23   // GPIO14 -- SX1278's RESET
#define DI0     26   // GPIO26 -- SX1278's IRQ(Interrupt Request)
#define BAND  868E6

TinyGPSPlus gps;
HardwareSerial GPS(1);
AXP20X_Class axp;

void setup()
{
  Serial.begin(115200);
  Wire.begin(21, 22);
  if (!axp.begin(Wire, AXP192_SLAVE_ADDRESS)) {
    Serial.println("AXP192 Begin PASS");
  } else {
    Serial.println("AXP192 Begin FAIL");
  }
  axp.setPowerOutPut(AXP192_LDO2, AXP202_ON); //lora
  axp.setPowerOutPut(AXP192_LDO3, AXP202_ON); //gps
  axp.setPowerOutPut(AXP192_DCDC2, AXP202_ON); 
  axp.setPowerOutPut(AXP192_EXTEN, AXP202_ON);
  axp.setPowerOutPut(AXP192_DCDC1, AXP202_ON); //oled
  GPS.begin(9600, SERIAL_8N1, 34, 12);   //17-TX 18-RX

  SPI.begin(SCK,MISO,MOSI,SS);
  LoRa.setPins(SS,RST,DI0);
  if (!LoRa.begin(BAND)) {
    Serial.println("Starting LoRa failed!");
    while (1);
  }else{
    Serial.println("Starting LoRa succeed!");
  }

  axp.setChgLEDMode(AXP20X_LED_BLINK_1HZ);

}

void loop()
{
  LoRa.beginPacket();
  LoRa.print("Hello");  
  LoRa.endPacket();
  Serial.println("sent..");

  delay(1000);
}

谢谢:)

编辑

我试着使用https://github.com/Extentsoftware/TBeamPower

还是一无所获。代码如下:

代码语言:javascript
复制
#include <Arduino.h>
#include <SPI.h>
#include <LoRa.h>         // https://github.com/sandeepmistry/arduino-LoRa/blob/master/API.md
#include "gps.h"
#include "TBeamPower.h"

TBeamPower power(PWRSDA, PWRSCL); //21 22

void setupSerial() { 
  Serial.println();
  power.print_wakeup_reason();
}

void setup() {

  Serial.begin(115200);
  while (!Serial);

  Serial.println("Power begin");
  power.begin();

  Serial.println("All sensors off");
  power.power_sensors(false);

  Serial.println("All peripherals off");
  power.power_peripherals(false);

  Serial.println("Powering LoRa");
  power.power_LoRa(true);

  SPI.begin(SCK,MISO,MOSI,SS); //5 19 27 18
  LoRa.setPins(SS,RST,DI0); //18 14 26

  if (!LoRa.begin(BAND)) { //868E6 (France)
    Serial.println("Starting LoRa failed!");
    while (1);
  }else{
    Serial.println("Starting LoRa succeed!");
  }

  Serial.println();
}

void loop() {
  power.led_onoff(true);
  delay(500);
  power.led_onoff(false);

  LoRa.beginPacket();
  LoRa.print("hello");  
  LoRa.endPacket();
  Serial.println("sent..");
  power.print_status();
  Serial.println();
  delay(2000);  
}

这是我得到的输出

代码语言:javascript
复制
Power begin
AXP192 Begin PASS
All sensors off
All peripherals off
Powering LoRa
Starting LoRa succeed!

sent..
Voltages:
         DCDC1: 3.30v
         DCDC2: 1.25v
         DCDC3: 3.30v
         LDO2: 3.30v
         LDO3: 2.80v
ChargeCurrent:   0.70A
IPSOUTVoltage:   3.57v
Temp:            15.94°C
TSTemp:          800.00
VbusCurrent:     0.00
VbusVoltage:     0.00
Battery:
         Connected: false
         Charging:  false
         ChargEN :  true
         Voltage:   0.00v
         Inpower:   0.00
         DischgCur: 0.00
         ChargeCur: 0.00

我甚至试着换了天线。我也尝试使TBeam作为接收器,但什么也没有到达。

EN

回答 2

Stack Overflow用户

发布于 2020-09-02 04:42:36

我也遇到了同样的问题,使用一个t波束发送,另一个接收。解决方案是重新启动两个主板的电源。执行重置或上载代码不会做同样的事情。我花了几个小时查看我的代码,并尝试不同的东西,直到我重新打开两个主板的电源。我终于可以为我的项目编写代码了。Lilygo文档非常少,并且一些示例代码不起作用。

票数 0
EN

Stack Overflow用户

发布于 2020-10-21 06:15:28

在频率相同的情况下,它们应该可以工作,

检查T形梁和LoRa32模块是否以相同的频率运行。Lora支持不同的频率。如果您签入您提供的链接,您将看到以下代码:

代码语言:javascript
复制
//433E6 for Asia
//866E6 for Europe
//915E6 for North America
#define BAND 866E6

而在你的T形波束代码中有

代码语言:javascript
复制
#define BAND  868E6

所以,也许你在这里遇到了问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62248154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档