-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can harmonics help you? #1
Comments
Also you say "Occupies Core1 (can't use for other purposes)"... In my experience the interrupt routine can be run on (randomly) either core! |
@kaduhi here are some spectrum analyser plots to use as you wish. Demo FM radio transmitter uf2. Direct from pin 21 to the 50 ohm input of the analyser. Battery powered so there's no computer noise (but possibly the code still sends some audio, RDS, I didn't look) There's a strong third harmonic, easily filtered. But also a fine structure in the 87.5 MHz nominal tone, making it quite wide and messy. Still sounds good on the radio. |
Hi @thomasabbott |
Hi @mungewell
Thank you for the info, no, I haven't thought about using harmonics, because for my use cases all I need is FM (or FSK) modulated RF signal up to 150MHz.
Oh, this is interesting... I just watched the first 5 min, I will watch entire video tomorrow. I have very little knowledge about LoRa, so this is good info. Thank you.
I really need an interrupt that is in sync with the 12MHz XO clock that is the reference clock of the PLL.
I use the separate interrupt vector table for Core0 and Core1, so no longer "(randomly) either core". Thank you, |
Hi, yes the harmonics and spurs are to be expected, but I was also surprised by how noisy it looked close-in. It's possible some of that comes from the FM you're doing deliberately, even if there's no USB sound source? Possible sources of this 10 kHz - 40 kHz - 200 - 300 kHz modulation:
Useful tests I think would include:
I'd prefer not to set up to build these, if you can... either a series of uf2s or some sort of mode switch by reading GPIOs or one potentiometer. Then I'll measure some spectra. I don't think the raw non-integer division (rpiks) is worth comparing, when I did look at it, it was very messy. Did you test the PLL loop bandwidth somehow? I can imagine doing that by toggling between two frequencies, one step apart, faster and faster, watching the spectrum, until the two tones and spurs turn into a single tone. I wonder if the act of writing to the register generates a very short spike in the feedback path (it's unlikely to be gray-coded so perhaps several bits have to flip). This spike may be large, and not well filtered as it's never intended to operate like that... Final thought - if you are generating the spurs with your technique, perhaps you can "whiten" their spectrum by adding some randomness to the changes you make - the magnitude and the time you apply them, even at the expense of accuracy. We'lll see. |
I will create a test app with menu system on USB Serial so you can choose the different modes. Thank you for your help! |
Firstly, nice work.... It takes time to put ideas like this together. Thanks for making your open-source.
My first though when seeing this was APRS, which you mentioned does work (too high freq), but did you think about (ab)using the harmonics?
There's a very interesting video on LoRa:
https://www.youtube.com/watch?v=eIdHBDSQHyw
Also, the PIO blocks can cause interrupts and are clocked by the very same SYS clock... wonder if this would get you easy FSK/PSK?
The text was updated successfully, but these errors were encountered: