RTL-SDR is mated to uBITx

Ian KD8CEC is working on a new release of his CEC firmware for the uBITx that will be more modular in approach (picking up on John VK2ETA’s mods to Ian’s firmware), interface with a range of displays (I2C versions of the 1602 and 2004 displays as well as the display that comes with the Raduino).  More importantly, however, this new version will enable the µBITx front-end of the receiver to be connected to an RTL-SDR USB device.  The RTL-SDR device will draw on the  HF receive sensitivity of the µBITx  along with the front end bandpass filter and first IF roofing filter and associated IF stage amplifier (normally at 12MHz) to produce a quality SDR receiver (for just a few $s invested in the RTL-SDR tuner).

This version is available to download (1.071 Beta) from Ian’s website now.

W0EB/W2CTX firmware gets another update


Jim Sheldon – W0EB has released W0EB/W2CTX I2C software Version 4.00R for I2C enabled uBITX Raduino cards and the W0EB/W2CTX/N5IB RadI2CIno cards.

This software will NOT run on a stock standard Raduino card unless it has been modified to operate with an I2C display This version is for an I2C enabled 2 X 16 LCD display. (The 4 line x 20 character version will be released later).

Reference

Flatten the power curve and set your power out in software

John VK2ETA  has some pretty good ideas. A few days ago he worked on an AGC system using the first IF stage (at 45MHz) to control gain at the front end of the system.   He has now got some pretty good results using a limited amount of memory in the firmware to flatten out the power curve on transmit.  At this stage it only works in voice and digital modes (LSB and USB). Because CW is achieved by unbalancing the first mixer after the IF filter, this approach will not work on CW.

By shifting the IF frequency on the filter, John is able to produce a fixed attenuation that keeps the output power within the required limits.

The process is two fold:

  • a one off calibration exercise.
  •  a menu item that selects Low, High or Max power.

John has used 5W and 10W as targets for the Low and High values.

His results (remembering he has modified the final stage with RD16s and a number of other changes have been made to his transceiver):

  • 80m to 10m in low power settings have variations between 4 and 6 watts.
  • 80m to 10m In the high power setting has a range between 9 and 11 watts.
  • Only 16 bytes of data points are required (could be stored in EEPROM if desired).

His ATU uses a 2nd Arduino.   He has used a spare digital output to send a 1500Hz tone, low-pass filtered, to the microphone input for calibration purposes.  The audio filtering plus the 2nd IF filter take care of the audio harmonics and the signal is clean. This could be done in the Raduino if digital lines are freed up, such as by using an I2C display.

The tone also provides a tune up facility in low power.

He can transmit in digital modes in low power mode without having to adjust the drive every time he changes bands.  Perfect!

John will update the code in the file section so that others can incorporate this new feature into their firmware if they desire.

John acknowledges Jerry KE7ER’s idea of using fixed tables to perform the High/Low calibration function.

Firmware uploaded to files area

John has uploaded an update of the KD8CEC based software (V1.04 based) for Raduino and ATU Arduino.

Key changes in Version 20180411:

– Made the menu system dynamic so that items can be inserted at compile time or can be context-dependant at run time.
– Added output power attenuation for 80 to 10M using first IF shift.
– Added new menu item “Power Level”: low/high/max for SSB modes.
– Made CW menu items display dependant on having CW modes selected.
– Reduced the level at which the software AGC comes in. Adjusted the correction of S-Meter when software AGC comes into play.
– Changed tone generation for ATU tuning sequence from CW to using SSB with the 2nd Arduino generated tone.
– Change tune sequence to

a)Select the “Low” power setting before performing a tune and
b)Change tune frequency to tune on carrier (offset by audio tone frequency).

Assumes the following hardware change (only if using an ATU): a digital output on the ATU Arduino is used to generate a tone. An audio filter identical to the Raduino CW audio tone filter is used and it’s output is connected to the mic input of the SSM2167 module. If digital outputs are freed-up on the Raduino, for example by using an I2C display, the same can be implemented with only the Raduino.

This allows a low power tune function.

Reference

Converting to an I2C display and other developments

Ian KD8CEC is busy opening up the possibilities for including different code sections in his new version 1.07 under development.  This will include the ability to readily shift to an I2C display in order to reclaim digital I/O ports needed for other features.

In the mean time, Bill K9HZ provides a succinct code listing required to get an I2C display to work

The following TWO things need to be done in Ian’s version 1.07 code (BETA):

1. Change Display models in “ubitx_20” :

From this:

#define UBITX_DISPLAY_LCD1602P      //LCD mounted on unmodified uBITX

//#define UBITX_DISPLAY_LCD1602I    //I2C type 16 x 02 LCD

//#define UBITX_DISPLAY_LCD2404P    //24 x 04 LCD

//#define UBITX_DISPLAY_LCD2404I    //I2C type 24 x 04 LCD

To this:

//#define UBITX_DISPLAY_LCD1602P    //LCD mounted on unmodified uBITX

#define UBITX_DISPLAY_LCD1602I        //I2C type 16 x 02 LCD

//#define UBITX_DISPLAY_LCD2404P    //24 x 04 LCD

//#define UBITX_DISPLAY_LCD2404I    //I2C type 24 x 04 LCD

