jgromes / RadioLib

Universal wireless communication library for embedded devices
https://jgromes.github.io/RadioLib/
MIT License
1.48k stars 373 forks source link

Support for MSK,GMSK. #35

Closed rnbokade closed 5 years ago

rnbokade commented 5 years ago

Docs claim that Semetech chips have capabilities for MSK and GMSK. Can those be invoked using some settings in code?

jgromes commented 5 years ago

You didn't mention whether you mean SX127x or SX126x series, but the answer is pretty much the same for both: What's the source of that information? (G)MSK is only mentioned in passing, and as far as I can tell, there's no way to actually use it.

rnbokade commented 5 years ago

https://www.semtech.com/products/wireless-rf/lora-transceivers/sx1268 Check in the features section.

jgromes commented 5 years ago

Features section isn't docs - it's advertising. Judging by the actual docs (i.e. datasheet), SX126x either can't do MSK at all, or it is completely undocumented.

rnbokade commented 4 years ago

Minimum frequency-shift keying or minimum-shift keying (MSK) is a particular spectrally efficient form of coherent FSK. In MSK, the difference between the higher and lower frequency is identical to half the bit rate. Consequently, the waveforms that represent a 0 and a 1 bit differ by exactly half a carrier period. The maximum frequency deviation is δ = 0.25 fm, where fm is the maximum modulating frequency. As a result, the modulation index m is 0.5. This is the smallest FSK modulation index that can be chosen such that the waveforms for 0 and 1 are orthogonal. Source :- Wikipedia

rnbokade commented 4 years ago

So I guess a function beginMSK could be added which in turn can call befinFSK to set the deviation 0.25 times that of bitrate... Later the shaping filter value is already known to set gaussian filter... So GMSk is also solved

jgromes commented 4 years ago

Is there a reason to add it then? Since MSK is just a special case of FSK, I don't see any advantage in implementing a new beginMSK method - it would likely confuse users more than anything.

rnbokade commented 4 years ago

At least one can add note somewhere in the examples or wiki, regarding this.

On Fri, 27 Mar, 2020, 1:02 AM Jan Gromeš, notifications@github.com wrote:

Is there a reason to add it then? Since MSK is just a special case of FSK, I don't see any advantage in implementing a new beginMSK method - it would likely confuse users more than anything.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jgromes/RadioLib/issues/35#issuecomment-604639923, or unsubscribe https://github.com/notifications/unsubscribe-auth/AETWPIEFOR2WFZ6DZXFWK23RJOUVZANCNFSM4IMAUZEQ .

jgromes commented 4 years ago

Again - I'm not sure it's really beneficial. Users that need MSK in their application probably know how to achieve it. Users that don't need it or don't know what it is will only get confused, much like I was at the start of this issue.