Re: Si5351 Programming Flowchart

K9WIS

there is a windows program on the adafruit website that will give you the parameters after you enter the frequency..I am using a nano(\$3) and one of the adafruit si5351break out boards(\$8) with a low pass filter9\$5) for a QRSS 20mW xmtr I plan to release with a balloon..total cost under \$20
Brian K9WIS

---- Pavel Milanes Costa <pavelmc@...> wrote:

Hi to all.

The flowchat is a instructive guide for the curious of how to doit
without float point math and an expression of the KISS principle.

It's just a cheat sheet to learn from.

The trick is to understand the way he (like Gerry) find a, b and c not
needing floating point math. (for the PLL/VCO Msynths case is)

a = int(Fvco/xtal)

b = Fvco % xtal (module, aka: rest of the division)

c = xtal

For example Gerry do a do..while to find a value of b/c that match the
allowed size of c, he need it because he is working with the output
Msynth dividers not the PLL/VCO Msynth, in his case c = fout and is
variable.

In the later case (moving the PLL/VCO Msynth, output Msynth dividers are
fixed) c is fixed and equal to the Xtal and we know it already then we
can do a simple x >> 5 to both b/c to retain maximum accuracy and make
it fit on the register. If we do that just set the output Msynth divider
to a integer & even value to minimize jitter or phase noise.

In Gerry routines he fixes the VCO and moves the output divider Msynth
and that make some jitter or phase noise (almost negligible in real
applications, I know) and makes 3 outs from just one fixed VCO and does
not handles the R values or the DIV_BY4 feature limiting the full range
of output frequencies (not needed on his target application, I know).

This is just another way of doing things, a way that can be better
understood because it uses a simple and elegant image (flowchart), to
make life (& code) easier (& smaller)...

BTW I found a possible bug that can haunt more than one in the routines
of computing MSx_P2. A tip for the "math" experts... and a common fault.

As per the data:

MSx_P2 = 128 * b - c * floor (128 * b / c)

Right?

It's very tempting to reduce it but the floor functions is in there...
let see... floor is the lower integer for that float number, hum...

Floor is on the C of Gcc the compiler used by the arduino project but it
implies the use of floating point math hence bigger code, just eliminate
it and do the math, let try to reduce it...

MSx_P2 = (128 * b) - (c * 128 * b / c)
MSx_P2 = (128 * b) - (128 * b) ---> (c is eliminated as it's * and /  in
the expression)
MSx_P2 = 128 * (b - b) ---> ( hum....)
MSx_P2 = 128 * 0 ---> (HUMMMM!!!)
MSx_P2 = 0 ---> (WTF !!!!)

Doing some math and wall head-hiting you can conclude that the floor
function is instructing you to IGNORE the use of fractions and then you
get a value in MSx_P2 that it related to the amount of error or rest of
division of doing things (math) with integers... hence the floor
function... forcing you to use just integers... nice.

For example Gerry users in his code this:

msxp2 = 128 * msb - 128 * msb / msc * msc;

If you play that same function with human and integer rules it play well
and result is different from zero, but if you use floating point math it
always equals to ZERO!

Let's play it with me in full integer math

let's say msb = 900 and msc = 1000

msxp2 = 128 * 900 - 128 * 900 / 1000 * 1000;
msxp2 = 115200 - 115200 / 1000 * 1000;
msxp2 = 115200 - 115 * 1000;   // <<<<=== here is the floor in action
(result in float is 115.200 we get it down to 115, all with the magic of
integer math)
msxp2 = 115200 - 115000;
msxp2 = 200;

In this case 200 is a relation of the error of using integer math...
interesting, mind you how the chip use it internally

For correctness and just to be sure to maintain the best accuracy you
must get sure the compiler do the 128*b/c * c in the correct order, that
is as per Gerry code fragment:

msxp2 = 128 * msb - 128 * msb / msc * msc;

Must be forced to execute in the correct order by placing some
parenthesis to maintain more accuracy.

msxp2 = 128 * msb - ((128 * msb) / msc) * msc;

Firmware size impact is unchanged, compiled code is the same (sha256sum)
with and without the parenthesis so GCC compiler is doing he job right,
beware of others...

I mentioned this because I have a ham fellow in university (freshman)
that hit his head against this wall a few times, "that's impossible,
that has no sense.... MSx_P2 is always zero..." he said...

Just my two cents for other that may be in troubles like this
understanding the chip.

Cheers, Pavel.

El 12/02/18 a las 12:07, JuanCarlos Berberena Gonzalez escribió:
Hi Guys
A weeks ago Josué Marin-CO7RR- sent me this information to share with
my group.
I am only try to be a good 'USER" testing some interesting project I
can get on the web and afterward share it with my group.
Now Pavel-CO7WT- sent me this link and I think is a good idea to share
with all of you.
https://nt7s.com/2018/02/si5351-programming-flowchart/

It is a Josué Marin email address
marinjosue75atgmaildotcom
Qrv's
73's Jc

Re: Raduino Replacemnt, COMING SOON!

Nick VK4PP

HI All, I will list on eBay when ready and post up a link..

73.

Re: Raduino Replacemnt, COMING SOON!

walt hodges

Please place me in the queue to purchase!!

On Mon, Feb 12, 2018 at 6:21 PM, Nik VK4PLN wrote:
Ok, its comming along nicely.
So the idea is an EASY DIRECT replacment for the raduino with the option of 3 extra I2C devices.
Minimal soldering, NO SMD if you dont want to.
The SI5351 is implemented via a common breakout board.
So Solder on your headers, 7805, 3 capacitors, 1 recommended resistor(cut the joining trace) and your RV1 for the backlight, or convert to i2c LCD backpack and free up 6 digital IOs.

Please have a look at the board design and let me know if you see any issues...

I will order 30 boards and when they arive, test a few, and then the rest will be sold at cost price + postage: Maybe \$5 all up? Ill have to see...

Thanks
73 VK4PLN

Re: Ubitx delivery suggestion

rlawson695@...

Call DHL, and ask them. When my uBITX came a man in regular car stop at end of drive,put it at front door and left. No signature was needed.  73’s de AC8XZ

Re: Raduino Replacemnt, COMING SOON!

Nick VK4PP

Ok, its comming along nicely.
So the idea is an EASY DIRECT replacment for the raduino with the option of 3 extra I2C devices.
Minimal soldering, NO SMD if you dont want to.
The SI5351 is implemented via a common breakout board.
So Solder on your headers, 7805, 3 capacitors, 1 recommended resistor(cut the joining trace) and your RV1 for the backlight, or convert to i2c LCD backpack and free up 6 digital IOs.

Please have a look at the board design and let me know if you see any issues...

I will order 30 boards and when they arive, test a few, and then the rest will be sold at cost price + postage: Maybe \$5 all up? Ill have to see...

Thanks
73 VK4PLN

Re: Aluminum enclosure

Dave Bottom <ars.kd6az@...>

It's a great little rig, currently running with Ian, KD8CEC's firmware.

It got a lot of eyes at Orlando HamCation this past weekend in our booth.

Dave WI6R
radiosport headsets

On Mon, Feb 12, 2018 at 3:45 PM, AA7GW wrote:
Nice looking rig

AA7GW

On Feb 12, 2018, at 3:24 PM, Dave Bottom <ars.kd6az@...> wrote:

Here is mine in the Hammond 1402DV (V for Vented since the heat sinks are inside.)

<Mentor-Knobs.jpg>
<Rear-View.jpg>
​It's tight with the Volume Control mounted in between the display and the extrusion. So the PCB is mounted as close as you can get to the right side extrusion, then mark for the display and pot, with the encoder centered between the display and right side.

I used my own connectors for Mic, Headphones and Paddle plus Power Pole power connection all on the rear panel with the BNC antenna connector.

Room to later mount a USB cable as shown, I would have centered the Power Pole connector with the USB rear panel connection.
<USB-Cable-Interface.jpg>

Dave WI6R

On Mon, Feb 12, 2018 at 5:24 AM, John KC9OJV wrote:
I ordered one of these: https://www.hammfg.com/part/1402D
I'm hoping I can work with the height of the Raduino OK.

John
KC9OJV

--
73 Dave WI6R

--
73 Dave WI6R

Re: Ubitx delivery suggestion

at91r40008

Have it send to a nearby DHL depot for hold. A neighbor doesn't have to be close just have it redirected to a neighbor.
You should be able to do it on line once you have the tracking number.
That is what I do with UPS, Fedex and USPS. I don't see why it wouldn't work with DHL. Also, sometimes DHL send
the last leg through USPS.
Good luck.

--
73, Yvon NU6I

Re: uBITx For Sale

at91r40008

I'll take the DSP filter.
--
73, Yvon NU6I

Re: Ubitx delivery suggestion

Clark Martin

Go to the DHL website, they have a mechanism for dealing with that problem.

Clark Martin
KK6ISP

On Feb 20, 2018, at 6:48 PM, Bill Robbins <wa8cdu@...> wrote:

I will be gone for an extended time when my DHL ubitx arrives. If a signature is required does anyone have a suggestion to get my hands on it.  Neighbors are too remote.

Re: RadI2Cino boards temporarily sold out!

Jim Sheldon

Hi Hank,
Was just getting ready to email you when this came in.  You are still in the queue for one with the SMD semiconductors installed.  I ran out of the 5 volt regulators because my last order from Mouser was delayed in shipping.  I ordered Friday but they didn't get it out till today.  UPS won't deliver it until around 5 p.m. tomorrow.  I have the last 5 boards in process and your's will be the next of them up when the SMD 7805's come in.  5 minute to solder it on and I may even be able to make the last pick up at the grocery store tomorrow night if you still want it.

I'll let you know when it's done.  You can PayPal me the \$45 now if you like or wait until I tell you it's finished.  Your choice on that though.

Jim - W0EB

PayPal address is w0eb@...

------ Original Message ------
From: "Hank W6IR via Groups.Io" <w6ir@...>
Sent: 2/12/2018 5:48:40 PM
Subject: Re: [BITX20] RadI2Cino boards temporarily sold out! #ubitx

Have you sent out email to the lucky ones? I haven't seen anything from you so assume I was too late.

Hank
W6IR

Ubitx delivery suggestion

Bill Robbins

I will be gone for an extended time when my DHL ubitx arrives. If a signature is required does anyone have a suggestion to get my hands on it. Neighbors are too remote.

Bill

Re: RadI2Cino boards temporarily sold out!

Hank W6IR <w6ir@...>

Have you sent out email to the lucky ones? I haven't seen anything from you so assume I was too late.

Hank
W6IR

Re: Aluminum enclosure

AA7GW

Nice looking rig

AA7GW

On Feb 12, 2018, at 3:24 PM, Dave Bottom <ars.kd6az@...> wrote:

Here is mine in the Hammond 1402DV (V for Vented since the heat sinks are inside.)

<Mentor-Knobs.jpg>
<Rear-View.jpg>
​It's tight with the Volume Control mounted in between the display and the extrusion. So the PCB is mounted as close as you can get to the right side extrusion, then mark for the display and pot, with the encoder centered between the display and right side.

I used my own connectors for Mic, Headphones and Paddle plus Power Pole power connection all on the rear panel with the BNC antenna connector.

Room to later mount a USB cable as shown, I would have centered the Power Pole connector with the USB rear panel connection.
<USB-Cable-Interface.jpg>

Dave WI6R

On Mon, Feb 12, 2018 at 5:24 AM, John KC9OJV wrote:
I ordered one of these: https://www.hammfg.com/part/1402D
I'm hoping I can work with the height of the Raduino OK.

John
KC9OJV

--
73 Dave WI6R

Re: Case designed for uBITX -

Elliott J Olson

Is shielding not usually needed for these radios? Or are you using some metal-bearing plastic that blocks some RF?

R141/Q15

Michael Davis <maddmd818@...>

I too had the now famous R141 getting smokin' hot. At the suggestion of forum members, I replaced Q14 with no success. I read and re-read voltages as well as component values in and around the circuitry. I now have Q14 mounted like a long legged bug vs flush to the board. Although I could see no connection/short from the device case to anywhere on the board, it's the only logical explanation for drawing X amps through R141. Nothing else made sense.

Sent from Mike's iPad WA1MAD

Re: Aluminum enclosure

Dave Bottom <ars.kd6az@...>

Here is mine in the Hammond 1402DV (V for Vented since the heat sinks are inside.)

​It's tight with the Volume Control mounted in between the display and the extrusion. So the PCB is mounted as close as you can get to the right side extrusion, then mark for the display and pot, with the encoder centered between the display and right side.

I used my own connectors for Mic, Headphones and Paddle plus Power Pole power connection all on the rear panel with the BNC antenna connector.

Room to later mount a USB cable as shown, I would have centered the Power Pole connector with the USB rear panel connection.

Dave WI6R

On Mon, Feb 12, 2018 at 5:24 AM, John KC9OJV wrote:
I ordered one of these: https://www.hammfg.com/part/1402D
I'm hoping I can work with the height of the Raduino OK.

John
KC9OJV

--
73 Dave WI6R

Re: Si5351 Programming Flowchart

Pavel Milanes Costa <pavelmc@...>

Hi to all.

The flowchat is a instructive guide for the curious of how to doit without float point math and an expression of the KISS principle.

It's just a cheat sheet to learn from.

The trick is to understand the way he (like Gerry) find a, b and c not needing floating point math. (for the PLL/VCO Msynths case is)

a = int(Fvco/xtal)

b = Fvco % xtal (module, aka: rest of the division)

c = xtal

For example Gerry do a do..while to find a value of b/c that match the allowed size of c, he need it because he is working with the output Msynth dividers not the PLL/VCO Msynth, in his case c = fout and is variable.

In the later case (moving the PLL/VCO Msynth, output Msynth dividers are fixed) c is fixed and equal to the Xtal and we know it already then we can do a simple x >> 5 to both b/c to retain maximum accuracy and make it fit on the register. If we do that just set the output Msynth divider to a integer & even value to minimize jitter or phase noise.

