Git Product home page Git Product logo

Comments (8)

hgonzaleDigi avatar hgonzaleDigi commented on August 20, 2024

Hi @kennethlimcp,

We have looked into this issue and we were able to discover our remote devices once the encryption was enabled.

Please, verify that all your nodes have the Encryption enabled (EE = 1) and also, make sure that the encryption key is properly set on all devices (KY should be the same on all your modules).

In case you are only changing EE = 1 on your local device, then it makes sense that it cannot see the rest of the modules in the "network". Technically it will not be part of the same network since it is communicating using encryption and the rest of the nodes aren't.

Again, we have verified that once the encryption is enabled, both XCTU and this library behave the same way.

from xbee-python.

kennethlimcp avatar kennethlimcp commented on August 20, 2024

I changed EE for both the XStick and end devices. Does KY need to be set manually? That is only required if trust center is selected or I might be wrong.

from xbee-python.

hgonzaleDigi avatar hgonzaleDigi commented on August 20, 2024

Well, the best practices indicate that KY should be set manually on all the devices in the network.

This is how it works:

  1. Encryption is enabled on all the devices (EE=1)
  2. NK should be set on the coordinator. This value should be 0 (random key generated by the coordinator - most secure case)
  3. KY should be set to the same value on all the devices (if left as default, which is 0, the process is not as secure). The use for KY is to encrypt the network key when joining the network so no security holes are created. In this case, if KY is 0, the coordinator will send the network key (NK) in the clear to each device that tries to join, whereas if KY is manually set, it will be used to encrypt the NK value so the network key will always remain secure in every network join process. You should consider doing this manually if you want security to be robust in your network and avoid anyone entering it without permission.
  4. Finally, remember to write all the changes in non volatile memory (send WR command) so all these changes are permanent.

To answer your question regarding the trust center, when using zigbee network and APS encryption are supported regardless of whether you use a trust center or not. The follwing examples may help you: https://www.digi.com/resources/documentation/DigiDocs/90002002/default.htm#Tasks/t_security_examples.htm%3FTocPath%3DZigbee%2520security%7CImplement%2520security%2520on%2520the%2520XBee%252FXBee-PRO%2520Zigbee%2520RF%2520Module%7C_____6

The documentation there should help you understand how to work with the network in that manner.

If you keep having problems, please, let us know.

from xbee-python.

kennethlimcp avatar kennethlimcp commented on August 20, 2024

@hgonzaleDigi it did not work for me:

Successfully built digi-xbee
Installing collected packages: pyserial, digi-xbee
Successfully installed digi-xbee-1.1.0 pyserial-3.4
(python-demo-ImaXBV93) bash-3.2$ python3 master.py 
 +---------------------------------------------+
 | XBee Python Library Discover Devices Sample |
 +---------------------------------------------+

Discovering remote XBee devices...
Device discovered: xxxxxxxxxxxxxx5B5D -  
Discovery process finished successfully.

The device listed is the coordinator.

From XCTU:

screen shot 2018-02-19 at 5 14 10 pm

The coordinator is able to find the router via wireless.

Settings on coordinator:

  • EE: 1
  • EO: 0
  • KY: 32 hexadecimal
  • NK: 0

Settings on router:

  • EE: 1
  • EO: 0
  • KY: 32 hexadecimal

from xbee-python.

kennethlimcp avatar kennethlimcp commented on August 20, 2024

@hgonzaleDigi is there anyone I can speak to to have it resolved? We are looking to purchase 30 more nodes but this is the only blocker.

from xbee-python.

brandonmoser avatar brandonmoser commented on August 20, 2024

from xbee-python.

rubenmoral avatar rubenmoral commented on August 20, 2024

Hi @kennethlimcp,

We have fixed the issue (see commit c4a4c65), it will be included in the next release. In the meantime, you can download the source code from the master branch and install the library from there (see instructions at https://github.com/digidotcom/python-xbee/blob/master/README.rst#install-from-source).

Sorry for the inconvenience.

Best regards.

from xbee-python.

kennethlimcp avatar kennethlimcp commented on August 20, 2024

from xbee-python.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.