Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 09:56 02 May 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : Quick Tutorial - Maximite/DM RF Mesh

     Page 1 of 2    
Author Message
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 02:18am 17 Apr 2012
Copy link to clipboard 
Print this post

Quick Tutorial - Maximite/DM using RF mesh networking.

I hope the following information is very useful and will keep you from wasting any extra money, like I did, not knowing ins and outs of RF mesh networking!

The Maximite/DM MMBasic provides for a complete "standalone" hardware and software computer solution. I made a MMBasic application, which uses this inexpensive hardware configuration to monitor/log/control (with exceptions) a wireless mesh RF network ( via serial comport) which can work up to 3 miles (4828 meters) line of sight.

Possible RF mesh application solutions and ideas (short list) ---> Imagine this ...
Your mailbox is 25 meters away and people are tampering with your mail.
You have a farm in which your yard barn is 300 meters away and there items be lifted and taken.
A neighbor of yours 4000 meters (2.5 miles) away is leaving on vacation and needs his house watched.
Your siblings keep leaving your house garage door open at night time.
You need to measure light, humidity, temperature, and security statuses from a distance location.

Note: If you don't have the proper RF mesh node "line of sight" then you need to buy extra mesh radios to hop and multi-hop to your required node distance designation!.

By attaching a RF mesh radio to your Maximite/DM you could log, monitor and even control (only with SNAP Connect on PC) a long distance wireless mesh network from your home/office. Messages from the wireless sensor network would scroll on your "standalone" MM/DM VGA video screen and would/could be saved/logged to a SD memory card. You could also hook-up a loud piezo siren to immediately sound an alert notification. You could also obtain Synapse's Connect FREE? (one address only) software and even monitor/control over the Internet from any place in the world!

I chose a very reliable, long distance, low cost, battery friendly, industrial, Synapse RF mesh radio module(s),
Please Note: I do not work for Synapse nor I am not associated in any form or manner with this company!

If you are interested is Synapse RF mesh networking, FIRST read everything on the Synapse website!
The Synapse RF mesh is somewhat complex but simple to operate but you still need to read all the documents!
WARNING ... The SNAPpy script language for the RF mesh engines is a subset of the computer language Python but fortunately Synapse has plenty of scripting examples and there is also a user/customer forum for additional help.
BTW ... Humor --> Python "is not a snake" but computer programming language and code indentation is VERY IMPORTANT in Python or this snake will bite you!

Synapse Website Links:
http://www.synapse-wireless.com/index.php?mainID=1
http://www.synapse-wireless.com/snap-components/rf-engine

The question will arise "why not use Xbee?" Simple, Xbee does not do RF mesh PERIOD!
The next question "why not use the JeeNode?" The JeeNode is a over-priced,low power,low LOS, "hobby" ISM Arduino transceiver disguised as a reliable RF node. NO WAY!

So what is so special about Synapse SNAP Mesh RF engines/radios? (My observation)

The nodes are immediately able to communicate with each other - There is no such thing as a “network join time” with SNAP.
You don't even need a Python user application script uploaded and running! (The Synapse nodes have a built-in microcontroller with RF engine)

Any node can talk to any other node - There is no central “coordinator” node with SNAP. All nodes act like peers to each of the other peer nodes.

No PC software required – There is no need for software installed on a PC to “coordinate” the nodes, they can think for themselves, BUT you still need the PC to upload/update/deploy/troubleshoot your Synapse RF Engines/Radio/Nodes.

Using SNAPpy scripts, SNAP nodes can autonomously respond to changes in their environment of digital or analog sensor reading.

If you a still interested in Synapse RF Mesh network, then you need to register (on the support forum) to get the FREE documentation and Free Portal PC software
from the following link:http://forums.synapse-wireless.com/index.php

Obtain the following Synapse Manuals ....
Portal Ref. Manual
SNAP Primer Ref. Manual
SNAP Sniffer Users Guide
EK2100 Users Guide
SNAP Reference Manual

Then obtain the free Portal software (or the latest)
Portal-setup-2.4.31.exe

After obtaining the doc's and software please, FIRST read the EK2100 User Guide even if you won't/don't want to purchase this RF evaluation kit. (See below)
Then read the following docs in order. SNAP Primer Reference Manual, Portal Reference Manual and the SNAP Reference Manual.
The other manuals are optional.

To save users a bunch of money in setting up your minimum mesh network without the Synapse EK2100 evaluation kit, I recommend doing the following to save $$$:

