Skip to content

Commit 44bb1f8

Browse files
authored
Merge pull request #504 from sparkfun/release_candidate
Merge v2 into main
2 parents 99dedc8 + 142e2a4 commit 44bb1f8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+15930
-5094
lines changed

.gitignore

Lines changed: 29 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ ehthumbs.db
77
*.b#?
88
*.l#?
99
*.lck
10+
.vscode/*
11+
/Firmware/LoRaSerial_Firmware/.vscode/*
12+
/Firmware/build/*
1013

1114
# Folder config file
1215
Desktop.ini
@@ -27,16 +30,29 @@ $RECYCLE.BIN/
2730
# OSX
2831
# =========================
2932

30-
.DS_Store
31-
.AppleDouble
32-
.LSOverride
33-
34-
# Icon must ends with two \r.
35-
Icon
36-
37-
# Thumbnails
38-
._*
39-
40-
# Files that might appear on external disk
41-
.Spotlight-V100
42-
.Trashes
33+
.DS_Store
34+
.AppleDouble
35+
.LSOverride
36+
37+
# Icon must ends with two \r.
38+
Icon
39+
40+
41+
# Thumbnails
42+
._*
43+
44+
# Files that might appear on external disk
45+
.Spotlight-V100
46+
.Trashes
47+
48+
# Linux
49+
# =========================
50+
51+
# Object files
52+
*.o
53+
54+
# Archives (Libraries)
55+
*.a
56+
57+
# Executables
58+
Firmware/Tools/VcServerTest
Binary file not shown.
6.24 MB
Binary file not shown.
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
@echo off
2+
if [%1]==[] goto usage
3+
4+
@echo Programming for SparkFun LoRaSerial
5+
@pause
6+
:loop
7+
8+
@echo -
9+
@echo Programming binary: %1
10+
11+
@echo Unlock bootloader
12+
atprogram.exe -t samice -i swd -cl 20mhz -d atsamd21g18a write --fuses --offset 0x804000 --values 0xFFC7E0D8
13+
14+
@echo Programming firmware
15+
atprogram.exe -t samice -i swd -cl 20mhz -d atsamd21g18a chiperase program -f %1 --verify
16+
17+
@echo Lock bootloader
18+
atprogram.exe -t samice -i swd -cl 20mhz -d atsamd21g18a write --fuses --offset 0x804000 --values 0xFAC7E0D8
19+
20+
@echo Done programming! Ready for next board.
21+
@pause
22+
23+
goto loop
24+
25+
:usage
26+
@echo Missing the hex file. Ex: batch_program.bat LoRaSerial_Firmware_v10_Combined.hex
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
atprogram.exe -t atmelice -i swd -cl 10mhz -d atsamd21g18a read --file production.hex --size 244000
129 KB
Binary file not shown.
590 KB
Loading

Documents/Readme.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
LoRaSerial Documents and Airspeed Calculations
2+
========================================
3+
4+
[![SparkFun LoRaSerial Airspeed Spreadsheet](LoRaSerial%20Airspeed%20Spreadsheet.jpg)](https://docs.google.com/spreadsheets/d/1qyJa3ldE-KDUHwHNSctBMccPTVRwKbmAsodkdvOc3-8/edit?usp=sharing)
5+
6+
The available airspeeds (40 to 38400) used in LoRaSerial were picked to, as closely as possible, mimic modem baud rates. Other spread factors, bandwidths, and coding rates can be used if desired.
7+
8+
[This spreadsheet](https://docs.google.com/spreadsheets/d/1qyJa3ldE-KDUHwHNSctBMccPTVRwKbmAsodkdvOc3-8/edit?usp=sharing) can be used to inspect the airtime formulas.
9+
10+
Additionally, this folder contains the various datasheets for the SX1276 IC, common to all LoRaSerial modules, as well as the individual datasheets for the different module types (915, 868, 433, etc).
11+
12+
[Atmel SAM D21G Datasheet](https://cdn.sparkfun.com/datasheets/Dev/Arduino/Boards/Atmel-42181-SAM-D21_Datasheet.pdf)
13+
14+
## Modes of Operation
15+
16+
The LoRaSerial radio operates in one of three modes:
17+
* Point-to-Point (default)
18+
* Multipoint
19+
* Virtual Circuit
20+
* Training
21+
22+
Point-to-Point mode provides guaranteed message delivery or the link breaks. The radio performs data retransmission if either the data frame was lost or its acknowledgement was lost. This can continue indefinitely if MaxResends equals zero (default) or for a limited number of retries in the range of (1 - 255).
23+
24+
Multipoint mode provides a datagram service. The LoRaSerial radios will send the data frame without a guarantee that the frame will be received by the remote radio. Lost frames are lost, the radio does no perform retransmission. If the application is not able to tolerate the lost frames then another protocol layer needs to be implemented on the host computer between the radio and the application that provides the necessary services to the application.
25+
26+
Virtual circuit mode enables a group of radios to communicate with each other. The radio links provide guaranteed message delivery or the link is broken. One radio in the group is designated as the server and provides the channel timer synchronization for the client radios, think of a star configuration with the server at the center. Data communications with the virtual circuit mode is all point-to-point. Communications between the radio and the host CPU use a special virtual circuit header to identify where to send the host to radio data, or where to deliver the radio to host data. More information is available [here](https://github.com/sparkfun/SparkFun_LoRaSerial/blob/release_candidate/Documents/Virtual_Circuits.md).
27+
28+
Training is a temporary mode of operation to initialize a set of radios for one of the other modes of operation. There are one or more clients and a single server during training. The mode specific parameters for the other mode of operation are passed from the server to each of the clients. Upon completion all of the radios in the set will be able to communicate with one another. More information on training is available [here](https://github.com/sparkfun/SparkFun_LoRaSerial/blob/release_candidate/Documents/Training.md).

0 commit comments

Comments
 (0)