Author Topic: uC’s for pseudo-SDR / high accuracy high freq timers, fun bitbanging abilities?  (Read 979 times)

0 Members and 1 Guest are viewing this topic.

Offline radio879Topic starter

  • Newbie
  • Posts: 3
  • Country: us
I am always impressed when I see people using ESP32 to generate good VGA signals in software or output RF signals with modulation. I tried out someone’s program yesterday to generate arbitrary waveforms on a RP2040 which will output complex waveforms up to 20mhz..

I really like what someone created on the Raspberry Pi (classic ones) called rpitx which is a software SDR transmitter. It works perfectly and is accurate enough to do perfect sounding wideband FM, and the program can accept I and Q inputs to produce any type of modulation. The bandwidth is limited to ~250khz though. It will transmit a square wave anywhere from like 1mhz to 1500mhz. It works on the cheapest Pi boards like Pi Zero. I wonder if any of those Pi alternatives can do stuff like this? Banana Pi etc.

I am just curious what other cool stuff might be out there, maybe some of the higher end STM32’s? I’m not looking for anything super specific just trying to find faster microcontrollers that allow you to tap into the timers to do cool stuff.. especially RF stuff and fast enough to do “fake SDR” wideband real time custom modulation stuff.

I guess I should buy a real SDR but i like the idea of finding cheap microcontrollers that have some hidden abilities. I like when people figure out ways to do amazing things with very low cost electronics.

There is another project (forget the name) where someone found a super cheap usb device that has a DAC that can run at 100+ mhz and was able to use it as a SDR for TX with 100-200mhz bandwidth. Super cool..

 

Offline radiolistener

  • Super Contributor
  • ***
  • Posts: 3391
  • Country: ua
rpitx is a dirty hack. It produces dirty output, it works and can be listened on receiver, but if you want to implement proper good quality transmitter, it requires different approaches.

There are two ways: analog or digital. Both way requires to implement modulator, filters and frequency shift. The difference is that in digital it is implemented in software as math calculations, in analog it is implemented in hardware with analog components. Digital one requires DAC with reconstruction filter. You can implement frequency shift in digital or in analog part. If you implement it in digital it requires high speed DAC and requires FPGA to implement fast enough calculations to generate data for DAC. If you implement frequency shift in analog part, you can use MCU with 48 kHz DAC and generate modulated signal at low frequency carrier on MCU, then it will be frequency shifted in analog mixer and filtered with analog filter.
« Last Edit: February 16, 2024, 10:54:42 am by radiolistener »
 

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 19522
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
I am just curious what other cool stuff might be out there, maybe some of the higher end STM32’s? I’m not looking for anything super specific just trying to find faster microcontrollers that allow you to tap into the timers to do cool stuff.. especially RF stuff and fast enough to do “fake SDR” wideband real time custom modulation stuff.

Make sure it doesn't have caches, since they improve the average time/performance but make the worst case even worse.
Make sure it doesn't have interrupts, unless the delays they can/will introduce jitter.

Ideally go for a hardware/software/tool ecosystem designed from the silicon upwards to guarantee (not measure and hope!) timing down to the clock cycle, and where multicore/multithread operation isn't a bolt-on afterthought.

Such things do exist, and you can buy them at DigiKey :)
https://www.digikey.co.uk/en/supplier-centers/xmos
https://www.digikey.co.uk/en/products/filter/embedded/microcontrollers/xmos/685?s=N4IgjCBcoLQdIDGUBmBDANgZwKYBoQA3AOygBcAnAV3xAHsoBtEADhYAYQBdAgBzKggAypQCWxAOYgAvrKA

Information dense overview: http://www.xmos.com/published/xcore-architecture-flyer?version=latest
Succinct, informative: https://www.xmos.com/published/xmos-programming-guide

Good enough to capture and process 100Mb/s ethernet serial streams in software. Whether that is a good use of silicon is a separate issue; the point is that it can be done :)

Yes, I'm a fan. I particularly like the short hardware and software documents that don't have errata because they work as specified :) It took me less than a day to be doing continuous I/O guaranteed to 2.5ns clock periods while simultaneously communicating with a PC over USB. That lack of pain impressed me.
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf