Keyboard Shortcuts
Likes
- BITX20
- Messages
Search
I am confused and seem to exhaust all the internet searches - as I have looked and looked for guide to modify the bitx 20 version 3b to use the radiuno.
I would like the ardunio INO code file for use on my Bitx20 - I been looking and looking and thought someone had a guide or somthing to convert the bitx 20 3b with Radiuno.? I have look I thought I had this on the Yahoo group it may have not got transfer to the new group? My computer crashed and lost the hard drive looking for the code.. and modifications.? I think I need the Radiuno to tune?4.0 to 4.35 mhz? can some one help me with code and modification to the bitx 20m version 3b?? |
Re: Designing a front panel PCB
¿ªÔÆÌåÓýWhy stop at just the front panel? A complete case could be laid out with matching pads at the edges
to solder the boards together to make a complete box with custom
silkscreening for the proper labels on the front and back, uBITX
logos on the sides (is there an official logo?) and a board layout
graphic on the top with board sections labeled by function. On 5/6/2018 11:44 AM, Reid Campbell
wrote:
Hi, |
Re: Coding styles
Jack Purdum
Absolutely agree. Some of us can't remember what we had for breakfast, let alone code we wrote six months ago. I've actually read code on line and said to myself: "I get it!" only to realize it was my code.
Jack, W8TEE
On Sunday, May 6, 2018, 4:36:36 PM EDT, Tim Gorman <tgorman2@...> wrote:
A man after my own heart! When you are called in to fix a problem with your code two years after you wrote it then it becomes apparent quickly that simpler is better. It's why I always put the "{" on the line following the if statement. I can print the code out, put a ruler on the printout and tick off all the beginnings and ends of sections. I know the current preferred method is to put the starting "{" on the same line as the if statement (or any other thing you can think of) but I've just had much quicker success finding problems doing it my way. Especially when someone else has been modifying my code. Same with the paragraph comment indicators, /* and */. Always on a line of their own. tim ab0wr On Sun, 6 May 2018 18:09:21 +0000 (UTC) "Jack Purdum via Groups.Io" <jjpurdum=[email protected]> wrote: > (Actually, it's the post-decrement operator, not the decrement > operator.) I wasn't saying I don't know what the post-decrement > operator does, I was just asking why make the code harder to read by > using it there. Moving it to the next line makes the code easier to > read and has no impact on the way it works or the generated code. > Anything the programmer can do to make the code easier to read and > that is performance-neutral should be done. That's why I almost never > use the ternary operator: It's almost always easier to read a simple > if-else statement block and the generated code's the same. > > Jack, W8TEE >? > |
Re: ND6T AGC implementation for uBIT-X
Vince Vielhaber
Ok, so Jerry doesn't write code the same way you do. Neither do I. Prolly why I didn't see anything wrong with it.
toggle quoted message
Show quoted text
Vince. On 05/06/2018 01:38 PM, Jack Purdum via Groups.Io wrote:
Well, not really. First, it's hard to read, especially since there's no --
Michigan VHF Corp. |
Re: ND6T AGC implementation for uBIT-X
A man after my own heart!
When you are called in to fix a problem with your code two years after you wrote it then it becomes apparent quickly that simpler is better. It's why I always put the "{" on the line following the if statement. I can print the code out, put a ruler on the printout and tick off all the beginnings and ends of sections. I know the current preferred method is to put the starting "{" on the same line as the if statement (or any other thing you can think of) but I've just had much quicker success finding problems doing it my way. Especially when someone else has been modifying my code. Same with the paragraph comment indicators, /* and */. Always on a line of their own. tim ab0wr On Sun, 6 May 2018 18:09:21 +0000 (UTC) "Jack Purdum via Groups.Io" <jjpurdum@...> wrote: (Actually, it's the post-decrement operator, not the decrement |
Re: ND6T AGC implementation for uBIT-X
OOPS forgot to mention - also in the "go bag" is a very early LDG auto tuner which is quite small and light weight. It has latching relays so once tuned, I can turn off power and not have to worry about it drawing any current until I need to make a major change in frequency.
toggle quoted message
Show quoted text
Jim - W0EB ------ Original Message ------
From: "Tim Gorman" <tgorman2@...> To: [email protected] Sent: 5/6/2018 3:24:09 PM Subject: Re: [BITX20] ND6T AGC implementation for uBIT-X You still need an antenna tuner. The SWR meter is kind of useless |
Re: SWR
I agree the I2C would be a lot slower.? You are better off using the ADC inputs directly and let it "free-run" (I use ADC6 and ADC7).? That way when you need to access the data, it's just a quick check of the "conversion complete flag" and grab the data from the registers. On Sun, May 6, 2018 at 2:35 PM, K9HZ <bill@...> wrote:
--
Paul Mateer, AA9GG Elan Engineering Corp. NAQCC 3123, SKCC 4628 |
Re: ND6T AGC implementation for uBIT-X
You still need an antenna tuner. The SWR meter is kind of useless
without one. I'm want to be able to operate for at least 48-72 hours. I'm figuring you need at least a 36-50 amp-hour battery to be self-sufficient. tim ab0wr On Sun, 06 May 2018 17:32:54 +0000 "Jim Sheldon" <w0eb@...> wrote: Tim, |
Re: 45Mhz crystal filter specification
The spec sheet on this says it's a 4-pole, 25khz filter. I assume it is
better than the 2-pole? tim ab0wr On Sun, 6 May 2018 23:55:39 +0530 "Ashhar Farhan" <farhanbox@...> wrote: Jim, |
Re: ND6T AGC implementation for uBIT-X
Jack Purdum
Hi Jerry: Most of my comments are stylistic and your code should work just fine. As to the post-decrement operator, I was more arguing for having it as a separate statement as there are numerous operators that have the same precedence level and, the tie-breaker is often a L-to-R parse of the expression, which can be confusing. If it makes no difference in performance, why not separate it? No, I realize you weren't using an ASCII zero ('0'), but my question is: Why not? To me, most students would recognize a single quote mark as an ASCII character, where they would likely have to go to an ASCII table and look up 0x30 (or 48) in the table to see what it is. "I tend to write as compactly as possible." I do, too, when I'm writing source code just for myself or am pretty sure no one else will need to read it. However, most of my work is source code that I share with others, so I try to make it as easy to read as possible. I agree: I've seen code with comments on every line and that's a waste of time. On the other hand, if it takes a seasoned C programmer more than a few seconds to understand a statement, either the statement should be simplified or a comment is warranted. Simplified statements are especially called for when there's no performance or memory penalties involved, regardless of who you're writing for. I especially liked: ?????? If it's really tricky, I print what fits one sheet of paper and stick it in my ????back pocket for a few days. Somehow that leaks through and up?into my brain, ????after a few days I understand my code. I gotta get me one of those Butt-Cheek Code Readers! At my age, even that probably wouldn't help me much if I come back to it a month or two later. Also,
????????Anyways, I guess it's fortunate that I write code for me and not for you. ????????For both of us.? ?;-) Everyone has their own style and that perfectly ok, but when you post it on a Forum, it moves from "your eyes only" to everyone who reads the Forum. At that point, I try to make it as easy as possible for everyone to read and understand it. Jack, W8TEE
On Sunday, May 6, 2018, 2:41:19 PM EDT, Jerry Gaffke via Groups.Io <jgaffke@...> wrote:
Ok Jack, I will concede that whitespace around the "==" would have been a good idea. And that the extra indent is an error. A work in progress, I did state it was "unproven". Guess I lose a grade point on style, but I'm happy with a passing grade of C. But far as I know, that code is correct and should work. And is short and concise, using only 32 bit integer math, and not much of it. I'd bet most code for SWR calculations will pull in a floating point library. I code for 1989 K&R ANSI C. And am fairly sure that older compilers had the same precedence rules for post decrement vs equality. Not that it matters, as all my ANSI C function declarations would fail on an old compiler anyway. I may have to dig out my 1978 K&R C book to check, just out of curiosity. I don't have a hex representation in there for 0, just for 0x30 which I for one easily recognize as an ascii '0'. I tend to write as compactly as possible. Most of my work is on a small chromebook, compact code lets me see as much of the problem as possible. If it's really tricky, I print what fits one sheet of paper and stick it in my back pocket for a few days.? Somehow that leaks through and up?into my brain, after a few days I understand my code. I get frustrated with code that has extra levels of indirection and is generally all spread out with lots of uninformative comments and boilerplating.? I don't get paid by the line.? Anyways, I guess it's fortunate that I write code for me and not for you. For both of us.? ?;-) Jerry On Sun, May 6, 2018 at 10:38 am, Jack Purdum wrote:
yet, which is easier to read? Also, if you just happened to use a pre-X3J11 compiler, the if() expression could be evaluated incorrectly since the post decrement operator has higher precedence than the test for equality. (True, the chances of that happening are pretty small, but still non-zero.) Finally, why use the hex representation for zero when '0' makes it easier to read? The indenting on the first example is misleading, since a quick glance makes it appear that the second call to the lcd object is controlled by the if expression, which it is not. Also, whitespace makes it easier to read expressions and cost nothing, so why not use it? You could also use the %= and /= operators, but that makes the code harder to read and has no impact on the generated code. Given a choice, I will always pick the form that is easier to read, especially when there's no performance hit. |
Re: 45Mhz crystal filter specification
Allison,
I am not an expert on digital anything, scopes or spectrum analyzers. Thanks for the information. Someday I need to find time to study up on all this but then I also need time to get the garden going, mow the yard twice a week, etc! Never enough time. I do have the 815tg. When I get everything put back together I'll give the narrow span a try. I assume you mean by taking the vfo to 45Mhz you mean setting the dial to zero? tim ab0wr On Sat, 05 May 2018 15:03:46 -0700 "ajparent1/KB1GMX" <kb1gmx@...> wrote: THe 815 is likely doing it right.? ?I should have warned you that |
uBitx relay pinouts
I am working on a mod (tapping the antenna to share with an SDR (Not the IF, the actual antenna). I am looking at tapping the output of K3 so as to switch it out on transmit. Looking at the schematic and the relay data sheet I see that?
The schematic shows pins: What gives? Am I safe to assume 3 on the schematic should be 4, etc? KG4GEK Greg |
Re: SWR
¿ªÔÆÌåÓýWe must use different libraries.? I send out the start conversion word to the part address¡ and away it goes.? Then sometime later, ?I poll to see if conversion is ready/ do a read at the same time (because you get one or the other for free).? If the data isn¡¯t ready, throw away what you got back and go do something else.? If you test every quarter-second, you would always get the data and the ready bit set TRUE.? Then update the display.? Again, the time it takes to do the A/D conversion isn¡¯t important off-board as long as both power readings are congruent and ready together at some point.? The reads can be executed whenever convenient as not to interfere with keying, CAT commands, etc. without using interrupts. ? With all this said, I support using a couple of caps and doing something really easy.? Maybe it works perfectly. ? ? Dr. William J. Schmidt - K9HZ J68HZ 8P6HK ZF2HZ PJ4/K9HZ VP5/K9HZ PJ2/K9HZ ? Owner - Operator Big Signal Ranch ¨C K9ZC Staunton, Illinois ? Owner ¨C Operator Villa Grand Piton ¨C J68HZ Soufriere, St. Lucia W.I. Rent it: Like us on Facebook! ? Moderator ¨C North American QRO Group at Groups.IO. ? email:? bill@... ? ? From: [email protected] [mailto:[email protected]] On Behalf Of Jerry Gaffke via Groups.Io ? You said
|
Re: boosting the power on 28 MHz
#ubitx
¿ªÔÆÌåÓýOh yes, over a narrow frequency range, of course!? You just need to design the circuit around the motor switch to compensate for the high input capacitance and it works perfectly¡ ? ? Dr. William J. Schmidt - K9HZ J68HZ 8P6HK ZF2HZ PJ4/K9HZ VP5/K9HZ PJ2/K9HZ ? Owner - Operator Big Signal Ranch ¨C K9ZC Staunton, Illinois ? Owner ¨C Operator Villa Grand Piton ¨C J68HZ Soufriere, St. Lucia W.I. Rent it: Like us on Facebook! ? Moderator ¨C North American QRO Group at Groups.IO. ? email:? bill@... ? ? From: [email protected] [mailto:[email protected]] On Behalf Of G1KQH via Groups.Io ? We must not speak too low about using the IRF510 as a cheap PA transistor, after a bit of tweaking output looks just fine! Even Uniden are now using IRF520's in their 27Mhz CB rigs: |
Re: 45Mhz crystal filter specification
IF the filters are not matched to 50 ohm the insertion loss due to mismatch is very high as well
never minding the?bandpass distortion.? That means the network on the board has to be part of the path on both sides.? Farhan is not pulling your leg on needing the matching networks. Its very difficult to probe a board using a scope probe for a SA due to the 50 ohm input and most scope probes are nominal 1MOhm using a high impedance cables.? When? I do it insitu I make up a cable using RG316 (teflon rg174) and make very direct connections. Failure to do that means the results at best will be an poor approximation.? ?When I have to use a higher impedance probe to not load the circuit I use a active RF probe?that presents a 1Mohm load at maybe 1pF as well, the electronics are in the probe head. The fly lead for ground is made as short as possible as well.? THe two pole 45mhz filter are common. Standard stuff is 15khz bandwidth and common in UHF or dual band HT and other VHF and up radios.? The 4pole 7.5khz wide filters are less common but I found a few for a project, they weren't cheap. Allison |
Re: SWR
You said
toggle quoted message
Show quoted text
? >? goes on about its business for a while That's not correct, unless you add some code to handle i2c transmit and receive in interrupt routines.? That's some code most of us would prefer to avoid. We currently do blocking IO on I2C reads and writes. Just clocking all those I2C bits around at 100khz takes considerably more time than doing the embedded ADC reads. I'm assuming we are mostly concerned about delaying other operations, such as sensing the keyer. If all you are worried about is how synchronous the two samples are, then yes the 2 channel ADC chip on the I2C bus would be better, even if we stick with the blocking code on i2c access. Me, I'll try out a couple big caps first. Jerry On Sun, May 6, 2018 at 10:50 am, K9HZ wrote:
|
Re: 45Mhz crystal filter specification
toggle quoted message
Show quoted text
On May 6, 2018, at 1:25 PM, Ashhar Farhan <farhanbox@...> wrote:
|
Re: ND6T AGC implementation for uBIT-X
Ok Jack,
toggle quoted message
Show quoted text
I will concede that whitespace around the "==" would have been a good idea. And that the extra indent is an error. A work in progress, I did state it was "unproven". Guess I lose a grade point on style, but I'm happy with a passing grade of C. But far as I know, that code is correct and should work. And is short and concise, using only 32 bit integer math, and not much of it. I'd bet most code for SWR calculations will pull in a floating point library. I code for 1989 K&R ANSI C. And am fairly sure that older compilers had the same precedence rules for post decrement vs equality. Not that it matters, as all my ANSI C function declarations would fail on an old compiler anyway. I may have to dig out my 1978 K&R C book to check, just out of curiosity. I don't have a hex representation in there for 0, just for 0x30 which I for one easily recognize as an ascii '0'. I tend to write as compactly as possible. Most of my work is on a small chromebook, compact code lets me see as much of the problem as possible. If it's really tricky, I print what fits one sheet of paper and stick it in my back pocket for a few days.? Somehow that leaks through and up?into my brain, after a few days I understand my code. I get frustrated with code that has extra levels of indirection and is generally all spread out with lots of uninformative comments and boilerplating.? I don't get paid by the line.? Anyways, I guess it's fortunate that I write code for me and not for you. For both of us.? ?;-) Jerry On Sun, May 6, 2018 at 10:38 am, Jack Purdum wrote:
yet, which is easier to read? Also, if you just happened to use a pre-X3J11 compiler, the if() expression could be evaluated incorrectly since the post decrement operator has higher precedence than the test for equality. (True, the chances of that happening are pretty small, but still non-zero.) Finally, why use the hex representation for zero when '0' makes it easier to read? The indenting on the first example is misleading, since a quick glance makes it appear that the second call to the lcd object is controlled by the if expression, which it is not. Also, whitespace makes it easier to read expressions and cost nothing, so why not use it? You could also use the %= and /= operators, but that makes the code harder to read and has no impact on the generated code. Given a choice, I will always pick the form that is easier to read, especially when there's no performance hit. |