Date   
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 http://qrp-labs.com/ultimate/u3s 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 http://qrp-labs.com/c3

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 http://qrp-labs.com/flights/u3s22 for details and live tracking (using WSPR) during daytime. Big congratulations to Jim!

73 Hans G0UPL 


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

Ian Lee
 

All
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.)
http://www.hamskey.com

--
Best 73
KD8CEC / Ph.D ian lee
kd8cec@...
www.hamskey.com (my blog)

Re: uBITX Manager

davidaker@...
 

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

First complete contact

d balfour
 

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.
http://veloliner.com/ham/bitx40.JPG
I am operating my radio off of a 12v 1300mah Lipo. i should be able to go to 24v on the finals. 
Dave
KE0PVO

Re: Volume Control

Dexter N Muir
 

Audio taper is logarithmic. Human (and I'd presume most other) ears respond logarithmically to acoustic (sound level) variations - it's how we can detect faint sounds and tolerate loud ones. Use a 'log' pot - pretty much all audio control is such. Part of Alexander Graham Bell's (he of telephone fame) experiments discerned this in converting sound to voltage/current. It's why we measure in (deci)bels - 10 x log (Power1/power2).

73 de ZL2DEX

Re: TDA2822 Replacement

Arv Evans
 

The issue has been handled by admin.
If it persists, more drastic action can/will be taken.
 
Can we please let this go and get back on-topic.

Thanks

Arv K7HKL
_._



On Wed, Mar 7, 2018 at 7: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

WA9DOH

 pompous ass  comes to mind

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

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@...>
To: BITX20@groups.io
Sent: Wednesday, March 7, 2018 8:43 AM
Subject: Re: [BITX20] TDA2822 Replacement

Dex,
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!

--
David




Re: Pulling Arduino data apart

Jerry Gaffke
 

You definitely need to be endian-aware when coding in assembly language.
But I can code all day in C without worrying about big vs little endian.

If you have a 32 bit integer and want to send the 8 msb's over a serial link, do something like this:
    sendbyte(data32>>24);
I'm assuming sendbyte() accepts an 8 bit argument, so no need to explicitly strip off unused bits.
This might make it more obvious:
    sendbyte((data32>>24)&0xff);
That code is bulletproof in C, should work the same on a PDP-8 with 12 bit hardware 
as it does on the the latest stuff from Intel.  Unions will undoubtedly get packed differently
on a PDP-8, in case anybody still cares these days.  C does not specify that unions get packed
in any particular manner, that's true even on an 8/16/32/64 bit machine.

Unions almost always work, might be a good idea on a minimalist machine like the ATMega328P.
Shifting a 32 bit integer is relatively painful with an instruction set that can only shift an 8 bit word
left or right by one bit at a time.  However, while it might take 100 clock ticks to execute, the code to
shift a 32 bit word is instantiated only once as a function call, and 100 ticks happens much faster
than sending a single byte out through the I2C interface.  (100 ticks is a wild guess.)

If 100 ticks is too painful, then it's time to sack the Nano and move on to the $2 STM32 Blue Pill.

Take a look at the si5351 routines in Allard's code and on the uBitx.
Totally endian agnostic.
I'm looking forward to trying them out on a PDP-8 someday.

Jerry, KE7ER



On Thu, Mar 8, 2018 at 07:51 am, Jack Purdum wrote:
.....  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: .....

uBitx and CW

K4LXY
 

I'm a cw guy, so that's my main use for the uBitx.  As I noted on here before, I find the bandpass too wide to be useable on cw - noise overwhelms the signals.  Until we get a better fix, I've installed a Hi-Per-Mite SCAF (the same design used in the QCX) in the audio output line and it's HUGELY helpful.  The rig is now quite competent on cw.  This also isolates the TDA audio chip from the headphone jack, thus perhaps reducing chances of blowing the chip.

I'm using the KD8CEC firmware, which is great.  The cw speeds are so close together, however, that after selecting one and trying to confirm it by pushing the encoder, the speed often changes.  To solve that, I've wired a button parallel to the encoder push switch.  In fact, I've used a spring-loaded SPDT switch; one side is for the encoder, and the other is PTT for when that is needed to set something in the menu.  That has made confirming menu settings much easier, especially since I no longer have to hold onto the rig to keep it from moving when pushing the encoder.

I've installed the 470uf cap to reduce audio pop, though it increases the TX to RX delay and I may try a smaller one.  It does reduce the pop on that transition.

Also, I've replaced R250 with a pot to control the sidetone volume, at least until I get it where I want it.  I may replace it with a fixed resistor at that point.

Hope this is helpful to somebody.

Howard K4LXY

Re: Pulling Arduino data apart

Jerry Gaffke
 

It would be interesting to see what the Arduino compiler does with this code:
    sendbyte(data32>>24);

That sort of thing is going to happen a lot in the code it sees, at least if I am writing it.
With optimization turned on, the compiler should recognize that everything remains
on byte boundaries and implement it as something very much like Jack's union trick. 
Should do this properly for big or little endian machines without me thinking about it.
No bit shifts.

Jerry



On Thu, Mar 8, 2018 at 08:57 am, Jerry Gaffke wrote:
If you have a 32 bit integer and want to send the 8 msb's over a serial link, do something like this:
    sendbyte(data32>>24);

Re: Cases

Thomas Sharka
 

On Thursday, March 8, 2018 9:54 AM, W9ZIM <darrendude@...> 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

How to order a Raduino

kir@...
 

Hi guys,

As I have an old Bitx40 with analog VFO, I would order a Raduino. How can I do that ? found no info.
I do not have the correct email.

Can you help ?
Tnx and 73's from Felix/ON4KIR

Re: Volume Control

Jose Amador
 

For volume adjustment, a log taper pot is the right type.

Jose, CO2JA


Enviado desde BlueMail
En 8 mar. 2018, en 08:40, adelolly07@... escribió:

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

w8tee vfo board

Richard E Neese
 

missing cap in bom list?
what is the cap that should be in  c14 its not listed ?

w8tee vfo encoder issue

Richard E Neese
 

can you work on the document somw more you dont discuss the encoder and the caps and resistor you add but show in the pic 

also the docs dont discuss the pinout well as to what connects where . 

this needs updating please

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

Carlos E. Wenzel
 

Hello Ian..
I have the same problem....

 "Error Receive Length = 0/1027"


2018-03-08 17:21 GMT+01:00 Ian Lee <kd8cec@...>:

All
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.)
http://www.hamskey.com

