diff --git a/SoapyHifiBerrySettings.cpp b/SoapyHifiBerrySettings.cpp index 968c866..0ea2a71 100644 --- a/SoapyHifiBerrySettings.cpp +++ b/SoapyHifiBerrySettings.cpp @@ -147,8 +147,8 @@ SoapyHifiBerry::SoapyHifiBerry(const SoapySDR::Kwargs &args) if (vfoIQMode == Single || vfoIQMode == IQSingle || vfoIQMode == IQSingleMultiPort) { cout << "IQ mode single multiplier = " << multiplier << endl; - - pSI5351 = make_unique("/dev/i2c-1", SI5351_BUS_BASE_ADDR); + + pSI5351 = make_unique("/dev/i2c-1", SI5351_BUS_BASE_ADDR, SI5351_CLK0, SI5351_CLK1, SI5351_CLK4, SI5351_CLK5); if (!pSI5351) { cout << "No si5351 found" << endl; @@ -194,8 +194,8 @@ SoapyHifiBerry::SoapyHifiBerry(const SoapySDR::Kwargs &args) pSI5351->drive_strength(CLK_VFO_Q, rxDrive); pSI5351->output_enable(CLK_VFO_I, 1); pSI5351->output_enable(CLK_VFO_Q, 1); - pSI5351->drive_strength(CLK_VFO_TX_I, rxDrive); - pSI5351->drive_strength(CLK_VFO_TX_Q, rxDrive); + pSI5351->drive_strength(CLK_VFO_TX_I, txDrive); + pSI5351->drive_strength(CLK_VFO_TX_Q, txDrive); pSI5351->output_enable(CLK_VFO_TX_I, 1); pSI5351->output_enable(CLK_VFO_TX_Q, 1); pSI5351->update_status(); diff --git a/si5351.h b/si5351.h index 4561915..2adf282 100644 --- a/si5351.h +++ b/si5351.h @@ -317,7 +317,7 @@ struct Si5351IntStatus class Si5351 { public: - Si5351(const char *i2c_device_filepath, uint8_t i2c_addr = SI5351_BUS_BASE_ADDR, si5351_clock iclock = SI5351_CLK0, si5351_clock qclock = SI5351_CLK1, si5351_clock iclockTx = SI5351_CLK6, si5351_clock qclockTx = SI5351_CLK7); + Si5351(const char *i2c_device_filepath, uint8_t i2c_addr = SI5351_BUS_BASE_ADDR, si5351_clock iclock = SI5351_CLK0, si5351_clock qclock = SI5351_CLK1, si5351_clock iclockTx = SI5351_CLK4, si5351_clock qclockTx = SI5351_CLK5); ~Si5351(); bool init(uint8_t, uint32_t, int32_t, int fileHandle = 0); void reset(void);