• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Help with naze32/cleanflight/serial receiver combo...

Help! I'm using cleanflight with my naze32 acro on a V2 Versacopter and cannot get cleanflight to recognize my Spektrum serial receiver (DSMX quad race type). I have read all the blogs including CLI commands and feel like I have exhausted those techniques. Any ideas? I've got port 2 set to serial, I've got the receiver type set to serial and Spektrum 2048, and I've paired the receiver to my transmitter (DX9). When I go to the receiver tab to check I get no response. I've set up PPMs before so I'm somewhat familiar with cleanflight, just not this serial receiver mumbo-jumbo! I'd really like to utilize some of the pins for other things though, so serial is a must. 😡


Hostage Taker of Quads
Staff member

First off welcome to the forum.

The process is a bit convoluted for Spektrum sats, and looks like you've hit most of it, but hang tight and we can work through it so we don't miss any steps . . .

1. wiring:

you'll need to connect the Spektrum sat to 3v power (not the same rail as the ESCs or RX), ground (any will do) and the UART2 receive port (pin 4 on the RX pins).

** If you ever plug in the satellite to 5v, and power it up, do not be surprised if it is dead :( **

2. setup

On the ports tab, pick the port you're wired to (usually the second UART -- the first is "reserved" for the USB, so *DON'T* touch it), and select serial RX and click save.

3. Config

On the config tab, pick serial_RX from the RX , and Spektrum_2048 under the serial RX provider and click save.

you may need to swap to 1024 later if the signals come in garbled, but setting this should get you going right away.

4. Bind:

open CLI and type:

set spektrum_sat_bind=9
This should setup the sat into a DSMX 2048bit/11ms frame format for binding -- if it's a true DSMX RX and DX9, this should work and will give you the best response. The save will reboot but *WILL NOT* kick off the bind mode.

unplug the board from USB to power down COMPLETELY.

Plug in the battery to power the Naze and satellite. The satellite should now be blinking fast. Power the DX9 with the bind button pressed and you should see the pair bind -- don't release the bind button until the DX9 reports the new bind and the blinking slows on the sat.

5. confirm

Plug in the USB and confirm. you should now see the rx tab come to life. you might still need to set the TAER channel order if the sticks come out the wrong channel or switch between 2048 and 1026 on the config tab if the signals come out weird. Otherwise you should be good to go :)

If that didn't work, take a step back and look to see where it might have come off the rails. I've used this procedure MANY times flawlessly, and if we're doing the same thing somewhat different, we'll need more details to help you find what that difference is.
Thanks for the quick reply! The receiver I am using is the SPM4648 (http://www.spektrumrc.com/Products/Default.aspx?ProdID=SPM4648). It is not a satellite receiver, it is a true stand alone serial receiver with auto-bind. I am powering it off of the Spektrum satellite pins on the naze rev6. It's a small 3 pin out with 3.3V and UART2 in one convenient spot. I have followed the above, except I've never had to use the CLI input to bind the receiver. It enters auto bind on power up if it does not find an already bound transmitter. This may be where it is acting differently. Either way, I have the UART2 configured and the receiver set as you mention. I get power to the receiver, it is bound, but nothing on the receiver tab for any channels. Hmmmm...


Hostage Taker of Quads
Staff member
now that clears up a few things . . .

wiring is right, ports are right, you're binding it correctly (it's not a sat, after all), but the config . . . almost there.

The missing piece is this is an SRXL receiver:



On config, keep the Serial_RX checked, but select the serial provider as "XBUS_Mode_B". Save and give that a go.


Hostage Taker of Quads
Staff member
Yup, and "supported" by cleanflight too, but again, it doesn't work. Perhaps it has to be awakened by the master RX, but clearly the Naze Sat mode isn't working.

Let's see what the OP says about the XBUS mode before declaring it should work after he's told us it doesn't.


Posted a thousand or more times
don't see any harm in declaring it is supposed to work if it's supposed to work... it's just information. Fair enough to try SRXL but it's more likely there is something wrong with the OPs setup.
So I tried it with XBUS mode B as well as the RJ01 version. Neither worked. Tried re-binding, disconnect and wait, etc. I can't get any movement in the receiver tab at all.


Hostage Taker of Quads
Staff member
Ok, so we're getting near the end of what we can do . . .

to recap:

- you've plugged into the dedicated Sat connection
- you've been able to bind to your radio (sat blinked while in auto-bind, but after that you get a solid light on the RX if you power the DX9 first)
- you've set the UART2 to satellite RX
- you've selected the RX_Sat and tried various providers

