I see! So, it is reporting a CRC error. Do you have a low cost RTL-SDR? It could help you to identify what the TX is sent incorrectly. This LoRa example was working fine. Could it be some hardware issue?
BR, Alan On 3/7/22, 王国柱 <wgz_z...@163.com> wrote: > Here is to judge whether the data is valid according to the interrupted > attitude, and it is not realistic to add a print statement。 > nuttx\drivers\wireless\lpwan\sx127x\sx127x.c > > > #ifdef CONFIG_LPWAN_SX127X_RXSUPPORT > /* RX DONE */ > > > case SX127X_OPMODE_RX: > case SX127X_OPMODE_RXSINGLE: > { > /* REVISIT: Always check PAYLOADCRCERR even CRCONPAYLOAD not set > */ > > > if ((irq & SX127X_LRM_IRQ_PAYLOADCRCERR) != 0) > { > data_valid = false; > } > > > if (data_valid) > { > ret = sx127x_lora_rxhandle(dev); > if (ret > 0) > { > if (dev->pfd) > { > /* Data available for input */ > > > dev->pfd->revents |= POLLIN; > > > wlinfo("Wake up polled fd\n"); > nxsem_post(dev->pfd->sem); > } > > > /* Wake-up any thread waiting in recv */ > > > nxsem_post(&dev->rx_sem); > } > } > else > { > /* RX Data invalid */ > > > wlinfo("Invalid LORA RX data!\n"); > } > On 3/7/2022 18:02,Alan Carvalho de Assis<acas...@gmail.com> wrote: > Try to print the received data that generated the "Invalid LORA RX data" > > On Monday, March 7, 2022, 王国柱 <wgz_z...@163.com> wrote: > > Set power to 14 > Waiting for data > > sx127x_lora_isr0_process: ISR0: IRQ = 0x70 > sx127x_lora_isr0_process: Invalid LORA RX data! > > > > > > On 3/7/2022 14:32,王国柱<wgz_z...@163.com> wrote: > Oh, sorry for the mistake in the email just now, the device running sx127x > -r has been waiting for data > Set power to 14 > Waiting for data > > sx127x_lora_isr0_process: ISR0: IRQ = 0x70 > sx127x_lora_isr0_process: Invalid LORA RX data! > > > And the device that executes sx127x -t has been sending data, > > > > sx127x_write: buflen=5 > sx127x_opmode_set: opmode_set 2->2 > Sesx127x_lora_isr0_process: ISR0: IRQ = 0x08 > sx127x_lora_isr0_process: WARNING: Interrupt not processed, opmode=2 > nsx127x_isr0_process: Failed to process ISR0 -22 > d sx127x_opmode_set: opmode_set 2->4 > 5 bytes > sx127x_lora_isr0_process: ISR0: IRQ = 0x08 > sx127x_opmode_set: opmode_set 4->2 > wait 5 sec ... > > > > > > > GPIO_SX127X_DIO0 is configured with PC1, how can I debug it now? > #defineGPIO_SX127X_DIO0 > (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTC|GPIO_PIN1) > > > > > On 3/4/2022 01:14,Alan Carvalho de Assis<acas...@gmail.com> wrote: > Yes, that is correct. > > Which pin did you use to receive interrupt (GPIO_SX127X_DIO0) ? > > Try to monitor this pin to see it changes status when other device > transmit. Also you can double check if the other device is > transmitting using a RTL-SDR device. > > BR, > > Alan > > On 3/3/22, Prelude <wgz_z...@163.com> wrote: > When I use it, one device sends a command using 'sx127x -t', and the other > receives a command using 'sx127x -r'. > Look at the apps/examples/sx127x_demo/sx127x_demo.c,Is this OK? > > > > > > ---- 回复的原邮件 ---- > | 发件人 | 王国柱<wgz_z...@163.com> | > | 日期 | 2022年03月03日 12:17 | > | 收件人 | acas...@gmail.com<acas...@gmail.com> | > | 抄送至 | dev@nuttx.apache.org<dev@nuttx.apache.org> | > | 主题 | Re: nuttx lora sx127x device use for help | > I tested the two devices with an oscilloscope and both have signals, but > there is no communication between the two devices. > One is always sending data, and the other is waiting to receive data. Does > the communication between the two devices need to be networked first? > > > That's what it used to be, but I used two boards to execute sx127x -r on one > of the boards and sx127x -t on the other, expecting communication between > the two boards, but it didn't work as expected . Do you need any other > configuration? > the first board: > nsh> sx127x -t > Start sx127x_demo > LORA modulation > Set frequency to 930000000 > Set power to 14 > > Send 5 bytes > ........ > > the sencond boad: > nsh> sx127x -r > Start sx127x_demo > LORA modulation > Set frequency to 930000000 > Set power to 14 > Waiting for data > ........ > > >