TWR-RF-SNAP User’s Manual
Page 13 of 22
Software Features
This section provides more details about the software features and functionality of the TWR-RF-SNAP
including the Synapse Wireless Portal IDE and python based SNAPpy scripts.
3.6
SNAP / SNAPpy
Synapse's
SNAP®
technology is an Internet-enabled, auto-forming, multi-hop, mesh network Operating
System that is designed to run efficiently on all types of microcontroller; including cost-effective 8-bit
microprocessors.
With the SNAP protocol firmware installed, the device automatically forms an ad-hoc radio mesh
network with other SNAP devices in range, so each can pass information back and forth, and can relay
messages to other SNAP devices that might be out of the original sender’s range.
Since SNAP provides a full mesh network, there is no single point of failure: any node can talk directly
to any other node that is in range and any node can talk indirectly to any other node via intermediate
nodes. SNAP-based networks are self-forming, instant-on, and self-healing.
The SNAP core code handles wireless communications, as well as implementing a Python virtual
machine. The subset of Python implemented by the core software is named SNAPpy. Scripts written in
SNAPpy (also referred to as Device Images, SNAPpy images or even Snappy Images) can be uploaded
into SNAP Nodes serially (or even over the air), and dramatically alter the nodes capabilities and
behavior.
The TWR-RF-SNAP comes preloaded with the SNAP firmware, including an initial SNAPpy script that
allows the user to interact with the LEDs by pressing the on-board push-buttons. For more
information regarding this example SNAPpy script, refer to the TWR-RF-SNAP lab guide.
SNAP Highlights:
Multi-hop mesh
Auto-forming
Instant-on
Peer-to-peer
SNAPpy application scripts (Python-based programming language)
Over-the-air programming
Remote Procedure call architecture
Processor independence
Sleepy Mesh – allows for battery operation
Each node runs autonomously
No central coordinator since each node can participate in routing
No single point of failure