Keyboard Shortcuts
Likes
- BITX20
- Messages
Search
Re: ubitx #v6 Screen Speed Mod
#v6
Jack, W8TEE
You're wrong and it's still not safe. When globals are initialized at their global definition, they are only initialized once at load time. So, when you call the frequency format routine the first time (e.g., 7123456), all works as it should. Now call it the second time with the new frequency 21123456. Now b[] has: "712345621123456" but it still works because you over-allocated buffer space. Each time you call it, however, you extend the string. Eventually, on the 5th call, you will overflow the string space and all bets are off. This can be one of those test-it-three-times-and-it's-okay bugs that are difficult to find because the stack is usually blow away when the bug finally manifests itself. If you're really worried about the few bytes used by memset(), why the hell are you using a 30-byte buffer space when 9 will work? Using the smaller buffer space would have produced the error for you and the second call. However, because it's a memory-overwrite, you still may not even know it's happened. Jack, W8TEE
On Friday, January 17, 2020, 12:23:03 PM EST, Gary Anderson <gary.ag5tx@...> wrote:
Thanks Jack and Reed. When I created the global buffers in my test code: char b[30] = {'\0'};
char c[30] = {'\0'};
The function is only called with initialized buffers from what I saw in a quick look at the V6 code. Rgds, Gary -- Jack, W8TEE |
|||||
Re: Need to Calibrate the V6
#v6
Morris Ford
I am trying to use the BFO tuning aid. What exactly does the part of the website mean that says to tune until the noise is centered between the two red lines? I have noise all the way across with a dip partway across. I would assume that the dip is to be centered between the two lines but tuning does not move that 'notch'. Tuning changes the relative height of the noise on the right and the left. Does someone have a screen grab? After I wrote the above I started up the radio again and went to the web page again and twiddled the knob some more and I just snapped an image. What does that image indicate? Morris K7LSV On Fri, Jan 10, 2020 at 2:27 PM <k7ome@...> wrote: Thanks Reed!? I did add that issue on Github as you suggested.? I'll get this figure out some day .... |
|||||
Re: ubitx #v6 Screen Speed Mod
#v6
Thanks Jack and Reed.
When I created the global buffers in my test code: char b[30] = {'\0'};
char c[30] = {'\0'}; The function is only called with initialized buffers from what I saw in a quick look at the V6 code. Rgds, Gary |
|||||
Re: ubitx #v6 Screen Speed Mod
#v6
I agree with Jack. Memset is an important part of that implementation.
b and c are global reusable char array buffers in the code. Reed |
|||||
Re: one_stop_setting debugging
#v6
Hi Reed,
Okay, I'm using it now and all seems to be good and stable, I will continue to use it today and report back later if I run into any problems. Joel N6ALT |
|||||
Re: #ubitx V6
#ubitx
Please see item number?291604842607? on ebay.com.
Around 18 months back i bought 10 lot? at 7.5$ |
|||||
Re: ubitx #v6 Screen Speed Mod
#v6
Jack, W8TEE
Well, you may not see any reason to have it, but I do. Local buffer space is allocated on the stack, which means it contains garbage when the buffer space is created. The strcat() functions work by locating the first NULL character in the string space and appending after that. Given that the buffer can contain almost anything when created, the first NULL could be 50 bytes away from buff[0], which means that you probably just clobbered whatever was "behind" buff on the stack, which could well be the stack pointer. If that happens, your program wanders into Never-Never Land and who knows what happens next. You can leave the memset() call out of the code, but chances are 1 in 256 it won't work properly. Also, in the code below, where is variable b defined? Jack, W8TEE
On Friday, January 17, 2020, 9:59:20 AM EST, Gary Anderson <gary.ag5tx@...> wrote:
I see no reason to do the memset in this function.? Removed it.? Less program space used and less processing cycles. Added a rounding option, that is commented out.? More program space and processing cycles :) Wrote a simple sketch that ran through a list of frequencies and then printed buff to STDOUT. I will get a GitHub account so I can play better in the future. void formatFreq(long f, char *buff) {
? // tks Jack Purdum W8TEE
? // replaced fsprint commmands by str commands for code size reduction
? // AG5TX
? // resolved issue with format below 1 MHz, there is an issue below 100 Hz
?
? // rounding uses more bytes of program storage space and adds processing cycles
? // uncomment if you want this feature
?
? // round up for when only 2 digits after decimal point are used
? /*
? if(f%10 >= 5) {
? ? f += 5;
? }
? */
?
? ultoa(f, b, DEC);
? int g = strlen(b);
?
? for (int i = g; i < 8 ; i++){
? ? ?strcat(buff, " ");
? }
?
? strncat(buff, b, g-3);
? strcat(buff, ".");
? strncat(buff, &b[g-3], 2); // could set last arg to 3 for 3 digits after dec point, just don't round up.
}
-- Jack, W8TEE |
|||||
Re: ubitx #v6 Screen Speed Mod
#v6
I see no reason to do the memset in this function.? Removed it.? Less program space used and less processing cycles.
Added a rounding option, that is commented out.? More program space and processing cycles :) Wrote a simple sketch that ran through a list of frequencies and then printed buff to STDOUT. I will get a GitHub account so I can play better in the future. void formatFreq(long f, char *buff) {
? // tks Jack Purdum W8TEE
? // replaced fsprint commmands by str commands for code size reduction
? // AG5TX
? // resolved issue with format below 1 MHz, there is an issue below 100 Hz
?
? // rounding uses more bytes of program storage space and adds processing cycles
? // uncomment if you want this feature
?
? // round up for when only 2 digits after decimal point are used
? /*
? if(f%10 >= 5) {
? ? f += 5;
? }
? */
?
? ultoa(f, b, DEC);
? int g = strlen(b);
?
? for (int i = g; i < 8 ; i++){
? ? ?strcat(buff, " ");
? }
?
? strncat(buff, b, g-3);
? strcat(buff, ".");
? strncat(buff, &b[g-3], 2); // could set last arg to 3 for 3 digits after dec point, just don't round up.
} |
|||||
Re: one_stop_setting debugging
#v6
Hey Joel,
I got enough parts that I could finally got back to this. I believe I found the source of the weirdness you saw. The issue was primarily three-fold:
I think I have all of that stuff sorted now, so if you're willing to give the one_stop_settings branch another go to sanity check me before I merge it into my own master, I'd appreciate it. Of course, anybody else on this thread is also welcome to give it a go :) Reed |
|||||
Re: BFO update
well a few things to check.? since SSB is working, you must have the 4.7k resistor installed, otherwise PTT would not work.?
of course check your wiring to the key jack.? a short circuit across the interface, when you find it on the board, should get you transmitting on CW.? when this key interface is closed, the raduino should switch the rig into CW - you should see this on the display somehow.? note that in the settings (I am not familiar with CEC) there should be a setting that configures either manual key or paddle - see which yours is set for.? also, paddle mode does require some additional resistors to provide different pull-up voltages for dit and dah - this info is on the web somewhere. 73 Curt |
|||||
Re: uBitx microphone wire up
howard winwood G4GPF
I can answer you, the mike has 2 connections, the ptt switch has 2 connections, for the mic one of the connections on the base goes to the metal body of the mic and should be connected to ground/earth/0 volts.
one side of the ptt switch goes to the ptt pin the other side goes to earth/ground etc so two wires go to one connection the earth/ground connection. that¡¯s why you only need 3 wires total for mic and ptt. I don¡¯t think I can add any more to that, that would explain it any better. I think you are trying to overthink the problem, the wiring diagram shows only 3 wires from the main board, one of them earth/ground, that one MUST be the common element . Howard G4GPF |
|||||
Re: Look at this on eBay, ubitx, budget test equipment.
On Thu, Jan 16, 2020 at 09:08 AM, Jonas Sanamon wrote:
Hermes Lite 2 projectTotally amazing the things hams are doing nowadays.? This video linked from the site is a good explanation of the radio transcever. The idea of implementing the ethernet stack in state machines (in a FPGA) rather than a CPU is pretty amazing. The person who did that must enjoy challenges to the point of pain. Tom, wb6b |
|||||
Re: BFO update
After trying various software versions on my ver 5 uBitx, the KD8CEC v1.20 brought my uBitx to life, SSB works great had good reports on 20 m, all signals sound good on other bands, and the memory manager software works, here's the but, cw transmit does nothing ( it did transmit with other software ), Any ideas where I should start looking? Thanks, John W5GFI |
|||||
Re: #ubitx V6
#ubitx
?I bought a batch of 10k audio pots a while ago. The one that came with the first BITX40 broke the shaft when the case I stuffed it in got slightly dropped. ?Can still turn it with the remaining shaft, but knob won't grip, even if I trim the end. ?Rather flimsy plastic shafts. ?The ones I bought online have metal shaft. Look the same as the ones suggested. Just needs a bit more patience soldering leads. ?Those plastic shafts need to be trimmed so the knob is as close?as possible to the case. Wayne WA2YNE On Thu, Jan 16, 2020, 12:06 PM Jerry Gaffke via Groups.Io <jgaffke=[email protected]> wrote: While waiting for delivery of a physically appropriate pot for a uBitx-v6 |
|||||
Re: #ubitx V6
#ubitx
While waiting for delivery of a physically appropriate pot for a uBitx-v6
toggle quoted message
Show quoted text
(whatever that is, I defer to those with a v6), just about any pot within 50% of 10k (or perhaps worse, try it!) will work fine as a volume control. Run 3 wires up from the board through a crack in the case, have it dangle out the front somehow. No point in sitting on your hands for a month. I'd guess 10k is more common than any other value you are likely to find in a pot salvaged from old gear. Something claiming to be "audio taper" or "logarithmic" is preferred, a "linear" pot will work fine but will seem very sensitive on the low end of the range. Jerry, KE7ER On Thu, Jan 16, 2020 at 08:49 AM, Jack, W8TEE wrote:
|
|||||
Re: Look at this on eBay, ubitx, budget test equipment.
Hi Folks, For #3,4 & 5 below I think the Hermes Lite 2 project is good bang for the buck ($225). And You get an excellent little SDR Transceiver as well.? Open Source SW and HW. For the latest group buy the fab "Makerfabs" produced quite a few extra units and they still have some in stock,? Get them while they last. I have commercial interests in the project :-) For #3 you also need a directional coupler, build your own or get one cheap on ebay/ali express For #5 you also need a way to vary the signal level beyond the 7 dB range the power level can be adjusted on the HL2 itself. Build Your own T or Pi attenuators or get some cheap?on ebay/ali express.? ?Or better yet get a variable attenuator (more expensive) Best Regards, Jonas - SM4VEY Den m?n 13 maj 2019 kl 05:38 skrev Robert D. Bowers <n4fbz@...>:
|
|||||
BitX40 with Case Unassembled For Sale
Greetings. I still have the one BitX40 radio with case for sale...Includes working and tested board set with Allard's firmware update and brand new unassembled case kit from INKITS. Complete with all parts, cables and controls as received...$100 shipped. CONUS only. PayPal only please. Thanks for looking. Jim WB2LHP
|
|||||
Re: #ubitx V6
#ubitx
Jack, W8TEE
Note the delivery date...it's probably coming from China. These people are great and have quick service! Jack, W8TEE
On Thursday, January 16, 2020, 11:24:08 AM EST, <k7ome@...> wrote:
This one looks like a pretty good guess.? Anyway, it won't cost much to find out :? -- Jack, W8TEE |