2. Update Ian’s code to use the I2C libraries in “ubitx_lcd_1602i” :

From this:

#include <LiquidCrystal.h>

LiquidCrystal lcd(8,9,10,11,12,13);

To this:

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  //

JUST MAKE SURE THE ADDRESS IS CORRECT…

in the instance above the add-on board on the back of the display is set to address “3F”.  You can use the scanner to find the correct address.

Reference

 

Using 2nd channel of TDA2822 for S-meter

John VK2ETA suggests using a section of the original AGC circuit of the µBITx (design by Ashhar Farhan VU2ESE) for generating a signal for an S-meter so that this can be used by his modified software.

This was part of the pre-production uBitx diagram but was not implemented in the production version.

The 2N7002 is used as an automatic gain control and can be used or not for that application.   The circuit has limitations since it was not included in the production version.

You would need to insert a trim-potentiometer (10K ohms is good) between pin 6 of the TDA2822 and the VOL-H connection to adjust the sensitivity, plus (VERY IMPORTANT) a voltage divider, between the cathode of the diode and the ground, to limit the voltage to under 5VDC for the analogue input of the Raduino.

John would use 330K ohm in series with 100K ohm to the ground, and connect A7 to the junction of the two resistors.

Further adjustments are available in the software if required as we define the 9 stages of the S-meter display (first stage is zero, then 6 stages for growing bars, 1 stage showing “+” and one stage showing the custom “++” symbol). In ubitx_20.ino it shows as:

int sMeterLevels[] = {0, 5, 17, 41, 74, 140, 255, 365, 470};

The values in the array are the measured values on the analogue input (defined as A7 above) at which we step into a higher “stage” and can go from zero for zero volts to 1023 for a 5V DC value.

Reference

Using a 1N4004 or similar as a varicap or pin diode for AGC control

Allison KB1GMX finds it  odd that every one seems to be bent on levelling the audio volume in the audio circuit.

The Bitx or uBitx has enough gain and handy places that RF gain control based on audio detection works very well. The easy way is replace R13 (ubitx) with a diode such as 1n400x (x=1 to 7) and controlling the  current through the diode to make it behave as a variable resistance at RF.

The current would be about 4-6ma at max gain and decrease to zero (0) at minimum gain.  For that design the AGC range is about 26 to 32db depending on the band. If you feel that is not enough AGC range then add the same mod at R33 and with both the AGC range is near 60+ DB, generally enough.

AGC in this form is less prone to overload distortion as you are lowering gain. The control could be a pot between 8V (or RX-V) and ground and a series 1K resistor to the diode (x2 if using both diodes). That gives a manual gain control. To make it automatic use a circuit to detect the voltage at the top of the audio gain pot and feed that voltage to the gain control diodes. The circuit should be arranged to put 4-8V out at NO Audio and decrease to zero volts with increasing audio.

The 1n400x series with minor reservations makes a fine substitute for a PIN diode, the preferred but more costly device for this function. Beside being widely available and cheap  makes it useful.  It also makes a good 20pf varicap and a 1A rectifier to 1000V (1n4007).

This was tested on the first bitx20 that Allison built over a decade ago to test AGC.  It has been used on several older Tentec radios and more than few of her own design. That said its far from a new idea or design as its documented in EMRFD and an older book (Solid State Design, ARRL press, now out of print).

Jerry KE7ER climbs into the conversation saying:

“I have no idea what the capacitance of a slightly forward biased 1n400x is,
figure 6 here suggests it’s north of 30pf:    Therefore, it might be marginal at 45mhz, and can vary wildly with diode type and brand.

Consensus seems to be that a 1n4007 is preferred over other 1n400x flavors for use as a PIN.   Some experimentation may be required using diodes from different manufacturers:

If you are paying $5 postage to ship in some 1n4007’s, you might consider
also getting some BAP64-02’s at $0.43 each single unit pricing, Mouser 771-BAP64-02-T/R.  These are fully specified for use as an RF PIN diode.

Reference

 

VK4PLN audio filter board

Nik VK4PLN has now received his 700Hz CW audio filter boards and built up the board as shown below:

He put these on the spectrum analyser.  The spectrum before the filter is included in circuit:

And after:

Seems to work!   To Nik’s ears an LM324 gives a better result than the TLC274 op amp.  You mileage may vary.

Reference

Shock-proofing your uBITx

John VK2ETA asks what he should do to protect his µBITx from the rigours of daily use when taken portable.

1. Are they other components you should be concerned about?

2. What method is recommended: hot melt glue, epoxy glue, superglue or other method?

3. What about cables

4. Any other actions that should be taken?

The recommendations from IO Group members seem to be:

  • Hot glue is your best bet. Poor man’s potting to the rescue. It holds very well and removes easy enough for repairs and upgrades. (Doug Wilner)
  • Make sure your cable bundles aren’t so tight that they are putting stress on the outer cables in the connectors as they bend into the bundle. Hot glue the connectors in place and wires coming out for strain relief. (Doug Wilner)
  • To mitigate shock and vibration getting to the PCB consider something like LORD Micro-Mounts and see the distributor page.  (Arvo KD9HLC)
  • Scotch weld (Andrew W6AVC)
Reference