Skip to content

Chirp

softlora.chirp

generate_chirps(N)

Generate the N-sample baseband reference upchirp and downchirp.

Parameters:

Name Type Description Default
N int

Samples per symbol (2**sf).

required

Returns:

Name Type Description
upchirp ndarray

The LoRa upchirp (symbol 0 preamble chirp).

downchirp ndarray

The complex conjugate (downchirp), used to dechirp received windows.

Source code in softlora/chirp.py
def generate_chirps(N):
    """Generate the N-sample baseband reference upchirp and downchirp.

    Parameters
    ----------
    N : int
        Samples per symbol (2**sf).

    Returns
    -------
    upchirp : ndarray
        The LoRa upchirp (symbol 0 preamble chirp).
    downchirp : ndarray
        The complex conjugate (downchirp), used to dechirp received windows.
    """
    n = np.arange(N, dtype=float)
    upchirp = np.exp(1j * 2 * np.pi * (n**2 / (2 * N) - n / 2))
    downchirp = np.exp(-1j * 2 * np.pi * (n**2 / (2 * N) - n / 2))
    return upchirp, downchirp