. . . and still no response.

Getting the solid connection light at all on the RX tells us it's getting power, and that it's probably operating . . . probably (most of the quibbling here is around this RX being an unknown quantity -- Spektrum says it will do X, but will it really? Is the disconnect in the setup, a bug in how the RX works or defect in your RX?).

Some boards have had problems with mis-routing the satellite signal line (namely the flip32 board), so one last thing that could be tried is routing the signal wire directly to the RX pin #4.

. . . otherwise . . .

If rerouting directly to pin 4 doesn't work, I say it's time for Spektrum to put it's support to the test.

They claim it "works" with naze32 boards, but their documentation is vague in this respect -- they tell you how to auto-bind in one doc, and tell you the serial format (not the actual connections or RX modes, mind you) and not much else. I think you've gone far enough that they should step in and either declare the defect in your hardware or prove it works. Their support is among the best in this hobby, so I don't think you'll waste your time getting them to help.

If you do contact them, let us know what you find out. This is relatively new gear, and checking back in will helps others over this pitfall (or help others avoid less-than-ideal gear, if that's the case).


Posted a thousand or more times
I agree with Crafty. Ask Horizon. It is very new... the Spektrum page say "Due Early September, 2016" so officially you don't even have it yet :)

Looking at the Horizon Hobby page

there are a few reviews that say they got it working but don't state specifically what with. And there is a question from rawden23 with the same problem you have...Binds but doesn't work.

Posted on Horizon Hobby website and quoted here 7/22/2016...

"I've got 2 of these and neither will talk to the Naze32? They Bind to the Transmitter but I can't see the receiver in Cleanflight. No response to manipulating the controls in the program. I can get my AR7700 to Talk to the Control board using PPM, I'm using the Spektrum port and a remote cable to link the 4648 and the Naze? Is there a different setting other than serial to enable them to talk?, because the Naze won't accept that as a valid input? Thanks For any Help...
4 days ago

Also there is this thread on RCGroups with a few who seem to have it working. Might be worth asking there since there are people who have actually used one.

Andy Kunz the Spektrum guy says it's wired just like a Spec Sat requiring 3.3v and you can even use it as one although that is not recommended due to the auto binding feature. Auto binding, the addition of SXRL and +$10 are really the only things that distinguish it from a regular satellite... in theory anyway.
Last edited:
Is there any update on this issue? I bumped into the same problem with my SPM4649T receiver.
The issue isn't with the receiver (at least it wasn't for me). I was trying to use the SPEKTRUM satellite port on my NAZE32rev6 and it wasn't talking to the receiver. After I re-wired via the UART 2 RX pin (pin 4) and the 3.3V pins, mine worked fine. Hope this is your problem as well...


New member
Thanks for the answer, I'm gonna check on that today. I was connecting the receiver to the wrong pins. There's so little info about the combination of 4649t and naze32 rev6 that I highly appreciate your answer.


New member
The issue isn't with the receiver (at least it wasn't for me). I was trying to use the SPEKTRUM satellite port on my NAZE32rev6 and it wasn't talking to the receiver. After I re-wired via the UART 2 RX pin (pin 4) and the 3.3V pins, mine worked fine. Hope this is your problem as well...
It doesn't work like this ; ( The receiver is only able to bind with the transmitter when I plug it into pins GND + 5V + CPPM In

But the fact that it let's itself bind doesn't mean it gives any response in clean flight in the receiver tab....

I'm clueless :S


New member
Ok so I decided to make a photo of how I connected the receiver to the naze32 rev6 full. Maybe you can help me figure out what the heck I'm doing wrong.


from another angle


I am so stocked about getting this little quad ready, but I can't figure out that one, seemingly simple step, to go out and do the first flight : /


Winter is coming
I'm not familiar with that RX but the documentation on it seems to indicate it only supports the Spektrum Serial SRXL protocol, which is NOT ppm, so connecting it to the PPM (pin 1) won't allow your RX to communicate.

I believe someone pointed out above that you need to connect the serial output to pin 4... not sure why that poster used 3.3V, but the RX seems to support 3.3V-7V so the 5V output should work.


New member
And so I did. But when I connect the receiver to pin 4,5,6 it doesn't even turn on.

In fact, the receiver only turn on when connected to pin1. No other configuration works.

So would it actually make sense to take the jst connector apart and connect negative to pin1, positive pin2 and signal to pin4?

Everything works fine now. Thanks to @ElectriSean, who helped me with this problem in another thread ; )
Last edited: