paulopilot / er9x

Automatically exported from code.google.com/p/er9x
0 stars 0 forks source link

Add support for DSM2 (spektrum) TX boards #330

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What new feature/ability do you want?

Please add ability to communicate directly with DSM2 boards through a simple 
serial output

What is the expected output?

The output would be a short string of bytes on the UART that represent the PPM 
channel and position. The details of the protocol are here:
http://www.rcgroups.com/forums/showpost.php?p=7925933&postcount=8

What version of the product are you using?

I currently use just the plain vanilla version. Willing to use whatever version 
this fits best in.

Please provide any additional information below.

Current spektrum-compatible modules are expensive, and inefficient. They must 
read the ppm signals, encode it in a serial string, output to the RX and 
deconstruct to PPM. 

Bare-pcb tx modules can be removed from inexpensive TX's. These modules speak a 
simple serial protocol that could easily be output by the AVR on and available 
UART. These modules are small enough that they could be embedded into a 9X 
controller and be used for small heli's and such. It would provide support for 
most bind-and-fly RX's. Because it bypasses ppm altogether, it would be faster 
and more efficient than current spektrum modules.  

Original issue reported on code.google.com by nathan.b...@gmail.com on 9 Oct 2011 at 4:16

GoogleCodeExporter commented 8 years ago
It`s already implemented at Thus firmware http://code.google.com/p/th9x/
see last point of version th9x.bin head

Original comment by flyst...@gmx.de on 9 Oct 2011 at 6:22

GoogleCodeExporter commented 8 years ago
Very interesting. I'm already headed down the er9X road, but I may have to give 
th9x a look...is there a thread where the specifics of the implementation are 
discussed?  Thanks.

Original comment by nathan.b...@gmail.com on 9 Oct 2011 at 6:34

GoogleCodeExporter commented 8 years ago
The hardware implementation is very easy. You need a voltage converter down to 
3.3V for TX module supply and a simple 5mm LED in line with the serial signal 
to pulling down even to nearly 3.3V. And ground to ground, of corse.
To bind, just hold TRN switch in the up position while switching the radio on.  

Original comment by flyst...@gmx.de on 9 Oct 2011 at 7:00

GoogleCodeExporter commented 8 years ago
What pin is the data out for the radio (what's the best connection point)? 
Also, doesn't the LED only drop about 0.6V, to 4.2V? Is that OK? Thanks again.

Original comment by nathan.b...@gmail.com on 9 Oct 2011 at 7:12

GoogleCodeExporter commented 8 years ago
What pin is the data out for the radio (what's the best connection point)? 
Also, doesn't the LED only drop about 0.6V, to 4.2V? Is that OK? Thanks again.

Original comment by nathan.b...@gmail.com on 9 Oct 2011 at 7:12

GoogleCodeExporter commented 8 years ago
Pin 1 at the top of stock radio module slot. Follow this pin inside to choose 
best connection point.
No, LED drops more voltage than normal diode. Drop depends on color. 5mm RED 
fits best. 

Original comment by flyst...@gmx.de on 9 Oct 2011 at 7:40

GoogleCodeExporter commented 8 years ago
Cool. I'll give this a try as soon as I get my hands on a cheap DSM2 TX. I want 
to buy a small heli that only works with DSM2, and I'd like to be able to use 
the 9x. My plan is to embed the dsm2 module in the case of the TX instead of 
using an external module. I'll probably put in an extra switch to turn the dsm2 
on and off. Do you seen any potential problems with this? (I don't intend to 
use it for any long-range applications). Thanks again for your help.

Original comment by nathan.b...@gmail.com on 9 Oct 2011 at 7:49

GoogleCodeExporter commented 8 years ago
So, does this mean that the er9x firmware does not yet have the DSM2 support? 
Only the th9x firmware currently have the support? Anyone tested it out yet and 
reported the result? I am interested. Thanks.

Original comment by daryoon...@gmail.com on 2 Nov 2011 at 4:23

GoogleCodeExporter commented 8 years ago
I've a 6ch (long range)and a 4ch dsm2 module (short range) I am currently 
working on installing in the 9x, I though er9x had dsm2 support, I know th9x 
does... weird. Ah well, I'm keeping an eye on what develops. I was looking at 
how the Frysky diy module connects to the 9x, I'm thinking it's similar. I've 
two 3.3v becs on the way for the modules power requirement. I thought they were 
6v , but after a lot of digging, turns out 3.3v is what they need... we shall 
see. Cheers.

Original comment by cr8tive...@gmail.com on 3 Nov 2011 at 12:56

GoogleCodeExporter commented 8 years ago
Ya, I haven't seen any indication that it is supported. If I need it I'll have 
to eventually switch to the TH9X firmware.

Original comment by nathan.b...@gmail.com on 3 Nov 2011 at 4:05

GoogleCodeExporter commented 8 years ago
First up thanks!

I was slow to understand but yeah, this looks cool.  I'll see if we can copy 
thus' stuff to er9x.

Original comment by erezra...@gmail.com on 3 Nov 2011 at 4:17

GoogleCodeExporter commented 8 years ago
Check out r590
I've ported Thus' code.  Lets see if it works!

Original comment by erezra...@gmail.com on 3 Nov 2011 at 5:22

GoogleCodeExporter commented 8 years ago
So sweet. Thanks for the erezra. Now I can't wait for my programmer to arrive. 
Ordered it a week ago. I will report back whether of not I am successful.

Original comment by daryoon...@gmail.com on 3 Nov 2011 at 9:25

GoogleCodeExporter commented 8 years ago
Great,

Let me know how it works out.  I don't have a DSM2 system so I can't tell.

Original comment by erezra...@gmail.com on 3 Nov 2011 at 9:51

GoogleCodeExporter commented 8 years ago
Got my programmer in. Got the firmware flashed without any problem. However, I 
am not sure how to hook up the DSM2 module. Anybody know how to rig up the DSM2 
to the Turnigy?

Also, I turn on the DSM2 protocol and it seems to put the TX into a constant 
state of rebooting. I'll have to take a look at this more closely. Got the th9x 
on right now just to make sure the DSM2 protocol works before flashing back to 
the er9x.

Original comment by dazex...@gmail.com on 5 Nov 2011 at 12:52

GoogleCodeExporter commented 8 years ago
Got it working. Bounded to mSR without any problem and was able to control it. 
:) Just need some confirmation from the RCGroups whether the way I wired it up 
is correct. 
http://www.rcgroups.com/forums/showpost.php?p=19793522&postcount=12616

Original comment by dazex...@gmail.com on 5 Nov 2011 at 5:09

GoogleCodeExporter commented 8 years ago
Learn that the Turnigy 9x has 3.3v rails on the mainboard. Made a post with 
photo. Should be even easier to get the DSM2 module wired up now. 
http://www.hacksmods.com/2011/11/turnigy-9x-3-3v-location/

Original comment by daryoon...@gmail.com on 8 Nov 2011 at 8:17

GoogleCodeExporter commented 8 years ago
Setting to DSM2 protocol causes the er9x to go into a reboot loop. I have seen 
others mention this too on RCgroups. The th9x works fine with DSM2. Anyways you 
can find the missing code or figure out why it causes the er9x to reboot?

Original comment by dazex...@gmail.com on 10 Nov 2011 at 7:13

GoogleCodeExporter commented 8 years ago
Dazex, how did you get it working? (16)My tx re-boots like yours does now (18)

Original comment by g6...@talktalk.net on 16 Nov 2011 at 1:05

GoogleCodeExporter commented 8 years ago
I used th9x firmware to get it working.
er9x will keep you in a perpetual state of reboot. If you have multiple model 
memories set up. Simply boot up with a different model memory by holding one of 
the buttons to get out of the boot loop. Read the er9x manual if you don't know 
what I'm talking about.

Original comment by dazex...@gmail.com on 16 Nov 2011 at 3:02

GoogleCodeExporter commented 8 years ago
Can't find any reference to this in er9x manual, most likely me!
Anyway your method works.
I just assumed you had er9x DSM working as your post was on here.
Would be nice to get it going without going back to th9x

Original comment by g6...@talktalk.net on 16 Nov 2011 at 11:56

GoogleCodeExporter commented 8 years ago
It won't be in the manual yet. Especially since it's not fully working. The 
reason I posted on the er9x wiki is because I was using the er9x and tested the 
DMS2 implementation as soon erezaviz added it to his firmware. Then giving 
feedback that enabling the DMS2 protocol reboots the Turnigy 9x while the 
successfully tested that the th9x implementation is working fine. Sorry for the 
confusion. If you read my post in order, it should have mitigated the 
confusion. The good news is, we know the DMS2 protocol does work with the DSM2 
module from the MLP4DSM, LP5DSM, Dx4e and Dx5e. The latter two are full range. 
Lastly, I would post on th9x wiki as well...but it seems like they are mainly 
Finnish speakers following that firmware. Hard to participate when you can't 
speak the language. Hope this clears things up some. :)

Original comment by dazex...@gmail.com on 17 Nov 2011 at 12:30

GoogleCodeExporter commented 8 years ago
No worries!
Any info on using dx5e module appreciated, I have one here going spare.
I really would like to get it working sometime.
Best regards,
Clive

Original comment by g6...@talktalk.net on 17 Nov 2011 at 1:08

GoogleCodeExporter commented 8 years ago
Same here, I would love to have DSM working with ER-9x but would settle using 
TH9x while waiting for a solution.(I have +20 DSM receivers in use...)

If only I could find some info on how to connect a dx5e (or lpd5dsm) module.
I find it a bit strange that this "issue" gets so little attention or am I 
wrong thinking this would add a hole bunch of ER-9x users?

Don't want to sound impatient, I'm really gratefull for this (and other) 
firmware that provides us with so many features.

Keep up the good work!!

Pascal

Original comment by pascal.t...@gmail.com on 19 Nov 2011 at 12:48

GoogleCodeExporter commented 8 years ago
I agree. I am surprise this issue has so little attention. I think it's one of 
the biggest development...being able to use DSM2 in the Turnigy 9x. Anyways, 
the Dx5e is a full range system. Uses the AMTX11 board. Positive, Negative and 
PPM Signal pinout is already available here: 
http://www.rcgroups.com/forums/showpost.php?p=18802050&postcount=258

Good luck and report back. Thanks.

Original comment by dazex...@gmail.com on 19 Nov 2011 at 1:13

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Probably the wrong board to post this, but my "full range" DX5E has X1TXN C1
module, label says 12.17dbm (16.2mW) I thought we allowed 100mW in UK?
I don't understand 2.4gHz specs!
Good fun anyway!

Original comment by g6...@talktalk.net on 19 Nov 2011 at 1:53

GoogleCodeExporter commented 8 years ago
Does the module look the same as the AMTX11 as pictured in the link above?

Original comment by dazex...@gmail.com on 19 Nov 2011 at 3:53

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Hi,

For the moment i manage to fly with my Dx4e Tx (that is in fact an DX5e Tx)
I use Th9x until ER9x is fully working.
I had a range issue, the result, put the tx in the t9x module (not in the 
radio), for the moment with the antenna ontside of the radio seem's to work 
good.

I follow the tx pinout:
http://www.rcgroups.com/forums/showpost.php?p=18802050&postcount=258

and this t9x pinout:

° Tx
°
° vcc (replace by +3.3v)
° Gnd
°

I replace vcc by +3.3V from here:
http://www.hacksmods.com/2011/11/turnigy-9x-3-3v-location/

Original comment by pierrero...@yahoo.fr on 19 Nov 2011 at 11:50

GoogleCodeExporter commented 8 years ago
Good job and thanks for the feedback on the range issue. Depending on where you 
put the DSM2 module internally, the rear circuit board can act as an RF shield. 
Therefore reducing range greatly. It's best to get the antenna outside of the 
TX. Either through the top antenna mount. Or, as you did...put it in the rear 
module.

There was a user that purchase an antenna board designed to be mounted inside. 
He put it at the top of the T9x. However, I can't seem to find that post.

Original comment by dazex...@gmail.com on 19 Nov 2011 at 5:08

GoogleCodeExporter commented 8 years ago
I made a good test, fly mcpx until i'm not able to see the heli.
I came back without problem, but i crashed because of the sun and distroyed my 
swashplate. So I'll have to wait few days before an other range test.
But I'm quite confident.

Original comment by pierrero...@yahoo.fr on 19 Nov 2011 at 8:32

GoogleCodeExporter commented 8 years ago
Very good. Over on the forum, Mike Blandford committed some code that hopes to 
fix the DSM2 reboot problem. Let's hope so. We'll see as soon as Erazz builds 
it.

http://www.rcgroups.com/forums/showpost.php?p=19917779&postcount=13385

Original comment by dazex...@gmail.com on 19 Nov 2011 at 8:55

GoogleCodeExporter commented 8 years ago
Great news indeed!
The flea-power X1TXN module in my DX5E looks similar to the AMTX11,
except that the antenna socket is the other side.
Pinout seems the same

Original comment by g6...@talktalk.net on 19 Nov 2011 at 9:43

GoogleCodeExporter commented 8 years ago
Erazz built the source that Mike Blandford committed. Build r627 is up. I 
flashed it and setting the protocol to DSM2 no longer reboots the TX. Yay!

I am now reinstalling the DSM2 module from the MLP4DSM to confirm everything is 
working. You guys do the same. Thanks.

Original comment by dazex...@gmail.com on 20 Nov 2011 at 12:57

GoogleCodeExporter commented 8 years ago
I just read the news on rcgroups but as it's 2.00 in the morning here I'm going 
to bed.

@Dazex.. please post your findings.
I'm (almost) desperate to get this working.

I'm really hoping to find some good news here when I wake up... that would make 
my day!!

Greetz

Pascal

Original comment by pascal.t...@gmail.com on 20 Nov 2011 at 1:21

GoogleCodeExporter commented 8 years ago
It's not working with my DX4e.
I install back th9x, set dsm2 and ch6 max 100% ineg with TRN Switch
When I try to bind OrangeRx 6ch (bind plug + start the radio with Trn switch 
on), it works.

I install again ER9X, set switch alarm off, beep on nokey and CH6 Full with TRN 
switch
Nothing apends (it's the same with my MCPX)
There is a signal on the TX pin (just mesure with multimeter) 

Original comment by pierrero...@yahoo.fr on 20 Nov 2011 at 10:34

GoogleCodeExporter commented 8 years ago
Anybody ry with the new zip Mike posted and see if things are working. I am out 
and about right now so i can't try. Check the forum. 

Original comment by dazex...@gmail.com on 20 Nov 2011 at 6:03

GoogleCodeExporter commented 8 years ago
New ZIP from Mike Blandford fixed the issue. I can control my mSR from er9x.
http://www.rcgroups.com/forums/showpost.php?p=19927359&postcount=13451

Original comment by dazex...@gmail.com on 21 Nov 2011 at 8:52

GoogleCodeExporter commented 8 years ago
it works great with Dx4e/DX5e TX

Original comment by pierrero...@yahoo.fr on 21 Nov 2011 at 8:04

GoogleCodeExporter commented 8 years ago
The latest build, r635 has Mike's changes. Hope you guys get yours working. I 
need to get a hold of the full range modules from the Dx4e/Dx5e. For now, the 
module from the MLP4DSM is working great.

Original comment by dazex...@gmail.com on 22 Nov 2011 at 4:50

GoogleCodeExporter commented 8 years ago
Hi Dazex,
I have the same module as you from my LPD5DSM.
The pinout on the module is clear to me but where can I find the PPM connection 
on my TX?
Could you post a little howto? or maybe even some pics?
I'm really a noob when it comes to electronics and I'm a little affraid to 
completely mess up my TX.
Thanks in advance.

Original comment by pascal.t...@gmail.com on 22 Nov 2011 at 9:08

GoogleCodeExporter commented 8 years ago
You could just follow the pin from the back module which is the top one from 
the 5, there's where I solder mine

Original comment by carlos...@gmail.com on 22 Nov 2011 at 9:41

GoogleCodeExporter commented 8 years ago
BTW I would like to report my success too, I have an AMTX11 from a DX5e, I was 
able to bind my mCPx with the latest er9x successfully. 

After playing around with the channel configuration I was able to make it work 
as it should (AIL, ELE, PITCH, etc) without flying it (no throttle), but when I 
start the throttle the swash plate bends forward as if I was moving the 
elevator up and everything behaves completely different with throttle on. I'm 
pretty sure it's got to do with the gyro and my configuration.

But anyway thanks so much for the efforts and making this possible guys!

Original comment by carlos...@gmail.com on 22 Nov 2011 at 9:55

GoogleCodeExporter commented 8 years ago
Hey Carlos,

Thanks for your reply and congrats with your succes.
I have a DX5e also and I would prefer to use that module (long range) but I 
have no idea how to remove it from the TX because it seems that about 8 pins 
are soldered to the main board.
How did you do that?

Greetz

Original comment by pascal.t...@gmail.com on 22 Nov 2011 at 10:15

GoogleCodeExporter commented 8 years ago
Pascal: Definitely follow the hacksmods.com blog. There's where I share photos 
and where I intend to put a how-to in the future. Once I test that everything 
is working perfectly. The PPM is the top most pin.

Carlos: On the mSR, the Gyro is ch5. And I can set it to high rate by setting 
the channel to MAX. Before doing this, the heli was in a low rate mode...so it 
wasn't as zippy. So I am sure it's a configuration somewhere. Also, make sure 
to program a throttle cut into yours. There is already a template set up for 
that. However, you need to set up the channel order first before apply it. Or 
you can simply create a new model. Apply the throttle cut template. And go look 
at the mix screen to see how it's done.

For removing the module, the easiest way is to simply cut the pins. Otherwise, 
put more solder on to the pin and across them all. This allows you to heat up 
the solder on all the pins at once so you can pull the board off. Definitely do 
all this as quickly as possible to prevent overheating and damaging any SMD 
components.

Good luck guys.

Original comment by dazex...@gmail.com on 22 Nov 2011 at 10:25

GoogleCodeExporter commented 8 years ago
Thank you for the response, I will look into it. In regards of taking off the 
AMTX11 from the DX5e, I actually did it the hard way with desoldering coil and 
it came out quite nicely. 

Original comment by carlos...@gmail.com on 22 Nov 2011 at 11:04

GoogleCodeExporter commented 8 years ago
Just wondering is there any chance of this working with a X1TXN C1, AMTX10 from 
a DX6i. I recently got a 9x and put a Frysky system in and I am slowly 
replacing all my DMS2, I have a few BNF models though that use DSM2 and I would 
like to only need 1 TX when I'm at the field. I've considered getting a DMS2 JR 
Module but if I can use the one from my DX6i it would save me a bit of money.

Original comment by Kiyo_O...@hotmail.com on 23 Nov 2011 at 2:02

GoogleCodeExporter commented 8 years ago
Get the Jr. Module. I have the same x1txn, it has 4 leads that need to be 
attached. I have had a rx bind, but not fully, the 9x keeps resetting (the 
fourth wire needs to be attached, somewhere.. but, I don't anything to trace 
the lines with) Unless someone else has some insight, then it would be worth 
doing, otherwise, jsut get the Jr. spektrum module.

 Pins 1,2,6 and 7 are used.

1 GND Module Ground
2 VDD Module power input
3 IRQ Interrupt Request
4 RST Reset, active High
5 MOSI Master out, slave In data
6 nSS Slave Select, Active Low
7 SCLK SPI data clock
8 MISO Master in, slave out data
9 GND Module Ground
10 XOUT Clock output from module
11 TXRX Switch antenna to transmit direction
12 RXTX Switch antenna to receive direction

Original comment by cr8tive...@gmail.com on 23 Nov 2011 at 2:31

GoogleCodeExporter commented 8 years ago
Ok seeing how the DX6i has issues has any one tried the module from the DX5e 
(SPMR5510) with DSMX technology and do they work. Seems no one has the DSM2 JR 
modules in stock and at $60 for the DX5e (SPMR5510) that seems to be the better 
value especially if I get DSMX support with it.

Original comment by Kiyo_O...@hotmail.com on 23 Nov 2011 at 3:56