In Gerry routines he fixes the VCO and moves the output divider Msynth and that make some jitter or phase noise (almost negligible in real applications, I know) and makes 3 outs from just one fixed VCO and does not handles the R values or the DIV_BY4 feature limiting the full range of output frequencies (not needed on his target application, I know).

This is just another way of doing things, a way that can be better understood because it uses a simple and elegant image (flowchart), to make life (& code) easier (& smaller)...

BTW I found a possible bug that can haunt more than one in the routines of computing MSx_P2. A tip for the "math" experts... and a common fault.

As per the data:

MSx_P2 = 128 * b - c * floor (128 * b / c)

Right?

It's very tempting to reduce it but the floor functions is in there... let see... floor is the lower integer for that float number, hum...

Floor is on the C of Gcc the compiler used by the arduino project but it implies the use of floating point math hence bigger code, just eliminate it and do the math, let try to reduce it...

MSx_P2 = (128 * b) - (c * 128 * b / c)
MSx_P2 = (128 * b) - (128 * b) ---> (c is eliminated as it's * and /  in the expression)
MSx_P2 = 128 * (b - b) ---> ( hum....)
MSx_P2 = 128 * 0 ---> (HUMMMM!!!)
MSx_P2 = 0 ---> (WTF !!!!)

Doing some math and wall head-hiting you can conclude that the floor function is instructing you to IGNORE the use of fractions and then you get a value in MSx_P2 that it related to the amount of error or rest of division of doing things (math) with integers... hence the floor function... forcing you to use just integers... nice.

For example Gerry users in his code this:

msxp2 = 128 * msb - 128 * msb / msc * msc;

If you play that same function with human and integer rules it play well and result is different from zero, but if you use floating point math it always equals to ZERO!

Let's play it with me in full integer math

let's say msb = 900 and msc = 1000

msxp2 = 128 * 900 - 128 * 900 / 1000 * 1000;
msxp2 = 115200 - 115200 / 1000 * 1000;
msxp2 = 115200 - 115 * 1000;   // <<<<=== here is the floor in action (result in float is 115.200 we get it down to 115, all with the magic of integer math)
msxp2 = 115200 - 115000;
msxp2 = 200;

In this case 200 is a relation of the error of using integer math... interesting, mind you how the chip use it internally

For correctness and just to be sure to maintain the best accuracy you must get sure the compiler do the 128*b/c * c in the correct order, that is as per Gerry code fragment:

msxp2 = 128 * msb - 128 * msb / msc * msc;

Must be forced to execute in the correct order by placing some parenthesis to maintain more accuracy.

msxp2 = 128 * msb - ((128 * msb) / msc) * msc;

Firmware size impact is unchanged, compiled code is the same (sha256sum) with and without the parenthesis so GCC compiler is doing he job right, beware of others...

I mentioned this because I have a ham fellow in university (freshman) that hit his head against this wall a few times, "that's impossible, that has no sense.... MSx_P2 is always zero..." he said...

Just my two cents for other that may be in troubles like this understanding the chip.

Cheers, Pavel.

El 12/02/18 a las 12:07, JuanCarlos Berberena Gonzalez escribió:
Hi Guys
A weeks ago Josué Marin-CO7RR- sent me this information to share with my group.
I am only try to be a good 'USER" testing some interesting project I can get on the web and afterward share it with my group.
Now Pavel-CO7WT- sent me this link and I think is a good idea to share with all of you.

https://nt7s.com/2018/02/si5351-programming-flowchart/

It is a Josué Marin email address
marinjosue75atgmaildotcom
Qrv's
73's Jc

Re: Mailbox metal case 3x6x9 inch

KC9SGV <kc9sgv@...>

Funny as hell 😀!!
But a good, solution.

KC9SGV

On Feb 12, 2018, at 2:33 PM, Doug W <dougwilner@...> wrote:

so do you call QC or just put the flag up and wait...

Re: uBITx For Sale

Stephen Johnson <stephenpjohnsonsr@...>

I can use everything except the DSP filter if still available.

Steve, N2FT

On Mon, Feb 12, 2018 at 3:09 PM, Glenn AE0Q <ae0q@...> wrote:
I just today received my uBITx (ordered on 19 Dec) but things have changed and I don't have time for the project.

I've collected some things I was going to use to build it, all is for sale.

uBITx  unopened except for photos   \$109

Adafruit 10k Log pot (with 1/4" dia shaft) and 2 black knobs (blue stripe)  \$5.00

SOTABeams CW DSP Audio Filter  \$42

Beautiful aluminum enclosure (2.4" x 6.22" x 7.2" inside dimensions)  \$20
See the ebay link for assembled photos of the box.
https://www.ebay.com/itm/122879292126

Photos of all attached.

Would like to sell all together but not necessary.

Glenn AE0Q

Re: uBITx For Sale

q q

I would like to buy your uBitx.

Please send remittance details.

Bob N1ETS