10#ifndef INCLUDED_LORA_SDR_FRAME_DETECTOR_TIMEOUT_IMPL_H
11#define INCLUDED_LORA_SDR_FRAME_DETECTOR_TIMEOUT_IMPL_H
31 enum State { FIND_PREAMBLE, SEND_PREAMBLE, SEND_FRAME };
55 uint16_t m_store_n_bytes;
61 uint32_t m_samples_per_symbol;
73 std::vector<gr_complex> m_downchirp;
79 std::vector<gr_complex> m_dechirped;
85 std::vector<gr_complex> cx_out;
97 std::vector<float>::iterator m_max_it;
103 std::vector<float> m_dfts_mag;
127 std::vector<gr_complex> buffer;
139 double m_symbols_per_second;
145 uint32_t m_samp_rate;
163 bool m_detect_second_packet;
172 int32_t get_symbol_val(
const gr_complex *input);
185 uint8_t n_bytes,
bool detect_second_packet);
200 void forecast(
int noutput_items, gr_vector_int &ninput_items_required);
213 gr_vector_const_void_star &input_items,
214 gr_vector_void_star &output_items);
Definition: frame_detector_timeout_impl.h:22
~frame_detector_timeout_impl()
Destroy the frame detector impl object.
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
General work function. Main gnuradio function that does the heavy lifting.
void forecast(int noutput_items, gr_vector_int &ninput_items_required)
frame_detector_timeout_impl(uint8_t sf, uint32_t smap_rate, uint32_t bw, uint8_t n_bytes, bool detect_second_packet)
Construct a new frame detector impl object.
Frame detector block, looks for a LoRa frame given SF, sapling rate and BW. Once this block has found...
Definition: frame_detector_timeout.h:27
Definition: _kiss_fft_guts.h:22