| Author |
Message |
|
|
Posted: Oct 09, 2012 - 04:28 AM |
|


Joined: Sep 09, 2010
Posts: 85
Location: san diego CA US
|
|
| LwMesh might be a good topic for the Atmel Tech. on Tour series. What is the possibility of that happening? |
_________________ Asking a better question, is the beginning of learning.
**********************
New Hardware Hackers SIG in San Diego, CA Meets 2nd. Tuesday, more info www.Spincraft.com
***********************
|
| |
|
|
|
|
|
Posted: Oct 09, 2012 - 04:33 AM |
|


Joined: Apr 15, 2009
Posts: 4982
Location: San Jose, CA
|
|
| There is always a possibility, but I have not heard of any active preparations. |
_________________ The opinions and views expressed by me on this forum are my own and do not represent my employer or anyone else that I'm affiliated with.
|
| |
|
|
|
|
|
Posted: Oct 15, 2012 - 04:01 PM |
|

Joined: Jun 17, 2008
Posts: 456
Location: Meissen, Germany
|
|
| Alex, does LW mesh relies on any patents? |
|
|
| |
|
|
|
|
|
Posted: Oct 15, 2012 - 05:21 PM |
|


Joined: Apr 15, 2009
Posts: 4982
Location: San Jose, CA
|
|
|
|
|
|
|
Posted: Oct 15, 2012 - 09:10 PM |
|

Joined: Jun 17, 2008
Posts: 456
Location: Meissen, Germany
|
|
| Thank you for the quick response, I had the same impression but I just want to ask. For sure it would be stated somewhere in the document or in the source code. |
|
|
| |
|
|
|
|
|
Posted: Oct 16, 2012 - 03:12 AM |
|

Joined: Mar 20, 2007
Posts: 18
Location: Valparaiso, Chile
|
|
Alex:
There is any performance or benchmark tests for lwmesh? |
|
|
| |
|
|
|
|
|
Posted: Oct 16, 2012 - 05:43 AM |
|


Joined: Apr 15, 2009
Posts: 4982
Location: San Jose, CA
|
|
What kind of benchmarks? It performs the way I would expect it to on a normal applications. I have not tried to push it to the limits - I'm not a big fan of pushing stuff to the limits and I've never seen actual requests to do so.
PS: But no, there are no formal benchmarks, because it is hard to benchmark wireless stack. It is mostly limited by the medium, not by the software. |
|
|
| |
|
|
|
|
|
Posted: Nov 02, 2012 - 04:03 PM |
|

Joined: Dec 12, 2007
Posts: 13
|
|
| In the release notes it looks like only the 2.4GHz ZigBits are supported. Will lwmesh work with 900MHz zigbits? |
|
|
| |
|
|
|
|
|
Posted: Nov 02, 2012 - 04:08 PM |
|


Joined: Apr 15, 2009
Posts: 4982
Location: San Jose, CA
|
|
| There are no projects for ZigBit 900, but it is very easy to make it work by changing projects for ZigBee 2.4 GHz to include rf212 PHY. |
_________________ The opinions and views expressed by me on this forum are my own and do not represent my employer or anyone else that I'm affiliated with.
|
| |
|
|
|
|
|
Posted: Jan 11, 2013 - 12:24 PM |
|

Joined: Sep 16, 2011
Posts: 3
|
|
| What about the power consumption? Can all the node oparate with battery? Can all the nodes go to sleep mode? |
|
|
| |
|
|
|
|
|
Posted: Jan 11, 2013 - 04:49 PM |
|


Joined: Apr 15, 2009
Posts: 4982
Location: San Jose, CA
|
|
| Yes, you can. Non-routing nodes are designed for this reason. You can have routing nodes sleeping as well, but it is application responsibility to keep track of when nodes sleep and when not so that network stays operational and no nodes required for routing are asleep. |
_________________ The opinions and views expressed by me on this forum are my own and do not represent my employer or anyone else that I'm affiliated with.
|
| |
|
|
|
|
|
Posted: Jan 14, 2013 - 12:34 PM |
|

Joined: Apr 28, 2011
Posts: 6
Location: Athens, Greece
|
|
|
Quote:
It should be possible to run them on ATMega32 with minor modifications, but not inside Arduino environment.
Just out of interest, why do you think it is not possible to port LwMesh to arduino environment?
They both use a form of cooperative multitasking, so in theory it should be possible to write a C++ wrapper class for the LwMesh C code. Then replace HAL with Arduino calls for uart/spi etc? |
|
|
| |
|
|
|
|
|
Posted: Jan 14, 2013 - 04:43 PM |
|


