Difference between revisions of "Dragino Lora/GPS HAT"
From ArmadeusWiki
(→LoRa™) |
(presentation) |
||
Line 1: | Line 1: | ||
− | |||
− | Instructions to use Dragino Lora/GPS HAT on [[OPOS6ULDev]] (thanks to RaspberryPi™ compatible connector). | + | Instructions to use the Dragino Lora/GPS HAT on [[OPOS6ULDev]] (thanks to RaspberryPi™ compatible connector). |
[http://wiki.dragino.com/index.php?title=File:Hatpin.png] | [http://wiki.dragino.com/index.php?title=File:Hatpin.png] | ||
− | + | =LoRa™= | |
+ | ==Setup== | ||
* RESET is connected to RPi GPIO0 which is gpio24 on [[OPOS6UL]] set as output | * RESET is connected to RPi GPIO0 which is gpio24 on [[OPOS6UL]] set as output | ||
* nSS is connected to RPi GPIO6, which is gpio97 on [[OPOS6UL]] set as output | * nSS is connected to RPi GPIO6, which is gpio97 on [[OPOS6UL]] set as output | ||
Line 16: | Line 16: | ||
</pre> | </pre> | ||
− | + | === Testing that chip is recognized with python spidev === | |
− | + | * Bring chip out of reset: | |
<pre class="apf"> | <pre class="apf"> | ||
# echo 24 > /sys/class/gpio/export | # echo 24 > /sys/class/gpio/export | ||
Line 24: | Line 24: | ||
# echo 1 > /sys/class/gpio/gpio24/value | # echo 1 > /sys/class/gpio/gpio24/value | ||
</pre> | </pre> | ||
− | + | * activate it: | |
<pre class="apf"> | <pre class="apf"> | ||
# echo 97 > /sys/class/gpio/export | # echo 97 > /sys/class/gpio/export | ||
Line 30: | Line 30: | ||
# echo 0 > /sys/class/gpio/gpio97/value | # echo 0 > /sys/class/gpio/gpio97/value | ||
</pre> | </pre> | ||
− | + | * read ID (register 0x42): | |
<source lang="python"> | <source lang="python"> | ||
import spidev | import spidev | ||
Line 41: | Line 41: | ||
</source> | </source> | ||
− | + | ==Tested Software== | |
+ | ===Gateway=== | ||
* https://github.com/tftelkamp/single_chan_pkt_fwd | * https://github.com/tftelkamp/single_chan_pkt_fwd | ||
<pre class="host"> | <pre class="host"> | ||
Line 79: | Line 80: | ||
</source> | </source> | ||
+ | ===Node=== | ||
* http://wiki.dragino.com/index.php?title=Use_Lora/GPS_HAT_%2B_RaspberryPi_to_set_up_a_Lora_Node | * http://wiki.dragino.com/index.php?title=Use_Lora/GPS_HAT_%2B_RaspberryPi_to_set_up_a_Lora_Node | ||
<pre class="host"> | <pre class="host"> | ||
Line 108: | Line 110: | ||
</pre> | </pre> | ||
− | + | =GPS= | |
− | * GPS is connected to UART2 (/dev/ttymxc1) | + | * GPS is connected to UART2 (''/dev/ttymxc1'') |
− | * [[NTP#Time_synchronisation_from_GPS]] | + | * [[NTP#Time_synchronisation_from_GPS|Use GPS to get time/date with NTP]] |
− | + | =Links= | |
* http://www.dragino.com/products/module/item/106-lora-gps-hat.html | * http://www.dragino.com/products/module/item/106-lora-gps-hat.html | ||
* http://wiki.dragino.com/index.php?title=Lora/GPS_HAT | * http://wiki.dragino.com/index.php?title=Lora/GPS_HAT | ||
Line 123: | Line 125: | ||
[[Category:RPi_Hats]] | [[Category:RPi_Hats]] | ||
[[Category:LoRa]] | [[Category:LoRa]] | ||
+ | [[Category:GPS]] |
Revision as of 17:20, 29 March 2017
Instructions to use the Dragino Lora/GPS HAT on OPOS6ULDev (thanks to RaspberryPi™ compatible connector).
Contents
LoRa™
Setup
- RESET is connected to RPi GPIO0 which is gpio24 on OPOS6UL set as output
- nSS is connected to RPi GPIO6, which is gpio97 on OPOS6UL set as output
- DIO0 is connected to RPi GPIO7, which is gpio10 on OPOS6UL set as input
- on recent models (like the one we tested) DIO1 is connected to RPi GPIO4, which is gpio18 on OPOS6UL set as input
- on recent models (like the one we tested) DIO1 is connected to RPi GPIO5, which is gpio19 on OPOS6UL set as input
- This Hat/Shield is using HOPERF RFM96W module (clone of Semtech's SX1276 ?) which is controlled through SPI bus.
# modprobe spidev
Testing that chip is recognized with python spidev
- Bring chip out of reset:
# echo 24 > /sys/class/gpio/export # echo out > /sys/class/gpio/gpio24/direction # echo 0 > /sys/class/gpio/gpio24/value # echo 1 > /sys/class/gpio/gpio24/value
- activate it:
# echo 97 > /sys/class/gpio/export # echo out > /sys/class/gpio/gpio97/direction # echo 0 > /sys/class/gpio/gpio97/value
- read ID (register 0x42):
import spidev
spi = spidev.SpiDev()
spi.open(3,0)
to_send=[0x42,0x00]
spi.xfer(to_send)
[255, 255]
Tested Software
Gateway
Compile it under Buildroot: $ make lora-forwarder Compile it under Debian (as_devices library is needed): # git clone https://github.com/tftelkamp/single_chan_pkt_fwd.git # make CFLAGS="-c -Wall -I/usr/include/as_devices/" LIBS="-las_devices"
# modprobe spidev # echo 9 > /sys/class/gpio/export # echo 24 > /sys/class/gpio/export # echo 97 > /sys/class/gpio/export # echo out > /sys/class/gpio/gpio97/direction # echo out > /sys/class/gpio/gpio24/direction # echo in > /sys/class/gpio/gpio9/direction
- to get & printout UDP data from gateway:
#!/usr/bin/python
import socket
UDP_IP = "192.168.1.28"
UDP_PORT = 1700
sock = socket.socket(socket.AF_INET, # Internet
socket.SOCK_DGRAM) # UDP
sock.bind((UDP_IP, UDP_PORT))
while True:
data, addr = sock.recvfrom(1024) # buffer size is 1024 bytes
print "received message:", data
Node
To compile it on Buildroot: $ make lmic-pi To compile it on Debian: # wget https://github.com/ernstdevreede/lmic_pi/archive/master.zip # unzip master.zip # cd lmic_pi-master/lmic # make CFLAGS="-c -Wall -I/usr/include/as_devices/" LIBS="-las_devices" # cd ../examples/thethingsnetwork-send-v1/ # make CFLAGS="-Wall -I/usr/include/as_devices/ -I../../lmic" LDFLAGS="-las_devices" # chmod a+x thethingsnetwork-send-v1
# modprobe spidev # echo 9 > /sys/class/gpio/export # echo 18 > /sys/class/gpio/export # echo 19 > /sys/class/gpio/export # echo 24 > /sys/class/gpio/export # echo 97 > /sys/class/gpio/export # echo out > /sys/class/gpio/gpio97/direction # echo out > /sys/class/gpio/gpio24/direction # echo in > /sys/class/gpio/gpio9/direction # echo in > /sys/class/gpio/gpio18/direction # echo in > /sys/class/gpio/gpio19/direction
GPS
- GPS is connected to UART2 (/dev/ttymxc1)
- Use GPS to get time/date with NTP
Links
- http://www.dragino.com/products/module/item/106-lora-gps-hat.html
- http://wiki.dragino.com/index.php?title=Lora/GPS_HAT
LoRa is a registered trademark of Semtech.
RaspberryPi is a registered trademark of RaspberryPi Foundation.