[snip] notes for this repo
Note: OMG This library has led to countless hours of frustrastion on my part, and this and the hal fork represents a set of changes that I was debugging /wrt to implementation on a pcengines (https://www.pcengines.ch/) apu2 / apu3 setup. These were mostly configuration changes that I was making to local header files, and wanted to keep a copy of the fork based library incase profiling or debugging symbols needed to be added. As it turns out - the problem appears to be more a factor of a collided interupt on the apu2 / apu3 platform, which was knocking the embedded intel nic's offline as the semtech card was initialized. After I fried the module in a 140 degree texas attic, my will to continute with the debugging became less interesting.
Thru my travels...was modelling this -> https://thomasflummer.com/projects/lora-gateway/
Had an APU2 / APU3 (once I thought the problem might be apu2 build specific), but turns out it's a problem across both apu2/apu3 hardware platform HW setup -pcengines apu2 / apu3 -https://www.n-fuse.co/devices/LoRaWAN-Concentrator-Card-mini-PCIe.html
IMO -- recommend folks not consider the APU + n-fuse mcpie platform, not so much because of issues like this, but more because there are easier / less expensive / smaller foot setups to build / test gateways with that require less effort.
A RPI + https://store.rakwireless.com/collections/wishat/products/rak2287-pi-hat + https://www.rakwireless.com/en-us/products/lpwan-gateways-and-concentrators/rak2287
links
https://github.com/Lora-net/picoGW_packet_forwarder/issues?q=is%3Aissue+is%3Aclosed
Adrian Terranova Jan 31 2021 @gmail.com (it's not hard to find me.)
/ _____) _ | |
( (____ _____ ____ _| |_ _____ ____| |__
\____ \| ___ | (_ _) ___ |/ ___) _ \
_____) ) ____| | | || |_| ____( (___| | | |
(______/|_____)_|_|_| \__)_____)\____)_| |_|
(C)2013 Semtech-Cycleo
The packet forwarder is a program running on the host of a LoRa Picocell gateway that forwards RF packets receive by the concentrator to a server through a IP/UDP link, and emits RF packets that are sent by the server.
((( Y )))
|
|
+- -|- - - - - - - - - - - - -+ xxxxxxxxxxxx +--------+
|+--+-----------+ +------+| xx x x xxx | |
|| | | || xx Internet xx | |
|| Concentrator |<----+ Host |<------xx or xx-------->| |
|| | USB | || xx Intranet xx | Server |
|+--------------+ +------+| xxxx x xxxx | |
| | xxxxxxxx | |
| | | |
| Gateway | +--------+
+- - - - - - - - - - - - - - -+
Uplink: radio packets received by the gateway, with metadata added by the gateway, forwarded to the server. Might also include gateway status.
Downlink: packets generated by the server, with additional metadata, to be transmitted by the gateway on the radio channel. Might also include configuration data for the gateway.
Those programs are included in the project to provide examples on how to communicate with the packet forwarder, and to help the system builder use it without having to implement a full Lora network server.
The packet sink is a simple helper program listening on a single port for UDP datagrams, and displaying a message each time one is received. The content of the datagram itself is ignored.
The packet acknowledger is a simple helper program listening on a single UDP port and responding to PUSH_DATA datagrams with PUSH_ACK, and to PULL_DATA datagrams with PULL_ACK.
The network packet sender is a simple helper program used to send packets through the gateway-to-server downlink route.
This script allows automatic update of Gateway_ID with unique MCU ID, in packet forwarder JSON configuration file.
note: the util_chip_id procided with picoGW_hal repository needs to be compiled and located in the same directory as this script.
A detailed PicoCell GW user guide is available here
- Updated lora_pkt_fwd for lgw_connect API change. A new command line option is available to specify the COM device to be used to access the PicoCell board.
- Initial release of the packet forwarder , protocol specifications and helper programs for Picocell Gateway, based on the packet forwarder of the Gateway v1.0/v1.5.
The information presented in this project documentation does not form part of any quotation or contract, is believed to be accurate and reliable and may be changed without notice. No liability will be accepted by the publisher for any consequence of its use. Publication thereof does not convey nor imply any license under patent or other industrial or intellectual property rights. Semtech assumes no responsibility or liability whatsoever for any failure or unexpected operation resulting from misuse, neglect improper installation, repair or improper handling or unusual physical or electrical stress including, but not limited to, exposure to parameters beyond the specified maximum ratings or operation outside the specified range.
SEMTECH PRODUCTS ARE NOT DESIGNED, INTENDED, AUTHORIZED OR WARRANTED TO BE SUITABLE FOR USE IN LIFE-SUPPORT APPLICATIONS, DEVICES OR SYSTEMS OR OTHER CRITICAL APPLICATIONS. INCLUSION OF SEMTECH PRODUCTS IN SUCH APPLICATIONS IS UNDERSTOOD TO BE UNDERTAKEN SOLELY AT THE CUSTOMER’S OWN RISK. Should a customer purchase or use Semtech products for any such unauthorized application, the customer shall indemnify and hold Semtech and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs damages and attorney fees which could arise.
EOF