--
Best 73
KD8CEC / Ph.D ian lee
kd8cec@...
www.hamskey.com (my blog)




--
Carlos Wenzel
ik2yra@...
+39-3284684518
Skype: IK2YRA

Re: w8tee vfo board

Doug W
 

Fw: uBitx delivery

Nick Trollope
 

 
Hello chaps,
 
Paid for a ubitx on 14 January 18. Does anyone have any idea what delivery times are like at the moment?
 
Thanks
Nick
G4FAT
 

Re: How to order a Raduino

Michael Hagen
 

I have the "Better" Rauinos for BitX and uBit.

I have sold over 50 to folks on this list.

Shipping to foreign countries is usually $15-20. I can give you a shipping price from the US Post.

Take a look at attached documents.

73's Mike, WA6ISP


On 3/8/2018 9:40 AM, kir@... wrote:
Hi guys,

As I have an old Bitx40 with analog VFO, I would order a Raduino. How can I do that ? found no info.
I do not have the correct email.

Can you help ?
Tnx and 73's from Felix/ON4KIR

-- 
Mike Hagen, WA6ISP
10917 Bryant Street
Yucaipa, Ca. 92399
(909) 918-0058
PayPal ID  "MotDog@..."
Mike@...

Re: Pulling Arduino data apart

Jack Purdum
 

OK, so what happens if you send an int from Allard's code to a 64 Intel I7? Compiler vendors are completely free to decide the byte order of all of their data types. My software company used to produced C programming tools (compilers, editors, assemblers, linkers) for both 8 bit and 16 bit machines. We made sure our Endians were the same, simply from a marketing standpoint. However, sending binary data from a 8 bit compiler to someone else's 16 bit compiler has no guarantee of working. Data structure packing and endian use is totally up to the compiler vendor. Indeed, there was one 8-bit MSDOS compiler vendor who chose to use -1 for NULL. The old XJ11 C standards committee made no restrictions on such things and the are defined as "implimentation dependent". That's why you should use NULL instead of 0 when checking string lengths. Now you could send the data as ASCII, but then you slow the transmission because values 0 through 255 only take 1 binary byte, but up to 3 ASCII bytes.

Your statement that "I can code all day in C without worrying about the big vs little endian" issue is only true at the source code level. If you are sending binary data, which is what I said in my post, you very definitely need to worry about the endian problem. As to 100 clock ticks, that seems high. An ldi assembler instruction take 3 clock cycles or 12 for a 32 bit long. Each rotate left (or right) is a single clock cycle, so I get 42 clock cycles to rotate a long off the map, and that includes the time to load it. So 0.000002625 of a second seems pretty quick Still, that's neither here nor there.

Your sendbyte() example, the sendbyte(data32>>24) leaves the high byte for sending. If you don't know the endian order, how do you know you didn't just rotate the data of interest onto the floor? The second example is no different. Indeed, since the shift right operator "backfills" with 0's and has higher precedence that the bitwise AND operator, you example always sends 0 to the function. Why bother?

Nope, there are times when you need to know the endian order and you can use a union to find it out. It can also be used to send binary data for a serial connection to a total different platform and still have it work. Knowing how to use a union is a good thing.
Jack, W8TEE


From: Jerry Gaffke via Groups.Io <jgaffke@...>
To: BITX20@groups.io
Sent: Thursday, March 8, 2018 11:57 AM
Subject: Re: [BITX20] Pulling Arduino data apart

You definitely need to be endian-aware when coding in assembly language.
But I can code all day in C without worrying about big vs little endian.

If you have a 32 bit integer and want to send the 8 msb's over a serial link, do something like this:
    sendbyte(data32>>24);
I'm assuming sendbyte() accepts an 8 bit argument, so no need to explicitly strip off unused bits.
This might make it more obvious:
    sendbyte((data32>>24)&0xff);
That code is bulletproof in C, should work the same on a PDP-8 with 12 bit hardware 
as it does on the the latest stuff from Intel.  Unions will undoubtedly get packed differently
on a PDP-8, in case anybody still cares these days.  C does not specify that unions get packed
in any particular manner, that's true even on an 8/16/32/64 bit machine.

Unions almost always work, might be a good idea on a minimalist machine like the ATMega328P.
Shifting a 32 bit integer is relatively painful with an instruction set that can only shift an 8 bit word
left or right by one bit at a time.  However, while it might take 100 clock ticks to execute, the code to
shift a 32 bit word is instantiated only once as a function call, and 100 ticks happens much faster
than sending a single byte out through the I2C interface.  (100 ticks is a wild guess.)

If 100 ticks is too painful, then it's time to sack the Nano and move on to the $2 STM32 Blue Pill.

Take a look at the si5351 routines in Allard's code and on the uBitx.
Totally endian agnostic.
I'm looking forward to trying them out on a PDP-8 someday.

Jerry, KE7ER



On Thu, Mar 8, 2018 at 07:51 am, Jack Purdum wrote:
.....  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: .....



Virus-free. www.avast.com

Re: Fw: uBitx delivery

Ron
 

Should only a few days away from shipping. I ordered mine on 10 January and it was shipped on 7 March. Shipped via DHL and delivery is estimated for 14 March.

Ron
W5RKW