mruijter / lora_transceiver Goto Github PK
View Code? Open in Web Editor NEWA lora transceiver for peer to peer communication with the Raspberry PI dragino Lora GPS hat.
License: MIT License
A lora transceiver for peer to peer communication with the Raspberry PI dragino Lora GPS hat.
License: MIT License
Hi,
I have an Arduino MKR 1300 which sends weather data (see this code) via lora.
If i use my RaspberryPi with the Dragino hat with the original dragino code the RaspberryPi receives nearly every message. If i use your code, I only receive a few messages -> over 80 % loss. The distance between the RaspberryPi and the Arduino is 1m. The frequency, spreading factor, bandwith, coding rate and crc settings are the same on both. Do you have an idea what could be the problem?
Greetings
Hello,
I am running RaspberryPi OS 64 Bit and wanted to establish a connection between 2 LoRa hats. I am using 64 Bit because I am running a backend with mongodb and want to use more than 2GB. With 32bit I am limited to 2GB of DB storage. After running make
i got this:
g++ -I ./include lora_transceiver.c lib_log.c lib_str.c lib_cfg.c -lwiringPi -o lora_transceiver
/usr/bin/ld: skipping incompatible /usr/lib/gcc/aarch64-linux-gnu/8/../../../../lib/libwiringPi.so when searching for -lwiringPi
/usr/bin/ld: skipping incompatible /lib/../lib/libwiringPi.so when searching for -lwiringPi
/usr/bin/ld: skipping incompatible /usr/lib/../lib/libwiringPi.so when searching for -lwiringPi
/usr/bin/ld: skipping incompatible /usr/lib/gcc/aarch64-linux-gnu/8/../../../libwiringPi.so when searching for -lwiringPi
Note: I first installed lwiringpi
over apt-get
but make
failed completely and I then installed a 64 Bit version of it.
While running make install
I then got this:
install -m 755 lora_transceiver /usr/bin
install -m 644 lora.service /lib/systemd/system
install -D -b -m 644 lora.conf-example /etc/lora/lora.conf
systemctl daemon-reload
systemctl restart lora
systemctl status lora
โ lora.service - Starts the lora transceiver.
Loaded: loaded (/lib/systemd/system/lora.service; disabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Wed 2021-06-23 12:37:42 CEST; 20ms ago
Process: 12983 ExecStart=/usr/bin/lora_transceiver (code=exited, status=1/FAILURE)
Main PID: 12983 (code=exited, status=1/FAILURE)
make: *** [Makefile:20: install] Error 3
it works great and helped me a lot , I have problem how to alternate between Tx and Rx, if Rx fifo is receiving, and then Tx Fifo is written, it freezes, I haven't fully grasp how the whole thing working. thank you.
Hi mruijter,
I tried to send out regularly, using "while true; do echo "hello lora" >/dev/shm/send_fifo; sleep 1; done"
on the receiver side arduino dragino shield is used. but seems after a while it stop sending, until the lora.service is restarted, but then it stops again after a while (approx. 10x sending),
my config is: SF7, BW125, blocksize 3 (tried also 32), CR4_8, CRC=enabled., on the Arduino side, is configured the identical.
How could I debug this ? where to look for this kind of problem?
Thank You, Regards.
Hi, I have tried this code in sx1276 and it worked in sf7 868.1mhz bw125khz
but I tried to change sf to 12 and then I can`t receive any signal.
config.txt is the same as yours.
Or I should change it in REG_MODEM_CONFIG2?
The lora_transreceiver was working for over a year now on my RaspberryPi 3B. I bought a Raspberry Pi 4 and would like to upgrade to it. Unfortunatelly the lora_transceiver isn't working on the Raspberry Pi 4.
I printed out the version which is used to detect if it's a sx1272/76 (lora_transceiver.c, line 290). The version which is printed out is 00
Verbose level: 2
Selected bandwidth: BW125
Selected spreading factor: SF8
CRC checks: enabled
Selected coding rate: CR4_5
Debugging: enabled
Send / receive packets at: SF8 on 868.300000 Mhz.
Fifo /dev/shm/receive_fifo is now open
Fifo /dev/shm/send_fifo is now open
Unrecognized transceiver.
@mruijter Do you have an idea what could be wrong here? If i put it back on the RaspberryPi 3B it's working
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.