Network Keys and the ANT+ Managed Network
Welcome Guest,Register Now
Log In

Tech Bulletin

  • Jul 12, 2013

    Network Keys and the ANT+ Managed Network

    The network key is one of the channel configuration parameters that must be set correctly for devices to communicate. It is used to identify which network the device will operate on, and for ANT devices the radio will not hear transmissions occurring on other networks. The newest ANT devices can store up to 8 network keys at a time (older ANT devices can typically store up to 3) as network numbers 0 - 7 (or 0 - 2). Each ANT channel is then configured to use a specific network number.

    You can change the network key using command 0x46: Set Network Key (network_number, network_key). This works for all valid network keys, but is ignored if you try to set an invalid network key. Then use command 0x42: Assign Channel (channel_number, channel_type, network_number) to set which network should be used by each channel.

    Which network key should you use?

    You can find the public, ANT+, and ANT-FS network keys on the network keys page (note that you need to be logged in as an adopter to access them).

    • If you are developing and experimenting with ANT and want ultimate freedom, use the public network key: on the public network anything goes.
    • If you are creating an ANT+ product to interoperate with other ANT+ devices, use the ANT+ network key: ANT+ device profile rules apply!
    • If you are creating an ANT-FS device then use the ANT-FS network key: this should only be used for ANT-FS applications!
    • If you are developing a product for sale, that you do not want to interact with other devices, then it is recommended that you purchase a private network key: this way you control the network rules.

    IMPORTANT!! When setting network keys, NEVER use the ANT+ Network Key, or the ANT+ Frequency (2457MHz) for non-ANT+ communication. Anything on the ANT+ managed network must be fully compliant with the ANT+ device profiles.

    Why bother with separate networks?

    Using different networks is a great way to keep devices that aren't intended to communicate, separate. This makes it possible for companies to define their own way of setting and interpreting the 8 byte ANT payload without getting confused by other devices that are setting the values differently. It becomes possible to distinguish the device that you intend to communicate with and understand the data that is transmitted. On the ANT+ managed network these rules are contained in the ANT+ device profiles and ANT+ Common Pages document.

    To illustrate the importance of defining consistent network rules, consider this example:

    Imagine you've developed a pet food dispenser that responds to the weight of the food bowl to automatically top up the food after the bowl has been empty for a certain length of time. The food bowl uses the ANT+ network, but does not use an ANT+ device profile (!!). The food bowl sends an ANT broadcast signal where byte 1 indicates the weight of the remaining food in grams. The sensor goes to sleep when there is no change in the weight of the food for 1 minute or more, and wakes up on detecting a change. You didn't worry about any smart pairing techniques because you don't have any other ANT+ devices around.

    A few months later you decide to buy a new ANT+ gadget. It uses a new ANT+ device profile and broadcasts an ANT+ signal to automatically adjust the blinds when the TV is switched on:

    • When the TV is switched on -> transmit 1 in byte 1
    • When the TV is switched off -> transmit 0 in byte 1
    • Receivers on the blinds respond to the 1 by closing the blinds.

    Consider what would happen the device types of the food bowl and blind controller matched: you'd probably end up with a very fat cat!  This is why it's so important that devices communicating on the same network use a consistent way of setting and interpreting the 8 byte data payload and channel parameters; to avoid chaos. 

    What if no ANT+ device profile exists for your application?

    Talk to us! We can discuss your idea and let you know the options. If it looks like a good candidate for a new ANT+ device profile we'll ask you to become an ANT+ member (if you aren't one already), and then will work with you to define the new device profile. Once defined the new profile would be published so that all ANT+ Adopters could also develop using the same definitions. 

    For companies who prefer to use a strictly proprietary system, a private network key can be purchased. Alternatively you can use the 'anything goes' public network, but if you do, then keep an eye on your cat.


    Further Information:


    Network Keys FAQ

    ANT Message Protocol and Usage Document

    ANT+ Membership


    < Back to all bulletins