Commit graph

13 commits

Author SHA1 Message Date
jgromes
3054d966a2 [RF69] Removed old call to SPI end 2020-02-20 12:19:00 +01:00
jgromes
90944a5b00 [RF69] Removed redundant null terminator 2020-02-18 07:35:04 +01:00
jgromes
c06d292bd2 [RF69] Added data shaping and encoding methods 2020-02-11 14:28:55 +01:00
jgromes
32602307b7 [RF69] Swapped frequency deviation and rx bandwdith in begin method 2020-02-11 14:27:00 +01:00
jgromes
318de480ab Reworked PhysicalLayer to accept frequency step directly 2020-02-07 18:31:51 +01:00
Callan Bryant
c49323fa78
Prevent spurious resets on some boards
My receiver was failing to receive after a random amount of time (2 - 60
seconds). I discovered some power supply issues (DC-DC converter
related) that turned out to be another cause of the same problem but
only on some boards.

The reset procedure for most of the boards that RadioLib can drive
changes the pin mode of the reset line to an input after reset,
effectively tri-stating the output. I had seen this but dismissed it
after checking that the SX126x has a pullup on NRST meaning this was not
an issue.

The receiver I have produced uses a level converter to translate the 5v0
signals to 3v3. The level converters are not themselves pulled up or
down, which means when a pin is connected in a high-impedance input
state it will float around possibly randomly.

This can cause spurious resets on my board, and possibly others. I
remembered the reset procedure when I realised I could reproduce the
problem by rubbing the board on my shirt, probably causing some ESD to
trigger a change on the reset line.

This PR simply removes the lines that change the pinmode to input after
reset leaving it as an output which is hard-driven and the safest way. I
assume that the current behaviour was chosen to decrease the chance of a
conflict if used incorrectly.
2020-01-29 15:00:36 +00:00
jgromes
751fb6431c [RF69] Added assert macro 2020-01-13 16:36:53 +01:00
jgromes
a4eeefada0 [RF69] Moved reset to chip detection loop 2020-01-06 17:20:43 +01:00
jgromes
9da1573df0 Renamed unused pin macro to NC 2020-01-06 17:20:18 +01:00
jgromes
95e9de6759 [RF69] Added methods to clear DIO actions 2019-12-29 10:36:38 +01:00
jgromes
0bc7208827 [RF69] Changed pin mapping 2019-12-27 13:17:01 +01:00
jgromes
57fab02e20 [RF69] Extracted common packet mode code 2019-11-22 13:29:33 +01:00
jgromes
915f3780cc Reworked directory structure 2019-11-20 17:19:15 +01:00