First complete contact

_Dave_ AD0B

Hello all
Have had the first confirmed contacts with the BITX40. !!!
I confirmed contact on norcars net this morning. With Sebring Fl, Michigan and maybe MD. The Florida station was about 1100 miles away. 

I am using the stock microphone on a wand and am using an inverted V 40m dipole.
I am operating my radio off of a 12v 1300mah Lipo. i should be able to go to 24v on the finals. 

Re: uBITX Manager


Thanks Ian, for some reason I was using 9600, changed it to 38400 and that did the trick.  Thanks for your patience.

uBITX Firmware CEC Version Added WSPR function, I am looking for a beta tester. #ubitx

Ian Lee

uBITX Firmware CEC Version Added WSPR function, but It is still a test level.
so, I am looking for a beta tester who has uBITX and knows how to use WSPR.

I used the following method to put the WSPR function in the small space of uBITX.
 - All settings required for WSPR transmission are pre-entered in uBITX.
 - Callsign, location(2alpha, 2 number), db and frequency information to be used for transmission are stored in uBITX.
 - Outdoors, uBITX and antenna are all you need to transmit WSPR with pre-entered information.

you do not need to make any modifications to your uBITX to use WSPR.

For more information, click on the link below.
(You can download uBITX Manager as firmware for WSPR.
Firmware is based on Cat Support uBITX Firmware CEC Version 1.04.)

Best 73
KD8CEC / Ph.D ian lee
kd8cec@... (my blog)

Re: GPS and BITX

Hans Summers

WSPR does not require GPS. However:

1) WSPR requires precise frequency, the transmission must be within the 200Hz WSPR sub-band.

2) WSPR requires precise timing: transmissions start on the 2nd second of even minutes, +/- a few seconds. An ordinary crystal or worse still, the ceramic resonator on some Arduinos, will not provide sufficient timing accuracy to run WSPR for long.

A GPS is a very convenient and easy way to achieve both of these objectives. On the Ultimate3S kit the latitude and longitude are also converted to Maidenhead Locator which is encoded live, into each WSPR transmission. Something that is necessary if you want to use WSPR for tracking something (ship, balloon) for example the Canadian C3 expedition

Speaking of which: Jim N2NXZ's U3S-22 balloon (running modified Ultimate3S firmware) reached Kazakhstan today. For the second time! It's already been flying for 23 days, at a little over 9,000m altitude, and completed one world circumnavigation! See for details and live tracking (using WSPR) during daytime. Big congratulations to Jim!

73 Hans G0UPL 

Pulling Arduino data apart

Jack, W8TEE

I've been going through some of the BITX/µBITX code and see a number of places where bit shifting and/or masking is being done to get rid of "unwanted" bits of data. Doing this means you have solved the "Endian" problem for the microcontroller being used. For example, on some processors, the number 5 stored as an int data type appears in memory as: 00000000 00000101. On other processors, it is stored as: 00000101 00000000. If you are bit shifting or masking, you need to know the "Endian" order for the bytes. On an Arduino, you are given two functions: lowByte() and highByte() to allow you to extract the order to determine how the data are organized in an int. Knowing the byte order can be important, such as transferring binary data from one place to another over a serial link. But what if you are working with a long data type? The lowByte() and highByte() functions don't work since a long is 4 bytes. The solution is to use a C structure called a union. Think of the union as a buffer; a small chunk of memory. I think of it as a bucket, the size of which is determined by the biggest piece of data that will be stored in the union. For example:

union {
  byte array[4];
  byte b;
  char c;
  int i;
  long L;
  float f;
} myUnion;

The long and the float data types are the biggest in the union, so the C compiler will allocate 4 bytes to the union named myUnion. It's a 4-byte bucket. If you want to, you can pour those four bytes into another long variable, or a float variable, or you could use a 1-byte dipper and spoon the 4 bytes into a 4-byte array. Your choice. Suppose, for some reason, the long in the union (i.e., the union member named L) needs to hold an RGB value for a color display. Further suppose you need to know the byte that isn't used as a color value. The following short program will show you how a union works. Note how I can fill the union with any data type, but extract it as a byte array. This makes it easy to observe the byte-order of the data. unions are a great C structure to understand as it gives you a portable way to determine the byte order of the data for a given processor.

union {
  byte array[4];
  byte b;
  char c;
  int i;
  long L;
  float f;
} myUnion;      // Define a union