Joined: Apr 15, 2009
Posts: 4982
Location: San Jose, CA
|
|
| If amount of work required is fine with you, then it is possible to run LwMesh on Arduino. |
_________________ The opinions and views expressed by me on this forum are my own and do not represent my employer or anyone else that I'm affiliated with.
|
| |
|
|
|
|
|
Posted: Jan 25, 2013 - 10:49 PM |
|

Joined: Dec 12, 2007
Posts: 13
|
|
| It looks like each node needs to have a unique 16 bit address. Is there any way to auto assign addresses or is it the responsibility of the application to ensure unique addresses via special programming, switches, etc? Is there any way to take advantage of a Maxim DS2411 chip that automatically provides a unique 64 bit address? |
|
|
| |
|
|
|
|
|
Posted: Jan 26, 2013 - 12:53 AM |
|


Joined: Apr 15, 2009
Posts: 4982
Location: San Jose, CA
|
|
Application should take care of address assignment, there are no mechanism defined by the stack. Depending on the complexity of your application it might be as simple as assigning a random number.Just make sure it is truly random, otherwise all devices will pick the same address. Using UID chip value to seed random number generator is one way of doing this.
Another way is to simply take lowest 15 bits of the UID value and assign it to the address.
If your application is complex and you need to make sure that there are no conflicts, you'll have to implement some kind of centralized database and make one device assign addresses to everyone else. |
_________________ The opinions and views expressed by me on this forum are my own and do not represent my employer or anyone else that I'm affiliated with.
|
| |
|
|
|
|
|
Posted: Jan 28, 2013 - 09:04 AM |
|

Joined: Jun 17, 2008
Posts: 456
Location: Meissen, Germany
|
|
In uracoli we use a technique for address assignment, that uses
the last 16 Byte of the bootloader section to store information like addresses, default channel, default pan id. The memory at the end of the bootloader is a more secure place then the eeprom, unless you flash with an external programmer. |
|
|
| |
|
|
|
|
|
Posted: Jan 28, 2013 - 05:00 PM |
|

Joined: Dec 12, 2007
Posts: 13
|
|
| Is there any way to detect address conflicts? Will the stack deliver a message to the application layer if the source address matches the destination address? |
|
|
| |
|
|
|
|
|
Posted: Feb 01, 2013 - 08:38 PM |
|

Joined: Dec 12, 2007
Posts: 13
|
|
I have a test application that is working fine without security. After I enable AES security my receive data handler is still called, but now the NWK_DataInd_t.size is 4 bytes larger than expected and NWK_DataInd_t.data contains random values. Do I need to call some stack functions to explicitly encode and decode packets?. I enabled AES security on my RF212 using
Code:
#define NWK_ENABLE_SECURITY
#define SYS_SECURITY_MODE 0
NWK_SetSecurityKey("TestSecurityKey0")
|
|
|
| |
|
|
|
|
|
Posted: Feb 28, 2013 - 07:20 PM |
|


Joined: Oct 06, 2010
Posts: 526
Location: Chicago
|
|
Not sure if you're still checking this thread, dcraw, but here's my answer to your question.
I am somewhat new to the LwMesh stack, so would appreciate it if someone else (AlexRu) comments if I am wrong.
I believe the four extra bytes are the MIC (Message Integrity Code). See section 4.1 on p. 9 of AVR 2130 for a reference to the optional MIC. It is optional in the sense that it is only there if encryption is enabled.
I am not sure how to decode the MIC, or even if we are supposed to. Is it some sort of checksum that we can unroll to verify the message was received intact? |
|
|
| |
|
|
|
|
|
Posted: Feb 28, 2013 - 07:26 PM |
|


Joined: Apr 15, 2009
Posts: 4982
Location: San Jose, CA
|
|
|
dcraw101 wrote:
Is there any way to detect address conflicts? Will the stack deliver a message to the application layer if the source address matches the destination address?
For some reason I did not receive notification for this question even tough I'm watching this thread.
There is no way to detect conflicts using only the stack itself. If conflicts are possible, then you need to include some unique value (UID) in the message and check pair (UID, Addr) on the application level.
Messages addressed to self will not be delivered. |
|
|
| |
|
|
|
|
|