Keyboard Shortcuts
Likes
- BITX20
- Messages
Search
Re: uBITX adjustable power supply?
That is good information. I haven't load tested the ones I have yet, to see if their rating is honest. They claim to rated rated for 4 amps. Even if I could not go to a full 24 volts, hopefully there would be a worthwhile increase in output power. ?Fortunately, if they turn out not to be up to par, they did not cost much and be useful for something else.?
Regarding the noise. If possible, (assuming they can be switched on quickly enough) these would only be running during transmit. So receiver noise should not be a problem. But, did you find any issues with noise causing unwanted transmit emissions? I was running WSPR with my uBITX. I powered it from a 12V portable battery power box. I discovered that on a few occasions my WSPR beacon was received on two frequencies. The primary and a weaker secondary signal 120HZ away. It seemed to be related to when the battery charger kicked in. So, if the boost converter had significant output voltage ripple or noise, something similar could happen. Tom, wb6b |
Re: Inexpensive eBay Amplifier Kits
Any amateur amp should be followed by a low pass filter suitable for knocking out the second harmonic and beyond.
toggle quoted message
Show quoted text
That means separate filters for 160m, 80m, 40m, 20m, 10m. You may piggyback some of the other non-harmonic bands into that set of filters, but that makes the filters much more difficult to design and build. A rig with only a 30mhz LP filter is likely aimed mostly at CB'rs. QRP is good for experimenting. But with a 50W+ ebay amp, you really should be testing for compliance with FCC regs. It likely fails, and all the nasties will scale up with the output power. Jerry On Thu, Jul 19, 2018 at 06:12 PM, Lee wrote:
I have seen some of these come with 30mhz LP filters and some order the model without a filter and add one for the band they will be using.? Is either idea acceptable or is one better than the other. ? I just ordered a 70 watt, heat sink, and case on eBay and will have to get a filter. Thank you. |
Re: V4.3 arduino code description...
#arduino
Steve, KD1JV has a knack for good code and user interfaces.? I have one of his
short run of Slopbucket SSB/CW 20m rig.? Great radio and very solid user interface.? Fun build.? The code for it is rather interesting. I tend to write very bland code.? Lots of lines simple and readable.? I try to understand what the compiler will create so it can be efficient. That is why I'm digging deep into the code, to make clean changes and make it? as I wish it to be. Allison |
Re: uBITX adjustable power supply?
Several things...
Those are switching converters and make noise.? Some can only go to barely 3A, most much less, the TX will want at least 2+A (at 12V) or more.? At 80m and 24V expect 3 to 3.5A power draw. I found those I have like that were very weak.? However my bench supply does it well to 30V and 5A. The bias stays where its set. Allison |
Re: Inexpensive eBay Amplifier Kits
I have seen some of these come with 30mhz LP filters and some order the model without a filter and add one for the band they will be using.? Is either idea acceptable or is one better than the other. ? I just ordered a 70 watt, heat sink, and case on eBay and will have to get a filter. Thank you.
-- Lee - N9LO? "I Void Warranties" ? |
Re: uBitx Prototype (PCB)
Looks nice.??Perhaps pin headers for audio derived AGC add on, pin headers for de click add on, pin headers for VOX add on.
The builder could provide the choice of amplifier type or install the TDAxxxx part.Several Chinese offerings?here is one https://www.banggood.com/10Pcs-XPT8871-5V-5W-1A-Single-Channel-Mono-Digital-Audio-Amplifier-Board-p-1268826.html?rmmds=detail-left-viewhistory__3&stayold=1&cur_warehouse=CN???5W? 5V? digital mono. uses the XPT8871 IC (SIMILAR TO LM4871).Amp has typical 3dB point of ~350 Hz and ~90kHz..? suitable for voice.??10 assembled amps from Banggood for $5.31 USD shipping included.? Amp has typical 3dB point of ~350 Hz and ~90kHz..?? |
Re: #ubitx-help Strong Audio Tones in and outside audio receive passband
#ubitx-help
Version 4 has a socket for the Arduino so that was not going to be so bad.? I bought the RobotDyn Nano.? It turns out that the headers are on the opposite side as the one that comes with the radio.? I did not notice and plugged it in.? Nothing showed up on the display and the 5v regulator got very hot.? I turned it off and compared them a little closer and noticed the difference.? I put the old one back in and the radio appears undamaged.? I have not really tested it yet, just a power on, tuning (no antenna), and volume control appeared to work.? I plugged the new Nano into my computer and KD8CEC's Memory Manager was able to talk to it so this mistake might not have been a costly one.
|
Re: calibrate v4 ubitx
I zero-beat.
toggle quoted message
Show quoted text
This beatnote thing wasn't well thought out, you want to move the BFO too, far enough to avoid hearing the opposite sideband. Left as an exercise for the reader. On Thu, Jul 19, 2018 at 04:31 PM, Jerry Gaffke wrote: This line of code: |
Re: V4.3 arduino code description...
#arduino
Don't use it much either, I also find it cryptic.
toggle quoted message
Show quoted text
But it's very handy in macros, the *..h files are full of the ternary operator. I'm a luddite myself when it comes to a fancy user interface for no particular reason. The KD1JV ATSprint/MTR rigs with their button interface are quite usable, and considerably more robust than anything with an ebay mechanical encoder.? Jerry On Thu, Jul 19, 2018 at 03:33 PM, ajparent1/KB1GMX wrote: Its one I never use as it make code less readable.? As a result the brain locked. |
Re: calibrate v4 ubitx
You could use a 50mhz reference, but you would have to hack the Raduino code a bit.
toggle quoted message
Show quoted text
Something like this should work, as per post? ??/g/BITX20/message/35235 In my own Raduino code, I adjust si5351bx_vcoa directly, and save it to EEPROM when done. But am following the convention set by the uBitx stock code with a call to si5351_setcalibration() The functions enc_read() and btnDown() are also from the stock uBitx code.? If the calibration found in EEPROM at power up is beyond perhaps +/- 1000 ppm? at 875mhz (so a number bigger than 875000 or less than -875000), it should be ignored and a calibration value of 0 assumed. With the code as presented, we are adjusting the 25mhz reference oscillator to the si5351 by a factor of 10 Hertz out of? 875mhz with each encoder tick, a factor of 11.4 ppb. That will be slow going. Increasing that to 100 Hz might be more practical. It's possible that no tone will be heard at the start, but moving the encoder one way or the other should eventually find it. This line of code: ? ? unsigned long clk1 = clk0 + 44995000;? ? ? //? clk0 + the center of the 45mhz crystal filter could be changed to? ? ? unsigned long clk1 = clk0 + 44995000 + beatnote;?? where beatnote is an audio tone of perhaps 500? in Hz. Then use a frequency counter on the speaker leads to measure the resultant audio tone, twiddle the encoder till the frequency counter reads exactly that 500 hz. With this change, you no longer need to find true zero beat, as zero Hz may be hard to find given the capacitive coupling through the audio amp. // Takes one arg, the frequency standard in Hz that we have available // Could be a station off the air, could be a fancy rubidium standard // If that frequency is over 30mhz (and less than 64mhz),?? // then should be injected into T2 pin 1 directly, bypassing the 30mhz LPF at L1,2,3,4 // Use the encoder to adjust the VFO until zero beat is heard // We place the BFO in the center of the 12mhz filter passband so zero beat is easily heard. // Save the value of "calibration" that has been found to eeprom. // This calibrates all three oscillators from the si5351 in one go, and does so with great accuracy. // The LCD display shows the assumed frequency of vcoa, nominally 875mhz. // Untested and may be a bug or two (though I use something similar on my raduino). void calibrateExample(unsigned long freqref) { ? ? short calibration = 0; ? ? unsigned long clk0 = 11998000;? ? ? ? ? ? ? ? ?//? BFO at center of 12mhz crystal filter in hz ? ? unsigned long clk1 = clk0 + 44995000;? ? ? //? clk0 + the center of the 45mhz crystal filter ? ? unsigned long clk2 = freqref + 44995000;? //? A high side VFO ? ? while (! btnDown() )? ?{? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // Press the button when zero beat is acheived ? ? ? ? calibration = calibrtion + 10*enc_read();? ? ? // Rotate encoder for zero beat ? ? ? ? lcd.setCursor(0,0);? ? lcd.print(875000000 + calibration); lcd.print("? "); ? ? ? ? si5351_setcalibration(calibration); ? ? ? ? si5351bx_setfreq(0, clk0); ? ? ? ? si5351bx_setfreq(1, clk1); ? ? ? ? si5351bx_setfreq(2, clk2);? ? ? } } On Thu, Jul 19, 2018 at 02:32 PM, John Malone wrote: I have a 50mh signal source, can I use it to calibrate the v4 ubitx board? |
While doing other things I realized I needed one IO pin for a differently arranged user interface.
Looking at the relay tree it is notable there are only 4 used states and one that is don't care. That don't care allowed me to remove C155, R151, and Q17.? That is replaced with two diodes to the collector of both Q18 and Q19 (cathode to the collectors) and anodes to the former Q17 collector.? what that does is any time Q18 or Q19 is active KT1 is activated.? ? If that seems odd the relays are a partial decoding tree so if we encode the controls correctly we get the needed result and one free IO pin.? To make it work Relay KT1 must be activated? when we leave the 20-30mhz region for 20/17M or lower.? Since to go lower than 20mhz we must have a signal the TXC is used as that controls the 40/80M relay KT3 but means nothing unless KT2 is activated? Using two diodes as a logical OR we can then use Q18 and Q19 to force KT1 to be active.? So for 20M and down KT1 is active and the other three select what bands below that.? I got the IO pin and the firmware got simpler. The code of course changes from: /**
?* Select the properly tx harmonic filters
?* The four harmonic filters use only three relays
?* the four LPFs cover 30-21 Mhz, 18 - 14 Mhz, 7-10 MHz and 3.5 to 5 Mhz
?* Briefly, it works like this,?
?* - When KT1 is OFF, the 'off' position routes the PA output through the 30 MHz LPF
?* - When KT1 is ON, it routes the PA output to KT2. Which is why you will see that
?*? ?the KT1 is on for the three other cases.
?* - When the KT1 is ON and KT2 is off, the off position of KT2 routes the PA output
?*? ?to 18 MHz LPF (That also works for 14 Mhz)?
?* - When KT1 is On, KT2 is On, it routes the PA output to KT3
?* - KT3, when switched on selects the 7-10 Mhz filter
?* - KT3 when switched off selects the 3.5-5 Mhz filter
?* See the circuit to understand this
?*/
void setTXFilters(unsigned long freq){
? if (freq >= 21000000L){? ? ? digitalWrite(TX_LPF_A, 0);
? ? digitalWrite(TX_LPF_B, 0);
? ? digitalWrite(TX_LPF_C, 0);
? }
? else if (freq >= 14000000L){?
? ? digitalWrite(TX_LPF_A, 1);
? ? digitalWrite(TX_LPF_B, 0);
? ? digitalWrite(TX_LPF_C, 0);
? }
? else if (freq >= 7000000L){??
? ? digitalWrite(TX_LPF_A, 1);
? ? digitalWrite(TX_LPF_B, 1);
? ? digitalWrite(TX_LPF_C, 0);? ??
? }
? else {
? ? digitalWrite(TX_LPF_A, 1);
? ? digitalWrite(TX_LPF_B, 1);
? ? digitalWrite(TX_LPF_C, 1);? ??
? }
}
To this./** ?* this version version uses two diodes to get rid of needing TX-A
?* and takes advantage of TX_LPF_C having an meaningless state ?* unless KT2 is active (TX_LPF_B=1).? ?*? tx-b? ?tx-c? band
?*? 0? ? ? ?0? ? 10m
?*? 0? ? ? ?1? ? 20M? ?we enable TX-A, and get 20m, KT2 is not active.
?*? 1? ? ? ?0? ? 40m? ?make KT2 active and KT3 selects 40 or 80m.?
?*? 1? ? ? ?1? ? 80m
*/??
void setTXFilters(unsigned long freq){
??
? if (freq >= 20000000L){?
? ? digitalWrite(TX_LPF_B, 0);? // 10m
? ? digitalWrite(TX_LPF_C, 0);
? }
? else if (freq >= 14000000L){?
? ? digitalWrite(TX_LPF_B, 0);? // 20M
? ? digitalWrite(TX_LPF_C, 1);
? }
? else if (freq >= 7000000L){??
? ? digitalWrite(TX_LPF_B, 1);? // 40m
? ? digitalWrite(TX_LPF_C, 0);? ??
? }
? else {
? ? digitalWrite(TX_LPF_B, 1);? // 80m
? ? digitalWrite(TX_LPF_C, 1);? ??
? }
} Allison |
Re: RF power chain mods and improvements..
Allison, unfortunately, it¡¯s not so simple for those of us who live outside the USA. We simply don¡¯t have the luxury of being able to deal easily with the likes of Mouser, Digikey, RF Parts, etc. We have several problems, ¡¤???????? Exchange rates (eg VK USA rate is AUD$1 buys about US70c) ¡¤???????? Minimum order values mean we usually have to buy extras or parts we may not really need. ¡¤???????? Shipping costs to countries out of USA are very high. ¡¤???????? Some US companies won¡¯t even ship out of the USA. ¡¤???????? Some companies don¡¯t have all that we need, so we have to deal with multiple US companies, adding even more costs due to the above, especially multiple shipping costs.? ¡¤???????? We are also about to be hit with taxes on our imports, of 10% of value, including the shipping costs! I recently bought 10xRD16HHF1¡¯s from RF Parts.? Invoice cost US$39.50 plus $17.20 postage. Each part that cost $3.95 true cost is now $5.67. ?(Factor in AUD$ exchange rates and each of those RD16¡¯s cost me AUD$8.10. ) Likewise, the uBITX kit costs us here in VK, around AUD$150.00 There no fix for this, we choose to live here. I used to buy toroids from kitsandparts.com when postal cost were fairly reasonable. Now, with the rise in Postal rates in the USA (and VK!) it¡¯s now become uneconomic to ¡®stock up¡¯ on toroids by buying a selection in reasonable quantities. In the end, many I believe, take the risk and buy from the likes of companies like eBay and similar on-line stores who often offer no cost shipping for one. If you win, you save a lot of money. And if they are fakes, chalk it up to experience and possibly abandon the project. Or find something on hand that will ¡®do¡¯. Most of us have a limit on how much we can spend on this hobby. I know I probably spend too much as it is. ? Glenn vk3pe On Fri, Jul 20, 2018 at 01:32 AM, ajparent1/KB1GMX wrote:
I work with US supply vendors and in some cases ask for COC or similar documentation and get it. |
Re: V4.3 arduino code description...
#arduino
Thanks Jerry,
Its one I never use as it make code less readable.? As a result the brain locked. It was just to cryptic for me. For a test I did try digitalRead() and two things happened, it works, and the compiled code is smaller.? Less gnashing and mashing. Trying to figure out the encoder stuff so I can substitute a pair of buttons with the logic of? tap (up) or tap (down) for a single increment/decrement of frequency or menu item. Push and hold does the key repeat.? Least that what I want to replace... Allison |
Re: V4.3 arduino code description...
#arduino
The ternary operator has been around since the 70's
toggle quoted message
Show quoted text
? ?? This equivalent (but untested) function might be easier to read. // Returns a value of 0,1,2, or 3 // If ENC_A is high, the LSB is turned on // If ENC_B is high, then the MSB is turned on byte enc_state (void)? ?{ ? ? byte rval = 0; ? ? if (analogRead(ENC_A) > 500) ? ? ? ? rval =1; ? ? if (analogRead(ENC_B) > 500) ? ? ? ? rval = rval + 2; ? ? return(rval); } ? ? Would be better to use your digitalRead(), not the analogRead(). Not sure why it was done this way. Only the nano analog pins A6 and A7 have no digital IO mode, but perhaps having done battle with those it was assumed that the others were the same? Jerry On Thu, Jul 19, 2018 at 03:02 PM, ajparent1/KB1GMX wrote:
|
V4.3 arduino code description...
#arduino
byte enc_state (void) {
? ? return (analogRead(ENC_A) > 500 ? 1 : 0) + (analogRead(ENC_B) > 500 ? 2: 0);
} That's the code from the UI section...? My brain does not want to parse it. Best I get is analogread(ENC_A) returns greater than 500 its either a 1 or 0 returned. No where can I find the "?" or ":" usage and meaning.? ? Any ideas...? My brain says the library function turns that into something intelligible. Also why can't it be? byte enc_state (void) {
? ? return (digitalRead(ENC_A) ? 1 : 0) + (digitalRead(ENC_B)? ? 2: 0);
}
Allison |