25#ifndef INCLUDED_BLUETOOTH_MULTI_BLOCK_H
26#define INCLUDED_BLUETOOTH_MULTI_BLOCK_H
28#include <gnuradio/sync_block.h>
30#include <gnuradio/analog/pwr_squelch_cc.h>
31#include <gnuradio/filter/freq_xlating_fir_filter_ccf.h>
32#include <gnuradio/analog/quadrature_demod_cf.h>
33#include <gnuradio/digital/clock_recovery_mm_ff.h>
34#include <gnuradio/digital/binary_slicer_fb.h>
35#include <gnuradio/filter/mmse_fir_interpolator_ff.h>
105 int mm_cr(
const float *in,
int ninput_items,
float *out,
int noutput_items);
108 void demod(
const gr_complex *in,
float *out,
int noutput_items);
111 void slicer(
const float *in,
char *out,
int noutput_items);
114 int channel_symbols(
int channel, gr_vector_const_void_star &in,
char *out,
int ninput_items);
float d_omega
Definition bluetooth_multi_block.h:90
float d_omega_mid
Definition bluetooth_multi_block.h:92
float d_omega_relative_limit
Definition bluetooth_multi_block.h:89
float d_demod_gain
Definition bluetooth_multi_block.h:99
float d_last_sample
Definition bluetooth_multi_block.h:93
void slicer(const float *in, char *out, int noutput_items)
double d_samples_per_slot
Definition bluetooth_multi_block.h:69
int d_low_channel
Definition bluetooth_multi_block.h:75
static const int CHANNEL_WIDTH
Definition bluetooth_multi_block.h:57
double d_sample_rate
Definition bluetooth_multi_block.h:63
std::vector< float > d_channel_filter
Definition bluetooth_multi_block.h:96
bluetooth_multi_block(double sample_rate, double center_freq, double squelch_threshold)
float d_mu
Definition bluetooth_multi_block.h:88
int d_ddc_decimation_rate
Definition bluetooth_multi_block.h:84
static const int SYMBOL_RATE
Definition bluetooth_multi_block.h:48
int channel_symbols(int channel, gr_vector_const_void_star &in, char *out, int ninput_items)
double d_samples_per_symbol
Definition bluetooth_multi_block.h:66
gr::filter::mmse_fir_interpolator_ff * d_interp
Definition bluetooth_multi_block.h:102
float d_gain_mu
Definition bluetooth_multi_block.h:87
double d_squelch_threshold
Definition bluetooth_multi_block.h:81
int d_high_channel
Definition bluetooth_multi_block.h:78
double d_center_freq
Definition bluetooth_multi_block.h:72
int mm_cr(const float *in, int ninput_items, float *out, int noutput_items)
static const uint32_t BASE_FREQUENCY
Definition bluetooth_multi_block.h:54
double channel_freq(int channel)
void demod(const gr_complex *in, float *out, int noutput_items)
float d_gain_omega
Definition bluetooth_multi_block.h:91
void set_symbol_history(int num_symbols)
uint64_t d_cumulative_count
Definition bluetooth_multi_block.h:60
static const int SYMBOLS_PER_SLOT
Definition bluetooth_multi_block.h:51