Commit Graph

37 Commits

Author SHA1 Message Date
Christine Yen a480b84b04 Modifying comment per Felix correction 2018-08-23 16:29:26 -07:00
Christine Yen e479f1da28 Update RFM69.h with comment differentiating RSSI and readRSSI() 2018-08-23 00:29:36 -07:00
Felix Rusu 3d4a8c99c4 Handle interrupt outside actual ISR
### Commit adapted from 2793a5a909

Handling an interrupt from the RFM69 inside an actual ISR given the
complexity of the handler appears to conflict with I2C devices, blocking
the Arduino indefinitely after a few seconds of concurrent use. In
general, complex ISRs are to be avoided.
2018-08-08 15:34:31 -04:00
Felix Rusu ba3c3943c8 IRQ def fix for MoteinoM0 2018-05-25 17:33:26 -04:00
Felix Rusu f1cbbea15a Update copyrights 2018-04-09 14:19:14 -04:00
Felix Rusu e1145c9543 Merge ListenMode branch code 2018-04-05 16:20:12 -04:00
Felix Rusu dfffbba7b8 update interrupt, move ctor 2018-04-05 16:00:36 -04:00
Felix Rusu e1faeefdb7
Revert "Allow choosing the SPI interface" 2018-04-05 15:15:36 -04:00
Adam Demuri dd5dc9a706 Allow caller specify a specific SPIClass in the constructor 2018-03-27 22:10:44 -06:00
Felix Rusu dcda86fb90 STM32 M3 support 2018-01-25 19:35:46 -05:00
LowPowerLab 928de01a2b add readAllRegsCompact() 2017-07-24 13:41:41 -04:00
LowPowerLab 18494fe085 merge new RFM69_OTA; upgrade wireless programming 2016-11-17 21:13:22 -05:00
Mark Bergsma 2133bbfe79 Don't reenable interrupts in the ISR
The unselect() method, liberally called directly and indirectly
from the interrupt handler, always reenables interrupts after it's
done. In ISRs, interrupts are disabled by default, and although
reenabling is allowed, the interrupt handler doesn't seem to have
reentrant code. Therefore, only reenable when not in an ISR.

This was causing problems in certain circumstances, e.g. with
an Arduino Ethernet shield, most packet receptions would cause
resets.
2016-06-04 20:22:45 +02:00
Ricardo Mena C 372dd4a782 Add __arm__ platform for SAMD21 2016-03-29 14:24:17 -06:00
Ricardo Mena C 7883a7d1f7 Add __arm__ platform for SAMD21 2016-03-29 14:17:53 -06:00
LowPowerLab ec90680e00 Revert "add SPI transaction support"
This reverts commit c38928ecb4.
2016-02-29 21:21:52 -05:00
LowPowerLab c38928ecb4 add SPI transaction support
Based on this commit:
e707b9a3ad
And also on Tom's SPI transaction branch:
https://github.com/TomWS1/RFM69/tree/With-SPI-and-transmit-power-updates
2016-02-29 17:37:42 -05:00
LowPowerLab c24051e933 minor tweaks & SPCR/SPSR filters 2016-02-29 14:36:24 -05:00
LowPowerLab 0c8fbacc5c +TomWS1's virtualization & more; +deadlock checks
Integrate TomWS1's virtualized changes, and virtual interruptHook().
Set ACK_REQUESTED = 0 in sendACK() to avoid ACK infinite looping.
Protect while(true) calls against infinite looping.
2015-10-01 12:15:28 -04:00
LowPowerLab 8873034e9c add INTs for non defined MCUs 2015-05-19 14:13:11 -04:00
Daniel A. Maierhofer 5832c173fe Changed byte etc. to standard types for compatibility
binary compatible - only source changed
2015-01-12 11:34:16 +01:00
Daniel A. Maierhofer 4767945f7f Unify hexadecimal notation and whitespace 2015-01-12 11:00:43 +01:00
Daniel A. Maierhofer bfa5dd8afd Unify comment style and whitespace
Use 'git diff --ignore-space-change --word-diff=plain' to verify.
2015-01-06 15:25:29 +01:00
Daniel A. Maierhofer 0999c802eb Unify indentation (from TAB to two spaces)
Use 'git diff --ignore-space-change' to verify.
2015-01-06 14:49:50 +01:00
LowPowerLab ed2fd5b8d5 Fix RX deadlocks, update examples
This is a major patch release that should address the rx deadlocks which
cause hangs in multiple nodes networks. Thread on this is here:
https://lowpowerlab.com/forum/index.php/topic,736.0.html
Also updated node/gateway examples, and wireless programming sketches.
2014-11-17 14:58:00 -05:00
LowPowerLab dc6b33d98b License, add/update get/setFrequency(), & more
Update license to GPL 3.0
Add getFrequency()
Update setFrequency(freq in hz)
Add setNetwork(id)
Modify IRQ pinout for atmega32u4 (Arduino Leonardo)
2014-11-14 15:25:45 -05:00
Sebastian Wendel b5ae481136 added ATmega32U4 support 2014-09-07 00:53:34 +02:00
Felix Rusu e8a0767849 Support for MEGA, GPL3.0, nonintrusive SPI 2014-08-12 22:03:37 -04:00
Felix Rusu 06f00c18b9 Increase default ACK time
Too short ACK causing missed packets
2014-03-10 20:07:53 -04:00
Felix Rusu cec7f05940 new BROADCAST_ADDR=255, avoid calling receiveBegin() in RX 2014-02-01 21:13:40 -05:00
Felix Rusu a0f2aaf113 Add reception RSSI (more accurate) 2013-11-06 23:15:51 -05:00
Felix Rusu 61658a06be Add readTemperature() and rcCalibration() 2013-09-05 19:32:11 -04:00
LowPowerLab f21498fa91 Update RFM69.h 2013-08-16 21:37:54 -04:00
LowPowerLab 0c45be8b48 Make CSMA_LIMIT=-90dBm (less sensitive when sending)
Sometimes (especially 433Mhz versions) are too sensitive or there is more noise in the channel than usual. Touching the antenna or coiling it helps a lot but a more permanent fix is to adjust the sensitivity.
This addresses the issue when send sensitivity is too high and the radio will spend a lot of time reading RSSI to make sure channel is clear, resulting in dropped ACKs.
2013-08-02 10:27:14 -04:00
Felix Rusu 404a5add1d Sketch updates, minor fixes 2013-07-30 16:50:37 -04:00
Felix Rusu d23a4c95b9 bug fixes & performance improvements 2013-07-13 23:49:26 -04:00
Felix Rusu 61208552ba Initial commit 2013-06-20 17:06:39 -04:00