void setup() {
  byte b = 255;      // create a list of variables...
  char c = 'A';
  int i = 5;
  long L = 10000000L;
  float f = 3.14;


  Serial.print("low byte = ");          // the non-portable way to see the byte order of  variable i
  Serial.print("   high byte = ");

  myUnion.i = i;                              // Stuff the int into the union, then look at it
  Serial.print("Union:  low byte = ");
  Serial.print("   high byte = ");

  myUnion.b = b;                        // same for a byte, in DEC and HEX
  Serial.print("Union: byte = ");
  Serial.print("  byte (hex) = ");
  Serial.println(myUnion.array[0], HEX);

  myUnion.L = L;                           // same for a long
  Serial.print("Union: long[0] = ");
  Serial.print("    long[1] = ");
  Serial.print("    long[2] = ");
  Serial.print("  long[3] = ");
                                                         // Do some others on your own...

void loop() {

Re: Cases

Vince Vielhaber

Dunno about your aluminum tape, but copper tape is easy to solder to.


On 03/08/2018 09:54 AM, W9ZIM wrote:
Nice looking case, Carl. I like the idea of lining the interior with
metal tape for better shielding, but does it need to be copper? I have
some aluminum tape that I use for patching up ductwork, and I wonder if
that will be just as effective.
Darren, W9ZIM

Re: GPS and BITX


Hi Qonita,
I agree with Chris, you do not have to transmit GPS coordinates.
WSPR is a protocol for testing propagation, antennas and so on.
Using this digital mode you transmit your Callsign, first 4 chars of your locator and power in dBm.
Receiving stations report transmitter they are able to heard.
GPS usage could be to transform coordinate in Locator so you can made a beacon always transitting right locator and runtime updated.
WSJTX is a program written by John Taylor (WSPR creator and Physics Nobel Prize) for operating WSPR, JT65, FT8 etc. digital modes 

Hope this helps,
Alessandro M. IU1ETR

Re: Micro BitX No Audio TDA2822?

Tom Christian

Hi, Ron.  I have a similar post for the same problem.  My U1 has the WX label on it.  I ordered a replacement and it should be here next week.  I'll post results.  Crossing my fingers......:)

Re: KB1OIQ BITX40 / uBITX files now on Sourceforge

Michael Monteith

WOW!.  I'm excited at all the work different people are doing.  This makes the Bitx40 and uBitx even more exciting.  Now if I can just retire and get to work on all this stuff I'd have a blast. lol   Thanks to you and all the others that are coming up with some amazing ideas and Farhan. 

73, Michael

Re: UBit has shipped


More kits/projects than time permits is kinda the standard with hams I think. I keep finding kit projects I've had so long that I can't remember when/why/where I ordered them LOL. Just received my BITX40 and am anxiously awaiting my uBitx.

Re: Cases


Nice looking case, Carl.  I like the idea of lining the interior with metal tape for better shielding, but does it need to be copper?  I have some aluminum tape that I use for patching up ductwork, and I wonder if that will be just as effective.
Darren, W9ZIM

Re: Cases

Carl Beck

I designed a Case specifically for the uBITX.  Please read my attached PDF File and see what you think.  I have been getting nice feedback from those that have purchased one.

Re: Raduino oscilators. 33mhz and 57mhz " . Documentation says one thing, but this is what I measured.

Jack, W8TEE

Just to make sure, if you retype the code fragment:

    if (prev_freq <= 10000000l && frequency > 10000000l)
      isUSB = true;
    if (prev_freq > 10000000l && frequency <= 10000000l)
      isUSB = false;

note that the last character in the numeric constants is an 'el' not a one. You can make this more obvious by using a capital 'L' for the data type specifier:

    if (prev_freq <= 10000000L && frequency > 10000000L)
      isUSB = true;
    if (prev_freq > 10000000L && frequency <= 10000000L)
      isUSB = false;

Jack, W8TEE

From: Michael Shreeve <shreevester@...>
Sent: Thursday, March 8, 2018 12:59 AM
Subject: Re: [BITX20] Raduino oscilators. 33mhz and 57mhz " . Documentation says one thing, but this is what I measured.

24.99800 MHz clock

On Wed, Mar 7, 2018 at 8:34 PM, Michael Shreeve <shreevester@...> wrote:
Jerry, I was just looking at it. on LSB 54.99645
                                              on USB 54.99645
Regardless of upper or lower, no change. Does that make more sense ? When I looked before setting it, I noticed it wasn't on 10.000 MHz so I made very sure this time. Now to measure the 25 clock.

On Wed, Mar 7, 2018 at 7:03 PM, Jerry Gaffke via Groups.Io <jgaffke@...> wrote:
So, in that first instance, the rig is tuned to 54.98977-(32.99388+11.99624 ) = 9.999650
In the second instance, it is tuned to 54.99647-(56.99305-11.99624 ) = 9.999660
Since it flipped, we can assume 10mhz is somewhere in the middle, let's assume 9.999655 mhz
I'm betting your 25mhz oscillator will measure to be around  25.0 * 9.999655/10.0 = 24.9991375 mhz

This little exercise in looking at that transition makes apparent what I think is a bug in that code scrap, 
we need to deal with the case where one or the other frequency is exactly equal to 10.0 mhz.
So code in ubitx_20.ino at line 470 should be edited to read:

    if (prev_freq <= 10000000l && frequency > 10000000l)
      isUSB = true;
    if (prev_freq > 10000000l && frequency <= 10000000l)
      isUSB = false;

I think.

Jerry, KE7ER

On Wed, Mar 7, 2018 at 05:21 pm, Michael Shreeve wrote:
Hopeffuly you see this Jerry, its just for you. but anyone might find this usefull I hope. 

Frequencies on 10mhz lsb Clock 0 54.98977
                                            clock 1 32.99388
                                             clock 2 11.99624

Frequencies on 10 MHz USB Clock 0 54.99647
                                                 Clock 1 56.99305
                                                  Clock 2 11.99624 
And as I said in the video, haven't measured the master 25.000 MHz clock. Soon that will happen. 

Michael Shreeve N6GRG

Michael Shreeve N6GRG


Re: UBit has shipped


I ordered mine on Jan 10th and just received notice it was shipped today. It was shipped via DHL so should be here n a few days.


Re: UBit has shipped


I ordered mine on Jan 5 and it arrived March 7. what an elegant little board. beautiful!!!!!


Re: RD16HHF1 power curve flattening...some

Kelly Jack


How did you implement the ssm2167?

I have one in my bitx40.



Re: TDA2822 Replacement

David Wilcox <Djwilcox01@...>

The poor guy forgets that some of us are disabled: Pete Juliano has a disability called FFS (fat finger syndrome) whereby the fat fingers don't always hit the correct key or hit more than one key at the same time.  If a famous person like Pete can function and produce great videos and blogs with his problem AND we all seem to understand him it can't be that bad.  Those who would be critics are faulty in their attempts to further impair those who are disabled.  May they see the "light".  The rest of us will go on enjoying this fantastic hobby and also the new modes of communication that the web and nets provide.  I just endured a 9 hour flight listening to radio blogs and videos saved on my iPhone.  FWIW.

Dave K8WPE

On Mar 7, 2018, at 9:42 PM, Larry Smith <815cpu@...> wrote:

I had the same run in with Dex out of the blue!  i made a English usage error.  i guess typing in the middle of the night with a flashlight not wanting to wake the family is bound to cause a problem.  I see errors all the time and still "get" what the author is saying.  David just know we all know what's go'in on.

Good advice Jack.  Thanks..... Tomatoes as i recall I rem that one Hi


 pompous ass  comes to mind

On Wed, Mar 7, 2018 at 8:17 AM, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

Dex went after me a number of months ago for some spelling error I made, so I understand you anger. But stop and think about it: Despite what they might say, how unhappy does a person have to be with their life when their only apparent joy comes from criticizing others.

He's not worth your time...

Jack, W8TEE

From: N8DAH <Dherron@...>
Sent: Wednesday, March 7, 2018 8:43 AM
Subject: Re: [BITX20] TDA2822 Replacement

Yes it was a funny misuse of the word and it was a type-o late at night..... what is not funny is having some kiwi like you come at me and just short of call me stupid and "should go back to middle school". Maybe you should go crawl back under the rock you look like you came from....I am here to enjoy a hobby and share tips, tricks and other info with like minded Hams. I don't come here to be insulted by the likes of you or anyone for a simple type-o.
In the nicest way Dex ....Piss off!


Re: RD16HHF1 power curve flattening...some

John <passionfruit88@...>

Hi Nik,

Not yet. I just received the BN43-3312 so I try that as soon as I finish the ATU (half way there). 

Been busy with mic compressor SSM2167 (done), S-Meter (hardware and software done), SWR/POWER meter (hardware done, basic display), Arduino pro mini linked by I2C to Raduino to measure power, swr, final's current (hall effect sensor) and control the ATU plus shutdown the final's bias if required.

ATU is L-Network with 2 servos controlling a variable capacitor and a two wafers rotary switch to get 6 coil positions on high impedance and 6 on low impedance.

Too much fun.

If you get the mods for the final in, please let us know the results.

Thanks and 73, John (VK2ETA)

Re: TDA2822 Replacement

Lawrence Galea

He must have misunderstood you and thought that you meant oscilla(h)er.

On Thu, Mar 8, 2018 at 2:24 AM, Nelson <ngtdlt@...> wrote:
Howdy Raj,

Well over half a century ago when I was 13, I wanted to build an oscillator to practice morse code.  One of the men at my church was an EE and also a ham (he also had a really cute daughter my age that I was kind of sweet on...).  I dropped by his house one evening and asked him if he could help me build an osculator (not a misspelling, rather a mispronunciation of oscillator).  He told me if I wanted to practice code, he would help me build an oscillator but if I had in mind some sort of practice with Janice (his daughter) I had better take up some other hobby quickly.


On Tue, Mar 6, 2018 at 7:37 PM, Raj vu2zap <rajendrakumargg@...> wrote:
My English teacher Mr. Hobday RIP would have explained it as oscillating occulation!

He lived down the road and would drop in some evenings and explain English words
by breaking them down. I suspect he always came for a cuppa! I managed to pass!


At 07-03-18, you wrote:

>How far away from English does Ameriglish/Yankish really go?
>Their/There/They're is bad enough, but "osculation"??? Sorry, David, go back to middle school :( or at least use a dictionary once in a while ...
>Still, 73
>Dex, ZL2DEX

I always thought the Universe was a wonderfully strange place until I studied Particle Physics - I now know the Universe is, in fact, profoundly odd in nature

Re: Volume Control


I replaced mine with a logarithmic pot.  I tried a linear type, but wasn’t happy with the result.