#1. Note: Distributors Arrow and Digi-Key is priced much higher than Future Electronics?

#2. Do not buy the $114 USD evaluation kit (unless you really need/want it)
The EK2100 evaluation kit comes with 2 RF100 Radios and one USB bridge
(SNAP Stick USB Module) and one protoboard (SN171) -- 2 nodes total.
The Synapse PC Portal software bridges one RF100 Radio on the USB Snap bridge
to the external SN171 protoboard with another RF100 for RF mesh testing and evaluation.

Reasons for not buying this evaluation kit.
The original vintage RF100 SNAP Engine/Radio is fine BUT there are much better
"other" RF Engines/Radios from the other Synapse vendors. This kit only provides the RF100 radios. <---<<<<
Atmel has a better RF radio on the newer RF200P81/RF200 series, lower current draw for better battery operation, 1500 feet or 457 meters "line of sight", and most of all, to me, an internal A/D reference for reading its own battery voltage in battery operated systems. Check vendor specs/comparisons/matrix on Synapse website.

Please note: You can have different RFx engines/radios in your mesh network BUT it would be nice to have a common RF Engine/radio vintage for easy script programming in your mesh wireless network application design.

Reasons for buying this evaluation kit.
You need the SN171 protoboard to upload the latest firmware to the RF radios using RS232
You need the SNAP Stick USB with radio so Portal can Upload the SNAPpy Python user application scripts to each RFx Engine/Radio.
This Snap Stick USB can also be used as a troubleshooting packet sniffer and channel anaylzer.

Note: There is a newer SNAP Stick USB called the SNAP Stick SS200 (By Atmel) which you also could use with the Portal software.
(It has a Atmel built-in radio in the USB stick and its very rugged)

To save alot of money, you to need find a cheaper clone board of the SN171 and a cheaper clone board of the SNAP Stick USB and build yourself your own evaluation "kit" and mesh network You should always need the minimum of
2 SNAP nodes for your mesh RF network. Of course, you could just get the Synapse radio and make sensor/status RF radio protoboards yourself but you need to be a electronic's hacker to be able to do this task.

After searching the Internet, the Canadian company Solarbotics has several Synapse clone boards and even carries some Synapse radios.
Note: These clone boards are not the same (reduced components) as the Synapse boards BUT they are much cheaper for those who can wire, solder and prototype circuits.

For the SNAP Stick clone Solarbotics #39250 Solarbotics Synapse-to-FTDI Adapter Kit
For the SNAP SN171 clone use #39255 Solarbotics Synapse Breakout Board Kit

Cost savings.

Synapse Evaluation EK2100 $114 USD (Digikey) Note: Kit comes with 2 RF100 radios

My Synapse clone kit
Solarbotics 39225 $5.50 USD
Solarbotics 39250 $22.92 USD
Solarbotics 51765 $19.00 x 2 $38 USD
----------------------------------------------------------
$66.42 USD total for clone kit

$114 - 66.42 = $47.58 <---- Savings USD

With my proto kit you get to choose the latest/newest RF mesh engines/radios.
I chose the Atmel type mesh radios for the best battery operation and distance.
There are other RF engine/radio vintages. See Synapse website for the selection matrix.
Note: You could easily obtain other more powerful mesh radios with a RF power amp (battery draw is greater) with 2.5 miles (4026 meters) to 3 miles (4828 meters) line of sight!

WARNING ... I don't know about Australian laws but I had to sign, in blood, an import/export doc from a North American distributior because in most Synapse Mesh Radios they have an optional "AES encryption" for mesh node security. Note: Synapse also has a default 16 char. node security without AES.

I made up a small, simple MMBasic program that talks serially (3.3 VDC TTL) to a Synapse RF Engine/Radio/Node (TTL 3.3 VDC) I connected the MM/DM Com2: Tx with the Synapse Rx and the Synapse Tx with the MM/DM com2: Rx. Also, I connected both device grounds together. The MMBasic program checks for the com2 link between the MM/DM hardware and Synapse RF Engine/Radio/Node device being OK then processes all serial
messages from the RF "Mesh Central" node to display on the VGA video and log to the SD memory card. Remote Synapse Nodes can talk to this Mesh Central node to relay status/control/messages via RPC (Remote procedure calls using SNAPpy Python Scripts) I know all of this sounds hard but with your PC Portal software you could easily click on any SNAPpy script function in any RF node to test your applications wirelessly. Also, you could wirelessly update/upload all your node scripts in any remote RF Snapse node. <----- Cool.

I also, made a SNAPpy Python script to be uploaded into the Mesh Central Node that is connected serially to the MM/DM hardware. You will be totally amazed how easy and simple it is to construct and troubleshoot your Synapse RF mesh network after you read ALL the manuals! Look out for the 200 page SNAP user manual!

In my RF mesh node network application, I am only monitoring/SD logging my mailbox, garage door, environment and security status on my MM/DM VGA LCD monitor. It's cool to watch all the peer RF nodes report their digital statuses back to my VGA LCD monitor. A word of WARNING ... My MM/DM wireless mesh network application only has
4 mesh RF radio nodes and is used for status only monitoring and SD logging. Any larger application would probably need a new engineering RF re-design review?

Hope this quick Synapse mesh RF tutorial helps
Enjoy ... Edited by DuinoMiteMegaAn 2012-04-18
 
Bryan1

Guru

Joined: 22/02/2006
Location: Australia
Posts: 1210
Posted: 07:05am 17 Apr 2012
Copy link to clipboard 
Print this post

Those 433mhz rf modules are available for around $10 a pair these days and by powering them off a higher voltage they do get a much better range. Sure thay aint a mesh or what ever node network but they do work WITH no further propriety software required. Say you do need to use a few then simply use a pic chip to be be the midway host and go about it much cheaper and have full control and the best part is it is all done DIY without the need to go spend a small fortune on someone elses idea.

 
djuqa

Guru

Joined: 23/11/2011
Location: Australia
Posts: 447
Posted: 07:08am 17 Apr 2012
Copy link to clipboard 
Print this post

  Bryan1 said   by powering them off a higher voltage they do get a much better range.

Must remember although that the 433ISM has strict Max. Power limits and is also a shared band.
VK4MU MicroController Units

 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 02:01pm 17 Apr 2012
Copy link to clipboard 
Print this post

Those 433mhz rf modules are available for around $10 a pair these days and by powering them off a higher voltage they do get a much better range


In the states, the FCC (Federal Communications Commission) would inprision you for 6 months and fine you $10,000 for modifying any RF transceiver without the FCC permission. All RF tranceiver freqencies and transmit power outputs are closely monitored and all RF modules have to be certified by the FCC to prevent unwanted RF interference.

The Australian (FCC equivalent gov. dept.) authorities must do something different to
enforce strick RF frequency transmission and RF interference standards down under?
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 12:36am 29 Apr 2012
Copy link to clipboard 
Print this post

Attached pictures of my MaxiMite Synapse RF mesh project ...
Enjoy ...

2012-04-29_103550_MaxiMite_Synapse_RF_Mesh_Nodes_R2.pdf Edited by DuinoMiteMegaAn 2012-04-30
 
vk4tec

Senior Member

Joined: 24/03/2012
Location: Australia
Posts: 239
Posted: 01:18am 29 Apr 2012
Copy link to clipboard 
Print this post

Very cool

If I was doing it, I would use EasyRadio modules.

434 MHz

- Andrew -
Andrew Rich VK4TEC
www.tech-software.net
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 02:07am 29 Apr 2012
Copy link to clipboard 
Print this post

Is EasyRadio mesh? There is no comparison between the EasyRadio and Synapse Mesh
 
cwilt
Senior Member

Joined: 20/03/2012
Location: United States
Posts: 147
Posted: 03:20am 01 May 2012
Copy link to clipboard 
Print this post

The snap mesh looks interesting. Can you give an example of what the RAW node data looks like.
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 10:52am 01 May 2012
Copy link to clipboard 
Print this post

Can you give an example of what the RAW node data looks like.


I really don't understand your question.
You might want to ask Synapse your RAW node data question. They do have a user forum.

In my application, the "central mesh" node is sending to the Maximite ASCII data for the VGA video and for SD logging.
 
cwilt
Senior Member

Joined: 20/03/2012
Location: United States
Posts: 147
Posted: 04:23pm 01 May 2012
Copy link to clipboard 
Print this post

Does your ascii data include the node ID# or some way to identify where the data came from?
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 05:17pm 01 May 2012
Copy link to clipboard 
Print this post

Does your ascii data include the node ID# or some way to identify where the data came from?


Short answer - NO. In my application the garage door or mailbox does a RPC to
the mesh central node. The mesh central node just "prints" a message via serial
port to the MaxiMite. No address is embedded in this ASCII string. Each mesh radio
knows about the others nearby and trys to communicates to reach the end point by
using hops to get there. Its all transparent to the user.

The node ID is transparent. Every Synapse node has its unique node address assigned to every Synapse RF node. Portal, the PC application software, will display each active RF node address. To reference another RF node via "remote procedure call" you need to use this unique "fixed" node address assigned to it.

rpcSourceAddr() – Who made this Remote Procedure Call?
If a function on a node is invoked remotely (via RPC), then the called function can invoke function rpcSourceAddr() to find out the Network Address of the node which initiated the call. (If you call this function when an RPC is not in progress, it just returns None).


I think you need to read the following docs from Synapse RF.
Portal Ref. Manual
SNAP Primer Ref. Manual <---<<<<
EK2100 Users Guide
SNAP Reference Manual

Edited by DuinoMiteMegaAn 2012-05-03
 
cwilt
Senior Member

Joined: 20/03/2012
Location: United States
Posts: 147
Posted: 08:07pm 01 May 2012
Copy link to clipboard 
Print this post

Thank you for the information. I will RTFM.

The reason I ask about node ID's is because my project is not a many to one, but many to several.
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 01:08am 02 May 2012
Copy link to clipboard 
Print this post

Generic schematic of the Synapse RF200 Carrier Board in which I used to
create 3 different PCB layouts for my Synapse RF mesh project.

2012-05-02_110709_Generic_RF200_Carrier_Schematic.pdf

 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 01:56am 02 May 2012
Copy link to clipboard 
Print this post

Attached is the PCB track image(s) for the 3 different types of printed circuit boards for my RF mesh project. Using any of the three types you also can create a unique Synapse RF mesh node for your specific application. I was able to create a garage door controller, a handheld remote controller, a mailbox RF node, and a mesh central node. Using the track image(s) and the generic RF200 schematic you could also re-create these PCB types in another printed circut layout program.
Enjoy

2012-05-02_115611_PCB_Track_Image.pdf

BTW ... I also included the RF200 mechanical module layout
2012-05-02_121209_Synapse-RF-Engine-RF200P81-SM200P81-Data-S heet.pdf Edited by DuinoMiteMegaAn 2012-05-03
 
cwilt
Senior Member

Joined: 20/03/2012
Location: United States
Posts: 147
Posted: 02:26am 02 May 2012
Copy link to clipboard 
Print this post

I have read the manuals and will be ordering some samples for testing. Thanks for posting your experiences. Will be interesting to see how it handles 800+ nodes. Edited by cwilt 2012-05-03
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 03:41am 02 May 2012
Copy link to clipboard 
Print this post

800 x $20 / node = $16,000 $USD. Better ask some of your highly technical questions
to the Synapse experts on "their" board forum. Also, review what others have
done with their Synapse wireless RF modules on their customer board forum. Edited by DuinoMiteMegaAn 2012-05-03
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 12:59pm 02 May 2012
Copy link to clipboard 
Print this post

Here is my project software Snappy Python scripts (beta) for each RF node in my project.

2012-05-02_225828_Python.zip



A quick examination of these Snappy Python scripts will reveal one odd software design requirement. There are no delays and while loops in Synapse scripts. ALL scripts run/finish until completion with no delays! <------<<<<
This is because each mesh node needs to always be able to join with others in the transparent background mesh mode. Fortunately Synapse created "millis like timers" or "hooks" to accommodate delays. Digital switch inputs with "contact bounce" was the hardest to eliminate and design in these Python scripts and was, by far, the only major software problem(s) I had in this project.
Edited by DuinoMiteMegaAn 2012-05-04
 
cwilt
Senior Member

Joined: 20/03/2012
Location: United States
Posts: 147
Posted: 03:07pm 02 May 2012
Copy link to clipboard 
Print this post

Already a member of their forum.

Another oddity I found is there are no arrays.
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 03:17pm 02 May 2012
Copy link to clipboard 
Print this post

Another quirk, for analogs, there is only integer math - no floating point data
type
Someone did makeup a 32 bit math script on the forum.


BTW ... For locals, in the US, there was a good write-up in the April and May issues
of "Circuit Cellar" on the Synapse RF Mesh. Edited by DuinoMiteMegaAn 2012-05-04
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 11:13pm 02 May 2012
Copy link to clipboard 
Print this post

Attached is the schematic pdf of all of my Synapse RF Node (beta) project schematics.
Enjoy

2012-05-03_091329_Mesh_Node_Schematics_r1.pdf


Edited by DuinoMiteMegaAn 2012-05-04
 
     Page 1 of 2    
Print this page
© JAQ Software 2024