#garfield Logs
Jan 07 2024
#garfield Calendar
03:49 AM polprog: 14:31 < rue_mohr> yea, you didn't catch it on twitter?
04:00 AM polprog: i havent been browsing twitter regulraly since most people i talked to moved to fedi
04:00 AM polprog: http://paste.debian.net/1303143/
04:00 AM polprog: haha that's clever!
04:00 AM polprog: ive been staying up late fixing CB radios recently
04:00 AM polprog: ive fixed the two radios I have, and equipped them with li-ion battery packs
04:00 AM polprog: so now they are portable
09:14 AM OK9UWU: I've been messing around with C++ for past x hours feeling incredibly dumb over a simple problem of data extraction
09:15 AM polprog: OK9UWU: what are you trying to do? i know cpp well
09:19 AM OK9UWU: ok so, i have 1096byte frames (lets call these minor frames), each has 3byte syncword, 1byte counter, 2bytes for instrument metadata and instrument data (bytes6-1095), i need to assemble them into major frames (4minor frames in a row)and extract only the instrument data field and write that down to a file
09:19 AM OK9UWU: its so simple of a problem
09:20 AM OK9UWU: https://caa.esac.esa.int/documents/ICD/CAA_EST_ICD_WBD_v33.pdf page 14
09:21 AM polprog: okay
09:21 AM polprog: you got anything already or not sure how to approach?
09:22 AM OK9UWU: i have a script already written that aligns the frames by the syncmarker and outputs them as a uint8_t vector of vectors
09:22 AM polprog: thats a good approach
09:23 AM OK9UWU: https://ibb.co/VBMJdBq
09:26 AM polprog: this looks good
09:27 AM polprog: though wait, no, why is that for executing over the (empty) vector minorframes
09:27 AM OK9UWU: one way would be to rewrite the deframer to count 4 syncwords and do the processing on that level, but atm i only need something quick to throw together as a test, it will get rewritten later anyway
09:27 AM polprog: wait no, minorframes is ok
09:28 AM OK9UWU: Thats where the code shall continue
09:28 AM polprog: yeah so you would want to create a vector<uint8_t> majorframe
09:28 AM OK9UWU: yep already have that
09:28 AM polprog: ok, then take out the 6-1095 bytes from each minirframe and append them to the majorframe
09:31 AM OK9UWU: okay
09:38 AM Tom_L: morning
09:38 AM polprog: you can iterate from nth to mth element like this:
09:38 AM polprog: https://ideone.com/Xhorfa
09:38 AM polprog: hi Tom_L
09:54 AM OK9UWU: Hmm ok
09:58 AM OK9UWU: lets see
09:59 AM OK9UWU: it did output data as expected, now i just need to figure out what it actually is, i presume an I/Q capture but i need to look deeper into it
09:59 AM OK9UWU: thanks
10:00 AM polprog: i thought the bin file contains decoded bytes already :D
10:00 AM OK9UWU: it does, but they still need to be interpreted into audio
10:01 AM OK9UWU: the CLUSTER satellite constellation records in VLF ranges, in this case 100Hz-9.5KHz at 27.443kHz, which is what that bin contains
10:03 AM polprog: oh thats awesome
10:04 AM polprog: im looking forward to spring when its warmer outside and then ill mount my satellite dish on a tripod and see if i can catch some Ku band stuff
10:04 AM polprog: for now im in a CB radio repari frenzy
10:04 AM polprog: repair*
10:04 AM Tom_L: heh
10:04 AM polprog: https://i.ibb.co/ZWTSY1c/IMG-20240107-170158.jpg
10:05 AM polprog: the one on the right I picked up in april from my friend
10:05 AM polprog: retuned it to polish channels
10:05 AM OK9UWU: DNT Formel, what a classic
10:05 AM polprog: the Alan 100 is very similar in the synthesizer section, that had a lot of broken joints on the VCO section
10:05 AM polprog: fixed that too
10:05 AM polprog: OK9UWU: oh, is it?
10:05 AM polprog: i like the way its designed, id like to know more about it
10:05 AM OK9UWU: Atleast here in CZ it used to be common
10:06 AM polprog: it seems to be a simple nice design. The formel uses an IF demod IC while the midland seems to be doing it discretly
10:06 AM OK9UWU: all of these CBs however were usually the same under the hood, some had AM, some even SSB, most FM ones had the same chip for a PLL
10:06 AM polprog: i want to try modding them for some cooler modulation capabilities
10:07 AM OK9UWU: I had a couple of them, but now i only have my old President GRANT, 10W FM/AM, 20 or so watts SSB
10:07 AM OK9UWU: 120channels, shifted to still cover our 80channels + the pirate CB band
10:08 AM polprog: oo nice
10:08 AM polprog: i was thinking about replacing the PLL generator with some fast microcontroller and a DAC to allow for custom TX/RX frequency schemes
10:08 AM polprog: CB radio frequency hopping
10:09 AM OK9UWU: But i am not too active there anymore, i sometimes pull it out for some experiments, last one i tried was decoding NOAA weather satellites and using the CB as a IF demod but the FM 2nd IF filters are way too narrow
10:10 AM polprog: good call, i was thinking about modding one of the ones based on LC7185 (they are 50zł on OLX)
10:10 AM polprog: decoupling the power output stage and using the low power TX signal to modulate a satellite LNB
10:11 AM polprog: this would give me a quick and dirty TX on Ku band]
10:11 AM OK9UWU: Hehe, you could also use the Ku band LNB as a upconverter
10:11 AM OK9UWU: swap the fets around, etc
10:11 AM polprog: thats my plan exactly
10:12 AM polprog: rotate the fets so they amplify the other way around
10:12 AM OK9UWU: also DRO LNBs are nice to mod for FM , i've made a TV transmitter that way
10:12 AM polprog: I actually did that
10:12 AM polprog: https://polprog.net/blog/lnbhacks/notes.html
10:12 AM polprog: for some reason this got to hackaday
10:12 AM OK9UWU: OH that was your site! I remember i saw someone revisit it lately aha
10:12 AM polprog: thats me <3
10:13 AM OK9UWU: messing around with 10GHz is nice, i'Ve got a ton of stuff for that band
10:14 AM OK9UWU: PLLs, VCO, prescalers, some power amplifiers
10:14 AM OK9UWU: full boards etc
10:14 AM polprog: ive got a few Globo LNBs and a Polsat Ku dish that my neighbour threw to the trash
10:14 AM polprog: also took a microwave 101 course at uni last year, cool stuff
10:14 AM OK9UWU: https://we.tl/t-c7r4aooEuN you probably saw this pdf right? dont be scared by the filename
10:18 AM polprog: thanks very much
10:21 AM polprog: thats some fantastic reverse engineering material there
10:21 AM OK9UWU: i am currently building a 23cm transverter, 144->1296MHz
10:21 AM polprog: i have some german 2.1-2.5 GHz PLL stabilized oscillators, been building a power supply for them but I shelved that project for now
10:22 AM OK9UWU: Brick oscilators or such? Got any photos?
10:22 AM polprog: sure, let me dig up
10:35 AM polprog: found them, uploading
10:38 AM polprog: https://polprog.net/rozne1/ircjunk/various/gen_ghz/
10:38 AM polprog: ill put a slideshow later there :)
10:39 AM polprog: 4_small is the insides
10:39 AM OK9UWU: oh interesting
10:39 AM OK9UWU: these are unknown to me
10:39 AM polprog: There is a cavity oscillator which is roughly adjusted with the screw in the front, and then when it's in range the PLL stabilizes the tuning voltage
10:40 AM polprog: so you can adjust with 100kHz resolution
10:42 AM OK9UWU: lovely, i wonder what it will look like on the spectrum, these things can have very low phase noise but it depends on the pLL
10:45 AM polprog: as soon as i make up the 8, -8 and -24V supply I will test it
10:45 AM polprog: my specan only goes up to 1.8GHz, so might have to mix them down somehow
10:48 AM OK9UWU: You could buy an mmds
10:48 AM OK9UWU: sometimes they can go for cheap on the second hand market
10:50 AM polprog: ive got one based on some atmega and that AD PLL synthesizer
10:50 AM polprog: it outputs square wave but that should not be a problem
10:50 AM polprog: and can go up to 2G i think?
10:50 AM polprog: dont remember. But it is a handy source of harmonics up to 10GHz or something xd
10:51 AM OK9UWU: MMDS downconverter? Nah, its an all in one unit, input is usualy 2.1-2.3 or 2.5-2.7Gigs
10:51 AM OK9UWU: it was used before internet took off and I to IV/V TV band didnt have enough room anymore
10:51 AM polprog: oh that
10:52 AM polprog: i thought you meant a DDS generator
10:52 AM polprog: ill be on the lookout
10:59 AM polprog: one possible mod for the formel 1 would be to make the RX led be on only if its unsquelched
10:59 AM polprog: otherwise it's a bit dumb, because it's on all the time except when TX
10:59 AM polprog: een if the receiver is squelched
11:00 AM OK9UWU: shouldnt be too hard
11:01 AM polprog: yeah, not today tho
11:01 AM OK9UWU: its probably taking the signal from the PTT circuit
11:01 AM polprog: i think ill take the signal from the IF ic
11:01 AM polprog: probably
11:01 AM OK9UWU: it uses Motorola 33xx or something among those lines yes?
11:02 AM OK9UWU: 3357 , just found it
11:02 AM polprog: https://polprog.net/rozne1/ircjunk/cbradio/formel_1_cb_radio_schematic.pdf
11:02 AM polprog: yeah
11:03 AM OK9UWU: okay yeah RX is taken directly from the VRX line
11:03 AM polprog: VRX?
11:04 AM OK9UWU: Voltage RX , its what most of us HAMs refer to in radios, transverters, anything that has combined RX and TX in half duplex
11:04 AM OK9UWU: oh wait nevermind
11:04 AM OK9UWU: its directly from VCC but theres a diode
11:05 AM polprog: yep
11:05 AM OK9UWU: ok yeah that makes sense now
11:05 AM polprog: wait what is going on there
11:06 AM OK9UWU: cathode of the diode gets pulled high during tx
11:06 AM OK9UWU: hence there'S 0 voltage difference and no current is flowing
11:06 AM polprog: yes
11:06 AM polprog: but im trying to see how it gets pulled high, since the TX/RX pin is pin 30 on the LC7185
11:07 AM polprog: but that line doesnt go anywhere to the RX led
11:09 AM OK9UWU: wtf
11:10 AM polprog: you have the line with R65 on it
11:10 AM polprog: under T6
11:10 AM OK9UWU: yeah but that goes to a base on a npn transistor
11:10 AM polprog: but that goes to base of Q5 up near IC2, and Q14 near IC1, now that Q14 is the keyboard scan so not that,
11:10 AM polprog: what a janky radio
11:11 AM OK9UWU: other end ends up on a voltage divider going to a Q5 way above the squelch
11:11 AM OK9UWU: ok so for whatever reason this line just gets pulled high by Q14
11:13 AM polprog: yeah but Q14 is between pin 14, K01, and pin 12, K13 part of the keyscan logic
11:13 AM polprog: what is going on there
11:13 AM OK9UWU: check if they get pulled high
11:13 AM OK9UWU: during tx
11:13 AM OK9UWU: maybe its a hidden feature
11:14 AM polprog: lol, maybe
11:18 AM polprog: doesnt say anything in the datasheet
11:27 AM polprog: on the Midland Alan 100 schematic the RX led goes to the RX power rail
11:27 AM polprog: https://polprog.net/rozne1/ircjunk/cbradio/midlandalan_100plus_schematic.jpg
11:27 AM polprog: so it must be on all the time too
11:27 AM polprog: what a nonsense
11:28 AM polprog: wow the Alan 100 has less IF filters
11:28 AM polprog: there is just one 10.7 and the 455KHz is discrete
11:41 AM OK9UWU: still enough most of the times
11:41 AM OK9UWU: depends on how wide the 10.7MHz is
12:02 PM polprog: do you know why on that midland schematic they are feeding the 455kHz IF to pin 1 of the BA403
12:02 PM polprog: but BA403 according to datasheet expects a 10.7IF
12:05 PM OK9UWU: hmm lets see
12:07 PM OK9UWU: i think its just because it works and there wasnt a better miniature discriminator
12:07 PM OK9UWU: it will cope with 455 easily
12:11 PM polprog: hm
12:11 PM polprog: (im reversing and annotating this schematic)
12:12 PM polprog: So you have Q30 and Q31, that output goes to T10
12:12 PM polprog: Q30 mixes G and H, G is from the VCO, H is AF
12:12 PM polprog: This must mean that T8 and T9 are a doubler?
12:13 PM polprog: Q23 is the doubler and T8, T9 are a filter?
12:15 PM OK9UWU: yeah seems to be that way
12:15 PM OK9UWU: however H? thats from the DA2003, must be a part of the AM modulation circuitry
12:15 PM OK9UWU: TDA*
12:16 PM polprog: The TDA2003 does a few jobs here
12:16 PM polprog: it is used for AM modulation too
12:16 PM OK9UWU: yup
12:17 PM polprog: but why are they mixing 2x VCO frequency with AF mixed with 1xVCO freq..
12:18 PM OK9UWU: i cant find the other end of G
12:18 PM polprog: took me a while too. The other G is inside the VCO
12:18 PM polprog: uner IC1
12:18 PM polprog: under*
12:18 PM OK9UWU: i see that one
12:18 PM polprog: the other other end of G is above Q30
12:19 PM OK9UWU: thats G?! alright
12:19 PM polprog: must be..
12:19 PM polprog: and that one to the right of it must be H, not R
12:19 PM polprog: bad scan
12:19 PM rue_mohr: polprog, the really cool japaneese people didn't move over tho
12:19 PM polprog: rue_mohr: hm, good point
12:19 PM polprog: rue_mohr: nuclearlighter didnt either
12:19 PM polprog: maybe i should browse tt more often
12:20 PM OK9UWU: this seems to be like some really weird way of doing AM
12:21 PM OK9UWU: i cant grasp what the hell is going in there
12:21 PM rue_mohr: woof state machine
12:21 PM polprog: noo wait i think i got what is going on with G
12:21 PM polprog: the G inside the VCO is the input
12:22 PM OK9UWU: do you think its a part of the modulation?
12:22 PM OK9UWU: oh wait
12:22 PM OK9UWU: yeah i think i see it too now
12:24 PM OK9UWU: ok yeah so its part of the FM modulation
12:25 PM OK9UWU: makes sense now because the other part of the AM/FM switch puts TDA2003 into the Vcc rail of the final transistor, no more weirdness
12:25 PM OK9UWU: i had a bit of a doubt it would be used for AM because those things aint linear in the slightest
12:29 PM rue_mohr: antinon-linear
12:31 PM OK9UWU: i've built several AM transmitters that used TDA2003 as a modulator, some even boosted with a couple of 2N3055s, a crap ton of heat but the audio quality was perfect
12:37 PM polprog: https://polprog.net/rozne1/ircjunk/cbradio/midland_alan100_reversing.png
12:37 PM polprog: off to make some supper
12:38 PM polprog: first time im reversing something like this, tell me if you spot any obvious errors
12:41 PM OK9UWU: TX/RX filter is wrong, thats a lowpass, c114 and L7 form a tuned circuit at 2nd harmonic, hence attenuating it
12:41 PM OK9UWU: parts in the orange are output matchin of Q25
12:41 PM OK9UWU: seems like the only thing doing R/T switching is the D1
12:43 PM OK9UWU: IC2 1/2 seems to be an AGC
01:25 PM rue_mohr: Tom_L, did any of that version extraction stuff help?
01:26 PM rue_mohr: <OK9UWU> ok so, i have 1096byte frames (lets call these minor frames), each has 3byte syncword, 1byte counter, 2bytes for instrument metadata and instrument data (bytes6-1095), i need to assemble them into major frames (4minor frames in a row)and extract only the instrument data field and write that down to a file
01:27 PM Tom_L: he stuck with what he had fixed but he did test it and said it worked
01:28 PM rue_mohr: cool
01:28 PM rue_mohr: cat wants in the bedroom window so she can go out the kitchen door
01:29 PM rue_mohr: 7 states
01:29 PM rue_mohr: state macine
01:30 PM Tom_L: 7 states of cat?
01:30 PM rue_mohr: no, the radio packet thing
01:30 PM rue_mohr: radio packets?
01:30 PM Tom_L: i didn't follow all that but saw some
01:30 PM rue_mohr: yea, I think they are doing thier thing
01:31 PM rue_mohr: state machine should work good on it tho
01:31 PM rue_mohr: and stream instead of buffering
01:31 PM rue_mohr: buffering code is bad
01:31 PM Tom_L: so what else can we design a spring for???
01:31 PM rue_mohr: cause it usually stacks and causes huge latencies
01:31 PM rue_mohr: hahah
01:32 PM rue_mohr: clip boards : good luck.
01:32 PM rue_mohr: haha
01:32 PM Tom_L: lamp cords so you don't over stress the mechanism
01:32 PM Tom_L: you could sell those!!!
01:32 PM rue_mohr: :)
01:32 PM rue_mohr: have you seen cheap clipboards latley?
01:32 PM rue_mohr: ugh
01:32 PM Tom_L: no
01:32 PM rue_mohr: cardboard
01:32 PM Tom_L: i had a few but they always go missing
01:33 PM Tom_L: she hides em
01:33 PM rue_mohr: buy 20+ like I did
01:33 PM rue_mohr: just start filling the house
01:33 PM Tom_L: and hide them in 20 different spots?
01:33 PM rue_mohr: no just let them go wild
01:33 PM rue_mohr: eventually, there wont be room for where they are doing
01:33 PM rue_mohr: going
01:34 PM Tom_L: make a work plate and i'll send you some V code
01:34 PM rue_mohr: moon might come by today
01:34 PM rue_mohr: I'm on call so I might have to run off
01:34 PM Tom_L: ok
01:34 PM Tom_L: i'm not and i'm not about to run anywhere
01:34 PM rue_mohr: door skin
01:34 PM rue_mohr: the big cnc will be able to cut them out
01:35 PM Tom_L: cut what?
01:35 PM Tom_L: for what?
01:35 PM rue_mohr: the backer boards for the clipbaoards
01:35 PM rue_mohr: being able to do 48"x96" will be awesome
01:36 PM rue_mohr: I'm sad that I cant make money using it, cause then I could just pour money into making it and be done
01:36 PM Tom_L: who saiz you can't?
01:36 PM rue_mohr: _I_ cant
01:36 PM Tom_L: billboards
01:36 PM rue_mohr: I could't sell heaters to eskimo at a loss
01:36 PM Tom_L: custom cut
01:36 PM rue_mohr: hah
01:37 PM rue_mohr: not here, people would not understand so much they would just ignore it
01:37 PM Tom_L: i gotta remember to take my calipers to work on monday
01:37 PM Tom_L: need to measure something
01:37 PM rue_mohr: might as well just put a schematic for a 1 bit computer on a billboard
01:37 PM rue_mohr: :)
01:38 PM Tom_L: just post a v spring video on YT and watch it happen
01:38 PM Tom_L: a shitty one at that
01:38 PM rue_mohr: haha
01:38 PM rue_mohr: but, there is an exception
01:39 PM rue_mohr: people who understand it, vs people who enjoy seeing it happen, but dont understand any of it
01:39 PM rue_mohr: which is why I have over 3000 twitter followers
01:50 PM polprog: OK9UWU: thanks! ill take a look at it again and try to get it :)
01:51 PM polprog: TX/RX filter as in not something that separates tx and rx, but something that cleans up unwanted harmonics and images on the antenna while TXing and filters uninteresting frequencies from the antenna while RXing
01:51 PM polprog: ive gotta simulate it all in LTspice
01:52 PM polprog: to see how exactly its constructed
04:54 PM rue_mohr: I'm working on the 1 bit computer,
04:55 PM rue_mohr: when i last left off, the serial programming was totally not working right
04:55 PM rue_mohr: so I'm restarting with my 1 bit 595 over asynchronous
04:55 PM rue_mohr: http://ruemohr.org/~ircjunk/tempimage/p1300548.jpg
04:55 PM rue_mohr: http://ruemohr.org/~ircjunk/tempimage/p1300549.jpg
04:56 PM rue_mohr: altho this circuit was still assembled on the breadboard, it did NOT want to work, I managed to fix it, but the changes were suspicious
04:56 PM rue_mohr: I had to swap around the timing resistors and add a pullup
04:56 PM rue_mohr: its working fine now
04:58 PM polprog: very nice!
04:59 PM polprog: that is very clever :D
04:59 PM rue_mohr: the modulation over serial was tricky
04:59 PM rue_mohr: turned out to be quite doable
05:00 PM polprog: i love the fact how its a 555
05:00 PM rue_mohr: heh, the 555 is just operating as a schmitt inverter for the incomming serial
05:00 PM rue_mohr: cause the usb converter outputs 3V levels, and the timing circuit is tuned around 5V
05:01 PM polprog: oh hah
05:01 PM polprog: my 555 knowledge is not enough to spot it from a circuit like that
05:01 PM polprog: id probably draw the interlnals for future me but you probably know they by heart
09:28 PM rue_mohr: did you see my special 555 diagram?