element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Moto Mods
  • Products
  • Manufacturers
  • Moto Mods
  • More
  • Cancel
Moto Mods
Forum FM Transmitter Mod
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Moto Mods to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 31 replies
  • Subscribers 58 subscribers
  • Views 3364 views
  • Users 0 members are here
  • rapsberry-pi
  • audio
  • fm radio
  • gpio
  • moto mod
  • raspberry pi io
  • pifm
  • moto mdk
  • moto mods
  • raspberrypi_pifm_pitx_pisoftware
Related

FM Transmitter Mod

krobar14
krobar14 over 7 years ago

Hello,

 

I am currently undertaking a project on my own. To develop a mod for my Moto Z Play.

 

Just to give you some background into this. I tried implementing the PiFM GPIO project with the band pass filter feature recently on a raspberry pi. I expreienced great success with this endeavor, and thought that I would be able to do something similar for my Moto Z Play. I currently have all of the development tools, and the hardware, but I am just doing research, having implemented the Blinky Project already.

 

I am currently reading through some of the Nuttx instructions, and purposes. The information given seems to show that the firmware contains the possibility for Audio signals being processed.

 

What advice would you have for an Engineering student getting into this. I would like to have some input at where I should go from the Blinky project. I want to have a mod that takes my phone's audio, and sends it out over different FM frequencies. Is this even possible?

 

Thanks!

David

  • Sign in to reply
  • Cancel

Top Replies

  • motomodsdev
    motomodsdev over 7 years ago +1
    Very possible, I recommend starting with the Audio Personality Card example. This uses i2s to transfer digital audio from the Moto Z, and plays out a tiny mono speaker. It should be extremely easy to rip…
  • motomodsdev
    motomodsdev over 7 years ago in reply to krobar14 +1
    The MDK does generate clock and PWM outputs, so it appears it would be feasible to use the MuC in the same manner that they used the Pi. In this case the audio would be an analog signal out of the TFA…
  • motomodsdev
    motomodsdev over 7 years ago in reply to krobar14 +1
    Sorry for missing this update, I guess the TFA9890 is mono audio only, which the reason for the i2s stereo decoder. Did you look to see if there was anything in the TFA family that might make your firmware…
Parents
  • krobar14
    krobar14 over 7 years ago

    Will do. Thanks for your help. I'll post updates on this thread.

     

    Would another possibility be, building a GPIO board that would connect to the mod, and send out audio, the same way I did on the raspberry pi?

    I'm more specifically referring to the PiFM Project on the raspberry pi.

     

    David

    Raspberry Pi Radio Transmitter: 4 Steps

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • motomodsdev
    motomodsdev over 7 years ago in reply to krobar14

    The MDK does generate clock and PWM outputs, so it appears it would be feasible to use the MuC in the same manner that they used the Pi.  In this case the audio would be an analog signal out of the TFA still, correct?  You would probably need to flywire a new circuit on the Perforated board, since the Audio card doesn't provide easy access to extra GPIO.

     

    If you run into issue configuring any MuC outputs, we're here to help.  As for how the user tunes the transmitter, than can be easily done with an Android app and pass the information to your Moto Mod using the Raw protocol.

     

    There's an interesting comment that this isn't really a good way to do FM since you "splash" out over other channels.  I thought your FM transmitter was a separate chip, controlled by i2c like the TFA is.  Pretty interesting just modulating a GPIO signal; not sure if that is easier or harder than a transmitter IC.

     

    Great documentation so far, really interesting to see this evolving!  But you confused me when you mentioned 2 knobs next to the speaker.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • motomodsdev
    motomodsdev over 7 years ago in reply to krobar14

    The MDK does generate clock and PWM outputs, so it appears it would be feasible to use the MuC in the same manner that they used the Pi.  In this case the audio would be an analog signal out of the TFA still, correct?  You would probably need to flywire a new circuit on the Perforated board, since the Audio card doesn't provide easy access to extra GPIO.

     

    If you run into issue configuring any MuC outputs, we're here to help.  As for how the user tunes the transmitter, than can be easily done with an Android app and pass the information to your Moto Mod using the Raw protocol.

     

    There's an interesting comment that this isn't really a good way to do FM since you "splash" out over other channels.  I thought your FM transmitter was a separate chip, controlled by i2c like the TFA is.  Pretty interesting just modulating a GPIO signal; not sure if that is easier or harder than a transmitter IC.

     

    Great documentation so far, really interesting to see this evolving!  But you confused me when you mentioned 2 knobs next to the speaker.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
Children
  • krobar14
    krobar14 over 7 years ago in reply to motomodsdev

    So sorry for the confusion. The knobs are actually pins that push inward on the spk_out plates. If you have a spare Audio Personality card at home, take off all the screws, and lift the lid. You'll notice that the speaker is attached to the lid, and there are two little pins that press down on the spark plugs. Those are the "Knobs" I was talking about. What I was think about doing was using a Audio Amplifier, and a FM Transmitter both from adafruit.

    I've posted links to both below. Does this look like something that would be feasible?

     

    image

    image

    image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • krobar14
    krobar14 over 7 years ago in reply to krobar14

    https://www.adafruit.com/product/1958

    https://www.adafruit.com/product/987

     

    The main components I will use on my perforated board.

     

    David

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • krobar14
    krobar14 over 7 years ago in reply to motomodsdev

    Quick question. About interfacing with the FM Component. Is there a Way to get right out and left out of the moto mod? How would I interface with something Like this? The AdaFruit cpp code is open sourced for the component though.

     

    image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • krobar14
    krobar14 over 7 years ago in reply to motomodsdev

    I would like to update you on my current approach. After finding the necessary components that can be used for interface, I want to be able to use the I2S signals to output the audio. I don't see this being too hard after a few weeks of playing around with the elements. Using the test points on the perforated board, I can wire up a stereo decoder from the I2S and I2C signals available from the MuC. These can provide Rout and Lout, which when passed to the FM Transmitter, can allow for successful transmission through the use of the I2C circuits that are available.

     

    [   MuC   ] ----> [   I2S Stereo Decoder.  ] ------> [   FM Transmitter.   ]

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • krobar14
    krobar14 over 7 years ago in reply to krobar14

    This is the specification for the decoder:

    https://learn.adafruit.com/adafruit-i2s-stereo-decoder-uda1334a

     

    This is the specification for the FM Transmitter:

    https://learn.adafruit.com/adafruit-si4713-fm-radio-transmitter-with-rds-rdbs-support

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • motomodsdev
    motomodsdev over 7 years ago in reply to krobar14

    Sorry for missing this update, I guess the TFA9890 is mono audio only, which the reason for the i2s stereo decoder.  Did you look to see if there was anything in the TFA family that might make your firmware development easier?  Otherwise, this device looks like it will work well you'll just need to port the driver over.

     

    No more trying to bit bang the FM output?  I definitely think you'll be happier using the si4713, looks like the project is coming together nicely!

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • krobar14
    krobar14 over 7 years ago in reply to motomodsdev

    I mean, why re-invent the wheel, right?

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • krobar14
    krobar14 over 7 years ago in reply to motomodsdev

    Could this be something more easily done with an ADA Fruit Playground express. If so, is there a resource on how to set this up maybe?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • motomodsdev
    motomodsdev over 7 years ago in reply to krobar14

    At that point are you doing much more than handling power from the MDK to the adafruit?  You'll end up with 2 development environments on two different processors, but at the moment cost isn't really a factor.  How do you plan on splitting responsibilities between the Playground and the MuC?

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • krobar14
    krobar14 over 7 years ago in reply to motomodsdev

    Actually it won't be necessary. The FM Xmitter and the Stereo decoder I think are the two main components in this equation. I need to figure out how to get the correct data outputs to the Stereo Decoder as well as the FM Xmitter. I know the I2S outputs from the MuC to the Stereo Decoder and the I2C outputs to the FM Xmitter. I need to check on How these are going to work. It's just a matter of studying NuttX backwards and front and figuring out how to write the software properly. I also need to figure out how to write a small Android app that can call functions specified in AdaFruit's interface for the two components.

     

    https://learn.adafruit.com/adafruit-i2s-stereo-decoder-uda1334a/arduino-wiring-test

    https://learn.adafruit.com/adafruit-si4713-fm-radio-transmitter-with-rds-rdbs-support/test-and-usage

     

    So maybe if you could give me a hint as to how to implement this. I have completed the Blinky app by the way. So I am not a NuttX virgin. I have implemented that project successfully.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube