Developing a universal module

More
12 Jul 2014 18:28 #24544 by SeByDocKy
Replied by SeByDocKy on topic Developing a universal module

phantom8 wrote: I've installed the multi-module with A7105, NRF24L01 & CC2500. A7105 & CC2500 works fine. However, I'm having problem with NRF24L01. It's rather strange, the V202 protocol doesn't seem to work, but KN protocol works perfectly. Both V202 & KN use NRF24L01. I don't understand why V202 doesn't work. When I tried to Bind under V202, it counted down from 3 seconds to 0 and stayed at 0. That is, the bind screen never exited. I remembered it would exit the Binding screen when not using the Multi-module. Any hints?

[EDIT]
BTW, I'm using the latest nightly build. Can this be a software bug?


Sometimes, I have to turn on/off 2 or 3 times the devo to manage to bind

Please Log in or Create an account to join the conversation.

More
12 Jul 2014 18:39 #24545 by phantom8
Replied by phantom8 on topic Developing a universal module

SeByDocKy wrote:

phantom8 wrote: I've installed the multi-module with A7105, NRF24L01 & CC2500. A7105 & CC2500 works fine. However, I'm having problem with NRF24L01. It's rather strange, the V202 protocol doesn't seem to work, but KN protocol works perfectly. Both V202 & KN use NRF24L01. I don't understand why V202 doesn't work. When I tried to Bind under V202, it counted down from 3 seconds to 0 and stayed at 0. That is, the bind screen never exited. I remembered it would exit the Binding screen when not using the Multi-module. Any hints?

[EDIT]
BTW, I'm using the latest nightly build. Can this be a software bug?


Sometimes, I have to turn on/off 2 or 3 times the devo to manage to bind


I've turned off & on more than 20 times and still couldn't get V202 protocol to work. When you bind with V202, does the countdown screen exit by itself? Or stays at 0 second until you manually exit the screen?

Please Log in or Create an account to join the conversation.

More
12 Jul 2014 19:15 #24546 by SeByDocKy
Replied by SeByDocKy on topic Developing a universal module

phantom8 wrote:

SeByDocKy wrote:

phantom8 wrote: I've installed the multi-module with A7105, NRF24L01 & CC2500. A7105 & CC2500 works fine. However, I'm having problem with NRF24L01. It's rather strange, the V202 protocol doesn't seem to work, but KN protocol works perfectly. Both V202 & KN use NRF24L01. I don't understand why V202 doesn't work. When I tried to Bind under V202, it counted down from 3 seconds to 0 and stayed at 0. That is, the bind screen never exited. I remembered it would exit the Binding screen when not using the Multi-module. Any hints?

[EDIT]
BTW, I'm using the latest nightly build. Can this be a software bug?


Sometimes, I have to turn on/off 2 or 3 times the devo to manage to bind


I've turned off & on more than 20 times and still couldn't get V202 protocol to work. When you bind with V202, does the countdown screen exit by itself? Or stays at 0 second until you manually exit the screen?



No it's automatically exiting ....

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 01:23 - 13 Jul 2014 01:45 #24552 by phantom8
Replied by phantom8 on topic Developing a universal module
I've done some more testing. Removed the NRF24L01 from multi-module and connected it to Devo 7e directly and it worked perfectly with V202 protocol. Putting it back to multi-module and V202 didn't work. The thing that puzzles me is why KN protocol works; while V202 doesn't. They both use the NRF24L01 module. I have triple checked all my connections for short and cold solder; and there doesn't seem to be anything wrong with the connections.

[EDIT]
More testings:

Case 1:
In the hardware.ini file, if I only enable multi-module with NRF24L01 (A7105 & CC2500 disabled), Devo 7e will boot up with a message saying "Missing Modules: CYRF6936".

Case 2:
In the hardware.ini file, only enable MM with A7105, Devo 7e will also boot up with "Missing Modules: CYRF6936".

Case 3:
In the hardware.ini file, only enable MM with CC2500, Devo 7e boots up normally.
Last edit: 13 Jul 2014 01:45 by phantom8.

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 03:55 #24554 by phantom8
Replied by phantom8 on topic Developing a universal module
Tested with another protocol YD717 SkyWalker which also requires NRF24L01 module. This one works, but it will only work when cold starting Devo 7e with YD717 already selected. If I switched to YD717 from other protocol, it would not work until I power cycle the Devo 7e. Same behaviour as KN protocol for V977. It also wouldn't work if I switch to KN from other protocol. I need to power cycle Devo 7e to get it to work. However, V202 still didn't work even I power cycle the Devo.

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 04:09 - 13 Jul 2014 04:10 #24555 by JustenCase
Replied by JustenCase on topic Developing a universal module
I'm having problems with all 3 of the MultiMods I made. All 3 flashed properly using my Devo-10, but I can't get any of the modules to work, and have also experience case #1 that Phantom mentioned above. I am compiling my various test scenarios and will post them hoping someone can lend a had in figuring out where I went wrong. I have 3 of each TX chip too, so there will be a lot of testing (27 different combinations).
Last edit: 13 Jul 2014 04:10 by JustenCase. Reason: spelling error

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 06:19 #24556 by phantom8
Replied by phantom8 on topic Developing a universal module
@JustenCase, if none of your module works, it's quite likely that you may have connection issues between the MM and Devo. Use a multimeter to check each connection point.

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 06:36 #24557 by SeByDocKy
Replied by SeByDocKy on topic Developing a universal module

phantom8 wrote: I've done some more testing. Removed the NRF24L01 from multi-module and connected it to Devo 7e directly and it worked perfectly with V202 protocol. Putting it back to multi-module and V202 didn't work. The thing that puzzles me is why KN protocol works; while V202 doesn't. They both use the NRF24L01 module. I have triple checked all my connections for short and cold solder; and there doesn't seem to be anything wrong with the connections.

[EDIT]
More testings:

Case 1:
In the hardware.ini file, if I only enable multi-module with NRF24L01 (A7105 & CC2500 disabled), Devo 7e will boot up with a message saying "Missing Modules: CYRF6936".

Case 2:
In the hardware.ini file, only enable MM with A7105, Devo 7e will also boot up with "Missing Modules: CYRF6936".

Case 3:
In the hardware.ini file, only enable MM with CC2500, Devo 7e boots up normally.



As you can see in my tutorial video, I don't have such msg when I am enabling only 1 chip..... Strange....

Do you have the 1.2/1.3/1.4 version ? How did you flash the ATTiny ? which version you have ?

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 07:16 #24558 by phantom8
Replied by phantom8 on topic Developing a universal module

SeByDocKy wrote: As you can see in my tutorial video, I don't have such msg when I am enabling only 1 chip..... Strange....

Do you have the 1.2/1.3/1.4 version ? How did you flash the ATTiny ? which version you have ?


When I had installed the first module A7105 into the MM (NRF24L01 & CC2500 are not installed at the time), I tested it with Devo 7e and it worked and there were no missing CYRF6936 message. I only had that message when I installed all 3 modules, but only enable A7105 or NRF24L01 alone.

I've the v1.3 MM ordered from oshpark. I only have a Devo 7e, so I flashed my ATTYINY24A-PU with Usbasp. The AVR.hex was downloaded from the download section of this forum which labelled Rev3. The flashing instructions was obtained from wiki as follows.
avrdude -p t24 -c usbasp -e -U flash:w:avr.hex
avrdude -p t24 -c usbasp -U lfuse:w:0xe2:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m

I'm out of ideas.

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 07:43 #24559 by SeByDocKy
Replied by SeByDocKy on topic Developing a universal module

phantom8 wrote:

SeByDocKy wrote: As you can see in my tutorial video, I don't have such msg when I am enabling only 1 chip..... Strange....

Do you have the 1.2/1.3/1.4 version ? How did you flash the ATTiny ? which version you have ?


When I had installed the first module A7105 into the MM (NRF24L01 & CC2500 are not installed at the time), I tested it with Devo 7e and it worked and there were no missing CYRF6936 message. I only had that message when I installed all 3 modules, but only enable A7105 or NRF24L01 alone.

I've the v1.3 MM ordered from oshpark. I only have a Devo 7e, so I flashed my ATTYINY24A-PU with Usbasp. The AVR.hex was downloaded from the download section of this forum which labelled Rev3. The flashing instructions was obtained from wiki as follows.
avrdude -p t24 -c usbasp -e -U flash:w:avr.hex
avrdude -p t24 -c usbasp -U lfuse:w:0xe2:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m

I'm out of ideas.



Maybe because you are using a Devo7E ?. Which modele of nRF24L01, A7105 and CC2500 did you install ?

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 15:15 #24561 by phantom8
Replied by phantom8 on topic Developing a universal module

SeByDocKy wrote: Maybe because you are using a Devo7E ?. Which modele of nRF24L01, A7105 and CC2500 did you install ?


Am I the first one who installed all 3 modules into the Devo 7e? I thought PB and some others have done it before. As for the particular model of the modules, I believe I picked the most popular ones. Here is the photo of the ones that I'm using.


Attachments:

Please Log in or Create an account to join the conversation.

More
13 Jul 2014 18:24 - 13 Jul 2014 18:25 #24563 by phantom8
Replied by phantom8 on topic Developing a universal module
I think I found the problem for the non-working V202 protocol. When I goto Bind mode, the CE (Chip Enable) pin of the NRF24L01 will be set to active low (0V). It should be active high (3.3V) for the chip to work. Can this be a bug in AVR or Deviation firmware in controlling the CE line of NRF24L01 module?

Below are the various test cases regarding the CE pin of NRF24L01 module:

Case 1:
When switching protocol to KN from something else, the NRF24L01 CE pin will be set to active low. That would explain why it didn't work after switching protocol. A power cycle will bring the CE pin to active high and KN protocol works after reboot.

Case 2:
Same test result as case 1 for YD717 protocol.

Case 3:
For V202 protocol, the bind action will always set the CE pin to active low; which means you can never bind your model.

Case 4:
Cold start (power on) with V202 protocol, the CE pin will always be set to active low.

Case 5:
Cold start (power on) with KN or YD717 protocols, the CE pin will always be set to active high. That's why these protocols work after power cycling.
Last edit: 13 Jul 2014 18:25 by phantom8.

Please Log in or Create an account to join the conversation.

More
14 Jul 2014 08:53 - 14 Jul 2014 08:56 #24566 by blackmoon
Replied by blackmoon on topic Developing a universal module
Nice find Phantom, if I remember correctly, I have had exactly the same behavior with my 7E, the strange thing is that when the modules are soldered directly as before the MM, i.e. only two additional modules but with the nightlies connections, all protocol work as expected.

It seems the 7E is a mystery, I didn't had time to solder a MM to my devo 10 but Sebydocky experience show it works without issues.

Maybe you're into something there that will help PB narrow the issues we are seeing.

I am using my devo7E with only two additional modules and a nightly build that works with all the protocols I need (devo, dsm2, hisky, v2x2, skyartec.)
Last edit: 14 Jul 2014 08:56 by blackmoon.

Please Log in or Create an account to join the conversation.

More
14 Jul 2014 09:17 #24567 by SeByDocKy
Replied by SeByDocKy on topic Developing a universal module
and maybe it's not linked at all but can add to mystery ...
on the 7E, the ESKY 150 is not working (w/o MM) while on the Devo10 with MM, working like a charm ...
On the Devo7E, I got the same symptom in the auto-binding process

Please Log in or Create an account to join the conversation.

More
14 Jul 2014 10:24 #24568 by phantom8
Replied by phantom8 on topic Developing a universal module

blackmoon wrote: Nice find Phantom, if I remember correctly, I have had exactly the same behavior with my 7E, the strange thing is that when the modules are soldered directly as before the MM, i.e. only two additional modules but with the nightlies connections, all protocol work as expected.


If you connect the modules directly to Devo 7e (no MM), the CE pin is hardwired to VCC (3.3V). That is, it will be always enabled and would work as expected. However, if modules are installed via MM, it will be controlled by the AVR and program logic will control when to activate the chip.

Please Log in or Create an account to join the conversation.

More
14 Jul 2014 10:32 - 14 Jul 2014 10:35 #24569 by phantom8
Replied by phantom8 on topic Developing a universal module
I just downloaded the Deviation source code and disabled the CE_lo() function in protocol/spi/nrf24l01.c and generated a new v202.mod. On the transmitter menu, goto "Model Setup" -> Highlight the protocol V202 -> Change it to SLT -> Change it back to V202. Then, choose BIND. I can now bind my V222 model.

Please note that this is not a fix. I only want to make a quick and dirty test to check if there is a problem with CE line handling in the firmware/avr code. I'll leave it to PB to do the real fix. ;)
Last edit: 14 Jul 2014 10:35 by phantom8.

Please Log in or Create an account to join the conversation.

More
14 Jul 2014 12:01 #24574 by SeByDocKy
Replied by SeByDocKy on topic Developing a universal module
Good job ...

I believed some changed was done recently for some security issue ...

Please Log in or Create an account to join the conversation.

More
14 Jul 2014 13:05 #24575 by blackmoon
Replied by blackmoon on topic Developing a universal module
You should open a ticket on bitbucket for this issue. And thanks for the debugging.

Please Log in or Create an account to join the conversation.

More
14 Jul 2014 13:47 #24576 by midelic
Replied by midelic on topic Developing a universal module
You see 'B" you asked me why I put a pullup 20K to CE pin...no problem.

Please Log in or Create an account to join the conversation.

More
14 Jul 2014 13:56 #24577 by phantom8
Replied by phantom8 on topic Developing a universal module

blackmoon wrote: You should open a ticket on bitbucket for this issue. And thanks for the debugging.


Just opened a ticket.

Please Log in or Create an account to join the conversation.

Time to create page: 0.119 seconds
Powered by Kunena Forum