Giter Club home page Giter Club logo

mwaylabs / fruitymesh Goto Github PK

View Code? Open in Web Editor NEW
288.0 36.0 106.0 55.54 MB

BlueRange Mesh (formerly FruityMesh) - The first completely connection-based open source mesh on top of Bluetooth Low Energy (4.1/5.0 or higher)

Home Page: https://bluerange.io/

License: Other

C++ 5.44% C 88.67% HTML 0.02% Makefile 0.01% Python 0.01% Lua 0.02% Assembly 1.31% CSS 0.02% Batchfile 0.01% Shell 0.01% CMake 0.10% JavaScript 4.42%
iot mesh bluetooth-low-energy ble mesh-network beacons

fruitymesh's Introduction

fruitymesh

FruityMesh is the reference implementation of the BlueRange initiative. It was the first open source implementation of a mesh network that is based on standard Bluetooth Low Energy 4.1/5.x connections. In contrast to mesh networks that use advertising and scanning, this allows for a network run with battery powered devices. FruityMesh works with the Nordic nRF52 chipset in combination with the S132/S140 SoftDevices and enables tons of devices to connect to each other with its auto-meshing capabilities. It is always connected with configurable connection intervals of 7.5 ms to 4 seconds while still being able to run on batteries. Connections also have the advantage of a much higher throughput than using a flooding mesh.

Documentation

documentation

Documentation is the key and therefore, you should first have a look at the documentation to get you started.

You can find the most up to date documentation here:

Documentation

You can also have a look in the docs folder for a version of the documentation that matches a certain commit.

fruitymesh's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fruitymesh's Issues

error: lto-wrapper with gcc arm embedded 5.2.1 and debian 8 x64

Any idea of the error:

Linking target: FruityMesh.elf
/home/beta/lab/nrf51/nrf51_sdk_9_0_0/components/softdevice/s130/headers/ble_gap.h: In function 'sd_ble_gap_rssi_stop':
/home/beta/lab/nrf51/nrf51_sdk_9_0_0/components/softdevice/s130/headers/ble_gap.h:1286:1: warning: asm operand 0 probably doesn't match constraints
 SVCALL(SD_BLE_GAP_RSSI_STOP, uint32_t, sd_ble_gap_rssi_stop(uint16_t conn_handle));
 ^
/home/beta/lab/nrf51/nrf51_sdk_9_0_0/components/softdevice/s130/headers/ble_gap.h:1286:1: error: impossible constraint in 'asm'
/home/beta/lab/nrf51/nrf51_sdk_9_0_0/components/softdevice/s130/headers/ble_gap.h: In function 'sd_ble_gap_rssi_start':
/home/beta/lab/nrf51/nrf51_sdk_9_0_0/components/softdevice/s130/headers/ble_gap.h:1272:1: warning: asm operand 0 probably doesn't match constraints
 SVCALL(SD_BLE_GAP_RSSI_START, uint32_t, sd_ble_gap_rssi_start(uint16_t conn_handle, uint8_t threshold_dbm, uint8_t skip_count));
 ^
lto-wrapper: fatal error: /home/beta/gcc-arm-none-eabi-5_2-2015q4/bin/arm-none-eabi-g++ returned 1 exit status
compilation terminated.
/home/beta/gcc-arm-none-eabi-5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld: error: lto-wrapper failed
collect2: error: ld returned 1 exit status

also tried to use arm-none-eabi-gcc 4.9.3, with no luck.

Version 0.3 released

Hello everybody,

I finally managed to put up a new version with lots of changes. Sorry I could not release it in smaller steps but there were some problems holding me back. I know that this will probably break some stuff and this is why I need your help.
Do the makefiles still work for you? I changed some things, but it looks like the generated binary is two times the size of the one that I get when I compile it with my eclipse-generated makefiles. The binary for v0.3 should be about this size:
text data bss dec hex filename
68335 344 5724 74403 122a3 FruityMesh.elf
68335 344 5724 74403 122a3 (TOTALS)
It it is bigger, something is wrong with the makefile and I do not really know what it is at the moment.

Thanks

nRF5 SDK support

Hello.
Are there any plans on migrating over to recent nRF5 SDK? It looks like it'd need some changes (mostly slight SDK name changes like GATTC vs GATT in some defines), but haven't looked into it deeply.

I don't feel like repeating work someone might have already done. @mariusheil? :)

Adding Modules

Dear Marius,

Today,I have received NRF51dk board and trying fruity mesh. I'm following your tutorial to makae ping module,but when I typed "modules",it says:
"Command not found
{"user_input":"modules"}
"
I also have searched in node.cpp that no command for "modules"
Could you help me to solved this?

Thanks,

Junaedi Adi P
untitled

Shortest path to sink does not work the way it should

Each node saves the number of hops that are needed until a data endpoint is reached. This is done per connection and the connection with the shortest hopcount should be used to send data to a sink. If no sink is present on a connection, this value shall be set to -1.
This feature does not work reliably and should be fixed.

Node has old ID after enrollment

Hi, I am attempting to enroll a node with an ID of 1. From the console I get the following output and the status LED goes green as expected. However after a hard reset the node ID is still 13314. Is there something extra I need to do to write-enable the persistent storage? Or can you suggest how to debug this?

mhTerm: action 13314 enroll nodeid 1 1
[EnrollmentModule.cpp@186 ENROLLMOD]: Enrollment (by nodeId) received nodeId:1, networkid:1
[Storage.cpp@118 STORAGE]: Writing len:34 to block:0
[Storage.cpp@71 STORAGE]: Event: 3, result:0, len:128
[Storage.cpp@71 STORAGE]: Event: 1, result:0, len:34

Enumerating GATT Services and Characteristics of a Node

Hello,

I'm wondering if it's possible to use the FruityMesh algorithm to connect to a particular node in the mesh and enumerate the GATT services and characteristics of that node. For example, if I have a node with a temperature sensor, can I connect to that node and read the temperature from a custom temperature characteristic? In this example application, I would connect a node to a host PC over UART and then use that node to request the temperature of a given node. Once that data is received at the requesting node, it would relay that data over UART to the host PC.

This is a great mesh algorithm and any help you can provide in achieving this would be awesome.

Thanks!

Sniffing Packets

Dear Marius,

Is it possible to know/calculate all packets that has been sent or received including the advertisement packet and data packet in Fruity Mesh?

Sincerely yours,
Junaedi Adi Prasetyo

Build Error

Hello,
i am very interested to run this project. but i am facing problem in the build.
i follow the guide line can you please confirm this issue.

1

some files you are calling the nrf.h file but i didn't found this file in the project. and also sdk_common.h

can you please guide me to fix this issue. please also check the image for more detail.

thank you

Compile error on Mac OS X

Hi,
I use nRF51_SDK_9.0.0_2e23562 and gcc-arm-none-eabi-5_2-2015q4-20151219-mac and encounter errors as follows:

Linking target: FruityMesh.elf ./deploy/sdk/nrf_sdk_9_0/components/softdevice/s130/headers/ble_gap.h: In function 'sd_ble_gap_rssi_stop': ./deploy/sdk/nrf_sdk_9_0/components/softdevice/s130/headers/ble_gap.h:1286:1: warning: asm operand 0 probably doesn't match constraints SVCALL(SD_BLE_GAP_RSSI_STOP, uint32_t, sd_ble_gap_rssi_stop(uint16_t conn_handle)); ^ ./deploy/sdk/nrf_sdk_9_0/components/softdevice/s130/headers/ble_gap.h:1286:1: error: impossible constraint in 'asm' ./deploy/sdk/nrf_sdk_9_0/components/softdevice/s130/headers/ble_gap.h: In function 'sd_ble_gap_rssi_start': ./deploy/sdk/nrf_sdk_9_0/components/softdevice/s130/headers/ble_gap.h:1272:1: warning: asm operand 0 probably doesn't match constraints SVCALL(SD_BLE_GAP_RSSI_START, uint32_t, sd_ble_gap_rssi_start(uint16_t conn_handle, uint8_t threshold_dbm, uint8_t skip_count)); ^ lto-wrapper: fatal error: /Users/jerrin/workspace/meshlight/fruitymesh/deploy/gcc-arm-none-eabi/bin/arm-none-eabi-g++ returned 1 exit status compilation terminated. /Users/jerrin/workspace/meshlight/fruitymesh/deploy/gcc-arm-none-eabi/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status make: *** [all] Error 1

Have ever encountered these error?
Thanks,
Zelin

gateway node for internet routing

Hello,
excellent work and I was looking at your future milestones.
Do you plan also to implement a node that will act as a bridge i.e. use a mobile phone as a gateway to stream the mesh data online?

Cheers!

Can't implement custom module

Hi,

I am following the instructions here:
https://github.com/mwaylabs/fruitymesh/wiki/Implementing-a-Custom-Module

When I compile from step (3), I get the following compilation error:

Linking target: FruityMesh.elf
/var/folders/qj/bys33jmj7p32jn6knf3bd9cw0000gn/T//ccBIx6jT.ltrans5.ltrans.o: In function `Node::Node(unsigned short)':
/Users/admin/nrf/projects/fruitymesh/./src/mesh/Node.cpp:107: undefined reference to `PingModule::PingModule(unsigned short, Node*, ConnectionManager*, char const*, unsigned short)'
collect2: error: ld returned 1 exit status
make: *** [all] Error 1

issue in the variable (__application_ram_start_address)

Hello,
i am working with VisualGDB. i manage all the code now i have one one error, which belong to this variable __application_ram_start_address

image

here is the problem in the main.cpp file. the undefined reference. when i checked it was in the config file with extern.
it is set in the linker Script. can you please explain me this litte bit.because i really have no idea how i can set this here.

thank you

Working of the "Connection Score" Function ?

Hi. I read your all documents and the code. I didn't quiet get the working of the "Connection Score" Function to make the connection with the other nodes. Can you please explain this or point me to a piece of code that does that. I couldn't find one.
Thanks : )

arm-none-eabi-g++: error: unrecognized command line option '--gc-sections'

Hi guys,
Have you ever encountered this problem?

Compiling file: crc16.c
Linking target: FruityMesh.elf
"/Users/jerrin/nrf/sdk/gcc-arm-none-eabi-5_3-2016q1/bin/arm-none-eabi-g++" -mcpu=cortex-m0 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -flto -fno-move-loop-invariants -Wextra -g -T./linker/gcc_nrf51_s130_32kb.ld -Xlinker  -Wl,-Map,"_build/FruityMesh.map" --gc-sections --specs=nano.specs _build/AdvertisingController.o _build/GAPController.o _build/GATTController.o _build/ScanController.o _build/Main.o _build/Config.o _build/Connection.o _build/ConnectionManager.o _build/Node.o _build/AdvertisingModule.o _build/DebugModule.o _build/EnrollmentModule.o _build/IoModule.o _build/Module.o _build/ScanningModule.o _build/StatusReporterModule.o _build/TestBattery.o _build/Testing.o _build/LedWrapper.o _build/Logger.o _build/LogTransport.o _build/NewStorage.o _build/PacketQueue.o _build/SimpleBuffer.o _build/SimplePushStack.o _build/SimpleQueue.o _build/Storage.o _build/Terminal.o _build/Utility.o _build/app_timer.o _build/ble_radio_notification.o _build/pstorage.o _build/softdevice_handler.o _build/Vectors_nRF51.o _build/simple_uart.o _build/crc16.o -L./linker -L/Users/jerrin/nrf/sdk/ehal_latest/ARM/Nordic/nRF51/CMSIS/Debug -lCMSIS -o _build/FruityMesh.elf
arm-none-eabi-g++: error: unrecognized command line option '--gc-sections'
make: *** [all] Error 1

Change the timer

Dear Marius,

Could you help me how to change the sleep timer of fruity mesh?
You told in the documentation that you use 500 ms timer enabled,but I don't know how to get this value.

Sincerely yours,

Junaedi Adi Prasetyo

Serial port pins...

I am using the following board : http://www.waveshare.com/wiki/BLE400

I ran the deploy scripts and it successfully uploaded the softdevice and firmware.

When trying to connect to the serial port it does not respond. Can you tell me what pins are used for the serial?

Do All nodes know about other nodes ?

Hi. I have 4 nrf51 dongle and was playing around with them using the fruity mesh. One thing that I noticed is that once the mesh is formed, each node only has information of the other node to which it is directly connected. Is there a way to let each node know about what all nodes are present in the mesh ? Is there any command you have for that ?
Thanks : )

Data Rate

Dear Marius,
What is the data rate/throughput of Fruity Mesh?

I tried to send large data with 80 characters and the chip is hanging(need to reset),but with 70 characters is still okay.

Test Battery

Dear Marius,

I have question how to use test battery.cpp?
For example I want to do measurement with those function (void TestBattery::advertiseAt100ms()).
Could you give me an example and how to implement that function?

Sincerely yours,

Junaedi Adi Prasetyo

connect to non mesh node

Hello,
fruitymesh works really well but my problem is that I would like to get a mesh node to connect to a smartband and then mesh the data to a sink (perhaps also outside the mesh)..is there any way to do it?
Thanks

Sorted nodes' IDs

Is there any way that as soon as a node enter the mesh it checks the rest of the node IDs to sort itself in an ascending order? Thanks

Example: first node is node 1, second is node 2 and so... if node 2 turns off and there are 10 nodes the next one would be node 11 or node 2, depending on the situation.

Support for BLE Modules apart from Nordic Semiconductor ?

Hi. I have tried the fruityMesh using the nrf51 dongle and it works really good. I was just thinking that is it possible to flash the same firmware to any other BLE module or board other than Nordic. ex. BLE Modules on board by STmicroelectronics or NXP ?
If it can be done, can you please guide me on how I can do that.
Thanks : )

bsp.c linker issue

Hi there,
I am a Senior in college and I have been looking into using your mesh for a project. I had noticed that there are not any physically driven interrupts native to the code that you have created; everything is done through terminal. So I had tried to create a button interrupt for the pca10036 nordic dev kit through the SDK bsp.c This C file provides the functions of bsp_init() and bsp_event_to_button_action_assign() to use. My issue comes when I try to compile the project. The eclipse linker constantly throws errors stating that the bsp.h and bsp.c cannot be found. I was wondering if there was any special way that I needed to go about linking these files? Along with that is there a better way to go about setting up GPIO and button pin interrupts?

nRF52 support state

Hello!
I'm wondering - what is the current state of nRF52 support in FruityMesh?

So far I've been able to build it against nrf52_sdk_0_9_2 after some fixes to the makefile, but it seems to cause HardFault inside of SoftDevice code (1.0.0-alpha attached with that sdk version, just to be sure) right on softdevice_handler_init in bleInit. I might be missing something since that's my first take on Nordic products.

Debug52 build configuration in Eclipse fails pretty much the same way.

Has anyone been able to run FruityMesh on nRF52 then?

I'm running Preview/Engineering A revision, precisely, I'll try it on recent Development Kit soon.

Unify commandArgs and commandName to lowercase only

Currently, the commandName is uppercase in code and the commandArgs are lowercase. Just expect everything to be lowercase in the future. That makes typing easier and we can just omit the algorithm class that is used for ::toupper

Does the Fruitymesh Binary include the softdevice?

I had a look at the deploy scripts and FruityMesh jlink file does net specify the memory location it writes to. Does the main that the Softdevice is included in the Binary and that it writes to memory location 0?

Data sent across mesh not same as data sent locally

Hi,

I have been doing my best to send a string of characters from one node to another using a custom module. The odd thing is it works perfectly when the node sends the message to itself. However when it sends to another node on the mesh only part of the message gets through.

(I can see in the ConnectionManager that when the target node ID is local it simply fires the relevant local Node callback rather than using a network connection, which makes sense. But as far as I can tell, the message data is not altered or corrupted prior to the sd_mutex_release call in PacketQueue::Put.)

I'll show you. This code is in the TerminalCommandHandler of my custom module:

connPacketModuleAction packet;
//..packet headers etc..
string testString = "test";
std::vector<u8> convert(testString.begin(), testString.end());
for(int i = 0; i < convert.size(); i++) {
    packet.data[i] = convert[i];
    logt("GATEWAYMOD", "%d", packet.data[i]);
}

cm->SendMessageToReceiver(NULL, (u8*)&packet, SIZEOF_CONN_PACKET_MODULE_ACTION + 1, true);

And this is in the ConnectionPacketReceivedEventHandler of the same custom module:

connPacketModuleAction* packet = (connPacketModuleAction*)packetHeader;
logt("GATEWAYMOD", "%d %d %d %d", packet->data[0], packet->data[1], packet->data[2], packet->data[3]);

string testString = "";         
for(int i = 0; i < sizeof(packet->data); i++) {
    testString += packet->data[i];
}
logt("GATEWAYMOD", "'%s'", testString.c_str());

When I send the message back to the local node ID, here is the output:

[GatewayModule.cpp@103 GATEWAYMOD]: 116
[GatewayModule.cpp@103 GATEWAYMOD]: 101
[GatewayModule.cpp@103 GATEWAYMOD]: 115
[GatewayModule.cpp@103 GATEWAYMOD]: 116
[GatewayModule.cpp@119 GATEWAYMOD]: 116 101 115 116
[GatewayModule.cpp@125 GATEWAYMOD]: 'test'

However when I send remotely, here is the output from the source node:

[GatewayModule.cpp@103 GATEWAYMOD]: 116
[GatewayModule.cpp@103 GATEWAYMOD]: 101
[GatewayModule.cpp@103 GATEWAYMOD]: 115
[GatewayModule.cpp@103 GATEWAYMOD]: 116

And here is the output from the target node:

[GatewayModule.cpp@119 GATEWAYMOD]: 116 0 0 0
[GatewayModule.cpp@125 GATEWAYMOD]: 't'

As you can see, only the first byte in the array is received. I have exactly the same code running on both nodes.

OSX development environment and Makefiles

@tkdom wrote:

Thanks Marius!

Nice work on the mesh! I am going to try to get your binaries built under OS X with gcc if I can this weekend. I was hoping there would be makefiles, but I am happy you open sourced the code, so I am not comPlanning :). Unfortunately, I am not that familiar with eclipse. I have all the nrf51 SDK 9 examples running under the gcc tool chain on OS X. I would assume the nrf51822 beacon pca20006 would work, but my initial attempt was not successful. I'll give it another shot after I figure out how to actually build the fruity mesh binary from scratch.

If I can get all that stuff set up, I will use fruity mesh as a basis for an internal technology workshop in October with ThoughtWorks. Thanks for all the great work. Any pointers you might have in addition to what is on the wiki for getting the build environment set up would be appreciated. If I can get make files working with SDK 9 I will certainly send you a pull request...

Tim

arm-none-eabi-g++: unrecognized option '-Wl,-Map,_build/FruityMesh.map'

Hi, I cannot compile, I used the fix for --gc-sections in the other post, however I now get this.

Compiling file: crc16.c
Linking target: FruityMesh.elf
"/usr/local/gcc-arm-none-eabi-4_9-2015q2/bin/arm-none-eabi-g++" -mcpu=cortex-m0 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -flto -fno-move-loop-invariants -Wextra -g -T./linker/gcc_nrf51_s130_32kb.ld -Xlinker  -Wl,-Map,"_build/FruityMesh.map" -Wl,--gc-sections --specs=nano.specs _build/AdvertisingController.o _build/GAPController.o _build/GATTController.o _build/ScanController.o _build/Main.o _build/Config.o _build/Connection.o _build/ConnectionManager.o _build/Node.o _build/AdvertisingModule.o _build/DebugModule.o _build/EnrollmentModule.o _build/IoModule.o _build/Module.o _build/ScanningModule.o _build/StatusReporterModule.o _build/TestBattery.o _build/Testing.o _build/LedWrapper.o _build/Logger.o _build/LogTransport.o _build/NewStorage.o _build/PacketQueue.o _build/SimpleBuffer.o _build/SimplePushStack.o _build/SimpleQueue.o _build/Storage.o _build/Terminal.o _build/Utility.o _build/app_timer.o _build/ble_radio_notification.o _build/pstorage.o _build/softdevice_handler.o _build/Vectors_nRF51.o _build/simple_uart.o _build/crc16.o  -L./linker -L/home/deploy/nrf/sdk/ehal_latest/ARM/Nordic/nRF51/CMSIS/Debug -lCMSIS -o _build/FruityMesh.elf
/usr/local/gcc-arm-none-eabi-4_9-2015q2/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld: unrecognized option '-Wl,-Map,_build/FruityMesh.map'
/usr/local/gcc-arm-none-eabi-4_9-2015q2/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld: use the --help option for usage information
collect2: error: ld returned 1 exit status
make: *** [all] Error 1

Read IO pins

I wonder if the IO module would be able to read a button/sensor connected to the io pins so it could, for example, use the action module to do an enrollment? Thanks

get_device_info returns invalid deviceType for remote nodes

{"nodeId":7124,"type":"device_info","module":3,"dBmRX":10,"dBmTX":10,"deviceType":0,"manufacturerId":65535,"networkId":3,"nodeVersion":30000,"chipId":"50:EB:57:20:33:22:11:00","serialNumber":"EDCBA","accessAddress":"55:44:33:22:11:00"}
{"nodeId":7123,"type":"device_info","module":3,"dBmRX":10,"dBmTX":10,"deviceType":43,"manufacturerId":65535,"networkId":3,"nodeVersion":30000,"chipId":"FE:E1:79:31:00:11:22:33","serialNumber":"ABCDE","accessAddress":"00:11:22:33:44:55"}

action 0 status get_device_info has been issued on 7124, deviceType for 7123 is 43, which is invalid. Neither of these devices were listed in testDevices array and persistent config has been set to be ignored.

(I'll look into it, just noting it down)

Encryption for all mesh connections

It must be possible to encrypt all connections in the mesh, we should therefore introduce a mesh-wide encryption key. This is step 1. Afterwards, we should ensure that JOIN_ME packets are also at least authenticated so that no attacker can break up mesh connections and disturb the algorithm.

Not able to Use commands on Terminal

Hi, I am new to FruityMesh. I like this idea and have got all the hardware required with the software. The modules paired up pretty nicely and all handshake was good but as I type a command in the terminal in front of "mhTerm" it dosen't works most of the times. Like when I type "startterm" then nothing happens. Sometimes, it returns "Command not Found". So, please if you can guide me on this like what should I expect to see on using these commands or how to enter these commands. I am pretty sure I am missing something as rest everything looks good.
Please if you can help.
Thanks

Does fruitymesh support data from S110 node

Hello,

When i have a nrf51 with S110 on it and its broadcasting its data with ibeacon. does the fruitymesh network pick this up and send it to the other fruitymesh nodes?

Kind regards

UART communication bug

Hi guys,
I use UART for communication with a control application. nRF51822 will miss some characters when the host sends a string to it. Maybe it has bug in simple_uart. Have you ever meet this problem?
I am trying to use FIFO in uart.

Thanks.

Connect iOS device to FruityMesh

Hi FruityMesh,

Is it possible to connect a iOS device to a FruityMesh node/network? Could it be done with nRF/BLE UART or similar?

Regards
Henke

Can the Advertisement Channel be Changed ?

@mariusheil Hi Marius. I am reading the code and in the file "Config.h", I see that under "ADVERTISING" you define three advertising channels (37,38,39) with values. It seems that currently its only using channel 37 and not the rest of the two. Is there any reason why the rest of the two have not been used.
Can all three of them be used to advertise the data one after the other so as to add more number of connecting nodes(peripherals) ?
Thanks : )

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.