Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
937 commits
Select commit Hold shift + click to select a range
dac9ae7
Merge pull request #388 from LeeLeahy2/extend-sync-clocks
nseidle Jan 11, 2023
05f9a38
Merge pull request #397 from LeeLeahy2/multipoint-clock-sync
nseidle Jan 11, 2023
788e653
Typo fix
nseidle Jan 11, 2023
ad05fd7
Extend timeout during P2P linkup
nseidle Jan 11, 2023
729caa9
Rename txSyncClockUsec to txSyncClocksUsec
LeeLeahy2 Jan 11, 2023
18bf578
RX control: Add the ignoreFrame bit
LeeLeahy2 Jan 11, 2023
72ced00
Transmit ignore frames to get TX times for SYNC_CLOCKS, HEARTBEAT, ACK
LeeLeahy2 Jan 11, 2023
831fd29
VC: Fix computation for next HEARTBEAT interval
LeeLeahy2 Jan 11, 2023
3b9a998
VC: Fix the timestamp offset calculations
LeeLeahy2 Jan 11, 2023
b062e95
Pass microseconds to syncChannelTimer instead of milliseconds
LeeLeahy2 Jan 12, 2023
873fcf6
VC: Remove dead code
LeeLeahy2 Jan 12, 2023
1a84fca
Don't reference currentMillis in COMPUTE_TIMESTAMP_OFFSET
LeeLeahy2 Jan 12, 2023
72b44d9
Multipoint: Use the measured TX times for channel timer synchronization
LeeLeahy2 Jan 12, 2023
bdb3595
Don't extend the SYNC_CLOCKS frame
LeeLeahy2 Jan 12, 2023
74762b2
P2P: Fix error in link down/up synchronization
LeeLeahy2 Jan 12, 2023
d2f6140
Merge pull request #408 from LeeLeahy2/fix-p2p-sync
nseidle Jan 12, 2023
d5ab01b
Fix buffer overrun.
nseidle Jan 12, 2023
43c99dd
Fix wrap around test
nseidle Jan 12, 2023
ffe41db
Read the IRQ flags from the SX1276 when transactionComplete is set
LeeLeahy2 Jan 12, 2023
5554751
VcServerTest: Turn off the debugging and ACKs
LeeLeahy2 Jan 13, 2023
72d1ae1
VC: Add VC LEDs pattern
LeeLeahy2 Jan 13, 2023
65d6d0b
P2P: Add point-to-point LED pattern
LeeLeahy2 Jan 13, 2023
3044bc0
Bug Fix: memory corruption, clockSyncIndex got larger than array size
LeeLeahy2 Jan 13, 2023
ab96b00
Display the case number in syncChannelTimer when debugSync is enabled
LeeLeahy2 Jan 13, 2023
6161f03
Remove "case 3" from syncChannelTimer
LeeLeahy2 Jan 13, 2023
56cd339
P2P: Use transmit measurements for syncChannelTimer calcualtions
LeeLeahy2 Jan 12, 2023
0a2bc54
Add timestamps to the ATI12 command
LeeLeahy2 Jan 13, 2023
d07417e
Set verifyRxNetID to true by default
LeeLeahy2 Jan 13, 2023
9386198
Merge pull request #411 from LeeLeahy2/vcServerTest
nseidle Jan 13, 2023
635b6cb
Merge pull request #410 from LeeLeahy2/irqFlags
nseidle Jan 13, 2023
d8d7151
Merge pull request #412 from LeeLeahy2/vc-leds
nseidle Jan 13, 2023
abd2003
Merge pull request #416 from LeeLeahy2/p2p-leds
nseidle Jan 13, 2023
1f43103
Merge branch 'release_candidate' into fix-clockSyncIndex
nseidle Jan 13, 2023
0897626
Merge pull request #413 from LeeLeahy2/fix-clockSyncIndex
nseidle Jan 13, 2023
177d491
Merge pull request #414 from LeeLeahy2/case-number
nseidle Jan 13, 2023
9d7695d
Merge pull request #415 from LeeLeahy2/no-case-3
nseidle Jan 13, 2023
3ca587c
Merge pull request #409 from LeeLeahy2/p2p-sync
nseidle Jan 13, 2023
756f902
Merge pull request #417 from LeeLeahy2/timestamp-ati12
nseidle Jan 13, 2023
2dcddd9
Merge pull request #418 from LeeLeahy2/verifyNetId
nseidle Jan 13, 2023
45927f3
Delay transmission of partial escape sequence to remote radio
LeeLeahy2 Jan 14, 2023
acf91b8
Display the command which received the error
LeeLeahy2 Jan 17, 2023
90e5a6d
Add printing of uint32 values
LeeLeahy2 Jan 16, 2023
a8c9f06
Virtual Circuit: Update the header file comments
LeeLeahy2 Jan 17, 2023
05df878
Update the VcServerTest application
LeeLeahy2 Jan 17, 2023
bcc5740
Merge pull request #419 from LeeLeahy2/partial-escape-sequence
nseidle Jan 17, 2023
c93ba65
Merge pull request #422 from LeeLeahy2/print-uint32
nseidle Jan 17, 2023
509714a
Merge pull request #423 from LeeLeahy2/cmd-error
nseidle Jan 17, 2023
b628c44
Merge pull request #424 from LeeLeahy2/vc-h
nseidle Jan 17, 2023
08524dc
Merge pull request #425 from LeeLeahy2/VcServerTest
nseidle Jan 17, 2023
52e4ea4
Properly display mSec in getTxTime
LeeLeahy2 Jan 15, 2023
a1371cd
Set txSetChannelTimerMicros even when frequencyHop is false
LeeLeahy2 Jan 15, 2023
0e274bd
Merge pull request #420 from LeeLeahy2/sync-display-msec
nseidle Jan 17, 2023
c8b223d
Merge pull request #421 from LeeLeahy2/set-txSetChannelTimerMicros
nseidle Jan 17, 2023
2e813c2
Add max timeouts to the receiveInProgress bits
nseidle Jan 20, 2023
0082c51
Update settings.h
nseidle Jan 20, 2023
869441c
Whitespace changes
nseidle Jan 21, 2023
7853e13
Remove individual receiveInProgress bits
nseidle Jan 21, 2023
2ac0c65
Remove extra triggers
nseidle Jan 21, 2023
ce0dc04
VC: Assign blocks of messages for third party use
Jan 21, 2023
428f5d7
VcServerTest: Display unknown VC messages received from the radio
Jan 21, 2023
6b66cec
VC: ATB changes state to RADIO_RESET as part of breaking the link
LeeLeahy2 Jan 22, 2023
2fa6dd0
Blink error LED and regularly output an error message
LeeLeahy2 Jan 23, 2023
ac54bff
Change Serial.print to systemPrint
nseidle Jan 23, 2023
ada133b
Add channelNumber move to MP linkup
nseidle Jan 23, 2023
3de8c0d
Moving print to within debug guard
nseidle Jan 23, 2023
5c48f0e
Move dumpClockSynchronization() within debug guard
nseidle Jan 23, 2023
2a682d7
Fix bug in RADIO_DISCOVER_SCANNING. Remove channel number from heartb…
nseidle Jan 23, 2023
e282956
Remove channelNumber update from HEARTBEAT recv.
nseidle Jan 23, 2023
3cd07c6
MP: Reset heartbeat timeout when in standby.
nseidle Jan 23, 2023
fd9db67
Use Modem Clear and RX On-going for receiveInProcess
nseidle Jan 23, 2023
a799d07
Change receiveInprogress to test for known good states.
nseidle Jan 23, 2023
ded6356
Add comment
nseidle Jan 23, 2023
beec7e2
Merge pull request #430 from sparkfun/receiveBits
nseidle Jan 23, 2023
0028645
Add MP to uptime calc
nseidle Jan 24, 2023
955fffb
MP: Remove display of uninitialized variable
LeeLeahy2 Jan 24, 2023
a4ce098
Merge pull request #426 from LeeLeahy2/vc-3rd-party-msgs
nseidle Jan 24, 2023
366954f
Merge pull request #428 from LeeLeahy2/atb-radio-reset
nseidle Jan 24, 2023
da0970f
Merge pull request #427 from LeeLeahy2/vc-unknown-radio-msgs
nseidle Jan 24, 2023
c28333d
Merge pull request #429 from LeeLeahy2/blink-error-led
nseidle Jan 24, 2023
5a5325b
Merge pull request #431 from LeeLeahy2/no-frameAirTime
nseidle Jan 24, 2023
7a7a0c2
Add link uptime timer to MP
nseidle Jan 25, 2023
20a22ae
Merge branch 'release_candidate' of https://github.com/sparkfun/Spark…
nseidle Jan 25, 2023
fadaaa7
Fix developer guards
nseidle Jan 26, 2023
b5c2d7b
Change heartbeat timeouts to timed transmits.
nseidle Jan 26, 2023
0d2dc36
Fix bug in return of getReceiveCompletionOffset
nseidle Jan 26, 2023
f2472bf
Add debug guard to clocksyncDataDump()
nseidle Jan 27, 2023
2740e77
Update .gitignore
nseidle Jan 27, 2023
39dddcd
Update .gitignore
nseidle Jan 27, 2023
22b99f9
Fix calcAirTime to use LDRO and Implicit header.
nseidle Jan 28, 2023
bd25d32
Fix roll-over bug in syncChannelTimer
nseidle Jan 28, 2023
aed67eb
Fix starting channel number
nseidle Jan 28, 2023
5e4b620
Allow msToNextHop to be negative
nseidle Jan 28, 2023
a13b4aa
VC: Process one command at a time
LeeLeahy2 Jan 28, 2023
c2f26e7
VC: Send command complete to the PC
LeeLeahy2 Jan 28, 2023
10f421f
Redirect all output to SERIAL or RF
LeeLeahy2 Jan 28, 2023
6d2defd
VC: Properly return command status to remote system's host
LeeLeahy2 Jan 28, 2023
c92476b
VcServerTest: Enable/disable display of command complete
LeeLeahy2 Jan 28, 2023
552a7c8
VcServerTest: Wait for command execution
LeeLeahy2 Jan 28, 2023
dd95a6b
Reorder the settings
LeeLeahy2 Jan 30, 2023
a37e356
Replace TX_TO_RX_USEC with settings.txToRxUsec
LeeLeahy2 Jan 30, 2023
6390740
Adjust settings based upon airSpeed during command processing
LeeLeahy2 Jan 30, 2023
e8364d8
Set txToRxUsec based upon airSpeed
LeeLeahy2 Jan 30, 2023
f250eaa
Remove settings.airSpeed, zero airSpeed not supported
LeeLeahy2 Jan 30, 2023
82f0522
Compute the time delay to the next HEARTBEAT transmission
LeeLeahy2 Jan 30, 2023
670841f
Remove extra calculation of frameAirTime
LeeLeahy2 Jan 30, 2023
debb226
Add timeoutMsec to compute the timeout delay
LeeLeahy2 Jan 30, 2023
426ea2e
Remove use of systemDescriptionAirTime
LeeLeahy2 Jan 30, 2023
2d5f463
Replace maxPacketAirTime with maxFrameAirTimeMsec
LeeLeahy2 Jan 30, 2023
6260af7
Remove getReceiveCompletionOffset
LeeLeahy2 Jan 30, 2023
85f82e7
Properly initialize the heartbeat timeout during RADIO_RESET
LeeLeahy2 Jan 30, 2023
121b667
Replace ackAirTime with txDataAckUsec
LeeLeahy2 Jan 30, 2023
0d3eccc
Replace frameAirTime with frameAirTimeUsec
LeeLeahy2 Jan 30, 2023
5ad476f
Merge pull request #432 from LeeLeahy2/vc-one-cmd
nseidle Jan 30, 2023
9e60656
Merge pull request #433 from LeeLeahy2/vc-cmd-complete
nseidle Jan 30, 2023
79ce403
Merge pull request #434 from LeeLeahy2/remote-command
nseidle Jan 30, 2023
4752ccd
Merge pull request #435 from LeeLeahy2/vc-rmt-cmd-status
nseidle Jan 30, 2023
6367a2a
Merge pull request #437 from LeeLeahy2/wait-for-cmd
nseidle Jan 30, 2023
c7ef161
Merge pull request #439 from LeeLeahy2/txToRxUsec
nseidle Jan 30, 2023
5b04a4a
Merge pull request #440 from LeeLeahy2/convertAirSpeedToSettings
nseidle Jan 30, 2023
34e7d43
Merge pull request #441 from LeeLeahy2/set-txToRxUsec
nseidle Jan 30, 2023
c8d083b
Merge pull request #442 from LeeLeahy2/no-airSpeed-setting
nseidle Jan 30, 2023
62ac8dc
Merge pull request #443 from LeeLeahy2/heartbeat-times
nseidle Jan 30, 2023
32f2909
Merge pull request #444 from LeeLeahy2/remove-frameAirTime
nseidle Jan 30, 2023
3b0fbc0
Merge pull request #445 from LeeLeahy2/timeoutMsec
nseidle Jan 30, 2023
d4496dd
Merge pull request #446 from LeeLeahy2/no-systemDescriptionAirTime
nseidle Jan 30, 2023
6e51c2e
Merge pull request #447 from LeeLeahy2/no-maxPacketAirTime
nseidle Jan 30, 2023
8ab1879
Merge pull request #448 from LeeLeahy2/no-getReceiveCompletionOffset
nseidle Jan 30, 2023
b461e41
Merge pull request #449 from LeeLeahy2/heartbeat-timeout
nseidle Jan 30, 2023
95a6ec5
Merge pull request #450 from LeeLeahy2/no-ackAirTime
nseidle Jan 30, 2023
08a3191
Merge pull request #451 from LeeLeahy2/no-frameAirTime
nseidle Jan 30, 2023
d8bb05c
Increase sizeof frameAirTimeUsec to handle > 65ms frames.
nseidle Jan 30, 2023
9d59aff
Whitespace formatting changes
nseidle Jan 30, 2023
30b63af
Prevent channel timer from starting if P2P link times out.
nseidle Jan 30, 2023
7050a87
Define and use NEXT_COMMAND_TX_TAIL macro
LeeLeahy2 Jan 31, 2023
3a6e69a
Define and use the NEXT_RADIO_TX_TAIL macro
LeeLeahy2 Jan 31, 2023
3c196ea
Output a line at a time in dumpCircularBuffer
LeeLeahy2 Jan 31, 2023
d324a85
Remove vcSerialMsgGetVcDest
LeeLeahy2 Jan 31, 2023
f13c365
Display the bytes placed into outgoingPacket
LeeLeahy2 Jan 31, 2023
c4bd0b7
VC: Fix infinite output, START_OF_VC_SERIAL already removed
LeeLeahy2 Jan 31, 2023
0be6394
VC: Ensure the entire command complete message is contained in one frame
LeeLeahy2 Jan 31, 2023
4e84329
VC: Split out VC_COMMAND_COMPLETE_MESSAGE from the command response
LeeLeahy2 Jan 31, 2023
ad21c72
VcServerTest: Support remote command scripts, one command at a time
LeeLeahy2 Jan 31, 2023
5d70b20
Sprinkler Controller: Set the default setting values
LeeLeahy2 Jan 31, 2023
20a02f2
Sprinkler Controller: Remove use of the serial port (Serial1)
LeeLeahy2 Jan 16, 2023
2ffcd44
Sprinkler Controller: Add I2C support
LeeLeahy2 Jan 16, 2023
8302c0c
Sprinkler Controller: Add support for the quad relay board
LeeLeahy2 Jan 16, 2023
66511da
Sprinkler Controller: Add the global variables
LeeLeahy2 Jan 16, 2023
e739838
Sprinkler Controller: Add the sprinkler controller specific settings
LeeLeahy2 Jan 16, 2023
36285e5
Sprinkler Controller: Add new command types
LeeLeahy2 Jan 16, 2023
b4155d9
Sprinkler Controller: Add sprinkler controller commands
LeeLeahy2 Jan 16, 2023
0d10616
Sprinkler Controller: Update time of day
LeeLeahy2 Jan 17, 2023
85a480c
Sprinkler Controller: Support control of the zones
LeeLeahy2 Jan 17, 2023
d30b4e7
Sprinkler Controller: Add the test script
LeeLeahy2 Jan 17, 2023
ec6c19e
Sprinkler Controller: Add support for the OLED display
LeeLeahy2 Jan 16, 2023
7f9756f
Merge pull request #452 from LeeLeahy2/next-cmd-tail
nseidle Jan 31, 2023
3363f3c
Merge pull request #453 from LeeLeahy2/next-radio-tx-tail
nseidle Jan 31, 2023
4106e1c
Merge pull request #454 from LeeLeahy2/dump-circular-buffer
nseidle Jan 31, 2023
67e8ead
Merge pull request #455 from LeeLeahy2/no-vcSerialMsgGetVcDest
nseidle Jan 31, 2023
cf8507e
Merge pull request #457 from LeeLeahy2/dump-outgoing-buffer
nseidle Jan 31, 2023
1b7e7c4
Merge pull request #461 from LeeLeahy2/sc-20230131
nseidle Jan 31, 2023
c620e88
Remove heartbeat timeout update from MP data packets
nseidle Jan 31, 2023
6689be2
Fix typo
nseidle Jan 31, 2023
6e25b79
Merge branch 'release_candidate' of https://github.com/sparkfun/Spark…
nseidle Jan 31, 2023
526a9bc
Remove extra code
nseidle Jan 31, 2023
a02502b
Revert settings.h
nseidle Jan 31, 2023
3f2da49
Remove sprinkler code
nseidle Jan 31, 2023
6e4b3f0
Remove heartbeat timeout update from MP data packets
nseidle Feb 1, 2023
c637900
Merge pull request #469 from sparkfun/RevertSprinkler
nseidle Feb 1, 2023
c439675
Revert Arch_SAMD.h
nseidle Feb 2, 2023
ee7b440
VcServerTest: Enable/disable DISPLAY_UNKNOWN_COMMANDS
LeeLeahy2 Jan 28, 2023
6ab58ba
Adjust heartbeatTimeout depending upon airSpeed
LeeLeahy2 Feb 6, 2023
14958ff
Add Atmel SAM D21G datasheet link
LeeLeahy2 Feb 6, 2023
8380a77
Add some virtual circuit documentation
LeeLeahy2 Feb 6, 2023
8b6aba0
Add LoRaSerial mode description and pointer to VC documentation
LeeLeahy2 Feb 6, 2023
17e078c
Merge pull request #468 from LeeLeahy2/vc-no-unknowns
nseidle Feb 6, 2023
bfb32eb
Merge pull request #471 from LeeLeahy2/samd21-spec
nseidle Feb 6, 2023
33cf80e
Merge pull request #472 from LeeLeahy2/vc-doc
nseidle Feb 6, 2023
b812af3
Merge pull request #470 from LeeLeahy2/airSpeed-heartbeatTimeout
nseidle Feb 6, 2023
e64506c
Merge branch 'release_candidate' into readme-vc-doc
nseidle Feb 6, 2023
0da3610
Merge pull request #473 from LeeLeahy2/readme-vc-doc
nseidle Feb 6, 2023
a99bd3f
VC Doc: Add radio responses
LeeLeahy2 Feb 6, 2023
62bcf0c
Fix the link to Virtual_Circuits.md
LeeLeahy2 Feb 6, 2023
207d5a5
Add VcServerTest program documentation
LeeLeahy2 Feb 6, 2023
8e1ddd1
Merge pull request #474 from LeeLeahy2/fix-vc-link
nseidle Feb 7, 2023
9176cb5
Merge pull request #475 from LeeLeahy2/vc-responses
nseidle Feb 7, 2023
358219e
Merge pull request #476 from LeeLeahy2/vc-example
nseidle Feb 7, 2023
488565d
Get the cylon pattern to display during training
LeeLeahy2 Feb 8, 2023
d50d449
Remove '_Firmware' from file name and directory.
nseidle Feb 8, 2023
d205ee9
Adding compile action
nseidle Feb 8, 2023
aea4ec6
VC: Add more example code documentation
LeeLeahy2 Feb 7, 2023
225d095
VcServerTest: Add DUMP_RADIO_TO_PC define
LeeLeahy2 Feb 9, 2023
39658c1
Update compile-loraserial.yml
nseidle Feb 9, 2023
44f75c7
Change to jlink programmer
nseidle Feb 9, 2023
8f1c169
Clean up binary programming folder
nseidle Feb 9, 2023
d024d49
Temp rename
nseidle Feb 10, 2023
c9ff578
Merge pull request #478 from LeeLeahy2/fix-cylon
nseidle Feb 10, 2023
1105f2b
Merge pull request #479 from LeeLeahy2/vc-example-code
nseidle Feb 10, 2023
a595e63
Merge pull request #480 from LeeLeahy2/dump-radio-to-pc
nseidle Feb 10, 2023
75493a2
Rename to LoRaSerial
nseidle Feb 10, 2023
8585e95
Document LoRaSerial radio training
LeeLeahy2 Feb 11, 2023
aad28d9
Enable software CRC by default.
nseidle Feb 13, 2023
870f805
Add improvements for low air-speeds
nseidle Feb 13, 2023
245e740
Add Discover Standby state
nseidle Feb 13, 2023
b9b81ca
Add channel number to MP HB
nseidle Feb 13, 2023
5b39f68
Use VC heartbeat to ensure HB on channel 0.
nseidle Feb 13, 2023
853147d
Increase MP_HEARTBEAT_BYTES / Add Channel Number
nseidle Feb 13, 2023
3dbf868
Limit discovery attempts based on search time
nseidle Feb 13, 2023
4e0cfc9
Move to MP Standby if discovery fails
nseidle Feb 13, 2023
1cf7edf
Skip active discovery for low airspeeds
nseidle Feb 13, 2023
d9db513
Remove redundant code
nseidle Feb 13, 2023
fa10b2c
MP: Limit responses to HB packet to Clients only
nseidle Feb 13, 2023
8810040
Update compile-loraserial.yml
nseidle Feb 13, 2023
46e054e
Update library version numbers
nseidle Feb 13, 2023
16038f2
Merge pull request #481 from LeeLeahy2/doc-training
nseidle Feb 14, 2023
5ee16af
Fix wrap-around on debugSerial prints
nseidle Feb 14, 2023
55b805b
Add versions to libraries
nseidle Feb 15, 2023
92a2759
Fix include path given directory change
LeeLeahy2 Feb 15, 2023
55f9ea1
Update handling of settings during command mode and training
LeeLeahy2 Feb 14, 2023
c2bc1cc
NVM: Add erase function
LeeLeahy2 Feb 15, 2023
0d5c160
Training: Remove switch to server from client
LeeLeahy2 Feb 16, 2023
c50c813
Fix AT-AIRSPEED command
nseidle Feb 16, 2023
890588c
Replace the mode specific defines with LED color defines
LeeLeahy2 Feb 17, 2023
cfc11bf
Rename the LED pins to use the color and number
LeeLeahy2 Feb 17, 2023
b8f4758
Merge pull request #484 from LeeLeahy2/vc-test-settings-h
nseidle Feb 17, 2023
9e7414d
Merge pull request #482 from LeeLeahy2/temp-settings
nseidle Feb 17, 2023
50d3ec4
Merge pull request #487 from LeeLeahy2/define-led-use
nseidle Feb 17, 2023
ce77f75
Merge pull request #488 from LeeLeahy2/rename-led-pins
nseidle Feb 17, 2023
929de56
Merge pull request #485 from LeeLeahy2/nvm-erase
nseidle Feb 17, 2023
0122c44
Merge pull request #486 from LeeLeahy2/remove-switch-to-server
nseidle Feb 17, 2023
5787ddf
Fix the compile error caused by cfc11bf8.
LeeLeahy2 Feb 19, 2023
95ff1c8
Merge pull request #493 from LeeLeahy2/fix-leds
nseidle Feb 21, 2023
dca2ca3
Remove erroneous inCommandMode check
nseidle Feb 22, 2023
69de241
Move settings into LoRaSerial with other settings
LeeLeahy2 Feb 24, 2023
628d486
Pass settings address to generateRandomKeysID
LeeLeahy2 Feb 24, 2023
f0821fa
Remove trainingTimer
LeeLeahy2 Feb 24, 2023
735ddb5
Use a common reset function
LeeLeahy2 Feb 24, 2023
fd7c26c
Add trainingSettings
LeeLeahy2 Feb 24, 2023
af0c0d8
Make the callers set trainingSettings
LeeLeahy2 Feb 24, 2023
4ff483d
Don't save the training server parameters
LeeLeahy2 Feb 24, 2023
d82f013
New training button behavior
LeeLeahy2 Feb 24, 2023
21b0c08
Merge pull request #496 from LeeLeahy2/move-settings
nseidle Feb 24, 2023
b4556c1
Merge pull request #495 from LeeLeahy2/generate-random-param
nseidle Feb 24, 2023
e811e12
Merge pull request #497 from LeeLeahy2/remove-training-timer
nseidle Feb 24, 2023
7f6694c
Merge pull request #499 from LeeLeahy2/command-reset
nseidle Feb 24, 2023
0003334
Merge pull request #500 from LeeLeahy2/training-settings
nseidle Feb 24, 2023
c062d40
Merge pull request #501 from LeeLeahy2/move-set-of-training-settings
nseidle Feb 24, 2023
86b6781
Merge pull request #502 from LeeLeahy2/training-server-dont-save-params
nseidle Feb 24, 2023
5cc0cda
Merge pull request #503 from LeeLeahy2/new-training
nseidle Feb 24, 2023
ad186bb
Merge branch 'main' into release_candidate
nseidle Mar 1, 2023
142e2a4
Create atprogram.exe
nseidle Mar 1, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 29 additions & 13 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ ehthumbs.db
*.b#?
*.l#?
*.lck
.vscode/*
/Firmware/LoRaSerial_Firmware/.vscode/*
/Firmware/build/*

# Folder config file
Desktop.ini
Expand All @@ -27,16 +30,29 @@ $RECYCLE.BIN/
# OSX
# =========================

.DS_Store
.AppleDouble
.LSOverride

# Icon must ends with two \r.
Icon

# Thumbnails
._*

# Files that might appear on external disk
.Spotlight-V100
.Trashes
.DS_Store
.AppleDouble
.LSOverride

# Icon must ends with two \r.
Icon


# Thumbnails
._*

# Files that might appear on external disk
.Spotlight-V100
.Trashes

# Linux
# =========================

# Object files
*.o

# Archives (Libraries)
*.a

# Executables
Firmware/Tools/VcServerTest
Binary file not shown.
Binary file added Binaries/Programming_Tools/atprogram.exe
Binary file not shown.
26 changes: 26 additions & 0 deletions Binaries/Programming_Tools/batch_program.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
@echo off
if [%1]==[] goto usage

@echo Programming for SparkFun LoRaSerial
@pause
:loop

@echo -
@echo Programming binary: %1

@echo Unlock bootloader
atprogram.exe -t samice -i swd -cl 20mhz -d atsamd21g18a write --fuses --offset 0x804000 --values 0xFFC7E0D8

@echo Programming firmware
atprogram.exe -t samice -i swd -cl 20mhz -d atsamd21g18a chiperase program -f %1 --verify

@echo Lock bootloader
atprogram.exe -t samice -i swd -cl 20mhz -d atsamd21g18a write --fuses --offset 0x804000 --values 0xFAC7E0D8

@echo Done programming! Ready for next board.
@pause

goto loop

:usage
@echo Missing the hex file. Ex: batch_program.bat LoRaSerial_Firmware_v10_Combined.hex
1 change: 1 addition & 0 deletions Binaries/Programming_Tools/read.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
atprogram.exe -t atmelice -i swd -cl 10mhz -d atsamd21g18a read --file production.hex --size 244000
Binary file not shown.
Binary file added Documents/LoRaSerial Airspeed Spreadsheet.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
28 changes: 28 additions & 0 deletions Documents/Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
LoRaSerial Documents and Airspeed Calculations
========================================

[![SparkFun LoRaSerial Airspeed Spreadsheet](LoRaSerial%20Airspeed%20Spreadsheet.jpg)](https://docs.google.com/spreadsheets/d/1qyJa3ldE-KDUHwHNSctBMccPTVRwKbmAsodkdvOc3-8/edit?usp=sharing)

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.

[This spreadsheet](https://docs.google.com/spreadsheets/d/1qyJa3ldE-KDUHwHNSctBMccPTVRwKbmAsodkdvOc3-8/edit?usp=sharing) can be used to inspect the airtime formulas.

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).

[Atmel SAM D21G Datasheet](https://cdn.sparkfun.com/datasheets/Dev/Arduino/Boards/Atmel-42181-SAM-D21_Datasheet.pdf)

## Modes of Operation

The LoRaSerial radio operates in one of three modes:
* Point-to-Point (default)
* Multipoint
* Virtual Circuit
* Training

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).

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.

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).

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).
Loading