Giter VIP home page Giter VIP logo

cetic / 6lbr Goto Github PK

View Code? Open in Web Editor NEW
336.0 336.0 192.0 72.97 MB

A deployment-ready 6LoWPAN Border Router solution based on Contiki

Home Page: github.com/cetic/6lbr/wiki

License: Other

Makefile 0.38% C 80.01% HTML 0.02% JavaScript 0.07% CSS 0.03% C++ 5.02% Assembly 0.62% Awk 0.01% XSLT 0.02% Python 1.79% Perl 0.35% Shell 0.05% Objective-C 0.02% Gnuplot 0.01% Dockerfile 0.01% Java 11.61% Batchfile 0.01% Asymptote 0.01%
6lowpan 6lowpan-border-router border-router contiki ieee-802154 iot ipv6 nat64 rpl

6lbr'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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

6lbr's Issues

DTLS decrypt problems

Hello,

i am having packet lost problems while communicating 2 motes (dtls-client and dtls-server).
It only happens when the DTLS handshake try to send 3 packets ( 120 bytes each) in a aproximately 150 ms between the first and the last one.
The sender(dtls-client) sends all properly ( wireshark detects it too, properly), but the receiver(dtls-server) just receive the first one, or the second one too, but never all of them. I think that is it not problem of buffer size or queuebuf, since the defines are the following:

define QUEUEBUF_CONF_NUM 14

define UIP_CONF_BUFFER_SIZE 2560

Since i think that the problem is caused by the lack of the delay between sends, I would like to make a delay separation between the packets to give to the receiver some extra time to receive all properly, but the three packets are sent from a function, not directly from the main of a process, so i am only able to make some _delay_loop_2(50000); but this doesnt work because ( i think) its stops all the retransmission by making the CPU stay busy.
I have tried by calling a second process from the function, just to make a process_wait_event_until ( etimer expired..) but when the second process is waiting, the program returns to the first process, where the function is running, so it doesnt works too.

Any idea? Maybe any way to pause the first process from the second process while the process_wait_event is waiting.. and then resume the first process ( if its posible, i dont know..). I have read that the process_wait_event doesnt makes the CPU stay busy so i guess that the packets would be sent while the program is waiting, so i only need a way to pause the first process while the second one is waiting.

If you think that the problem is not the lack of delay between packets, tell me please.

If more information is needed, please just ask for it :)

PD: i am using Contiki-2.7, ATMEGA256RFR2, csma.c and nullrdc.

Regarding Copper Plugin

Hello Guys,
I am trying to connect with rest-server using copper plugin, but it gives error "server" not responding. I am running rest-server within cooja and able to ping it from linux machine but not abel to connect through copper.
I also tried coap-client-server simulation but not able to connect.

Thanks,

Bring back the not editable configuration page in webserver

A not editable configuration page was present in 1.0 and has been removed in 1.1. It should be reintroduced as currently anybody can access the configuration page and modify the configuration.

Also, a nvm option should be added to select wether the configuration could be modified through the webserver or not.

Is necessary to use bridge-utils in 6lbr?

Dear friends.
iam always struggle with the 6lbr due to getting errors when i typed this command----make all_native.
it's always displayed error i.e "compilation terminated and something else." please slove my issue to know anything on my problem.
Iam appreciate with your help.

thanks.
nagesh.

SLIP-Radio support for Econotag

Kerry Lynn asked about supporting Slip-Radio on Econotag.

I look forward to getting this working with ingredients I have close at hand: namely the
Raspberry Pi with an Econotag radio.  If you already have this recipe handy
then please point me to it, otherwise I shall gain familiarity by first building
the 6lbr for an Ubuntu system and then move to Raspbian.

problem of porting to stm32+enc28j60+at86rf231

Dear developers,
I am very interested in 6lbr, but i don't have the hardware you support. So I made a hardware by myself, using stm32f103ret6 as the main cpu. It has 512K flash and 64K SRAM and I think it is better than MC13224( and MC13224 is hard to buy in China). The ethernet interface I use enc28j60 as you did on Econotag and I have tested it worked. The radio chip I used is at86rf231 and I ported the driver in AVR Raven and it can worked as a leaf node runing coap rest server.
Recently, I have tried to port 6lbr onto my hardware according to the Econotag part in the example but failed. I plug one end of the cable into the RJ45 interface on my hardware, and the other end to my ipv6 router(it runs openwrt) from which my computer can obtain the prefix 2001:1::. But I failed to ping my eth addr or wsn addr. Is there anything wrong with my test method? Do you have some publications besides the website? Or any material that may help me, please send to my email: [email protected]. Thanks very much!! If I succeed I will put my code on github. BTW, I have AVR Raven USB Stick at hand, I usually use it to capture the data with wireshark. Can this help?
Here is my debug output, hope you can find something.

Initialising Contiki 2.6
Platform stm32f (dev 0414, rev 1003)
UID96: ff37 b0d9 4331 3935 6638 5711
PseudoID16: 41b6
rtimer irq cc
Rtimer init done
Rime address 02:11:22:ff:fe:33:44:88
rf231_process started

nullmac nullrdc, channel check rate 1000 Hz, radio channel 26
Tentative link-local IPv6 address Starting 'CETIC Bridge process'
Reading 6LBR NVM
NVM Magic : 2013
NVM Version : 1
WSN Prefix : 2001:0002:0000:0000:0000:0000:0000:0000
WSN IP address : 2001:0002:0000:0000:0000:0000:0000:0101
Eth Prefix : 2001:0001:0000:0000:0000:0000:0000:0000
Eth IP address : 2001:0001:0000:0000:0000:0000:0000:0100
Mode : 5f
Channel : 26
Low2Eth direct : 02:11:22:ff:fe:33
Eth MAC address : 02:11:22:33:44:88
ENC-28J60 Process started
ENC28J60 init
ENC28 REV 6
Init of IPv6 data structures
35 neighbors
2 default routers
3 prefixes
35 routes
4 unicast addresses
6 multicast addresses
2 anycast addresses
Adding prefix fe80::length 64, flags 0, Valid lifetime 0, Preffered lifetime 0
RPL started
Processes running
node_info_init
packet_filter_init
Flashing 6LBR NVM
RPL: Node set to be a DAG root with DAG ID fe80::11:22ff:fe33:4488
Tentative local IPv6 address fe80:0000:0000:0000:0011:22ff:fe33:4488
Tentative global IPv6 address (WSN) 2001:0002:0000:0000:0011:22ff:fe33:4488
RA with autoconfig
Adding prefix 2001:1::length 64, flags c0, Valid lifetime 7530, Preffered lifetime 7530
uip_ds6_defrt_add: adding default route to 2001:1::1
Tentative global IPv6 address (ETH) 2001:0001:0000:0000:0000:0000:0000:0100
RPL: Prefix set - will announce this in DIOs
rpl_set_prefix - prefix NULL
Adding route information 2001:2::length 64, flags 0, route lifetime 258
Starting as ROUTER
CETIC 6LBR Started
IPv6 packet send from :: to ff02::1:ff33:4488
IPv6 packet send from :: to ff02::1:ff00:100
translateIP: ICMP Message detected
ENC28 send: 64 bytes : 33:33:ff:0:1:0 2:11:22:33:44:88 86:dd 60 0 0 0 0 18
IPv6 packet send from :: to ff02::1:ff33:4488
Random time 1 = 383
Random time 2 = 16
Random time 3 = 16
DAD succeeded, ipaddr:fe80::11:22ff:fe33:4488
DAD succeeded, ipaddr:2001:1::100
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
DAD succeeded, ipaddr:2001:2::11:22ff:fe33:4488
Sending periodic RA
Random time 1 = 535
Random time 2 = 16
Random time 3 = 16
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1
translateIP: ICMP Message detected
ENC28 send: 120 bytes : 33:33:0:0:0:1 2:11:22:33:44:88 86:dd 60 0 0 0 0 50
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
Sending periodic RA
Random time 1 = 457
Random time 2 = 16
Random time 3 = 16
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1
translateIP: ICMP Message detected
ENC28 send: 120 bytes : 33:33:0:0:0:1 2:11:22:33:44:88 86:dd 60 0 0 0 0 50
Sending periodic RA
Random time 1 = 433
Random time 3 = 433
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1
translateIP: ICMP Message detected
ENC28 send: 120 bytes : 33:33:0:0:0:1 2:11:22:33:44:88 86:dd 60 0 0 0 0 50
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
Solicited RA, random time 0
Sending periodic RA
Random time 1 = 354
Random time 3 = 354
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1
translateIP: ICMP Message detected
ENC28 send: 120 bytes : 33:33:0:0:0:1 2:11:22:33:44:88 86:dd 60 0 0 0 0 50
Adding neighbor with ip addr fe80::11:22ff:fe33:4433link addr 02:11:22:ff:fe:33:44:33state 2
Solicited RA, random time 0
Sending periodic RA
Random time 1 = 542
Random time 3 = 542
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1
translateIP: ICMP Message detected
ENC28 send: 120 bytes : 33:33:0:0:0:1 2:11:22:33:44:88 86:dd 60 0 0 0 0 50
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
Solicited RA, random time 0
Sending periodic RA
Random time 1 = 516
Random time 3 = 516
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1
translateIP: ICMP Message detected
ENC28 send: 120 bytes : 33:33:0:0:0:1 2:11:22:33:44:88 86:dd 60 0 0 0 0 50
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a
IPv6 packet send from fe80::11:22ff:fe33:4488 to ff02::1a

How to use 6lbr as rpl root with COOJA slip radio?

  1. I was trying to run 6lbr as rpl root router but it is not able to detect the neighbour nodes when i add some rpl-udp-client and rpl-udp-server in cooja.
  2. After running 6lbr as rpl root , now i tried using 6lbr as rpl router , it give following error:-
    cetic_6lbr_router: can't connect to localhost:60001'': Invalid argument kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec] client: connect: Connection refused cetic_6lbr_router: can't connect tolocalhost:60001'': Invalid argument
    kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
    client: connect: Connection refused
    cetic_6lbr_router: can't connect to localhost:60001'': Invalid argument kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec] client: connect: Connection refused cetic_6lbr_router: can't connect tolocalhost:60001'': Invalid argument
    kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
    client: connect: Connection refused
    cetic_6lbr_router: can't connect to ``localhost:60001'': Invalid argument
    kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]

Issues for 6LBR in Linux PC

Dear developers,

  1. The 6LBR installed in my Ubuntu 10.04 doesn't auto-generate 6lbr.conf.
  2. 6lbr-demo is failed to upload into the Z1 node, with error 'Import Error: No module named serial'. I don't understand why the line 17 in 6lbr/tools/z1/z1-bsl-nopic is appending "/usr/lib/tinyos" in the path? I must install Tiny OS in order to make 6LBR works?
  3. Do you have more examples of 6LBR on Linux PC, I need more examples for understanding.

Thank you.

Redwire IO Configuration

Greetings!

We seem to be having a bit of trouble getting 6lbr up and running on a few Redwire IO's. (i.e. - these: https://redwire.myshopify.com/products/io-embedded-router-contiki-based)

We have followed the directions found here: https://github.com/cetic/6lbr/wiki/Redwire-IO-Configuration

The host OS is Ubuntu 13.04.

Though a bit rocky at first, it appears as though we have managed to successfully build everything.

These are the results of using the loader to upload the "router" image:

user@host:~/git/6lbr/cpu/mc1322x/tools$ ./mc1322x-load.pl -t /dev/ttyUSB1 -f ~/git/6lbr/examples/6lbr/tools/econotag/flasher_m12.bin -s ~/git/6lbr/examples/6lbr/bin_red-io/cetic_6lbr_router -c 'sudo bbmc -l redbee-econotag reset' -b 200
Found 1 devices with vendor id 0x0403 product id 0x6010
Opening device 0 interface 1 using layout redbee-econotag
toggle reset
done.
.CONNECT
Size: 11420 bytes
Sending /home/user/git/6lbr/examples/6lbr/tools/econotag/flasher_m12.bin
secondary send...
.Detecting internal nvm
nvm_detect returned: 0x00 type is: 0x00000001
nvm_erase returned: 0x00
ready
Size: 72904 bytes
Sending /home/user/git/6lbr/examples/6lbr/bin_red-io/cetic_6lbr_router
done sending files.
write_len: 0x00011cc8
write successfully done
prog_len: 0xea0001ff
flasher done

So, fantastic, it looks as though everything was flashed. However, now we seem to be stuck.

There is no output on the serial. Should there be? We have assumed 115200 8N1 with no luck. Other configurations also fail to produce output.

Following the connection guide here: https://github.com/cetic/6lbr/wiki/6LBR-Connection
seems to allow us to connect. (eth0 shows connection at least)

eth0 Link encap:Ethernet HWaddr (eth0 MAC)
inet6 addr: bbbb::101/64 Scope:Global
inet6 addr: (eth0 IPv6 address)/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

What should the address of the Redwire IO be? We presumed bbbb::100 but

user@host:~$ ping6 -I eth0 bbbb::100
PING bbbb::100(bbbb::100) from bbbb::101 eth0: 56 data bytes
From bbbb::101 icmp_seq=1 Destination unreachable: Address unreachable
From bbbb::101 icmp_seq=2 Destination unreachable: Address unreachable
From bbbb::101 icmp_seq=3 Destination unreachable: Address unreachable

Alternatively, the broadcast: ping6 -I eth0 ff02::1 produces responses only from eth0's IPv6 address.

Additionally, we cannot reach the webserver http://[bbbb::100]. Should we be able to or does this require further configuration?

Ideally, we would like to be able to set up a transparent link between two Redwire IO's (i.e. - what goes in the IPv6 ethernet interface of one comes out the other and vice versa) but we can't even seem to verify that a device is working at all. How can we tell?

Any information that anyone can provide would be greatly appreciated.

Thank you in advance for your support.

Installation of 6LBR in Ubuntu 10.04

Hi,

Thanks for suggestion but I didn't try the Python2.7 yet. The 6lbr still not works for me.

Everything is configured as default except that

  1. /etc/6lbr/6lbr.conf (RAW_ETH=1 and DEV_ETH=eth1)
  2. /6lbr/examples/6lbr/package/etc/6lbr/6lbr.conf.example (#DEV_ETH=eth1)
    because my 6LBR is connected to a Eth1 interface.

The Ubuntu client unable to connect to the [bbbb::100]. Can you point out me where I did wrong.. Thank you.

6lbr

First packet towards an Ethernet new neighbour contains RPL HBH extension header

The first packet towards an Ethernet new neighbour (the packet that has triggered a NS/NA handshake) contains RPL Hop-by-Hop extension header. Because of that extension header, the packet is dropped by the host. This explains why sometimes the connexion towards 6LBR seems to hang but is fine when we refresh the page.

build-cooja target fails as root

When make build-cooja fails as root in one of the COOJA plugin build steps (for reason I have yet to determine), the rest of the build fails, and we never go through the few lines of bash that edit ~/.cooja.user.properties

Segmentation fault: cetic_6lbr_init () at cetic-6lbr.c:154

Here is the backtrace
(gdb) bt
#0 0x0040603c in cetic_6lbr_init () at cetic-6lbr.c:154
#1 0x00406c6c in process_thread_cetic_6lbr_process (process_pt=0x44502c <cetic_6lbr_process+12>, ev=133 '\205', data=0x0) at cetic-6lbr.c:329
#2 0x0041b40c in call_process (p=0x445020 <cetic_6lbr_process>, ev=133 '\205', data=0x0) at ../../core/sys/process.c:190
#3 0x0041b794 in do_event () at ../../core/sys/process.c:296
#4 0x0041b7e0 in process_run () at ../../core/sys/process.c:310
#5 0x0042e75c in main (argc=16, argv=0x7fff6d24) at ../../platform/mips/./contiki-main.c:250

The function uip_ds6_get_link_local is returning NULL.
uip_ds6_addr_t *local = uip_ds6_get_link_local(-1);

(gdb) p local
$11 = (uip_ds6_addr_t *) 0x0

I was trying to run the 6lbr on the MIPS platform. I am using D-LINK router running openwrt linux. These routers are much cheaper then raspberry pi/beaglebone and come with inbuilt wifi capabilities.

I successfully cross compiled the 6LBR code using the MIPS uClibc and the mips gcc.
I could not get the startup scripts(init.d and /usr/bin/6lbr) running. the openwrt uses the ash shell whose syntax differs significantly from bash. So i just thought i would run the binaries manually to save time and effort
.
Here is how i started the binary
/usr/lib/6lbr/bin/cetic_6lbr_router -c /etc/6lbr/nvm.dat -s /dev/ttyACM0 -t tap0 -R -B 115200 -U /usr/lib/6lbr/6lbr-ifup -D /usr/lib/6lbr/6lbr-ifdown -w /usr/lib/6lbr/www

I have all the necessary dependency installed on openwrt
-brctl
-ip

My configuration file
root@OpenWrt:/tmp# cat /etc/6lbr/6lbr.conf

MODE=ROUTER

RAW_ETH=0
BRIDGE=1
DEV_BRIDGE=br0
DEV_TAP=tap0
DEV_ETH=eth0
RAW_ETH_FCS=0

DEV_RADIO=/dev/ttyACM0
BAUDRATE=115200


Here is the output once i run it.

contiki 2.6 started with IPV6, RPL
Rime started with address 1.2.3.4.5.6.7.8
MAC CSMA RDC br-rdc NETWORK sicslowpan
Opening nvm file '/etc/6lbr/nvm.dat'
NVM Magic : 2009
NVM Version : 1
RAW/TAP init
********SLIP started on /dev/ttyACM0'' opened device/dev/tap0''
6lbr-ifup: Attach device eth0 to bridge br0
br0 Link encap:Ethernet HWaddr 02:0A:0B:0C:0D:0E
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

tap0 Link encap:Ethernet HWaddr 02:0A:0B:0C:0D:0E
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

Reset SLIP Radio
Fetching MAC address
TUN data incoming read:110
Got MAC: 00:00:00:00:00:00:00:00
Low2Eth adding prefix
Eth MAC address : 02:03:00:01:52:f6
Opening nvm file '/etc/6lbr/nvm.dat'
Configured as DODAG Root
Segmentation fault

FATAL: SLIP: can't connect to localhost:60001

Hello,

I am trying to simulate 6lbr in cooja following the tutorial you provide. But, when i try to launch 6lbr, i obtain an error which says that SLIP can't connect to localhost.

This is what i obtain when i execute
sudo make launch-6lbr-router-1-cooja


Mon Mar 31 15:31:33 CEST 2014 : Starting 6LBR


Mon Mar 31 15:31:33 CEST 2014 : Starting 6LBR
../bin/cetic_6lbr_router -c conf-templates/test.dat -a localhost -t tap0 -R -U ../package/usr/lib/6lbr/6lbr-ifup -D ../package/usr/lib/6lbr/6lbr-ifdown -w ../package/usr/lib/6lbr/www -W /var/log/6lbr.timestamp -P 60
Contiki-6lbr-1.3 started with IPV6, RPL
Rime started with address 1.2.3.4.5.6.7.8
MAC CSMA RDC br-rdc NETWORK sicslowpan
Log level : 30
Log services : ffffffff
2014-02-31 15:31:33.221556: INFO: ETH: 6LBR watchdog started (interval: 60)
2014-02-31 15:31:33.221674: INFO: 6LBR: Starting 6LBR version 1.3 (Contiki-6lbr-1.3)
2014-02-31 15:31:33.221720: INFO: NVM: Opening nvm file 'conf-templates/test.dat'
2014-02-31 15:31:33.221825: INFO: NVM: NVM Magic : 2009
2014-02-31 15:31:33.221873: INFO: NVM: NVM Version : 1
2014-02-31 15:31:33.221919: INFO: SCMD: Started br-cmd process
2014-02-31 15:31:33.221964: INFO: NODECFG: No node_config.conf file specified
2014-02-31 15:31:33.222009: INFO: ETH: RAW/TAP init
2014-02-31 15:31:33.223696: ERROR: SLIP: connect() : Connection refused
2014-02-31 15:31:33.223759: ERROR: SLIP: can't connect to localhost:600012014-02-31 15:31:33.223761: FATAL: SLIP: can't connect to localhost:60001
../package/usr/bin/6lbr: line 192: 22529 Terminated application_watchdog
Mon Mar 31 15:31:33 CEST 2014 : ../bin/cetic_6lbr_router failed, exit code: 1

Do you have any idea about what could happen?

Thank you

Node can't get aaaa:: prefix

Hi, guys:
Today I use 6LBR and cc2538 board to do a test, when I use the 6lbr-demo example the board works well. But when I use the ipv6 example(udp-clinet or udp-sever) the node can't get the aaaa:: prefix. On the 6lbr network page the node only appears under the Neighbors title, not appears under the Routes title. Could someone tell me why? And how to solve the problem if use udp-client or udp-server?

Regards,
Hengli

Supported hardware

Hi, does the 6lbr examples work on a SMARTrf06 evaluation board with a cc2538 on it?

6LBR Release 1.3

We are pleased to announce that Version 1.3 of 6LBR is available. This
version is merged against the latest Contiki, it provides CoAP over DTLS
support (Interoperable with native TinyDTLS and Californium), many RPL
stability improvements, better reliability of slip-radio and many others
bugfixes. See the changelog below or the Wiki for more information.

As the RPL modification are not yet merged into Contiki, it is
recommended to build your motes and slip-radio inside 6LBR tree.

DODAG channel interference

Hi, we are using 6LBR 1.0 in BeagleBone Black with our Atmega128-RFA1 based platform (www.batmote.net). The problem occurs when we put two border routers nearby, one in channel 25 and the other in channel 26. It is not automatic, but after some hours, somehow a new DODAG from one of the networks appears in the other one and everything mess up. How is this possible?

Er-rest-client

Hello Guys ,
I have cloned the latest version 1.3.1 of 6lbr, i am trying to compile /example/6lbr-demo/ for cc2538dk evaluation module ,its compiled perfectly and able to flashed it, Now to connect it from client i need t make er-rest-client natively, but when i m trying to do that by the command "make TARGET=native er-rest-client-example , its not happening.
I have not changed anything into the code i m just compiling the code what has been provided.
Its showing the errors ,
In file included from er-example-client.c:57:0:
../../apps/er-coap-13/er-coap-13-engine.h:89:17: error: too few arguments to function ‘coap_blocking_request’
static struct request_state_t request_state;
^
er-example-client.c:142:7: note: in expansion of macro ‘COAP_BLOCKING_REQUEST’
COAP_BLOCKING_REQUEST(&server_ipaddr, REMOTE_PORT, request, client_chunk_handler);
^

Thanks ,

6lbr on ubuntu12.04 has something wrong

Hi,
I intend to install 6lbr on my naptop with ubuntu12.04,but I can't make it.
Under the example/6lbr I use the command "make all_native" but finally it print the following error message:

../../platform/native/ctk/ctk-curses.c:34:20: fatal error: curses.h: No such file or directory
compilation terminated.
make[2]: *** [obj_native/ctk-curses.o] Error 1
make[2]: Leaving directory /home/li-ubuntu/Documents/cetic-6lbr-74dac48/examples/6lbr' make[1]: *** [bin/cetic_6lbr_smart_bridge] Error 2 make[1]: Leaving directory/home/li-ubuntu/Documents/cetic-6lbr-74dac48/examples/6lbr'
make: *** [all_native] Error 2

could someone give some help?

NVM Settings Documentation Request

I seem to be having a bit of trouble sorting out the NVM settings.

It had been mentioned in Issue #48 that:
"About connecting two IO, it is not possible using RPL enabled builds. What you have to do is either use the NDP-Router mode and the two IO will act as vanilla IPv6 routers. Another possibility is to use full transparent bridge mode, in that case each IO will forward packet received on one interface to the other and vice-versa. (please note that this mode is untested on IO, although it should work)"

While Redwire IO's fit my specific application, the question/request for documentation is general and could apply to any 6lbr device.

Here is what my nvm.dat file looks like:

Reading nvm file 'nvm.dat'
Channel : 24

WSN network prefix : aaaa::
WSN network prefix length : 64
WSN IP address : aaaa::100
WSN accept RA : True
WSN IP address autoconf : True

Eth network prefix : bbbb::
Eth network prefix length : 64
Eth IP address : bbbb::100
Eth default router : bbbb::1
Eth IP address autoconf : False

Local address rewrite : True
Smart Multi BR : False

RA daemon : True
RA router lifetime : 0
RA maximum interval : 600
RA minimum interval : 200
RA minimum delay : 3
RA PIO enabled : True
RA prefix valid lifetime : 86400
RA prefix preferred lifetime : 14400
RA RIO enabled : True
RA RIO lifetime : 1800

RPL instance ID : 30
RPL Preference : 0
RPL version ID : : 240
RPL DIO interval doubling : 8
RPL DIO minimum interval : 12
RPL DIO redundancy : 10
RPL default lifetime : 30
RPL minimum rank increment : 256
RPL lifetime unit : 256

Webserver configuration page disabled : False

Any documentation other than that mentioned at: https://github.com/cetic/6lbr/wiki/Nvm-Tool would be useful perhaps? What settings might need to be adjusted to get two devices to connect to each other? Links to external documentation referring to what these settings mean (or should be set to) would also be perfectly acceptable.

Allow run time configuration of log level

Currently one has to recompile 6LBR to change the amount of log produced by 6LBR. For modules under 6lbr/ (at least packet-filter and rap-tap-drv) it should be possible to configure at run time if they should print out logs or not, like what it's done in slip driver.

Also, we should add in 6lbr.conf two new parameter to configure the actual log files (LOG_FILE=..., ERR_FILE=…)

watchdog_reboot() not implemented for Econtag

6LBR requires that slip-radio performs a reset at 6LBR startup (in order to start from clean condition). However, on Econotag the function watchdog_reboot() is empty and the slip-radio keeps using the old configuration.

telosB 2 telosB with RPi and Java

Hello,

    my scenario is the following:

I have two raspberry pi respectively attacked with a telosB each. I would like to send a raspberry to another COAP a package with a java application made ​​by me.

Example starting the program Test.java 4000 192.168.0.2:5000 a raspberry is listening on port 4000 and sends CoAP packet to the address 192.168.0.2 port 5000.

With a wifi interface everything works perfectly. Now I would like to replace the wifi with two telosB.

In practice I would use the two telosB as communication interface (not using wifi or ethernet). What programs do I need to load on telosB and how should I configure the two raspberry? How do I assign the interface tap0 a certain address (eg 192.168.0.3)?

thanks

Deployment of 6lbr on cc2538dk Evaluation Module

Hello Guys,
I am using cc2538dk EM kit for my purpose, i have gone through the whole "Hello 6lbr" thread and able to set-up everything, but when i access the 6lbr-border router web page using "[bbbb::100]" address i am not able to get any entry in the node field, i am attaching the image of that.
One more problem i am having that when i access the module on which 6lbr-demo is been flashed through UART , i am not getting any "Tentative IPv6 address " on screen as it shows on cooja , and i have tried same thing on STM32W platform there i am getting "Tentative IPv6 address". But on cc2538dk i am getting only following
Contiki-6lbr-1.3.1
TI SmartRF06 + cc2538EM
Net: sicslowpan
MAC: CSMA
RDC: nullrdc
Rime configured with address 00:12:4b:00:89:ab:cd:ef

So it should be like that only or it should show IPv6 address too.
Please Help
Thanks
screenshot from 2014-06-17 17 54 42
screenshot from 2014-06-17 17 52 49
screenshot from 2014-06-17 17 52 34
screenshot from 2014-06-17 17 52 17

RTLS

Any way to ease development of an RTLS with 6lbr?

Serial2pty is broken on MacOS-X

Cooja plugin serial2pty is broken on MacOS-X, for very strange reason (bug), when a pty is created, everything that is written on the master pty is read back on the master. One have to connect a slave pty to end this erroneous behaviour.
Because of that bug, mote's serial output is directly fed into their input and after a few seconds the whole simulation collapse due to this infinite loop.

Default value of LIB_6LBR is wrong

It seems that the default value of LIB_6LBR is wrongly inferred when not specified in 6lbr.conf

6lbr-functions line 75 :

LIB_6LBR=`dirname $0`/../lib/6lbr

should be replaced by :

LIB_6LBR=`dirname $BASH_SOURCE`

Otherwise LIB_6LBR depends on the calling script location

Or one could set up LIB_6LBR explicitly in 6lbr.conf

LIB_6LBR=/usr/lib/6lbr

can I use wlan0 instead of eth0?

I need to make a border router using the wifi (I have a usb dongle) and let me know if you can use the examples that we are here on github. How do I set 6lbr on wlan0?

6lbr daemon starting

Hello Guys,
Using following command i run the daemon
devesh@devesh-Inspiron-5420:~/6lbr/examples/6lbr$ sudo /etc/init.d/6lbr start
Following error has been throwing

  • Starting 6LoWPAN Border Router 6lbr
    /usr/lib/6lbr/6lbr_run.sh: 13: /usr/lib/6lbr/6lbr_run.sh: /usr/lib/6lbr/bin: Permission denied

Thanks

COOJA examples: allow to auto-start UDP clients

Currently the Makefile targets (launch-6lbr-router-1-cooja) which allow to launch COOJA automatically and connect a 6LBR to it does not use to auto-start mode of the UDP clients. It would be good for a newcomer to not have to deal with starting udp clients manually, so he can visualize the DODAG as soon as the webserver is UP.

The targets need a bit of refactoring to allow with or without auto-start.

6lbr rest example

Hello Guys,
In the rest coap-client the ip address of server is hard-coded, but in real deployment how we'll come to know the ip address of coap-server dynamically. Which API of 6lbr will able to get it.
Thanks.

Basic Question on 6LBR

Hi All,

I have few basic questions regarding 6LBR,

1, what is the purpose of TAP interface in 6LBR, why it's needed to bridge the TAP interface with Ethernet ?
2. The 6LBR is hardcoded with BBBB::100 to access the webserver, but, when I run "ifconfig -a", I cant see on which interface that addressed is set.

Thanks for your englightenment.

Regards,
Sundi

Cannot seem to get 6lbr to work

Hi,

I am attempting to use 6lbr for my dissertation project but cannot seem to get it to work.

I have installed it on the Raspberry Pi and 6lbr starts okay in the terminal windows. However, when I try to 'make' the hello-world example I get errors saying that curses.h and term.h cannot be found in "../../platform/native/ctk/ctk-curses.c". I am sure there is something I am doing wrong and was wondering if anyone could point me in the right direction. I am using a Raspberry Pi with the Nooliberry add-on

Thanks,
Ben

Compiling rest-server-example for cc2530dk

Hello Guys,
I am trying to compile rest-server-example for my platform which having cc2530dk core, so its giving following error,

CC ../../apps/rest-coap/coap-
common.c
../../apps/rest-coap/coap-common.c:69: syntax error: token -> 'uint16_t' ; column 10
../../apps/rest-coap/coap-common.c:89: syntax error: token -> 'int' ; column 7
../../apps/rest-coap/coap-common.c:72: error 20: Undefined identifier 'temp'
../../apps/rest-coap/coap-common.c:72: error 20: Undefined identifier 'temp'
../../apps/rest-coap/coap-common.c:90: error 20: Undefined identifier 'i'
../../apps/rest-coap/coap-common.c:90: error 20: Undefined identifier 'i'
make: *** [obj_cc2530dk/coap-common.rel] Error 1

So why these errors are coming and what changes i need to do to get rid of them.

Thanks

Add PAN_ID configuration and retrieval of MAC setup in slip-radio

Currently we can only set the 802.15.4 channel and not the PAN-ID which is hardcoded inside the slip-radio. Also, it is not possible right now to retrieve the actual configuration of the slip-radio and its MAC layer, one has to look inside 6LBR logs.

We should add a command to set the pan-id and also to retrieve the slip-radio configuration. Note that these command will break the compatibility with Contiki slip radio. If we can not push our modification into Contiki either we develop two slip-radio interfacing code or we require now that only 6LBR slip-radio can be used.

Webserver commands should work also without query mark

Webserver commands, like log, restart, halt, rpl-gr, .. should be accepted with or without the query mark : ?

Some browser automatically adds it, others adds it only if there are actual parameters to be transmitted.

Access to remote sky mote

Hello!

I am sorry to bother, but I am interested to get access to the other sensors of a Sky mote (e.g. GPIO, battery, power) in a manner similar with collect-view or sky-shell (the lightest way possible, no java application, no web-server). I am wondering if you can point me to a documentation showing how I can access remotely a Sky mote running 6lbr stack.

Any other idea will be highly appreciated.

Thank you in advance for your time!

Calin

6LBR Integration with rime communication (non-IP nodes)

Dear developers,

I'm planning to integrate the current 6LBR with non-ip devices using rime communication.
I want all all rime-based node associate them selves with current border-router, the web-server on border router should then able to display those non-IP devices (rime devices).

Any clues on how to start modification of current 6LBR code to enable the above communication

Regards
Sundi

er-rest examle implementation

Hello Guys ,
I am trying to run er-rest examples , i m trying to get the response payload of helloworld resource at the client side but i am not able to get the payload.
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.