Build a Ham Transmitter with a Raspberry Pi Pico

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ธ.ค. 2023
  • Using only a few external components build a Ham Radio transmitter covering 0.5-30 MHz. Generates SSB, AM, FM and CW output. Use the onboard microphone or stream audio from a PC.
    Documentation: 101-things.readthedocs.io/en/...
    Software: github.com/dawsonjon/101Thing...

ความคิดเห็น • 79

  • @w9ran
    @w9ran 4 หลายเดือนก่อน +3

    Brilliant work! I've been using the PIO feature for things like encoder and tone decoding and knew it had the capability to generate HF-range waveforms - you've done a great job of putting it all together!

    • @101Things-ds8tc
      @101Things-ds8tc  4 หลายเดือนก่อน +1

      Thanks for your kind comment. Your project sounds very interesting. I think the PIO feature opens up a lot of possibilities, and there are many still to explore.

  • @JRRinMNTX
    @JRRinMNTX 3 หลายเดือนก่อน +1

    Very innovative! I'm glad someone started thinking about the PICO's GPIO functions!

    • @101Things-ds8tc
      @101Things-ds8tc  3 หลายเดือนก่อน

      Thanks very much, really appreciate the feedback!

  • @achimbuchweisel2736
    @achimbuchweisel2736 4 หลายเดือนก่อน +2

    very cool project! I love the minimalist approach.

  • @viskim1593
    @viskim1593 5 หลายเดือนก่อน +4

    Thank you, love it!
    If it was not for illness (and lack of a decent opamp) I would have been tinkering with the Pi Pico Rx these holidays. I am surprised that it has slipped under the radar for so long - It was always my dream to make a minimalist device using accessible components - exploiting jellybean components without exotics removes huge barriers for the experimenters.
    Now with this transmitter it will be even easier to test and tweak the Pi Pico Rx (and filters). Personally I am glad they are separate projects - nice to have a base to allow further experimentation without complexity.

    • @101Things-ds8tc
      @101Things-ds8tc  5 หลายเดือนก่อน +1

      Thanks very much, I would be very happy to see people tinkering with these ideas for themselves. I can't think of a better compliment! Good luck with your projects.

    • @phillipneal8194
      @phillipneal8194 5 หลายเดือนก่อน

      What is a "pi pico rx" ?

    • @101Things-ds8tc
      @101Things-ds8tc  5 หลายเดือนก่อน

      That's another project, similar idea but a receiver instead of a transmitter. github.com/dawsonjon/PicoRX

    • @phillipneal8194
      @phillipneal8194 5 หลายเดือนก่อน +1

      The problem with the PicoRX is the chip used for the Tayloe Detector . The St3253 is a surface mount chip. My soldering skills are not up to it.

    • @phillipneal8194
      @phillipneal8194 5 หลายเดือนก่อน

      That should have read FST3253. Sorry

  • @acestudioscouk-Ace-G0ACE
    @acestudioscouk-Ace-G0ACE 4 หลายเดือนก่อน +1

    I'm a ham returning to the hobby with an interest in learning construction. This is a very well made and informative video which will help a lot of learners. Thanks and I've subscribed and will follow your progress with interest.

  • @davebollmann5292
    @davebollmann5292 4 หลายเดือนก่อน +1

    This would be a great Heathkit like in the 70's
    Fantastic video former amateur

  • @vedanthigiri3248
    @vedanthigiri3248 7 วันที่ผ่านมา

    Very nice and very helpful

  • @SciHeartJourney
    @SciHeartJourney หลายเดือนก่อน +1

    Thank you, this project is awesome. It may save LIVES one day. 👍

    • @101Things-ds8tc
      @101Things-ds8tc  หลายเดือนก่อน

      Thanks for the kind comment 🙂

  • @remiechange5482
    @remiechange5482 4 หลายเดือนก่อน +1

    Many thanks to share your work. Add amplifer , filter is not the most difficult part of this project ( done many times ) . The most beautiful is the very impressive software solution arround internal IC features....Congratulations !

    • @101Things-ds8tc
      @101Things-ds8tc  4 หลายเดือนก่อน

      Thanks for your kind comment. Much appreciated 👍

  • @jennydawson8712
    @jennydawson8712 5 หลายเดือนก่อน +3

    Congratulations 🎉 What a fantastic introductory podcast. I look forward to your next video. 👍🏻

    • @101Things-ds8tc
      @101Things-ds8tc  5 หลายเดือนก่อน

      Thanks for the comment. I hope to have the next video out in the next few weeks.

  • @seanhunt138
    @seanhunt138 3 หลายเดือนก่อน +1

    Nice I have been wanting to do a ham radio from a pico for a while now.

    • @101Things-ds8tc
      @101Things-ds8tc  3 หลายเดือนก่อน

      Thanks, glad you like it :-)

  • @w9ran
    @w9ran 4 หลายเดือนก่อน +1

    I just ordered some of your Pico Rx boards and also a variant of my own Pico class E tx board that I plan to use for experimenting with your code. I did the initial testing of the gate modulation scheme for the uSDX and am very interested in trying this as well as conventional drain amplitude control with your approach go generating the phase-amplituce waveforms. I may try to move the code the Arduino IDE since it's my comfort zone. I've been successful in compiling most code and libraries, and the Earle Philhower Arduino core now supports both Pico cores so I think it is feasible. Your knowledge of DSP and coding skills have provided the SDR learning tool that many of us have been seeking, and working within the Arduino IDE would bypass the need to master the Pico SDK and/or VSCode for us hardware guys!

    • @101Things-ds8tc
      @101Things-ds8tc  4 หลายเดือนก่อน

      Thanks, your comments are appreciated. Your ideas sound very interesting. I would be interested to know if the gate modulation scheme gives good results, the idea is appealing because it results in such a simple design. I'm all for porting the design to the Arduino IDE too, anything that lowers the barriers for experimenters has to be a good thing.

  • @digiital
    @digiital 5 หลายเดือนก่อน

    very cool project.

    • @101Things-ds8tc
      @101Things-ds8tc  5 หลายเดือนก่อน

      Thanks very much, more to come soon!

  • @phillipneal8194
    @phillipneal8194 5 หลายเดือนก่อน +1

    Very nice. Thank you.

  • @ddouglas3687
    @ddouglas3687 5 หลายเดือนก่อน +1

    Can't wait!

  • @user-or6rn2mr7s
    @user-or6rn2mr7s 5 หลายเดือนก่อน +6

    Thanks for sharing this. It's a great project! I was surprised with the capabilities of the raspberry pi pico. What about putting this together with the receiver you describe in the blog? It seems posible to build a complete all mode low cost transceiver based on your design.

    • @JonathanDawson-yt8wl
      @JonathanDawson-yt8wl 5 หลายเดือนก่อน +1

      Thanks for you comment, much appreciated! Yes, I can't see any reason why it couldn't be combined with the receiver to build a low cost transceiver.

    • @AlexejSvirid
      @AlexejSvirid 5 หลายเดือนก่อน

      Don't hurry, OMs.

  • @pavelsala3355
    @pavelsala3355 4 หลายเดือนก่อน +2

    Amazing work. You have my admiration. Could you please give me a tip for some study material about modulations and mixers? Thank you.

    • @101Things-ds8tc
      @101Things-ds8tc  4 หลายเดือนก่อน

      Thanks very much for your kind comment! In terms of study material, this article www.arrl.org/files/file/Technology/tis/info/pdf/020708qex013.pdf (and the other other parts) might be a good place to start. It assumes a PC is doing the SDR stuff, but the hardware and the general principles are still valid.

  • @darreldragula3028
    @darreldragula3028 หลายเดือนก่อน

    Make this a radio that everyone can use, like the FT-710

    • @101Things-ds8tc
      @101Things-ds8tc  หลายเดือนก่อน

      Yes, good idea. The eventual aim is to build a low cost transceiver, needs a bit more work first though...

  • @wrcrooks
    @wrcrooks 4 หลายเดือนก่อน +1

    Could one potentially overclock the RP2040 (say, to 250 MHz instead of 125) and up the high end transmit frequency range?

    • @101Things-ds8tc
      @101Things-ds8tc  4 หลายเดือนก่อน

      Good idea, its not something I have tried but I can't see why it wouldn't work. I have heard that the pico can be overclocked by a considerable amount.

  • @JRRinMNTX
    @JRRinMNTX 3 หลายเดือนก่อน +1

    May I ask the physical size of your Pi pico RX?? Very nice demo on that also!

    • @101Things-ds8tc
      @101Things-ds8tc  3 หลายเดือนก่อน

      Thanks! The Pi Pico RX is 90mm X 55mm (approximately credit card size). It's quite deep at 28mm, mostly to accommodate the AAA battery holder.

  • @darreldragula3028
    @darreldragula3028 หลายเดือนก่อน

    Can you consider adding two buttons or touching the screen to select which frequency band to send and receive, such as UV, HF, SSB.CW, and adjust the volume? I look forward to your results.

  • @AlexejSvirid
    @AlexejSvirid 5 หลายเดือนก่อน +1

    Are you sure SSB mode needs control of the amplitude?
    Another problem is a Step of frequency changes. Can you maintain a 10Hz or 100Hz step?

    • @101Things-ds8tc
      @101Things-ds8tc  5 หลายเดือนก่อน +1

      Good Questions!
      Generally, yes SSB does need control of amplitude. There are however some types of signals that will have a constant amplitude. A single tone for example will have a constant amplitude, that's why a two-tone test is often used to check the linearity of SSB transmitters. Some digital mode e.g. FT8 (which uses one tone at a time) have a constant amplitude and could be transmitted without modulating the amplitude.
      An accumulator is used to correct for frequency errors in the long term, the frequency precision (i.e minimum step size) is a fraction of a Hz, although the accuracy is dependent on accuracy of the crystal oscillator.

    • @AlexejSvirid
      @AlexejSvirid 5 หลายเดือนก่อน +1

      @@101Things-ds8tc Frequency changes are controlled by fractional clock divider of RP2040. It's 16 integer and 8 fractional bits divider. I'm not sure it's good enough.

    • @101Things-ds8tc
      @101Things-ds8tc  5 หลายเดือนก่อน +2

      @@AlexejSvirid Yes, you are absolutely right. Using the clock divider on its own wouldn't even get you within 100KHz at 30MHz. To work around this, I left the clock divider set to 1 and used the DMA to stream a pre-generated waveform at 125MHz 1 bit at a time. The software has to make adjustments to the start point so that the waveforms align nicely, but using DMA chaining keeps the CPU loading down to about 10%. The clock period can only be an integer number of clock cycles so the software accumulates any errors this introduces so that it can be corrected in the long term, while also ensuring that the transition is never more than a clock away from where it should be. A 32-bit accumulator allows a precision of 0.029Hz.

  • @TheDradge
    @TheDradge 2 หลายเดือนก่อน +1

    How many harmonic multiples of the fundamental are being broadcast?

    • @101Things-ds8tc
      @101Things-ds8tc  2 หลายเดือนก่อน

      The output is approximately a square wave so harmonics are output add odd multiples of the fundamental, 3x at 1/3 power, 5x at 1/5 power, 7x at 1/7 power and so on, you can see the effect on the spectrum analyser at 4:55. In this first video I haven't made any attempt to filter the output, at this stage its a proof-of-concept demonstrating how the different types of modulation can be generated. In the second video I build a class-E amplifier with suitable filtering which does a good job of reducing the out-of band harmonics. I did still have some issues with spurious emissions close to the fundamental, so still some more work to do before I can try this on-the-air...

  • @arendelle_ok
    @arendelle_ok 3 หลายเดือนก่อน +1

    I think. This is great.. i don't care about phase noise.. while the sound quality is acceptable and great frequency stability...

    • @101Things-ds8tc
      @101Things-ds8tc  3 หลายเดือนก่อน +1

      Thanks, I was quite pleased with the sound quality considering the minimalist approach. The oscillator is quite crude, and it does have its limitations, but it's still fun to explore the possibilities.

  • @vedanthigiri3248
    @vedanthigiri3248 7 วันที่ผ่านมา

    Great very good project..
    Can you help sending text on the same setup
    I would like to use 5mz in Himalayan region of India for connecting the un connect community in digital dark areas.
    I appreciate your help

  • @gm5aug
    @gm5aug 19 วันที่ผ่านมา

    Out of interest, why is the lower limit 500kHz? Hardware limitations? Only once 198kHz BBC R4 stops I'm wanting to make a very low powered RF modulator to feed directly in to an old radio receiver (via attenuators, not OTA)
    Any thoughts? 73 GM5AUG

    • @101Things-ds8tc
      @101Things-ds8tc  18 วันที่ผ่านมา

      Hi, that will be a sad day... I'm using DMA transfers from pre-generated waveforms to generate the RF oscillator. The waveform needs to be at least 1 RF cycle long, so lower frequencies need longer buffers. I chose 500kHz because it seemed like a good compromise. Lower frequencies could easily be achieved using a longer buffer or a clock divider.
      Cheers Jon

  • @mrtechie6810
    @mrtechie6810 2 หลายเดือนก่อน +1

    So you want to transmit hams?

  • @jan_harald
    @jan_harald 4 หลายเดือนก่อน +2

    I'm not sure if it's just the mic, but I wouldn't call this "good quality", lol
    still pretty cool project, tho, but up until the SDR view, I didn't even have a clue what the audio was supposed to be saying, lol

    • @101Things-ds8tc
      @101Things-ds8tc  4 หลายเดือนก่อน +1

      I know what you mean, the quality of the recording has certainly got something to do with it, the sdr view is more representative. Glad you like the project though 😃

  • @gregben
    @gregben 5 หลายเดือนก่อน +3

    Sorry, but this is a bad idea. Stability and phase noise will be very poor with this design.

    • @101Things-ds8tc
      @101Things-ds8tc  5 หลายเดือนก่อน +11

      Thanks, that raises a couple of interesting points.
      The phase noise performance is pretty rubbish, especially compared to a PLL such as an Si3253. This manifests itself as a spreading (rather than a sharp peak) when viewed on a spectrum scope. The effect is more significant at higher frequencies. This is a fundamental limitation of the design, the level of the pin can only be changed on a clock edge which leads to a jitter of +/- 8ns. In a "propper" transmitter, I would use the Si3253 (or similar), they are fairly inexpensive, perform well and could easily interface to a pi-pico. This project github.com/ArjanteMarvelde/uSDR-pico went this route.
      The stability is dependent on the oscillator. The pi-pico uses a 30PPM oscillator. This amounts to a error of about 30Hz at 1MHz or 900Hz at 30MHz. Although in practice the performance is much better than this, especially at room temperature. Although the stability isn't amazing, it is fairly typical of a crystal oscillator based design, although nowhere near as good as a TCXO which can achieve better than 0.1ppm. Unlike the phase noise, there are things we could do to improve the stability of the design, the pi-pico has inbuilt counters that make it possible to calibrate or discipline the oscillator using the 1PPS pulse from a GPS receiver. This project hackaday.io/project/193897-raspberry-pi-pico-based-wspr-beacon takes this approach.

    • @tamsanqasemela917
      @tamsanqasemela917 4 หลายเดือนก่อน

      Don't curse the darkness, just light the candle and let others improve the design. Atleast he tried👊🏿👊🏿👊🏿

    • @tamsanqasemela917
      @tamsanqasemela917 4 หลายเดือนก่อน

      Don't curse the darkness, just light the candle and let others improve the design. Atleast he tried👊🏿👊🏿👊🏿

    • @tamsanqasemela917
      @tamsanqasemela917 4 หลายเดือนก่อน

      Don't curse the darkness, just light the candle and let others improve the design. Atleast he tried👊🏿👊🏿👊🏿

    • @tamsanqasemela917
      @tamsanqasemela917 4 หลายเดือนก่อน

      Don't curse the darkness, just light the candle and let others improve the design. Atleast he tried👊🏿👊🏿👊🏿

  • @phillipneal8194
    @phillipneal8194 5 หลายเดือนก่อน +1

    Very nice. Thank you.