diff --git a/examples/ipv6/rpl-tsch/Makefile b/examples/6tisch/simple-node/Makefile
similarity index 100%
rename from examples/ipv6/rpl-tsch/Makefile
rename to examples/6tisch/simple-node/Makefile
diff --git a/examples/ipv6/rpl-tsch/README.md b/examples/6tisch/simple-node/README.md
similarity index 100%
rename from examples/ipv6/rpl-tsch/README.md
rename to examples/6tisch/simple-node/README.md
diff --git a/examples/ipv6/rpl-tsch/node.c b/examples/6tisch/simple-node/node.c
similarity index 100%
rename from examples/ipv6/rpl-tsch/node.c
rename to examples/6tisch/simple-node/node.c
diff --git a/examples/ipv6/rpl-tsch/project-conf.h b/examples/6tisch/simple-node/project-conf.h
similarity index 100%
rename from examples/ipv6/rpl-tsch/project-conf.h
rename to examples/6tisch/simple-node/project-conf.h
diff --git a/examples/ipv6/rpl-tsch/rpl-tsch-cooja.csc b/examples/6tisch/simple-node/rpl-tsch-cooja.csc
similarity index 99%
rename from examples/ipv6/rpl-tsch/rpl-tsch-cooja.csc
rename to examples/6tisch/simple-node/rpl-tsch-cooja.csc
index 3364b43fd..276192cdd 100644
--- a/examples/ipv6/rpl-tsch/rpl-tsch-cooja.csc
+++ b/examples/6tisch/simple-node/rpl-tsch-cooja.csc
@@ -25,7 +25,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype660
RPL/TSCH Node
- [CONTIKI_DIR]/examples/ipv6/rpl-tsch/node.c
+ [CONTIKI_DIR]/examples/6tisch/simple-node/node.c
make TARGET=cooja clean
make TARGET=cooja node.cooja
org.contikios.cooja.interfaces.Position
diff --git a/examples/ipv6/rpl-tsch-sixtop/Makefile b/examples/6tisch/sixtop/Makefile
similarity index 100%
rename from examples/ipv6/rpl-tsch-sixtop/Makefile
rename to examples/6tisch/sixtop/Makefile
diff --git a/examples/ipv6/rpl-tsch-sixtop/README.md b/examples/6tisch/sixtop/README.md
similarity index 94%
rename from examples/ipv6/rpl-tsch-sixtop/README.md
rename to examples/6tisch/sixtop/README.md
index 9aacff864..fa390ff19 100644
--- a/examples/ipv6/rpl-tsch-sixtop/README.md
+++ b/examples/6tisch/sixtop/README.md
@@ -25,7 +25,7 @@ If the mode is 6ln (node)
* Following this the application triggers another 6P Add Request to 6dr
* After an interval, the application triggers a 6P Delete Request to 6dr
-For the Cooja simulation, you may use the rpl-tsch-sixtop-z1.csc file in this folder.
+For the Cooja simulation, you may use the rpl-tsch-sixtop-cooja.csc file in this folder.
Once you run the simulation, "Mote output" window of Cooja simulator displays the
following messages.
diff --git a/examples/ipv6/rpl-tsch-sixtop/node-sixtop.c b/examples/6tisch/sixtop/node-sixtop.c
similarity index 62%
rename from examples/ipv6/rpl-tsch-sixtop/node-sixtop.c
rename to examples/6tisch/sixtop/node-sixtop.c
index f3a6b3b13..84598d331 100755
--- a/examples/ipv6/rpl-tsch-sixtop/node-sixtop.c
+++ b/examples/6tisch/sixtop/node-sixtop.c
@@ -39,86 +39,50 @@
#include "contiki.h"
#include "node-id.h"
-#include "net/rpl/rpl.h"
+#include "rpl.h"
+#include "rpl-dag-root.h"
+#include "sys/log.h"
#include "net/ipv6/uip-ds6-route.h"
#include "net/mac/tsch/tsch.h"
+#include "net/mac/tsch/tsch-log.h"
#include "net/mac/tsch/tsch-schedule.h"
#include "net/mac/tsch/sixtop/sixtop.h"
-#include "net/rpl/rpl-private.h"
-#include "net/ipv6/uip-debug.h"
+#if UIP_CONF_IPV6_RPL_LITE == 0
+#include "rpl-private.h"
+#endif /* UIP_CONF_IPV6_RPL_LITE == 0 */
#include "sf-simple.h"
+#define DEBUG DEBUG_PRINT
+#include "net/ipv6/uip-debug.h"
+
/*---------------------------------------------------------------------------*/
PROCESS(node_process, "RPL Node");
AUTOSTART_PROCESSES(&node_process);
-/*---------------------------------------------------------------------------*/
-static void
-net_init(uip_ipaddr_t *br_prefix)
-{
- uip_ipaddr_t global_ipaddr;
-
- if(br_prefix) { /* We are RPL root. Will be set automatically
- as TSCH pan coordinator via the tsch-rpl module */
- memcpy(&global_ipaddr, br_prefix, 16);
- uip_ds6_set_addr_iid(&global_ipaddr, &uip_lladdr);
- uip_ds6_addr_add(&global_ipaddr, 0, ADDR_AUTOCONF);
- rpl_set_root(RPL_DEFAULT_INSTANCE, &global_ipaddr);
- rpl_set_prefix(rpl_get_any_dag(), br_prefix, 64);
- rpl_repair_root(RPL_DEFAULT_INSTANCE);
- }
-
- NETSTACK_MAC.on();
-}
/*---------------------------------------------------------------------------*/
PROCESS_THREAD(node_process, ev, data)
{
+ int is_coordinator;
+ static int added_num_of_links = 0;
static struct etimer et;
struct tsch_neighbor *n;
PROCESS_BEGIN();
- /* 3 possible roles:
- * - role_6ln: simple node, will join any network, secured or not
- * - role_6dr: DAG root, will advertise (unsecured) beacons
- * - role_6dr_sec: DAG root, will advertise secured beacons
- * */
- static int is_coordinator = 0, added_num_of_links = 0;
- static enum { role_6ln, role_6dr, role_6dr_sec } node_role;
- node_role = role_6ln;
+ is_coordinator = 0;
- /* Set node with MAC address c1:0c:00:00:00:00:01 as coordinator,
- * convenient in cooja for regression tests using z1 nodes
- * */
-
-#ifdef CONTIKI_TARGET_Z1
- extern unsigned char node_mac[8];
- unsigned char coordinator_mac[8] = { 0xc1, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 };
-
- if(memcmp(node_mac, coordinator_mac, 8) == 0) {
- if(LLSEC802154_ENABLED) {
- node_role = role_6dr_sec;
- } else {
- node_role = role_6dr;
- }
- } else {
- node_role = role_6ln;
- }
+#if CONTIKI_TARGET_COOJA
+ is_coordinator = (node_id == 1);
#endif
- tsch_set_pan_secured(LLSEC802154_ENABLED && (node_role == role_6dr_sec));
- is_coordinator = node_role > role_6ln;
- sixtop_add_sf(&sf_simple_driver);
-
if(is_coordinator) {
- uip_ipaddr_t prefix;
- uip_ip6addr(&prefix, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0, 0, 0);
- net_init(&prefix);
- } else {
- net_init(NULL);
+ rpl_dag_root_init_dag_immediately();
}
+ NETSTACK_MAC.on();
+ sixtop_add_sf(&sf_simple_driver);
+
etimer_set(&et, CLOCK_SECOND * 30);
while(1) {
PROCESS_YIELD_UNTIL(etimer_expired(&et));
@@ -127,8 +91,7 @@ PROCESS_THREAD(node_process, ev, data)
/* Get time-source neighbor */
n = tsch_queue_get_time_source();
- if(node_id != 1) {
- clock_delay(1000);
+ if(!is_coordinator) {
if((added_num_of_links == 1) || (added_num_of_links == 3)) {
printf("App : Add a link\n");
sf_simple_add_links(&n->addr, 1);
diff --git a/examples/ipv6/rpl-tsch-sixtop/project-conf.h b/examples/6tisch/sixtop/project-conf.h
similarity index 100%
rename from examples/ipv6/rpl-tsch-sixtop/project-conf.h
rename to examples/6tisch/sixtop/project-conf.h
diff --git a/examples/6tisch/sixtop/rpl-tsch-sixtop-cooja.csc b/examples/6tisch/sixtop/rpl-tsch-sixtop-cooja.csc
new file mode 100644
index 000000000..c0646919d
--- /dev/null
+++ b/examples/6tisch/sixtop/rpl-tsch-sixtop-cooja.csc
@@ -0,0 +1,157 @@
+
+
+ [APPS_DIR]/mrm
+ [APPS_DIR]/mspsim
+ [APPS_DIR]/avrora
+ [APPS_DIR]/serial_socket
+ [APPS_DIR]/collect-view
+ [APPS_DIR]/powertracker
+
+ sixtop example
+ 123456
+ 1000000
+
+ org.contikios.cooja.radiomediums.UDGM
+ 50.0
+ 100.0
+ 1.0
+ 1.0
+
+
+ 40000
+
+
+ org.contikios.cooja.contikimote.ContikiMoteType
+ mtype204
+ node
+ [CONTIKI_DIR]/examples/6tisch/sixtop/node-sixtop.c
+ make node-sixtop.cooja TARGET=cooja
+ org.contikios.cooja.interfaces.Position
+ org.contikios.cooja.interfaces.Battery
+ org.contikios.cooja.contikimote.interfaces.ContikiVib
+ org.contikios.cooja.contikimote.interfaces.ContikiMoteID
+ org.contikios.cooja.contikimote.interfaces.ContikiRS232
+ org.contikios.cooja.contikimote.interfaces.ContikiBeeper
+ org.contikios.cooja.interfaces.RimeAddress
+ org.contikios.cooja.contikimote.interfaces.ContikiIPAddress
+ org.contikios.cooja.contikimote.interfaces.ContikiRadio
+ org.contikios.cooja.contikimote.interfaces.ContikiButton
+ org.contikios.cooja.contikimote.interfaces.ContikiPIR
+ org.contikios.cooja.contikimote.interfaces.ContikiClock
+ org.contikios.cooja.contikimote.interfaces.ContikiLED
+ org.contikios.cooja.contikimote.interfaces.ContikiCFS
+ org.contikios.cooja.contikimote.interfaces.ContikiEEPROM
+ org.contikios.cooja.interfaces.Mote2MoteRelations
+ org.contikios.cooja.interfaces.MoteAttributes
+ false
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 11.419305725331853
+ 88.17983927138442
+ 0.0
+
+
+ org.contikios.cooja.contikimote.interfaces.ContikiMoteID
+ 1
+
+
+ org.contikios.cooja.contikimote.interfaces.ContikiRadio
+ 250.0
+
+
+ org.contikios.cooja.contikimote.interfaces.ContikiEEPROM
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+
+ mtype204
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 36.65377213719183
+ 57.06132448464071
+ 0.0
+
+
+ org.contikios.cooja.contikimote.interfaces.ContikiMoteID
+ 2
+
+
+ org.contikios.cooja.contikimote.interfaces.ContikiRadio
+ 250.0
+
+
+ org.contikios.cooja.contikimote.interfaces.ContikiEEPROM
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+
+ mtype204
+
+
+
+ org.contikios.cooja.plugins.SimControl
+ 280
+ 2
+ 160
+ 400
+ 0
+
+
+ org.contikios.cooja.plugins.Visualizer
+
+ true
+ org.contikios.cooja.plugins.skins.IDVisualizerSkin
+ org.contikios.cooja.plugins.skins.GridVisualizerSkin
+ org.contikios.cooja.plugins.skins.TrafficVisualizerSkin
+ org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
+ 4.580728081732807 0.0 0.0 4.580728081732807 74.39515112990499 -140.65513872038872
+
+ 401
+ 0
+ 400
+ 0
+ 1
+
+
+ org.contikios.cooja.plugins.LogListener
+
+ sf-simple
+
+
+
+ 766
+ 1
+ 240
+ 400
+ 160
+
+
+ org.contikios.cooja.plugins.TimeLine
+
+ 0
+ 1
+
+
+
+ 500.0
+
+ 1166
+ 4
+ 166
+ 0
+ 525
+
+
+ org.contikios.cooja.plugins.Notes
+
+ Enter notes here
+ true
+
+ 486
+ 3
+ 160
+ 680
+ 0
+
+
+
diff --git a/examples/ipv6/rpl-tsch-sixtop/sf-simple.c b/examples/6tisch/sixtop/sf-simple.c
similarity index 99%
rename from examples/ipv6/rpl-tsch-sixtop/sf-simple.c
rename to examples/6tisch/sixtop/sf-simple.c
index fac94ee03..e0ba44f21 100644
--- a/examples/ipv6/rpl-tsch-sixtop/sf-simple.c
+++ b/examples/6tisch/sixtop/sf-simple.c
@@ -198,7 +198,7 @@ add_response_sent_callback(void *arg, uint16_t arg_len,
(nbr = sixp_nbr_find(dest_addr)) != NULL) {
add_links_to_schedule(dest_addr, LINK_OPTION_RX,
cell_list, cell_list_len);
- sixp_nbr_advance_grx(nbr);
+ sixp_nbr_advance_gen(nbr);
}
}
@@ -222,7 +222,7 @@ delete_response_sent_callback(void *arg, uint16_t arg_len,
body, body_len) == 0 &&
(nbr = sixp_nbr_find(dest_addr)) != NULL) {
remove_links_to_schedule(cell_list, cell_list_len);
- sixp_nbr_advance_grx(nbr);
+ sixp_nbr_advance_gen(nbr);
}
}
@@ -429,7 +429,7 @@ response_input(sixp_pkt_rc_t rc,
PRINTF("\n");
add_links_to_schedule(peer_addr, LINK_OPTION_TX,
cell_list, cell_list_len);
- sixp_nbr_advance_gtx(nbr);
+ sixp_nbr_advance_gen(nbr);
break;
case SIXP_PKT_CMD_DELETE:
if(sixp_pkt_get_cell_list(SIXP_PKT_TYPE_RESPONSE,
@@ -443,9 +443,9 @@ response_input(sixp_pkt_rc_t rc,
print_cell_list(cell_list, cell_list_len);
PRINTF("\n");
remove_links_to_schedule(cell_list, cell_list_len);
- sixp_nbr_advance_gtx(nbr);
+ sixp_nbr_advance_gen(nbr);
break;
- case SIXP_PKT_CMD_STATUS:
+ case SIXP_PKT_CMD_COUNT:
case SIXP_PKT_CMD_LIST:
case SIXP_PKT_CMD_CLEAR:
default:
diff --git a/examples/ipv6/rpl-tsch-sixtop/sf-simple.h b/examples/6tisch/sixtop/sf-simple.h
similarity index 100%
rename from examples/ipv6/rpl-tsch-sixtop/sf-simple.h
rename to examples/6tisch/sixtop/sf-simple.h
diff --git a/examples/ipv6/coap-example/Makefile b/examples/coap-example/Makefile
similarity index 86%
rename from examples/ipv6/coap-example/Makefile
rename to examples/coap-example/Makefile
index 367ae2689..1c8f2d21e 100644
--- a/examples/ipv6/coap-example/Makefile
+++ b/examples/coap-example/Makefile
@@ -1,7 +1,7 @@
all: coap-example-server coap-example-client
# use target "plugtest-server" explicitly when required
-CONTIKI=../../..
+CONTIKI=../..
# automatically build RESTful resources
REST_RESOURCES_DIR = ./resources
@@ -45,8 +45,8 @@ connect-router: $(CONTIKI)/tools/tunslip6
connect-router-cooja: $(CONTIKI)/tools/tunslip6
sudo $(CONTIKI)/tools/tunslip6 -a 127.0.0.1 -p 60001 fd00::1/64
-connect-router-native: $(CONTIKI)/examples/ipv6/native-border-router/border-router.native
- sudo $(CONTIKI)/exmples/ipv6/native-border-router/border-router.native -a 127.0.0.1 -p 60001 fd00::1/64
+connect-router-native: $(CONTIKI)/examples/native-border-router/border-router.native
+ sudo $(CONTIKI)/examples/native-border-router/border-router.native -a 127.0.0.1 -p 60001 fd00::1/64
connect-minimal:
sudo ip address add fdfd::1/64 dev tap0
diff --git a/examples/ipv6/coap-example/README.md b/examples/coap-example/README.md
similarity index 99%
rename from examples/ipv6/coap-example/README.md
rename to examples/coap-example/README.md
index c0ca817ca..f74ddfb9e 100644
--- a/examples/ipv6/coap-example/README.md
+++ b/examples/coap-example/README.md
@@ -71,7 +71,7 @@ TMOTES HOWTO
2. Press reset button, get address, abort with Ctrl+C:
Line: "Tentative link-local IPv6 address fe80:0000:0000:0000:____:____:____:____"
- cd ../ipv6/rpl-border-router/
+ cd ../rpl-border-router/
make TARGET=sky border-router.upload MOTE=1
make connect-router
diff --git a/examples/ipv6/coap-example/coap-example-client.c b/examples/coap-example/coap-example-client.c
similarity index 100%
rename from examples/ipv6/coap-example/coap-example-client.c
rename to examples/coap-example/coap-example-client.c
diff --git a/examples/ipv6/coap-example/coap-example-observe-client.c b/examples/coap-example/coap-example-observe-client.c
similarity index 100%
rename from examples/ipv6/coap-example/coap-example-observe-client.c
rename to examples/coap-example/coap-example-observe-client.c
diff --git a/examples/ipv6/coap-example/coap-example-server.c b/examples/coap-example/coap-example-server.c
similarity index 100%
rename from examples/ipv6/coap-example/coap-example-server.c
rename to examples/coap-example/coap-example-server.c
diff --git a/examples/ipv6/coap-example/in6addr.patch b/examples/coap-example/in6addr.patch
similarity index 100%
rename from examples/ipv6/coap-example/in6addr.patch
rename to examples/coap-example/in6addr.patch
diff --git a/examples/ipv6/coap-example/plugtest-server.c b/examples/coap-example/plugtest-server.c
similarity index 100%
rename from examples/ipv6/coap-example/plugtest-server.c
rename to examples/coap-example/plugtest-server.c
diff --git a/examples/ipv6/coap-example/plugtest.h b/examples/coap-example/plugtest.h
similarity index 100%
rename from examples/ipv6/coap-example/plugtest.h
rename to examples/coap-example/plugtest.h
diff --git a/examples/ipv6/coap-example/project-conf.h b/examples/coap-example/project-conf.h
similarity index 100%
rename from examples/ipv6/coap-example/project-conf.h
rename to examples/coap-example/project-conf.h
diff --git a/examples/ipv6/coap-example/resources/res-b1-sep-b2.c b/examples/coap-example/resources/res-b1-sep-b2.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-b1-sep-b2.c
rename to examples/coap-example/resources/res-b1-sep-b2.c
diff --git a/examples/ipv6/coap-example/resources/res-battery.c b/examples/coap-example/resources/res-battery.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-battery.c
rename to examples/coap-example/resources/res-battery.c
diff --git a/examples/ipv6/coap-example/resources/res-chunks.c b/examples/coap-example/resources/res-chunks.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-chunks.c
rename to examples/coap-example/resources/res-chunks.c
diff --git a/examples/ipv6/coap-example/resources/res-event.c b/examples/coap-example/resources/res-event.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-event.c
rename to examples/coap-example/resources/res-event.c
diff --git a/examples/ipv6/coap-example/resources/res-hello.c b/examples/coap-example/resources/res-hello.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-hello.c
rename to examples/coap-example/resources/res-hello.c
diff --git a/examples/ipv6/coap-example/resources/res-leds.c b/examples/coap-example/resources/res-leds.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-leds.c
rename to examples/coap-example/resources/res-leds.c
diff --git a/examples/ipv6/coap-example/resources/res-light.c b/examples/coap-example/resources/res-light.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-light.c
rename to examples/coap-example/resources/res-light.c
diff --git a/examples/ipv6/coap-example/resources/res-mirror.c b/examples/coap-example/resources/res-mirror.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-mirror.c
rename to examples/coap-example/resources/res-mirror.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-create1.c b/examples/coap-example/resources/res-plugtest-create1.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-create1.c
rename to examples/coap-example/resources/res-plugtest-create1.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-create2.c b/examples/coap-example/resources/res-plugtest-create2.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-create2.c
rename to examples/coap-example/resources/res-plugtest-create2.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-create3.c b/examples/coap-example/resources/res-plugtest-create3.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-create3.c
rename to examples/coap-example/resources/res-plugtest-create3.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-large-create.c b/examples/coap-example/resources/res-plugtest-large-create.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-large-create.c
rename to examples/coap-example/resources/res-plugtest-large-create.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-large-update.c b/examples/coap-example/resources/res-plugtest-large-update.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-large-update.c
rename to examples/coap-example/resources/res-plugtest-large-update.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-large.c b/examples/coap-example/resources/res-plugtest-large.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-large.c
rename to examples/coap-example/resources/res-plugtest-large.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-links.c b/examples/coap-example/resources/res-plugtest-links.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-links.c
rename to examples/coap-example/resources/res-plugtest-links.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-locquery.c b/examples/coap-example/resources/res-plugtest-locquery.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-locquery.c
rename to examples/coap-example/resources/res-plugtest-locquery.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-longpath.c b/examples/coap-example/resources/res-plugtest-longpath.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-longpath.c
rename to examples/coap-example/resources/res-plugtest-longpath.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-multi.c b/examples/coap-example/resources/res-plugtest-multi.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-multi.c
rename to examples/coap-example/resources/res-plugtest-multi.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-obs.c b/examples/coap-example/resources/res-plugtest-obs.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-obs.c
rename to examples/coap-example/resources/res-plugtest-obs.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-path.c b/examples/coap-example/resources/res-plugtest-path.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-path.c
rename to examples/coap-example/resources/res-plugtest-path.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-query.c b/examples/coap-example/resources/res-plugtest-query.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-query.c
rename to examples/coap-example/resources/res-plugtest-query.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-separate.c b/examples/coap-example/resources/res-plugtest-separate.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-separate.c
rename to examples/coap-example/resources/res-plugtest-separate.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-test.c b/examples/coap-example/resources/res-plugtest-test.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-test.c
rename to examples/coap-example/resources/res-plugtest-test.c
diff --git a/examples/ipv6/coap-example/resources/res-plugtest-validate.c b/examples/coap-example/resources/res-plugtest-validate.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-plugtest-validate.c
rename to examples/coap-example/resources/res-plugtest-validate.c
diff --git a/examples/ipv6/coap-example/resources/res-push.c b/examples/coap-example/resources/res-push.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-push.c
rename to examples/coap-example/resources/res-push.c
diff --git a/examples/ipv6/coap-example/resources/res-radio.c b/examples/coap-example/resources/res-radio.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-radio.c
rename to examples/coap-example/resources/res-radio.c
diff --git a/examples/ipv6/coap-example/resources/res-separate.c b/examples/coap-example/resources/res-separate.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-separate.c
rename to examples/coap-example/resources/res-separate.c
diff --git a/examples/ipv6/coap-example/resources/res-sht11.c b/examples/coap-example/resources/res-sht11.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-sht11.c
rename to examples/coap-example/resources/res-sht11.c
diff --git a/examples/ipv6/coap-example/resources/res-sub.c b/examples/coap-example/resources/res-sub.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-sub.c
rename to examples/coap-example/resources/res-sub.c
diff --git a/examples/ipv6/coap-example/resources/res-temperature.c b/examples/coap-example/resources/res-temperature.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-temperature.c
rename to examples/coap-example/resources/res-temperature.c
diff --git a/examples/ipv6/coap-example/resources/res-toggle.c b/examples/coap-example/resources/res-toggle.c
similarity index 100%
rename from examples/ipv6/coap-example/resources/res-toggle.c
rename to examples/coap-example/resources/res-toggle.c
diff --git a/examples/ipv6/coap-example/server-client-native.csc b/examples/coap-example/server-client-native.csc
similarity index 95%
rename from examples/ipv6/coap-example/server-client-native.csc
rename to examples/coap-example/server-client-native.csc
index d61cc89b0..db8daba1a 100644
--- a/examples/ipv6/coap-example/server-client-native.csc
+++ b/examples/coap-example/server-client-native.csc
@@ -48,9 +48,9 @@
org.contikios.cooja.mspmote.SkyMoteType
server
Erbium Server
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-server.c
+ [CONTIKI_DIR]/examples/coap-example/coap-example-server.c
make coap-example-server.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-server.sky
+ [CONTIKI_DIR]/examples/coap-example/coap-example-server.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
@@ -71,9 +71,9 @@
org.contikios.cooja.mspmote.SkyMoteType
client
Erbium Client
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-client.c
+ [CONTIKI_DIR]/examples/coap-example/coap-example-client.c
make coap-example-client.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-client.sky
+ [CONTIKI_DIR]/examples/coap-example/coap-example-client.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
diff --git a/examples/ipv6/coap-example/server-client-observe.csc b/examples/coap-example/server-client-observe.csc
similarity index 93%
rename from examples/ipv6/coap-example/server-client-observe.csc
rename to examples/coap-example/server-client-observe.csc
index ebedb70b9..0b6c51d44 100644
--- a/examples/ipv6/coap-example/server-client-observe.csc
+++ b/examples/coap-example/server-client-observe.csc
@@ -25,9 +25,9 @@
org.contikios.cooja.mspmote.SkyMoteType
rplroot
Sky RPL Root
- [CONTIKI_DIR]/examples/ipv6/rpl-border-router/border-router.c
+ [CONTIKI_DIR]/examples/rpl-border-router/border-router.c
make border-router.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/rpl-border-router/border-router.sky
+ [CONTIKI_DIR]/examples/rpl-border-router/border-router.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
@@ -48,9 +48,9 @@
org.contikios.cooja.mspmote.SkyMoteType
server
Erbium Server
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-server.c
+ [CONTIKI_DIR]/examples/coap-example/coap-example-server.c
make coap-example-server.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-server.sky
+ [CONTIKI_DIR]/examples/coap-example/coap-example-server.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
@@ -71,9 +71,9 @@
org.contikios.cooja.mspmote.SkyMoteType
client
Erbium Client
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-observe-client.c
+ [CONTIKI_DIR]/examples/coap-example/coap-example-observe-client.c
make coap-example-observe-client.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-observe-client.sky
+ [CONTIKI_DIR]/examples/coap-example/coap-example-observe-client.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
diff --git a/examples/ipv6/coap-example/server-client.csc b/examples/coap-example/server-client.csc
similarity index 93%
rename from examples/ipv6/coap-example/server-client.csc
rename to examples/coap-example/server-client.csc
index 8e8e75a09..9e8353d79 100644
--- a/examples/ipv6/coap-example/server-client.csc
+++ b/examples/coap-example/server-client.csc
@@ -25,9 +25,9 @@
org.contikios.cooja.mspmote.SkyMoteType
rplroot
Sky RPL Root
- [CONTIKI_DIR]/examples/ipv6/rpl-border-router/border-router.c
+ [CONTIKI_DIR]/examples/rpl-border-router/border-router.c
make border-router.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/rpl-border-router/border-router.sky
+ [CONTIKI_DIR]/examples/rpl-border-router/border-router.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
@@ -48,9 +48,9 @@
org.contikios.cooja.mspmote.SkyMoteType
server
Erbium Server
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-server.c
+ [CONTIKI_DIR]/examples/coap-example/coap-example-server.c
make coap-example-server.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-server.sky
+ [CONTIKI_DIR]/examples/coap-example/coap-example-server.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
@@ -71,9 +71,9 @@
org.contikios.cooja.mspmote.SkyMoteType
client
Erbium Client
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-client.c
+ [CONTIKI_DIR]/examples/coap-example/coap-example-client.c
make coap-example-client.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-client.sky
+ [CONTIKI_DIR]/examples/coap-example/coap-example-client.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
diff --git a/examples/ipv6/coap-example/server-only.csc b/examples/coap-example/server-only.csc
similarity index 94%
rename from examples/ipv6/coap-example/server-only.csc
rename to examples/coap-example/server-only.csc
index 473b78357..683a96a38 100644
--- a/examples/ipv6/coap-example/server-only.csc
+++ b/examples/coap-example/server-only.csc
@@ -25,9 +25,9 @@
org.contikios.cooja.mspmote.SkyMoteType
rplroot
Sky RPL Root
- [CONTIKI_DIR]/examples/ipv6/rpl-border-router/border-router.c
+ [CONTIKI_DIR]/examples/rpl-border-router/border-router.c
make border-router.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/rpl-border-router/border-router.sky
+ [CONTIKI_DIR]/examples/rpl-border-router/border-router.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
@@ -48,9 +48,9 @@
org.contikios.cooja.mspmote.SkyMoteType
server
Erbium Server
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-server.c
+ [CONTIKI_DIR]/examples/coap-example/coap-example-server.c
make coap-example-server.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/coap-example/coap-example-server.sky
+ [CONTIKI_DIR]/examples/coap-example/coap-example-server.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
diff --git a/examples/extended-rf-api/Makefile b/examples/extended-rf-api/Makefile
deleted file mode 100644
index c774119a3..000000000
--- a/examples/extended-rf-api/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-CONTIKI_PROJECT = extended-rf-api
-
-all: $(CONTIKI_PROJECT)
-
-CONTIKI = ../..
-include $(CONTIKI)/Makefile.include
diff --git a/examples/extended-rf-api/extended-rf-api.c b/examples/extended-rf-api/extended-rf-api.c
deleted file mode 100644
index d02fe5546..000000000
--- a/examples/extended-rf-api/extended-rf-api.c
+++ /dev/null
@@ -1,510 +0,0 @@
-/*
- * Copyright (c) 2014, George Oikonomou (george@contiki-os.org)
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the copyright holder nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-/**
- * Example project demonstrating the extended RF API functionality
- */
-#include "contiki.h"
-#include "net/netstack.h"
-#include "dev/radio.h"
-
-#include
-#include
-#include
-/*---------------------------------------------------------------------------*/
-struct rf_consts {
- radio_value_t channel_min;
- radio_value_t channel_max;
- radio_value_t txpower_min;
- radio_value_t txpower_max;
-};
-
-static struct rf_consts consts;
-
-static radio_value_t value;
-static uint8_t ext_addr[8];
-/*---------------------------------------------------------------------------*/
-PROCESS(extended_rf_api_process, "Extended RF API demo process");
-AUTOSTART_PROCESSES(&extended_rf_api_process);
-/*---------------------------------------------------------------------------*/
-static void
-print_64bit_addr(const uint8_t *addr)
-{
- unsigned int i;
- for(i = 0; i < 7; i++) {
- printf("%02x:", addr[i]);
- }
- printf("%02x (network order)\n", addr[7]);
-}
-/*---------------------------------------------------------------------------*/
-static radio_result_t
-get_object(radio_param_t param, void *dest, size_t size)
-{
- radio_result_t rv;
-
- rv = NETSTACK_RADIO.get_object(param, dest, size);
-
- switch(rv) {
- case RADIO_RESULT_ERROR:
- printf("Radio returned an error\n");
- break;
- case RADIO_RESULT_INVALID_VALUE:
- printf("Value is invalid\n");
- break;
- case RADIO_RESULT_NOT_SUPPORTED:
- printf("Param %u not supported\n", param);
- break;
- case RADIO_RESULT_OK:
- break;
- default:
- printf("Unknown return value\n");
- break;
- }
-
- return rv;
-}
-/*---------------------------------------------------------------------------*/
-static radio_result_t
-set_object(radio_param_t param, void *src, size_t size)
-{
- radio_result_t rv;
-
- rv = NETSTACK_RADIO.set_object(param, src, size);
-
- switch(rv) {
- case RADIO_RESULT_ERROR:
- printf("Radio returned an error\n");
- break;
- case RADIO_RESULT_INVALID_VALUE:
- printf("Value is invalid\n");
- break;
- case RADIO_RESULT_NOT_SUPPORTED:
- printf("Param %u not supported\n", param);
- break;
- case RADIO_RESULT_OK:
- break;
- default:
- printf("Unknown return value\n");
- break;
- }
-
- return rv;
-}
-/*---------------------------------------------------------------------------*/
-static radio_result_t
-get_param(radio_param_t param, radio_value_t *value)
-{
- radio_result_t rv;
-
- rv = NETSTACK_RADIO.get_value(param, value);
-
- switch(rv) {
- case RADIO_RESULT_ERROR:
- printf("Radio returned an error\n");
- break;
- case RADIO_RESULT_INVALID_VALUE:
- printf("Value %d is invalid\n", *value);
- break;
- case RADIO_RESULT_NOT_SUPPORTED:
- printf("Param %u not supported\n", param);
- break;
- case RADIO_RESULT_OK:
- break;
- default:
- printf("Unknown return value\n");
- break;
- }
-
- return rv;
-}
-/*---------------------------------------------------------------------------*/
-static radio_result_t
-set_param(radio_param_t param, radio_value_t value)
-{
- radio_result_t rv;
-
- rv = NETSTACK_RADIO.set_value(param, value);
-
- switch(rv) {
- case RADIO_RESULT_ERROR:
- printf("Radio returned an error\n");
- break;
- case RADIO_RESULT_INVALID_VALUE:
- printf("Value %d is invalid\n", value);
- break;
- case RADIO_RESULT_NOT_SUPPORTED:
- printf("Param %u not supported\n", param);
- break;
- case RADIO_RESULT_OK:
- break;
- default:
- printf("Unknown return value\n");
- break;
- }
-
- return rv;
-}
-/*---------------------------------------------------------------------------*/
-static void
-get_rf_consts(void)
-{
- printf("====================================\n");
- printf("RF Constants\n");
- printf("Min Channel : ");
- if(get_param(RADIO_CONST_CHANNEL_MIN, &consts.channel_min) == RADIO_RESULT_OK) {
- printf("%3d\n", consts.channel_min);
- }
-
- printf("Max Channel : ");
- if(get_param(RADIO_CONST_CHANNEL_MAX, &consts.channel_max) == RADIO_RESULT_OK) {
- printf("%3d\n", consts.channel_max);
- }
-
- printf("Min TX Power: ");
- if(get_param(RADIO_CONST_TXPOWER_MIN, &consts.txpower_min) == RADIO_RESULT_OK) {
- printf("%3d dBm\n", consts.txpower_min);
- }
-
- printf("Max TX Power: ");
- if(get_param(RADIO_CONST_TXPOWER_MAX, &consts.txpower_max) == RADIO_RESULT_OK) {
- printf("%3d dBm\n", consts.txpower_max);
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-test_off_on(void)
-{
- printf("====================================\n");
- printf("Power mode Test: Off, then On\n");
-
- printf("Power mode is : ");
- if(get_param(RADIO_PARAM_POWER_MODE, &value) == RADIO_RESULT_OK) {
- if(value == RADIO_POWER_MODE_ON) {
- printf("On\n");
- } else if(value == RADIO_POWER_MODE_OFF) {
- printf("Off\n");
- }
- }
-
- printf("Turning Off : ");
- value = RADIO_POWER_MODE_OFF;
- set_param(RADIO_PARAM_POWER_MODE, value);
- if(get_param(RADIO_PARAM_POWER_MODE, &value) == RADIO_RESULT_OK) {
- if(value == RADIO_POWER_MODE_ON) {
- printf("On\n");
- } else if(value == RADIO_POWER_MODE_OFF) {
- printf("Off\n");
- }
- }
-
- printf("Turning On : ");
- value = RADIO_POWER_MODE_ON;
- set_param(RADIO_PARAM_POWER_MODE, value);
- if(get_param(RADIO_PARAM_POWER_MODE, &value) == RADIO_RESULT_OK) {
- if(value == RADIO_POWER_MODE_ON) {
- printf("On\n");
- } else if(value == RADIO_POWER_MODE_OFF) {
- printf("Off\n");
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-test_channels(void)
-{
- int i;
-
- printf("====================================\n");
- printf("Channel Test: [%u , %u]\n", consts.channel_min, consts.channel_max);
-
- for(i = consts.channel_min; i <= consts.channel_max; i++) {
- value = i;
- printf("Switch to: %d, Now: ", value);
- set_param(RADIO_PARAM_CHANNEL, value);
- if(get_param(RADIO_PARAM_CHANNEL, &value) == RADIO_RESULT_OK) {
- printf("%d\n", value);
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-test_rx_modes(void)
-{
- int i;
-
- printf("====================================\n");
- printf("RX Modes Test: [0 , 3]\n");
-
- for(i = 0; i <= 3; i++) {
- value = i;
- printf("Switch to: %d, Now: ", value);
- set_param(RADIO_PARAM_RX_MODE, value);
- if(get_param(RADIO_PARAM_RX_MODE, &value) == RADIO_RESULT_OK) {
- printf("Address Filtering is ");
- if(value & RADIO_RX_MODE_ADDRESS_FILTER) {
- printf("On, ");
- } else {
- printf("Off, ");
- }
- printf("Auto ACK is ");
- if(value & RADIO_RX_MODE_AUTOACK) {
- printf("On, ");
- } else {
- printf("Off, ");
- }
-
- printf("(value=%d)\n", value);
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-test_tx_powers(void)
-{
- int i;
-
- printf("====================================\n");
- printf("TX Power Test: [%d , %d]\n", consts.txpower_min, consts.txpower_max);
-
- for(i = consts.txpower_min; i <= consts.txpower_max; i += 5) {
- value = i;
- printf("Switch to: %3d dBm, Now: ", value);
- set_param(RADIO_PARAM_TXPOWER, value);
- if(get_param(RADIO_PARAM_TXPOWER, &value) == RADIO_RESULT_OK) {
- printf("%3d dBm\n", value);
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-test_cca_thresholds(void)
-{
- printf("====================================\n");
- printf("CCA Thres. Test: -105, then -81\n");
-
- value = -105;
- printf("Switch to: %4d dBm, Now: ", value);
- set_param(RADIO_PARAM_CCA_THRESHOLD, value);
- if(get_param(RADIO_PARAM_CCA_THRESHOLD, &value) == RADIO_RESULT_OK) {
- printf("%4d dBm [0x%04x]\n", value, (uint16_t)value);
- }
-
- value = -81;
- printf("Switch to: %4d dBm, Now: ", value);
- set_param(RADIO_PARAM_CCA_THRESHOLD, value);
- if(get_param(RADIO_PARAM_CCA_THRESHOLD, &value) == RADIO_RESULT_OK) {
- printf("%4d dBm [0x%04x]\n", value, (uint16_t)value);
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-test_pan_id(void)
-{
- radio_value_t new_val;
-
- printf("====================================\n");
- printf("PAN ID Test: Flip bytes and back\n");
-
- printf("PAN ID is: ");
- if(get_param(RADIO_PARAM_PAN_ID, &value) == RADIO_RESULT_OK) {
- printf("0x%02x%02x\n", (value >> 8) & 0xFF, value & 0xFF);
- }
-
- new_val = (value >> 8) & 0xFF;
- new_val |= (value & 0xFF) << 8;
- printf("Switch to: 0x%02x%02x, Now: ", (new_val >> 8) & 0xFF, new_val & 0xFF);
- set_param(RADIO_PARAM_PAN_ID, new_val);
- if(get_param(RADIO_PARAM_PAN_ID, &value) == RADIO_RESULT_OK) {
- printf("0x%02x%02x\n", (value >> 8) & 0xFF, value & 0xFF);
- }
-
- new_val = (value >> 8) & 0xFF;
- new_val |= (value & 0xFF) << 8;
- printf("Switch to: 0x%02x%02x, Now: ", (new_val >> 8) & 0xFF, new_val & 0xFF);
- set_param(RADIO_PARAM_PAN_ID, new_val);
- if(get_param(RADIO_PARAM_PAN_ID, &value) == RADIO_RESULT_OK) {
- printf("0x%02x%02x\n", (value >> 8) & 0xFF, value & 0xFF);
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-test_16bit_addr(void)
-{
- radio_value_t new_val;
-
- printf("====================================\n");
- printf("16-bit Address Test: Flip bytes and back\n");
-
- printf("16-bit Address is: ");
- if(get_param(RADIO_PARAM_16BIT_ADDR, &value) == RADIO_RESULT_OK) {
- printf("0x%02x%02x\n", (value >> 8) & 0xFF, value & 0xFF);
- }
-
- new_val = (value >> 8) & 0xFF;
- new_val |= (value & 0xFF) << 8;
- printf("Switch to: 0x%02x%02x, Now: ", (new_val >> 8) & 0xFF, new_val & 0xFF);
- set_param(RADIO_PARAM_16BIT_ADDR, new_val);
- if(get_param(RADIO_PARAM_16BIT_ADDR, &value) == RADIO_RESULT_OK) {
- printf("0x%02x%02x\n", (value >> 8) & 0xFF, value & 0xFF);
- }
-
- new_val = (value >> 8) & 0xFF;
- new_val |= (value & 0xFF) << 8;
- printf("Switch to: 0x%02x%02x, Now: ", (new_val >> 8) & 0xFF, new_val & 0xFF);
- set_param(RADIO_PARAM_16BIT_ADDR, new_val);
- if(get_param(RADIO_PARAM_16BIT_ADDR, &value) == RADIO_RESULT_OK) {
- printf("0x%02x%02x\n", (value >> 8) & 0xFF, value & 0xFF);
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-test_64bit_addr(void)
-{
- int i;
- uint8_t new_val[8];
-
- printf("====================================\n");
- printf("64-bit Address Test: Invert byte order\n");
-
- printf("64-bit Address is: ");
- if(get_object(RADIO_PARAM_64BIT_ADDR, ext_addr, 8) == RADIO_RESULT_OK) {
- print_64bit_addr(ext_addr);
- }
-
- for(i = 0; i <= 7; i++) {
- new_val[7 - i] = ext_addr[i];
- }
-
- printf("Setting to : ");
- print_64bit_addr(new_val);
-
- printf("64-bit Address is: ");
- set_object(RADIO_PARAM_64BIT_ADDR, new_val, 8);
- if(get_object(RADIO_PARAM_64BIT_ADDR, ext_addr, 8) == RADIO_RESULT_OK) {
- print_64bit_addr(ext_addr);
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-print_rf_values(void)
-{
- printf("====================================\n");
- printf("RF Values\n");
-
- printf("Power: ");
- if(get_param(RADIO_PARAM_POWER_MODE, &value) == RADIO_RESULT_OK) {
- if(value == RADIO_POWER_MODE_ON) {
- printf("On\n");
- } else if(value == RADIO_POWER_MODE_OFF) {
- printf("Off\n");
- }
- }
-
- printf("Channel: ");
- if(get_param(RADIO_PARAM_CHANNEL, &value) == RADIO_RESULT_OK) {
- printf("%d\n", value);
- }
-
- printf("PAN ID: ");
- if(get_param(RADIO_PARAM_PAN_ID, &value) == RADIO_RESULT_OK) {
- printf("0x%02x%02x\n", (value >> 8) & 0xFF, value & 0xFF);
- }
-
- printf("16-bit Address: ");
- if(get_param(RADIO_PARAM_16BIT_ADDR, &value) == RADIO_RESULT_OK) {
- printf("0x%02x%02x\n", (value >> 8) & 0xFF, value & 0xFF);
- }
-
- printf("64-bit Address: ");
- if(get_object(RADIO_PARAM_64BIT_ADDR, ext_addr, 8) == RADIO_RESULT_OK) {
- print_64bit_addr(ext_addr);
- }
-
- printf("RX Mode: ");
- if(get_param(RADIO_PARAM_RX_MODE, &value) == RADIO_RESULT_OK) {
- printf("Address Filtering is ");
- if(value & RADIO_RX_MODE_ADDRESS_FILTER) {
- printf("On, ");
- } else {
- printf("Off, ");
- }
- printf("Auto ACK is ");
- if(value & RADIO_RX_MODE_AUTOACK) {
- printf("On, ");
- } else {
- printf("Off, ");
- }
-
- printf("(value=%d)\n", value);
- }
-
- printf("TX Mode: ");
- if(get_param(RADIO_PARAM_TX_MODE, &value) == RADIO_RESULT_OK) {
- printf("%d\n", value);
- }
-
- printf("TX Power: ");
- if(get_param(RADIO_PARAM_TXPOWER, &value) == RADIO_RESULT_OK) {
- printf("%d dBm [0x%04x]\n", value, (uint16_t)value);
- }
-
- printf("CCA Threshold: ");
- if(get_param(RADIO_PARAM_CCA_THRESHOLD, &value) == RADIO_RESULT_OK) {
- printf("%d dBm [0x%04x]\n", value, (uint16_t)value);
- }
-
- printf("RSSI: ");
- if(get_param(RADIO_PARAM_RSSI, &value) == RADIO_RESULT_OK) {
- printf("%d dBm [0x%04x]\n", value, (uint16_t)value);
- }
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(extended_rf_api_process, ev, data)
-{
-
- PROCESS_BEGIN();
-
- get_rf_consts();
- print_rf_values();
-
- test_off_on();
- test_channels();
- test_rx_modes();
- test_tx_powers();
- test_cca_thresholds();
- test_pan_id();
- test_16bit_addr();
- test_64bit_addr();
-
- printf("Done\n");
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/http-socket/Makefile b/examples/http-socket/Makefile
index 6498ddacf..e1904d3ab 100644
--- a/examples/http-socket/Makefile
+++ b/examples/http-socket/Makefile
@@ -1,6 +1,5 @@
-all: http-example
+all: http-example websocket-example
CONTIKI=../..
MODULES += os/net/app-layer/http-socket
-MAKE_ROUTING = MAKE_ROUTING_RPL_CLASSIC
include $(CONTIKI)/Makefile.include
diff --git a/examples/websockets/websocket-example.c b/examples/http-socket/websocket-example.c
similarity index 100%
rename from examples/websockets/websocket-example.c
rename to examples/http-socket/websocket-example.c
diff --git a/examples/websockets/node/Makefile b/examples/http-socket/websocket-node/Makefile
similarity index 100%
rename from examples/websockets/node/Makefile
rename to examples/http-socket/websocket-node/Makefile
diff --git a/examples/websockets/node/example-server.js b/examples/http-socket/websocket-node/example-server.js
similarity index 100%
rename from examples/websockets/node/example-server.js
rename to examples/http-socket/websocket-node/example-server.js
diff --git a/examples/ipso-objects/Makefile b/examples/ipso-objects/Makefile
index 673b57aef..d4a1ef503 100644
--- a/examples/ipso-objects/Makefile
+++ b/examples/ipso-objects/Makefile
@@ -21,5 +21,5 @@ connect-router: $(CONTIKI)/tools/tunslip6
connect-router-cooja: $(CONTIKI)/tools/tunslip6
sudo $(CONTIKI)/tools/tunslip6 -a 127.0.0.1 -p 60001 aaaa::1/64
-connect-router-native: $(CONTIKI)/examples/ipv6/native-border-router/border-router.native
- sudo $(CONTIKI)/exmples/ipv6/native-border-router/border-router.native -a 127.0.0.1 -p 60001 aaaa::1/64
+connect-router-native: $(CONTIKI)/examples/native-border-router/border-router.native
+ sudo $(CONTIKI)/examples/native-border-router/border-router.native -a 127.0.0.1 -p 60001 aaaa::1/64
diff --git a/examples/ipso-objects/example-server.c b/examples/ipso-objects/example-server.c
index 3a78dc7fc..acec7ee25 100644
--- a/examples/ipso-objects/example-server.c
+++ b/examples/ipso-objects/example-server.c
@@ -48,10 +48,6 @@
#include "dev/serial-line.h"
#include "serial-protocol.h"
-#if CONTIKI_TARGET_WISMOTE
-#include "dev/uart1.h"
-#endif
-
#define DEBUG DEBUG_PRINT
#include "net/ipv6/uip-debug.h"
@@ -219,11 +215,6 @@ setup_network(void)
int i;
uint8_t state;
-#if CONTIKI_TARGET_WISMOTE
- uart1_set_input(serial_line_input_byte);
- serial_line_init();
-#endif
-
#if UIP_CONF_ROUTER
/**
* The choice of server address determines its 6LoWPAN header compression.
diff --git a/examples/ipv6/json-ws/Makefile b/examples/ipv6/json-ws/Makefile
deleted file mode 100644
index 50573d2e8..000000000
--- a/examples/ipv6/json-ws/Makefile
+++ /dev/null
@@ -1,24 +0,0 @@
-CONTIKI=../../..
-
-PROJECT_SOURCEFILES += json-ws.c
-
-ifdef WITH_COSM
- CFLAGS += -DWITH_COSM=1
-endif
-
-ifdef WITH_UDP
- CFLAGS += -DWITH_UDP=1
- PROJECT_SOURCEFILES += json-ws-udp.c
-endif
-
-MODULES += os/lib/json os/net/app-layer/httpd-ws
-
-ifeq ($(TARGET),)
- -include Makefile.target
-endif
-
-ifneq ($(TARGET),)
-all: websense-$(TARGET)
-endif
-
-include $(CONTIKI)/Makefile.include
diff --git a/examples/ipv6/json-ws/README-COSM.md b/examples/ipv6/json-ws/README-COSM.md
deleted file mode 100644
index a13798302..000000000
--- a/examples/ipv6/json-ws/README-COSM.md
+++ /dev/null
@@ -1,109 +0,0 @@
-JSON ws
-=======
-
-Short description on how to set-up a sensor network for global IPv6 addresses.
-NOTE: this assumes that you do not have a native IPv6 connection.
-
-You will need:
-
-- PC with Ubuntu (Linux) - 11 or 12 versions
-- A node for the RPL-Border-Router (examples/ipv6/rpl-border-router)
-- A node for the json webservice (examples/ipv6/json-ws)
-
-Set-up IPv6 tunnel and Border Router
-------------------------------------
-1. Ensure that you have gogo6c installed.
-
- sudo apt-get install gogoc
-
-2. Register an account at gogo6 and Freenet6 (http://www.gogo6.com).
- The account at Freenet6 is needed by the gogo6c client.
-
-3. Edit the gogoc.conf and set your own Freenet6 user and password by
- changing the lines with "userid" and "passwd".
-
-4. Start gogoc at command line
-
- cd contiki/examples/ipv6/json-ws
- sudo gogoc -f gogoc.conf -n
-
-This will print your prefix - TSP_PREFIX. In my case
-TSP_PREFIX=2001:05c0:1517:e400 (prefixlen is 56).
-
-5. Connect one of the nodes to the PC (via USB or serial) and program
- it with the RPL-border-router (assumes Z1 node).
-
- cd contiki/examples/ipv6/rpl-border-router
- make DEFINES=DEFINES=NETSTACK_RDC=nullrdc_driver,CSMA_CONF_802154_AUTOACK=1 TARGET=z1 border-router.upload
-
-6. Run tunslip6 which will forward IP from the RPL network to the IPv6 tunnel
- (and to the Internet).
-
- cd contiki/examples/ipv6/rpl-border-router
- make connect-router PREFIX=::1/64
-
-When you start this you should get a printout from the border-router
-which give you the IPv6 address of it.
-
-Server IPv6 addresses:
- 2001:05c0:1517:e400:c30c::10a
- fe80::c30c:0:0:10a
-
-7. Browse using Mozilla Firefox (or any other browser) to the IPv6 address
- given by the border router. This will show you the list of other nodes
- connected to the RPL network.
-
- http://[2001:05c0:1517:e400:c30c::10a]/
-
- NOTE: this is a global IPv6 address so it should also be reachable from
- any machine on the Internet.
-
-Configuration of COSM submission
---------------------------------
-1. Register a COSM account at https://cosm.com/
- Set-up a feed and create an API key for the feed.
-
-2. Program the sensor node with (assumes Z1)
-
- cd contiki/examples/ipv6/json-ws
- make websense-z1.upload WITH_COSM=1 TARGET=z1
-
-3. Check the IPv6 address of the node via the RPL-border router or by looking
- at printouts when booting (make login TARGET=z1)
-
-4. You need to configure the node to push data to the COSM feed and this can be
- done in several ways. For convenience a Python script is included that
- pushes the configuration to the nodes.
-
- Edit the file 'setcosm.py' and replace "" and "" with
- your COSM API key and COSM feed id. You can then use this Python script to
- configure your nodes.
-
- This is an example that configures the node with IP address
- 2001:05c0:1517:e400:c30c::10b to push data to the COSM feed with stream 1:
-
- cd contiki/examples/ipv6/json-ws
- ./setcosm.py [2001:05c0:1517:e400:c30c::10b] 1
-
- Another way to configure the nodes is to use a REST add-on for the web
- browser to post a COSM configuration to the node. "REST Client" for Mozilla
- Firefox is an example of such add-on.
-
- POST a JSON expression to your node with the following data: This assumes
- that you have the feed with id 55180 and want to post to stream 1 in that
- feed. The field 'appdata' should be set to the API key you created at the
- COSM web site for the feed.
-
- {
- "host":"[2001:470:1f10:333::2]",
- "port":80,
- "path":"/v2/feeds/55180/datastreams/1",
- "appdata":"",
- "interval":120,
- "proto":"cosm"
- }
-
- This will configure the node to periodically push temperature data every
- other minute. You can use GET to retrieve the data to se that the node has
- been successfully configured (the COSM API key will be visualized as a
- number of stars).
diff --git a/examples/ipv6/json-ws/gogoc.conf b/examples/ipv6/json-ws/gogoc.conf
deleted file mode 100644
index 8d1fa0071..000000000
--- a/examples/ipv6/json-ws/gogoc.conf
+++ /dev/null
@@ -1,351 +0,0 @@
-#-----------------------------------------------------------------------------
-# $Id: gogoc.conf.in,v 1.1 2009/11/20 16:53:12 jasminko Exp $
-#-----------------------------------------------------------------------------
-
-########################## READ ME! ################################
-#
-# Welcome to the gogoCLIENT configuration file.
-# In order to use the client, you need to modify the 'userid', 'passwd' and
-# 'server' parameters below depending on which of these situations applies:
-#
-# 1. If you created a Freenet6 account, enter your userid and password below.
-# Change the server name to "broker.freenet6.net" and auth_method to 'any'.
-# 2. If you would like to use Freenet6 without creating an account,
-# do not make any modifications and close this file.
-# 3. If this software was provided by your ISP, enter the userid, password and
-# server name provided by your ISP below.
-#
-
-
-########################## BASIC CONFIGURATION ################################
-
-#
-# User Identification and Password:
-# Specify your user name and password as provided by your ISP or Freenet6.
-# If you plan to connect anonymously, leave these values empty.
-# NOTE: Change auth_method option if you are using a username/password.
-#
-# userid=
-# passwd=
-#
-userid=
-passwd=
-
-#
-# gogoSERVER:
-# Specify a gogoSERVER name or IP address (provided by your ISP or
-# Freenet6). An optional port number can be added; the default port number
-# is 3653.
-#
-# Examples:
-# server=hostname # FQDN
-# server=A.B.C.D # IPv4 address
-# server=[X:X::X:X] # IPv6 address
-# server=hostname:port_number
-# server=A.B.C.D:port_number
-# server=[X:X::X:X]:port_number
-#
-# Freenet6 account holders should enter authenticated.freenet6.net,
-# otherwise use anonymous.freenet6.net.
-# Your ISP may provide you with a different server name.
-#
-#server=anonymous.freenet6.net
-#server=authenticated.freenet6.net
-server=amsterdam.freenet6.net
-
-#
-# Authentication Method:
-#
-# auth_method=<{anonymous}|{any|passdss-3des-1|digest-md5|plain}>
-#
-# anonymous: Sends no username or password
-#
-# any: The most secure method will be used.
-# passdss-3des-1: The password is sent encrypted.
-# digest-md5: The password is sent encrypted.
-# plain: Both username and password are sent as plain text.
-#
-# Recommended values:
-# - any: If you are authenticating a username / password.
-# - anonymous: If you are connecting anonymously.
-#
-#auth_method=anonymous
-auth_method=any
-
-
-########################## ROUTING CONFIGURATION ##############################
-# Use these parameters when you wish the client to act as a router and provide
-# IPv6 connectivity to IPv6-capable devices on your network.
-
-#
-# Local Host Type:
-# Change this value to 'router' to enable IPv6 advertisements.
-#
-# host_type=
-#
-host_type=router
-#host
-
-#
-# Prefix Length:
-# Length of the requested prefix. Valid values range between 0 and 64 when
-# using V6*V4 tunnel modes, and between 0 and 32 when using V4V6 tunnel mode.
-#
-# prefixlen=
-#
-prefixlen=64
-
-#
-# Advertisement Interface Prefix:
-# Name of the interface that will be configured to send router advertisements.
-# This is an interface index on Windows (ex: 4) and a name on Linux
-# and BSD (ex: eth1 or fxp1).
-#
-# if_prefix=
-#
-if_prefix=tun0
-
-#
-# DNS Server:
-# A DNS server list to which the reverse prefix will be delegated. Servers
-# are separated by the colon(:) delimiter.
-#
-# Example: dns_server=ns1.domain:ns2.domain:ns3.domain
-#
-dns_server=
-
-
-######################### ADVANCED CONFIGURATION ##############################
-
-#
-# gogoCLIENT Installation Directory:
-# Directory where the gogoCLIENT will be installed. This value has been
-# set during installation.
-#
-gogoc_dir=
-
-#
-# Auto-Retry Connect, Retry Delay and Max Retry Delay:
-# When auto_retry_connect=yes, the gogoCLIENT will attempt to reconnect
-# after a disconnection occurred. The time to wait is 'retry_delay' and that
-# delay is doubled at every 3 failed consecutive reconnection attempt.
-# However, the wait delay will never exceed retry_delay_max.
-#
-#
-# auto_retry_connect=
-# retry_delay=
-# retry_delay_max=
-#
-# Recommended values: "yes", 30, 300
-#
-auto_retry_connect=yes
-retry_delay=30
-retry_delay_max=300
-
-#
-# Keepalive Feature and Message Interval:
-# Indicates if and how often the client will send data to keep the tunnel
-# active.
-#
-# keepalive=
-# keepalive_interval=
-#
-# Recommended values: "yes" and 30
-#
-keepalive=yes
-keepalive_interval=30
-
-#
-# Tunnel Encapsulation Mode:
-# v6v4: IPv6-in-IPv4 tunnel.
-# v6udpv4: IPv6-in-UDP-in-IPv4 tunnel (for clients behind a NAT).
-# v6anyv4: Lets the broker choose the best mode for IPv6 tunnel.
-# v4v6: IPv4-in-IPv6 tunnel.
-#
-# Recommended value: v6anyv4
-#
-tunnel_mode=v6anyv4
-
-#
-# Tunnel Interface Name:
-# The interface name assigned to the tunnel. This value is O/S dependent.
-#
-# if_tunnel_v6v4 is the tunnel interface name for v6v4 encapsulation mode
-# if_tunnel_v6udpv4 is the tunnel interface name for v6udpv4 encapsulate mode
-# if_tunnel_v4v6 is the tunnel interface name for v4v6 encapsulation mode
-#
-# Default values are set during installation.
-#
-if_tunnel_v6v4=sit1
-if_tunnel_v6udpv4=sit
-if_tunnel_v4v6=sit0
-
-#
-# Local IP Address of the Client:
-# Allows you to set a specific address as the local tunnel endpoint.
-#
-# client_v4=
-# client_v6=
-# auto: The gogoCLIENT will find the local IP address endpoint.
-#
-# Recommended value: auto
-#
-client_v4=auto
-client_v6=auto
-
-#
-# Script Name:
-# File name of the script to run to install the tunnel interface. The
-# scripts are located in the template directory under the client
-# installation directory.
-#
-# template=
-#
-# Default value is set during installation.
-#
-template=linux
-
-#
-# Proxy client:
-# Indicates that this client will request a tunnel for another endpoint,
-# such as a Cisco router.
-#
-# proxy_client=
-#
-# NOTE: NAT traversal is not possible in proxy mode.
-#
-proxy_client=no
-
-
-############################ BROKER REDIRECTION ###############################
-
-#
-# Broker List File Name:
-# The 'broker_list' directive specifies the filename where the broker
-# list received during broker redirection will be saved.
-#
-# broker_list=
-#
-broker_list=/var/lib/gogoc/tsp-broker-list.txt
-
-#
-# Last Server Used File Name:
-# The 'last_server' directive specifies the filename where the address of
-# the last broker to which a connection was successfully established will
-# be saved.
-#
-# last_server=
-#
-last_server=/var/lib/gogoc/tsp-last-server.txt
-
-#
-# Always Use Last Known Working Server:
-# The value of the 'always_use_same_server' directive determines whether the
-# client should always try to connect to the broker found in the
-# 'last_server' directive filename.
-#
-# always_use_same_server=
-#
-always_use_same_server=no
-
-
-#################################### LOGGING ##################################
-
-#
-# Log Verbosity Configuration:
-# The format is 'log_=level', where possible values for
-# 'destination' are:
-#
-# - console (logging to the console [AKA stdout])
-# - stderr (logging to standard error)
-# - file (logging to a file)
-# - syslog (logging to syslog [Unix only])
-#
-# and 'level' is a digit between 0 and 3. A 'level' value of 0 disables
-# logging to the destination, while values 1 to 3 request increasing levels
-# of log verbosity and detail. If 'level' is not specified, a value of 1 is
-# assumed.
-#
-# Example:
-# log_file=3 (Maximal logging to a file)
-# log_stderr=0 (Logging to standard error disabled)
-# log_console= (Minimal logging to the console)
-#
-# - Default configuration on Windows platforms:
-#
-# log_console=0
-# log_stderr=0
-# log_file=1
-#
-# - Default configuration on Unix platforms:
-#
-# log_console=0
-# log_stderr=1
-# log_file=0
-# log_syslog=0
-#
-log_console=3
-log_stderr=0
-#log_file=
-#log_syslog=
-
-#
-# Log File Name:
-# When logging to file is requested using the 'log_file' directive, the name
-# and path of the file to use may be specified using this directive.
-#
-# log_filename=
-#
-log_filename=/var/log/gogoc/gogoc.log
-
-#
-# Log File Rotation:
-# When logging to file is requested using the 'log_file' directive, log file
-# rotation may be enabled. When enabled, the contents of the log file will
-# be moved to a backup file just before it reaches the maximum log file size
-# specified via this directive.
-#
-# The name of the backup file is the name of the original log file with
-# '.' inserted before the file extension. If the file does not
-# have an extension, '.' is appended to the name of the original
-# log file. The timestamp specifies when the rotation occurred.
-#
-# After the contents of the log file have been moved to the backup file, the
-# original file is cleared, and logging resumes at the beginning of the file.
-#
-# log_rotation=
-#
-log_rotation=yes
-
-#
-# Log File Rotation Size:
-# The 'log_rotation_size' directive specifies the maximum size a log file may
-# reach before rotation occurs, if enabled. The value is expressed in
-# kilobytes.
-#
-# log_rotation_size=<16|32|128|1024>
-#
-log_rotation_size=32
-
-#
-# Deletion of rotated log files:
-# The 'log_rotation_delete' directive specifies that no log backup will be
-# kept. When rotation occurs, the file is immediately wiped out and a new
-# log file is started.
-#
-# log_rotation_delete=
-#
-log_rotation_delete=no
-
-#
-# Syslog Logging Facility [Unix Only]:
-# When logging to syslog is requested using the 'log_syslog' directive, the
-# facility to use may be specified using this directive.
-#
-# syslog_facility=
-#
-syslog_facility=USER
-
-
-# end of gogoc.conf
-#------------------------------------------------------------------------------
diff --git a/examples/ipv6/json-ws/json-ws-udp.c b/examples/ipv6/json-ws/json-ws-udp.c
deleted file mode 100644
index 8f46f6cb2..000000000
--- a/examples/ipv6/json-ws/json-ws-udp.c
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * Copyright (c) 2011-2012, Swedish Institute of Computer Science.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- */
-
-/**
- * \file
- * Code for sending the JSON data as a UDP packet
- * Specify proto = "udp", port =
- * host =
- *
- * \author
- * Niclas Finne
- * Joakim Eriksson
- */
-
-#include "contiki.h"
-#include "httpd-ws.h"
-#include "jsontree.h"
-#include "jsonparse.h"
-#include "json-ws.h"
-#include
-#include
-
-#define DEBUG DEBUG_FULL
-#include "net/ipv6/uip-debug.h"
-
-static struct uip_udp_conn *client_conn;
-static uip_ipaddr_t server_ipaddr;
-static uint16_t server_port;
-
-#define SENDER_PORT 8181
-
-/*---------------------------------------------------------------------------*/
-int
-json_ws_udp_setup(const char *host, uint16_t port)
-{
-
- server_port = port;
-
- if(client_conn != NULL) {
- /* this should be a macro uip_udp_conn_free() or something */
- uip_udp_remove(client_conn);
- client_conn = NULL;
- }
-
- uip_ipaddr_t *ipaddr;
-
- /* First check if the host is an IP address. */
- ipaddr = &server_ipaddr;
- if(uiplib_ipaddrconv(host, &server_ipaddr) == 0) {
-#if 0 && UIP_UDP
- if(resolv_lookup(host, &ipaddr) != RESOLV_STATUS_CACHED) {
- return 0;
- }
-#else /* UIP_UDP */
- return 0;
-#endif /* UIP_UDP */
- }
-
- /* new connection with remote host */
- client_conn = udp_new(&server_ipaddr, UIP_HTONS(server_port), NULL);
- udp_bind(client_conn, UIP_HTONS(SENDER_PORT));
-
- PRINTF("Created a connection with the server ");
- PRINT6ADDR(&client_conn->ripaddr);
- PRINTF(" local/remote port %u/%u\n",
- UIP_HTONS(client_conn->lport), UIP_HTONS(client_conn->rport));
- return 1;
-}
-
-/*---------------------------------------------------------------------------*/
-
-static char *udp_buf;
-static int pos;
-static int size;
-
-static int
-putchar_udp(int c)
-{
- if(udp_buf != NULL && pos <= size) {
- udp_buf[pos++] = c;
- return c;
- }
- return 0;
-}
-
-/*---------------------------------------------------------------------------*/
-void
-json_ws_udp_send(struct jsontree_value *tree, const char *path)
-{
- struct jsontree_context json;
- /* maxsize = 70 bytes */
- char buf[70];
-
- udp_buf = buf;
-
- /* reset state and set max-size */
- /* NOTE: packet will be truncated at 70 bytes */
- pos = 0;
- size = sizeof(buf);
-
- json.values[0] = (struct json_value *)tree;
- jsontree_reset(&json);
- find_json_path(&json, path);
- json.path = json.depth;
- json.putchar = putchar_udp;
- while(jsontree_print_next(&json) && json.path <= json.depth);
-
- printf("Real UDP size: %d\n", pos);
- buf[pos] = 0;
-
- uip_udp_packet_sendto(client_conn, &buf, pos,
- &server_ipaddr, UIP_HTONS(server_port));
-}
-/*---------------------------------------------------------------------------*/
-void
-json_ws_udp_debug(char *string)
-{
- int len;
-
- len = strlen(string);
- uip_udp_packet_sendto(client_conn, string, len,
- &server_ipaddr, UIP_HTONS(server_port));
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/json-ws/json-ws.c b/examples/ipv6/json-ws/json-ws.c
deleted file mode 100644
index 6a290a194..000000000
--- a/examples/ipv6/json-ws/json-ws.c
+++ /dev/null
@@ -1,521 +0,0 @@
-/*
- * Copyright (c) 2011-2012, Swedish Institute of Computer Science.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- */
-
-/**
- * \file
- * JSON webservice util
- * \author
- * Niclas Finne
- * Joakim Eriksson
- * Joel Hoglund
- */
-
-#include "contiki.h"
-#if PLATFORM_HAS_LEDS
-#include "dev/leds.h"
-#endif
-#include "httpd-ws.h"
-#include "jsontree.h"
-#include "jsonparse.h"
-#include "json-ws.h"
-#include
-#include
-
-#define DEBUG 0
-#if DEBUG
-#define PRINTF(...) printf(__VA_ARGS__)
-#else
-#define PRINTF(...)
-#endif
-
-#ifdef JSON_WS_CONF_CALLBACK_PROTO
-#define CALLBACK_PROTO JSON_WS_CONF_CALLBACK_PROTO
-#else
-#define CALLBACK_PROTO "http"
-#endif /* JSON_WS_CONF_CALLBACK_PROTO */
-
-#ifdef JSON_WS_CONF_CALLBACK_PORT
-#define CALLBACK_PORT JSON_WS_CONF_CALLBACK_PORT
-#else
-#define CALLBACK_PORT 8080;
-#endif /* JSON_WS_CONF_CALLBACK_PORT */
-
-/* Predefined startup-send interval */
-#ifdef JSON_WS_CONF_CALLBACK_INTERVAL
-#define SEND_INTERVAL JSON_WS_CONF_CALLBACK_INTERVAL
-#else
-#define SEND_INTERVAL 120
-#endif
-
-static const char http_content_type_json[] = "application/json";
-
-/* Maximum 40 chars in host name?: 5 x 8 */
-static char callback_host[40] = "[fd00::1]";
-static uint16_t callback_port = CALLBACK_PORT;
-static uint16_t callback_interval = SEND_INTERVAL;
-static char callback_path[80] = "/debug/";
-static char callback_appdata[80] = "";
-static char callback_proto[8] = CALLBACK_PROTO;
-static const char *callback_json_path = NULL;
-static struct jsontree_object *tree;
-static struct ctimer periodic_timer;
-long json_time_offset = 0;
-
-/* support for submitting to cosm */
-#if WITH_COSM
-extern struct jsontree_callback cosm_value_callback;
-
-JSONTREE_OBJECT_EXT(cosm_tree,
- JSONTREE_PAIR("current_value", &cosm_value_callback));
-#endif /* WITH_COSM */
-
-static void periodic(void *ptr);
-
-/*---------------------------------------------------------------------------*/
-static void
-json_copy_string(struct jsonparse_state *parser, char *string, int len)
-{
- jsonparse_next(parser);
- jsonparse_next(parser);
- jsonparse_copy_value(parser, string, len);
-}
-/*---------------------------------------------------------------------------*/
-static int
-cfg_get(struct jsontree_context *js_ctx)
-{
- const char *path = jsontree_path_name(js_ctx, js_ctx->depth - 1);
-
- if(strncmp(path, "host", 4) == 0) {
- jsontree_write_string(js_ctx, callback_host);
- } else if(strncmp(path, "port", 4) == 0) {
- jsontree_write_int(js_ctx, callback_port);
- } else if(strncmp(path, "interval", 8) == 0) {
- jsontree_write_int(js_ctx, callback_interval);
- } else if(strncmp(path, "path", 4) == 0) {
- jsontree_write_string(js_ctx, callback_path);
- } else if(strncmp(path, "appdata", 7) == 0) {
- jsontree_write_string(js_ctx, callback_appdata[0] == '\0' ? "" : "***");
- } else if(strncmp(path, "proto", 5) == 0) {
- jsontree_write_string(js_ctx, callback_proto);
- }
- return 0;
-}
-static int
-cfg_set(struct jsontree_context *js_ctx, struct jsonparse_state *parser)
-{
- int type;
- int update = 0;
-
- while((type = jsonparse_next(parser)) != 0) {
- if(type == JSON_TYPE_PAIR_NAME) {
- if(jsonparse_strcmp_value(parser, "host") == 0) {
- json_copy_string(parser, callback_host, sizeof(callback_host));
- update++;
- } else if(jsonparse_strcmp_value(parser, "path") == 0) {
- json_copy_string(parser, callback_path, sizeof(callback_path));
- update++;
- } else if(jsonparse_strcmp_value(parser, "appdata") == 0) {
- json_copy_string(parser, callback_appdata, sizeof(callback_appdata));
- update++;
- } else if(jsonparse_strcmp_value(parser, "proto") == 0) {
- json_copy_string(parser, callback_proto, sizeof(callback_proto));
- update++;
- } else if(jsonparse_strcmp_value(parser, "port") == 0) {
- jsonparse_next(parser);
- jsonparse_next(parser);
- callback_port = jsonparse_get_value_as_int(parser);
- if(callback_port == 0) {
- callback_port = CALLBACK_PORT;
- }
- update++;
- } else if(jsonparse_strcmp_value(parser, "interval") == 0) {
- jsonparse_next(parser);
- jsonparse_next(parser);
- callback_interval = jsonparse_get_value_as_int(parser);
- if(callback_interval == 0) {
- callback_interval = SEND_INTERVAL;
- }
- update++;
- }
- }
- }
- if(update && callback_json_path != NULL) {
-#if WITH_UDP
- if(strncmp(callback_proto, "udp", 3) == 0) {
- json_ws_udp_setup(callback_host, callback_port);
- }
-#endif
- ctimer_set(&periodic_timer, CLOCK_SECOND * callback_interval,
- periodic, NULL);
- }
- return 0;
-}
-static struct jsontree_callback cfg_callback =
- JSONTREE_CALLBACK(cfg_get, cfg_set);
-
-JSONTREE_OBJECT_EXT(json_subscribe_callback,
- JSONTREE_PAIR("host", &cfg_callback),
- JSONTREE_PAIR("port", &cfg_callback),
- JSONTREE_PAIR("path", &cfg_callback),
- JSONTREE_PAIR("appdata", &cfg_callback),
- JSONTREE_PAIR("proto", &cfg_callback),
- JSONTREE_PAIR("interval", &cfg_callback));
-/*---------------------------------------------------------------------------*/
-static int
-time_get(struct jsontree_context *js_ctx)
-{
- /* unix time */
- char buf[20];
- unsigned long time = json_time_offset + clock_seconds();
-
- snprintf(buf, 20, "%lu", time);
- jsontree_write_atom(js_ctx, buf);
- return 0;
-}
-
-static int
-time_set(struct jsontree_context *js_ctx, struct jsonparse_state *parser)
-{
- int type;
- unsigned long time;
-
- while((type = jsonparse_next(parser)) != 0) {
- if(type == JSON_TYPE_PAIR_NAME) {
- if(jsonparse_strcmp_value(parser, "time") == 0) {
- jsonparse_next(parser);
- jsonparse_next(parser);
- time = jsonparse_get_value_as_long(parser);
- json_time_offset = time - clock_seconds();
- }
- }
- }
- return 0;
-}
-
-struct jsontree_callback json_time_callback =
- JSONTREE_CALLBACK(time_get, time_set);
-/*---------------------------------------------------------------------------*/
-#if PLATFORM_HAS_LEDS
-#include "dev/leds.h"
-
-static int
-ws_leds_get(struct jsontree_context *js_ctx)
-{
- char buf[4];
- unsigned char leds = leds_get();
-
- snprintf(buf, 4, "%u", leds);
- jsontree_write_atom(js_ctx, buf);
- return 0;
-}
-
-static int
-ws_leds_set(struct jsontree_context *js_ctx, struct jsonparse_state *parser)
-{
- int type, old_leds, new_leds;
-
- while((type = jsonparse_next(parser)) != 0) {
- if(type == JSON_TYPE_PAIR_NAME) {
- if(jsonparse_strcmp_value(parser, "leds") == 0) {
- jsonparse_next(parser);
- jsonparse_next(parser);
- new_leds = jsonparse_get_value_as_int(parser);
- old_leds = leds_get();
- leds_on(~old_leds & new_leds);
- leds_off(old_leds & ~new_leds);
- }
- }
- }
- return 0;
-}
-
-struct jsontree_callback json_leds_callback =
- JSONTREE_CALLBACK(ws_leds_get, ws_leds_set);
-
-#endif /* PLATFORM_HAS_LEDS */
-/*---------------------------------------------------------------------------*/
-static struct httpd_ws_state *json_putchar_context;
-static int
-json_putchar(int c)
-{
- if(json_putchar_context != NULL &&
- json_putchar_context->outbuf_pos < HTTPD_OUTBUF_SIZE) {
- json_putchar_context->outbuf[json_putchar_context->outbuf_pos++] = c;
- return c;
- }
- return 0;
-}
-static int putchar_size = 0;
-static int
-json_putchar_count(int c)
-{
- putchar_size++;
- return c;
-}
-/*---------------------------------------------------------------------------*/
-static
-PT_THREAD(send_values(struct httpd_ws_state *s))
-{
- json_putchar_context = s;
-
- PSOCK_BEGIN(&s->sout);
-
- s->json.putchar = json_putchar;
- s->outbuf_pos = 0;
-
- if(s->json.values[0] == NULL) {
- /* Nothing to do */
-
- } else if(s->request_type == HTTPD_WS_POST &&
- s->state == HTTPD_WS_STATE_OUTPUT) {
- /* Set value */
- struct jsontree_value *v;
- struct jsontree_callback *c;
-
- while((v = jsontree_find_next(&s->json, JSON_TYPE_CALLBACK)) != NULL) {
- c = (struct jsontree_callback *)v;
- if(c->set != NULL) {
- struct jsonparse_state js;
-
- jsonparse_setup(&js, s->inputbuf, s->content_len);
- c->set(&s->json, &js);
- }
- }
- memcpy(s->outbuf, "{\"Status\":\"OK\"}", 15);
- s->outbuf_pos = 15;
-
- } else {
- /* Get value */
- while(jsontree_print_next(&s->json) && s->json.path <= s->json.depth) {
- if(s->outbuf_pos >= UIP_TCP_MSS) {
- SEND_STRING(&s->sout, s->outbuf, UIP_TCP_MSS);
- s->outbuf_pos -= UIP_TCP_MSS;
- if(s->outbuf_pos > 0) {
- memcpy(s->outbuf, &s->outbuf[UIP_TCP_MSS], s->outbuf_pos);
- }
- }
- }
- }
-
- if(s->outbuf_pos > 0) {
- SEND_STRING(&s->sout, s->outbuf, s->outbuf_pos);
- s->outbuf_pos = 0;
- }
- PSOCK_END(&s->sout);
-}
-/*---------------------------------------------------------------------------*/
-struct jsontree_value *
-find_json_path(struct jsontree_context *json, const char *path)
-{
- struct jsontree_value *v;
- const char *start;
- const char *end;
- int len;
-
- v = json->values[0];
- start = path;
- do {
- end = strchr(start, '/');
- if(end == start) {
- break;
- }
- if(end != NULL) {
- len = end - start;
- end++;
- } else {
- len = strlen(start);
- }
- if(v->type != JSON_TYPE_OBJECT) {
- v = NULL;
- } else {
- struct jsontree_object *o;
- int i;
-
- o = (struct jsontree_object *)v;
- v = NULL;
- for(i = 0; i < o->count; i++) {
- if(strncmp(start, o->pairs[i].name, len) == 0) {
- v = o->pairs[i].value;
- json->index[json->depth] = i;
- json->depth++;
- json->values[json->depth] = v;
- json->index[json->depth] = 0;
- break;
- }
- }
- }
- start = end;
- } while(end != NULL && *end != '\0' && v != NULL);
- json->callback_state = 0;
- return v;
-}
-/*---------------------------------------------------------------------------*/
-static int
-calculate_json_size(const char *path, struct jsontree_value *v)
-{
- /* check size of JSON expression */
- struct jsontree_context json;
-
- json.values[0] = (v == NULL) ? (struct jsontree_value *)tree : v;
- jsontree_reset(&json);
-
- if(path != NULL) {
- find_json_path(&json, path);
- }
-
- json.path = json.depth;
- json.putchar = json_putchar_count;
- putchar_size = 0;
- while(jsontree_print_next(&json) && json.path <= json.depth);
-
- return putchar_size;
-}
-/*---------------------------------------------------------------------------*/
-httpd_ws_script_t
-httpd_ws_get_script(struct httpd_ws_state *s)
-{
- struct jsontree_value *v;
-
- s->json.values[0] = v = (struct jsontree_value *)tree;
- jsontree_reset(&s->json);
-
- if(s->filename[1] == '\0') {
- /* Default page: show full JSON tree. */
- } else {
- v = find_json_path(&s->json, &s->filename[1]);
- }
- if(v != NULL) {
- s->json.path = s->json.depth;
- s->content_type = http_content_type_json;
- return send_values;
- }
- return NULL;
-}
-/*---------------------------------------------------------------------------*/
-#if JSON_POST_EXTRA_HEADER || WITH_COSM
-static int
-output_headers(struct httpd_ws_state *s, char *buffer, int buffer_size,
- int index)
-{
- if(index == 0) {
-#ifdef JSON_POST_EXTRA_HEADER
- return snprintf(buffer, buffer_size, "%s\r\n", JSON_POST_EXTRA_HEADER);
- } else if(index == 1) {
-#endif
-#if WITH_COSM
- if(strncmp(callback_proto, "cosm", 4) == 0 && callback_appdata[0] != '\0') {
- return snprintf(buffer, buffer_size, "X-PachubeApiKey:%s\r\n",
- callback_appdata);
- }
-#endif
- }
- return 0;
-}
-#endif /* JSON_POST_EXTRA_HEADER || WITH_COSM */
-/*---------------------------------------------------------------------------*/
-static void
-periodic(void *ptr)
-{
- struct httpd_ws_state *s;
- int callback_size;
-
- if(callback_json_path != NULL && strlen(callback_host) > 2) {
- ctimer_restart(&periodic_timer);
-
- if(strncmp(callback_proto, "http", 4) == 0) {
- callback_size = calculate_json_size(callback_json_path, NULL);
- s = httpd_ws_request(HTTPD_WS_POST, callback_host, NULL, callback_port,
- callback_path, http_content_type_json,
- callback_size, send_values);
- if(s != NULL) {
- PRINTF("PERIODIC POST %s\n", callback_json_path);
-#if JSON_POST_EXTRA_HEADER
- s->output_extra_headers = output_headers;
-#endif
- s->json.values[0] = (struct jsontree_value *)tree;
- jsontree_reset(&s->json);
- find_json_path(&s->json, callback_json_path);
- s->json.path = s->json.depth;
- } else {
- PRINTF("PERIODIC CALLBACK FAILED\n");
- }
-#if WITH_COSM
- } else if(strncmp(callback_proto, "cosm", 4) == 0) {
- callback_size = calculate_json_size(NULL, (struct jsontree_value *)
- &cosm_tree);
- /* printf("JSON Size:%d\n", callback_size); */
- s = httpd_ws_request(HTTPD_WS_PUT, callback_host, "api.pachube.com",
- callback_port, callback_path,
- http_content_type_json, callback_size, send_values);
- /* host = cosm host */
- /* path => path to datastream / data point */
- s->output_extra_headers = output_headers;
- s->json.values[0] = (struct jsontree_value *)&cosm_tree;
- jsontree_reset(&s->json);
- s->json.path = 0;
-
- PRINTF("PERIODIC cosm callback: %d\n", callback_size);
-#endif /* WITH_COSM */
- }
-#if WITH_UDP
- else {
- callback_size = calculate_json_size(callback_json_path, NULL);
- PRINTF("PERIODIC UDP size: %d\n", callback_size);
- json_ws_udp_send(tree, callback_json_path);
- }
-#endif /* WITH_UDP */
- } else {
- printf("PERIODIC CALLBACK - nothing todo\n");
- }
-}
-/*---------------------------------------------------------------------------*/
-void
-json_ws_init(struct jsontree_object *json)
-{
- PRINTF("JSON INIT (callback %s every %u seconds)\n",
- CALLBACK_PROTO, SEND_INTERVAL);
- tree = json;
- ctimer_set(&periodic_timer, CLOCK_SECOND * SEND_INTERVAL, periodic, NULL);
- process_start(&httpd_ws_process, NULL);
-#if WITH_UDP
- if(strncmp(callback_proto, "udp", 3) == 0) {
- json_ws_udp_setup(callback_host, callback_port);
- }
-#endif /* WITH_UDP */
-}
-/*---------------------------------------------------------------------------*/
-void
-json_ws_set_callback(const char *path)
-{
- callback_json_path = path;
- ctimer_restart(&periodic_timer);
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/json-ws/json-ws.h b/examples/ipv6/json-ws/json-ws.h
deleted file mode 100644
index 8c9e2a764..000000000
--- a/examples/ipv6/json-ws/json-ws.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (c) 2011-2012, Swedish Institute of Computer Science.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- */
-
-/**
- * \file
- * JSON webservice util
- * \author
- * Niclas Finne
- * Joakim Eriksson
- * Joel Hoglund
- */
-
-#ifndef JSON_WS_H_
-#define JSON_WS_H_
-
-#include "jsontree.h"
-
-void json_ws_init(struct jsontree_object *json);
-void json_ws_set_callback(const char *json_path);
-int json_ws_udp_setup(const char *host, uint16_t port);
-
-extern struct jsontree_object json_subscribe_callback;
-extern struct jsontree_callback json_time_callback;
-
-#if PLATFORM_HAS_LEDS
-extern struct jsontree_callback json_leds_callback;
-#endif
-extern struct jsontree_object cosm_tree;
-
-#endif /* JSON_WS_H_ */
diff --git a/examples/ipv6/json-ws/setcosm.py b/examples/ipv6/json-ws/setcosm.py
deleted file mode 100755
index 4fe58057a..000000000
--- a/examples/ipv6/json-ws/setcosm.py
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/usr/bin/python
-
-# python set time code
-import httplib,sys
-
-# edit the key and feed parameters to match your COSM account and feed
-key = ""
-feed = ""
-cosmaddr = "[2001:470:1f10:333::2]"
-
-print "JSON-WS COSM configuration utility\n Currently set to COSM feed: %s Key: '%s'" % (feed, key)
-if len(sys.argv) > 2:
- host = sys.argv[1]
- stream = sys.argv[2]
-else:
- print "Usage: ", sys.argv[0], " "
- sys.exit()
-
-print "Setting cosm config at:", host, " feed:", feed, " stream:",stream
-
-conn = httplib.HTTPConnection(host)
-# NAT64 address =
-#conn.request("POST","", '{"host":"[2001:778:0:ffff:64:0:d834:e97a]","port":80,"path":"/v2/feeds/55180/datastreams/1","interval":120}')
-
-requestData = '{"host":"%s","port":80,"path":"/v2/feeds/%s/datastreams/%s","appdata":"%s","interval":120,"proto":"cosm"}' % (cosmaddr, feed, stream, key)
-print "Posting to node: ", requestData
-conn.request("POST","", requestData)
-
-res = conn.getresponse()
-print res.status, res.reason
diff --git a/examples/ipv6/json-ws/websense-sky.c b/examples/ipv6/json-ws/websense-sky.c
deleted file mode 100644
index a203a6081..000000000
--- a/examples/ipv6/json-ws/websense-sky.c
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * Copyright (c) 2011-2012, Swedish Institute of Computer Science.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- */
-
-/**
- * \file
- * Websense for Sky mote
- * \author
- * Niclas Finne
- * Joakim Eriksson
- * Joel Hoglund
- */
-
-#include "contiki.h"
-#include "dev/leds.h"
-#include "dev/sht11/sht11-sensor.h"
-#include "jsontree.h"
-#include "json-ws.h"
-#include
-
-#define DEBUG 0
-#if DEBUG
-#define PRINTF(...) printf(__VA_ARGS__)
-#else
-#define PRINTF(...)
-#endif
-
-PROCESS(websense_process, "Websense (sky)");
-AUTOSTART_PROCESSES(&websense_process);
-
-/*---------------------------------------------------------------------------*/
-static CC_INLINE int
-get_temp(void)
-{
- return ((sht11_sensor.value(SHT11_SENSOR_TEMP) / 10) - 396) / 10;
-}
-/*---------------------------------------------------------------------------*/
-static int
-output_temp(struct jsontree_context *path)
-{
- char buf[5];
- snprintf(buf, sizeof(buf), "%3d", get_temp());
- jsontree_write_atom(path, buf);
- return 0;
-}
-static struct jsontree_callback temp_sensor_callback =
- JSONTREE_CALLBACK(output_temp, NULL);
-/*---------------------------------------------------------------------------*/
-
-static struct jsontree_string desc = JSONTREE_STRING("Tmote Sky");
-static struct jsontree_string temp_unit = JSONTREE_STRING("Celcius");
-
-JSONTREE_OBJECT(node_tree,
- JSONTREE_PAIR("node-type", &desc),
- JSONTREE_PAIR("time", &json_time_callback));
-
-JSONTREE_OBJECT(temp_sensor_tree,
- JSONTREE_PAIR("unit", &temp_unit),
- JSONTREE_PAIR("value", &temp_sensor_callback));
-
-JSONTREE_OBJECT(rsc_tree,
- JSONTREE_PAIR("temperature", &temp_sensor_tree),
- JSONTREE_PAIR("leds", &json_leds_callback));
-
-/* complete node tree */
-JSONTREE_OBJECT(tree,
- JSONTREE_PAIR("node", &node_tree),
- JSONTREE_PAIR("rsc", &rsc_tree),
- JSONTREE_PAIR("cfg", &json_subscribe_callback));
-
-/*---------------------------------------------------------------------------*/
-/* for cosm plugin */
-#if WITH_COSM
-/* set COSM value callback to be the temp sensor */
-struct jsontree_callback cosm_value_callback =
- JSONTREE_CALLBACK(output_temp, NULL);
-#endif
-
-PROCESS_THREAD(websense_process, ev, data)
-{
- static struct etimer timer;
-
- PROCESS_BEGIN();
-
- json_ws_init(&tree);
-
- SENSORS_ACTIVATE(sht11_sensor);
-
- json_ws_set_callback("rsc");
-
- while(1) {
- /* Alive indication with the LED */
- etimer_set(&timer, CLOCK_SECOND * 5);
- PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&timer));
- leds_on(LEDS_RED);
- etimer_set(&timer, CLOCK_SECOND / 8);
- PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&timer));
- leds_off(LEDS_RED);
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/native-border-router/Makefile b/examples/ipv6/native-border-router/Makefile
deleted file mode 100644
index 96a358165..000000000
--- a/examples/ipv6/native-border-router/Makefile
+++ /dev/null
@@ -1,24 +0,0 @@
-CONTIKI_PROJECT=border-router
-all: $(CONTIKI_PROJECT)
-MODULES += os/services/slip-cmd
-
-CONTIKI=../../..
-
-PROJECT_SOURCEFILES += border-router-cmds.c tun-bridge.c border-router-mac.c \
-slip-config.c slip-dev.c
-
-WITH_WEBSERVER=1
-ifeq ($(WITH_WEBSERVER),1)
-CFLAGS += -DWEBSERVER=1
-PROJECT_SOURCEFILES += httpd-simple.c
-else ifneq ($(WITH_WEBSERVER), 0)
-MODULES += $(WITH_WEBSERVER)
-CFLAGS += -DWEBSERVER=2
-endif
-
-MAKE_MAC = MAKE_MAC_OTHER
-MAKE_NET = MAKE_NET_IPV6
-include $(CONTIKI)/Makefile.include
-
-connect-router: border-router.native
- sudo ./border-router.native fd00::1/64
diff --git a/examples/ipv6/packet-processing/Makefile b/examples/ipv6/packet-processing/Makefile
deleted file mode 100644
index ad46cf50c..000000000
--- a/examples/ipv6/packet-processing/Makefile
+++ /dev/null
@@ -1,12 +0,0 @@
-all: packet-debug ../rpl-udp/udp-server
-CONTIKI=../../..
-
-ifdef SERVER_REPLY
-CFLAGS+=-DSERVER_REPLY=$(SERVER_REPLY)
-endif
-ifdef PERIOD
-CFLAGS+=-DPERIOD=$(PERIOD)
-endif
-
-CONTIKI_WITH_IPV6 = 1
-include $(CONTIKI)/Makefile.include
diff --git a/examples/ipv6/packet-processing/packet-debug.c b/examples/ipv6/packet-processing/packet-debug.c
deleted file mode 100644
index 305ceb8ae..000000000
--- a/examples/ipv6/packet-processing/packet-debug.c
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *
- */
-
-#include "contiki.h"
-#include "lib/random.h"
-#include "sys/ctimer.h"
-#include "net/ipv6/uip.h"
-#include "net/ipv6/uip-ds6.h"
-#include "net/ipv6/uip-udp-packet.h"
-#include "sys/ctimer.h"
-#include "rpl.h"
-#include "net/ipv6/uipbuf.h"
-#include
-#include
-
-#include "dev/serial-line.h"
-#include "net/ipv6/uip-ds6-route.h"
-
-#define UDP_CLIENT_PORT 8765
-#define UDP_SERVER_PORT 5678
-
-#define UIP_IP_BUF ((struct uip_ip_hdr *)&uip_buf[UIP_LLH_LEN])
-
-#define DEBUG DEBUG_FULL
-#include "net/ipv6/uip-debug.h"
-
-#ifndef PERIOD
-#define PERIOD 60
-#endif
-
-#define START_INTERVAL (15 * CLOCK_SECOND)
-#define SEND_INTERVAL (PERIOD * CLOCK_SECOND)
-#define SEND_TIME (random_rand() % (SEND_INTERVAL))
-#define MAX_PAYLOAD_LEN 30
-
-static struct uip_udp_conn *client_conn;
-
-/*---------------------------------------------------------------------------*/
-PROCESS(udp_client_process, "UDP client process");
-AUTOSTART_PROCESSES(&udp_client_process);
-/*---------------------------------------------------------------------------*/
-static int seq_id;
-static int reply;
-
-static void
-tcpip_handler(void)
-{
- if(uip_newdata()) {
- reply++;
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-send_packet(void *ptr)
-{
- char buf[MAX_PAYLOAD_LEN];
- rpl_dag_t *dag;
- seq_id++;
- sprintf(buf, "Hello %d from the client", seq_id);
-
- dag = rpl_get_any_dag();
-
- if(dag != NULL) {
- uip_udp_packet_sendto(client_conn, buf, strlen(buf),
- &dag->dag_id, UIP_HTONS(UDP_SERVER_PORT));
- } else {
- PRINTF("Have not joined any DAG yet - could not send\n");
- }
-}
-/*---------------------------------------------------------------------------*/
-static enum netstack_ip_action
-ip_input(void)
-{
- uint8_t proto = 0;
- uipbuf_get_last_header(uip_buf, uip_len, &proto);
- PRINTF("Incoming packet proto: %d from ", proto);
- PRINT6ADDR(&UIP_IP_BUF->srcipaddr);
- PRINTF("\n");
- return NETSTACK_IP_PROCESS;
-}
-
-static enum netstack_ip_action
-ip_output(const linkaddr_t *localdest)
-{
- uint8_t proto;
- uint8_t is_me = 0;
- uipbuf_get_last_header(uip_buf, uip_len, &proto);
- is_me = uip_ds6_is_my_addr(&UIP_IP_BUF->srcipaddr);
- PRINTF("%s packet proto: %d to ", is_me ? "Send" : "Fwd ", proto);
- PRINT6ADDR(&UIP_IP_BUF->destipaddr);
- PRINTF("\n");
- if(is_me && proto == UIP_PROTO_UDP) {
- /* fake server-ip address here - just to emulate the UDP-example */
- PRINTF("DATA send to %d 'Hello %d'\n", 1, seq_id);
- }
- return NETSTACK_IP_PROCESS;
-}
-
-struct netstack_ip_packet_processor packet_processor = {
- .process_input = ip_input,
- .process_output = ip_output
-};
-
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(udp_client_process, ev, data)
-{
- static struct etimer periodic;
- static struct ctimer backoff_timer;
-
- PROCESS_BEGIN();
-
- PROCESS_PAUSE();
-
- PRINTF("UDP client process started nbr:%d routes:%d\n",
- NBR_TABLE_CONF_MAX_NEIGHBORS, NETSTACK_MAX_ROUTE_ENTRIES);
-
- /* new connection with remote host */
- client_conn = udp_new(NULL, UIP_HTONS(UDP_SERVER_PORT), NULL);
- if(client_conn == NULL) {
- PRINTF("No UDP connection available, exiting the process!\n");
- PROCESS_EXIT();
- }
- udp_bind(client_conn, UIP_HTONS(UDP_CLIENT_PORT));
-
- PRINTF("Created a connection with the server ");
- PRINT6ADDR(&client_conn->ripaddr);
- PRINTF(" local/remote port %u/%u\n",
- UIP_HTONS(client_conn->lport), UIP_HTONS(client_conn->rport));
-
- /* register packet processor */
- netstack_ip_packet_processor_add(&packet_processor);
-
- etimer_set(&periodic, SEND_INTERVAL);
- while(1) {
- PROCESS_YIELD();
- if(ev == tcpip_event) {
- tcpip_handler();
- }
-
- if(etimer_expired(&periodic)) {
- etimer_reset(&periodic);
- ctimer_set(&backoff_timer, SEND_TIME, send_packet, NULL);
- }
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/packet-processing/rpl-udp.csc b/examples/ipv6/packet-processing/rpl-udp.csc
deleted file mode 100644
index eede14829..000000000
--- a/examples/ipv6/packet-processing/rpl-udp.csc
+++ /dev/null
@@ -1,711 +0,0 @@
-
-
- [APPS_DIR]/mrm
- [APPS_DIR]/mspsim
- [APPS_DIR]/avrora
- [APPS_DIR]/serial_socket
- [APPS_DIR]/collect-view
- [APPS_DIR]/powertracker
-
- Data collection network using IPv6 and RPL
- generated
- 5000000
-
- org.contikios.cooja.radiomediums.UDGM
- 50.0
- 50.0
- 1.0
- 1.0
-
-
- 40000
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky1
- Sky Mote Type #sky1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-server.c
- make clean udp-server.sky TARGET=sky DEFINES=TEST_MORE_ROUTES=1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-server.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky2
- Sky Mote Type #sky2
- [CONTIKI_DIR]/examples/ipv6/packet-processing/packet-debug.c
- make clean packet-debug.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/packet-processing/packet-debug.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 48.435974731198804
- -66.16503914182063
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 1
-
- sky1
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 4.049356309774755
- 98.28771308774003
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 2
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 127.9689727848476
- 91.71883780610729
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 3
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 57.897299848739024
- 92.47229665488265
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 4
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 47.34887596588397
- -30.341495695501195
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 5
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 47.13486576528276
- 32.944481932122315
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 6
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -11.42091423859419
- 17.879870626121914
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 7
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 118.92746659954325
- 57.05973076244069
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 8
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 53.68872892015448
- 59.887319605093715
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 9
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 16.45706316609417
- 23.9075414163248
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 10
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -18.9555027263478
- 75.14274313304935
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 11
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 29.265863595275306
- 85.6911670159044
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 12
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -39.298891643282545
- -3.9704359883635574
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 13
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 66.93880603404335
- -42.39683727590697
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 14
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 94.81678343873172
- 26.921376811426246
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 15
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -43.06618588715935
- 30.68867105530305
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 16
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -34.02467970185502
- -24.313824905298304
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 17
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -28.750467760427494
- 48.01822457713635
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 18
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 124.95513738974614
- 20.140247172447996
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 19
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 15.703604317318808
- -47.6710492173345
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 20
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -40.05235049205791
- 92.47229665488265
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 21
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 121.18784314586934
- -24.313824905298304
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 22
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 88.03565379975346
- -44.657213822233054
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 23
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 24.745110502623138
- -1.7100594420374744
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 24
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 94.06332458995635
- -2.4635182908128352
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 25
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -4.639784599615941
- -9.998106778566445
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 26
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -13.681290784920272
- -50.684884612435944
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 27
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 103.10483077526068
- 96.99304974753483
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 28
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 8.922474678340558
- 59.320107308766765
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 29
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 58.650758697514384
- 2.8106936506146916
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 30
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 90.59867707439
- 67.97632874312737
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 31
-
- sky2
-
-
-
- org.contikios.cooja.plugins.SimControl
- 259
- 3
- 184
- 3
- 15
-
-
- org.contikios.cooja.plugins.Visualizer
-
- org.contikios.cooja.plugins.skins.IDVisualizerSkin
- org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
- org.contikios.cooja.plugins.skins.AttributeVisualizerSkin
- 2.349818846983307 0.0 0.0 2.349818846983307 150.19773526533348 176.95275613586946
-
- 520
- 2
- 523
- 14
- 210
-
-
- org.contikios.cooja.plugins.LogListener
-
-
-
-
-
- 937
- 0
- 213
- 265
- 16
-
-
- org.contikios.cooja.plugins.ScriptRunner
-
-
- true
-
- 651
- 1
- 550
- 547
- 181
-
-
-
diff --git a/examples/ipv6/rpl-border-router/Makefile b/examples/ipv6/rpl-border-router/Makefile
deleted file mode 100644
index c8a40f681..000000000
--- a/examples/ipv6/rpl-border-router/Makefile
+++ /dev/null
@@ -1,39 +0,0 @@
-CONTIKI_PROJECT=border-router
-all: $(CONTIKI_PROJECT)
-
-CONTIKI=../../..
-
-PROJECT_SOURCEFILES += slip-bridge.c
-
-#Simple built-in webserver is the default.
-#Override with make WITH_WEBSERVER=0 for no webserver.
-#WITH_WEBSERVER=module-path will use the module if it can be found
-#make clean before changing webservers!
-
-#Note /apps/webserver contains a 2500 byte style sheet which is a severe test
-#of the slip connection. Large MSS together with low baud rates without flow
-#control will overrun the transmit buffer when the style sheet is requested.
-
-WITH_WEBSERVER=1
-ifeq ($(WITH_WEBSERVER),1)
-CFLAGS += -DWEBSERVER=1
-PROJECT_SOURCEFILES += httpd-simple.c
-else ifneq ($(WITH_WEBSERVER), 0)
-MODULES += $(WITH_WEBSERVER)
-CFLAGS += -DWEBSERVER=2
-endif
-
-ifeq ($(PREFIX),)
- PREFIX = fd00::1/64
-endif
-
-include $(CONTIKI)/Makefile.include
-
-$(CONTIKI)/tools/tunslip6: $(CONTIKI)/tools/tunslip6.c
- (cd $(CONTIKI)/tools && $(MAKE) tunslip6)
-
-connect-router: $(CONTIKI)/tools/tunslip6
- sudo $(CONTIKI)/tools/tunslip6 $(PREFIX)
-
-connect-router-cooja: $(CONTIKI)/tools/tunslip6
- sudo $(CONTIKI)/tools/tunslip6 -a 127.0.0.1 $(PREFIX)
diff --git a/examples/ipv6/rpl-simple/Makefile b/examples/ipv6/rpl-simple/Makefile
deleted file mode 100644
index 2408729b9..000000000
--- a/examples/ipv6/rpl-simple/Makefile
+++ /dev/null
@@ -1,7 +0,0 @@
-all: node
-CONTIKI=../../..
-
-# Set MAKE_MAC = MAKE_MAC_TSCH to run TSCH instead
-MAKE_MAC = MAKE_MAC_CSMA
-
-include $(CONTIKI)/Makefile.include
diff --git a/examples/ipv6/rpl-simple/node.c b/examples/ipv6/rpl-simple/node.c
deleted file mode 100644
index 8f94c2d78..000000000
--- a/examples/ipv6/rpl-simple/node.c
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- *
- */
-
-#include "contiki.h"
-#include "lib/random.h"
-#include "sys/ctimer.h"
-#include "net/ipv6/uip.h"
-#include "net/ipv6/uip-ds6.h"
-#include "net/ipv6/uip-udp-packet.h"
-#include "rpl.h"
-#include "rpl-dag-root.h"
-#include "node-id.h"
-#include "simple-udp.h"
-#include "sys/ctimer.h"
-#include
-#include
-
-#include "dev/serial-line.h"
-#include "net/ipv6/uip-ds6-route.h"
-
-/* Log configuration */
-#include "sys/log.h"
-#define LOG_MODULE "App"
-#define LOG_LEVEL LOG_LEVEL_INFO
-
-#define UDP_PORT 8765
-
-#define START_INTERVAL (5 * CLOCK_SECOND)
-#define SEND_INTERVAL (30 * CLOCK_SECOND)
-
-static struct simple_udp_connection udp_conn;
-
-static uip_ipaddr_t node_ipaddr;
-static uip_ipaddr_t root_ipaddr;
-static uip_ipaddr_t destination_ipaddr;
-
-/*---------------------------------------------------------------------------*/
-PROCESS(node_process, "RPL Simple Process");
-AUTOSTART_PROCESSES(&node_process);
-
-/*---------------------------------------------------------------------------*/
-static void
-receiver(struct simple_udp_connection *c,
- const uip_ipaddr_t *sender_addr,
- uint16_t sender_port,
- const uip_ipaddr_t *receiver_addr,
- uint16_t receiver_port,
- const uint8_t *data,
- uint16_t datalen)
-{
- unsigned seq_id;
- memcpy(&seq_id, data, sizeof(int));
- if(uip_ip6addr_cmp(&destination_ipaddr, &node_ipaddr)) {
- LOG_INFO("received request %u from ", seq_id);
- LOG_INFO_6ADDR(sender_addr);
- LOG_INFO_("\n");
-
- LOG_INFO("sending reply %u to ", seq_id);
- LOG_INFO_6ADDR(sender_addr);
- LOG_INFO_("\n");
- simple_udp_sendto(&udp_conn, &seq_id, sizeof(seq_id), sender_addr);
- } else {
- static unsigned reply_count = 0;
- reply_count++;
- LOG_INFO("received reply %u (%u/%u) from ", seq_id, reply_count, seq_id);
- LOG_INFO_6ADDR(sender_addr);
- LOG_INFO_("\n");
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-send_packet(void *ptr)
-{
- if(rpl_is_reachable()) {
- static unsigned seq_id = 0;
- LOG_INFO("sending request %u to ", ++seq_id);
- LOG_INFO_6ADDR(&destination_ipaddr);
- LOG_INFO_("\n");
- simple_udp_sendto(&udp_conn, &seq_id, sizeof(seq_id), &destination_ipaddr);
- } else {
- LOG_INFO("not connected yet\n");
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-get_global_address(void)
-{
- int i;
- uint8_t state;
-
- for(i = 0; i < UIP_DS6_ADDR_NB; i++) {
- state = uip_ds6_if.addr_list[i].state;
- if(uip_ds6_if.addr_list[i].isused &&
- state == ADDR_PREFERRED &&
- !uip_is_addr_linklocal(&uip_ds6_if.addr_list[i].ipaddr)) {
- uip_ip6addr_copy(&node_ipaddr, &uip_ds6_if.addr_list[i].ipaddr);
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(node_process, ev, data)
-{
- static struct etimer periodic;
- static struct ctimer backoff_timer;
-
- PROCESS_BEGIN();
-
- /* Hardcoded IPv6 addresses */
- uip_ip6addr(&root_ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0x0212, 0x7401, 0x0001, 0x0101);
- uip_ip6addr(&destination_ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0x0212, 0x7401, 0x0001, 0x0101);
-
- rpl_dag_root_init(NULL, NULL);
- get_global_address();
- /* Configure root */
- if(uip_ip6addr_cmp(&root_ipaddr, &node_ipaddr)) {
- rpl_dag_root_init_dag_immediately();
- }
-
- /* New connection with remote host */
- simple_udp_register(&udp_conn, UDP_PORT, NULL, UDP_PORT, receiver);
- /* Wait for START_INTERVAL */
- etimer_set(&periodic, START_INTERVAL);
- PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&periodic));
-
-#if MAC_CONF_WITH_TSCH
- NETSTACK_MAC.on();
-#endif /* MAC_CONF_WITH_TSCH */
-
- if(!uip_ip6addr_cmp(&destination_ipaddr, &node_ipaddr)) {
- /* Send data periodically */
- etimer_set(&periodic, SEND_INTERVAL);
- while(1) {
- PROCESS_YIELD();
-
- if(etimer_expired(&periodic)) {
- etimer_reset(&periodic);
- ctimer_set(&backoff_timer, random_rand() % (SEND_INTERVAL), send_packet, NULL);
- }
- }
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/rpl-simple/project-conf.h b/examples/ipv6/rpl-simple/project-conf.h
deleted file mode 100644
index 2a8b376f4..000000000
--- a/examples/ipv6/rpl-simple/project-conf.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (c) 2015, Swedish Institute of Computer Science.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef PROJECT_CONF_H_
-#define PROJECT_CONF_H_
-
-/* Network size and PAN-ID */
-#define NBR_TABLE_CONF_MAX_NEIGHBORS 25
-
-#define NETSTACK_MAX_ROUTE_ENTRIES 25
-
-#define IEEE802154_CONF_PANID 0xf123
-
-/* Save some space */
-#define SICSLOWPAN_CONF_FRAG 0
-
-/* Do not start TSCH at init, wait for NETSTACK_MAC.on() */
-#define TSCH_CONF_AUTOSTART 0
-
-/* 6TiSCH minimal schedule length.
- * Larger values result in less frequent active slots: reduces capacity and saves energy. */
-#define TSCH_SCHEDULE_CONF_DEFAULT_LENGTH 3
-
-#define TSCH_SCHEDULE_CONF_MAX_LINKS 4
-
-#endif
diff --git a/examples/ipv6/rpl-simple/rpl-simple.csc b/examples/ipv6/rpl-simple/rpl-simple.csc
deleted file mode 100644
index 9725032c2..000000000
--- a/examples/ipv6/rpl-simple/rpl-simple.csc
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
- [APPS_DIR]/mrm
- [APPS_DIR]/mspsim
- [APPS_DIR]/avrora
- [APPS_DIR]/serial_socket
- [APPS_DIR]/collect-view
- [APPS_DIR]/powertracker
-
- Simple RPL Example
- generated
- 5000000
-
- org.contikios.cooja.radiomediums.UDGM
- 50.0
- 50.0
- 1.0
- 1.0
-
-
- 40000
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky2
- Sky Mote Type #sky2
- [CONTIKI_DIR]/examples/ipv6/rpl-simple/node.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 48.435974731198804
- -66.16503914182063
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 1
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 28.87281458333398
- -21.744318674852618
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 2
-
- sky2
-
-
-
- org.contikios.cooja.plugins.SimControl
- 185
- 2
- 154
- 1651
- 778
-
-
- org.contikios.cooja.plugins.Visualizer
-
- org.contikios.cooja.plugins.skins.IDVisualizerSkin
- org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
- org.contikios.cooja.plugins.skins.AttributeVisualizerSkin
- 1.260147830790386 0.0 0.0 1.260147830790386 105.5104655860535 140.74330745981246
-
- 258
- 1
- 309
- 1573
- 11
-
-
- org.contikios.cooja.plugins.LogListener
-
-
-
-
-
- 854
- 3
- 919
- 5
- 2
-
-
- org.contikios.cooja.plugins.TimeLine
-
- 0
- 1
-
-
-
- 2736.9736958636
-
- 1858
- 4
- 223
- 0
- 931
-
-
- org.contikios.cooja.plugins.RadioLogger
-
- 477
-
- false
- false
-
-
- 874
- 0
- 917
- 857
- 10
-
-
-
diff --git a/examples/ipv6/rpl-tsch-sixtop/rpl-tsch-sixtop-z1.csc b/examples/ipv6/rpl-tsch-sixtop/rpl-tsch-sixtop-z1.csc
deleted file mode 100644
index 24a7f86c5..000000000
--- a/examples/ipv6/rpl-tsch-sixtop/rpl-tsch-sixtop-z1.csc
+++ /dev/null
@@ -1,160 +0,0 @@
-
-
- [APPS_DIR]/mrm
- [APPS_DIR]/mspsim
- [APPS_DIR]/avrora
- [APPS_DIR]/serial_socket
- [APPS_DIR]/collect-view
- [APPS_DIR]/powertracker
-
- My simulation
- 123456
- 1000000
-
- org.contikios.cooja.radiomediums.UDGM
- 50.0
- 100.0
- 1.0
- 1.0
-
-
- 40000
-
-
- org.contikios.cooja.mspmote.Z1MoteType
- z11
- Z1 Mote Type #z11
- [CONTIKI_DIR]/examples/ipv6/rpl-tsch-sixtop/node-sixtop.c
- make node-sixtop.z1 TARGET=z1
- [CONTIKI_DIR]/examples/ipv6/rpl-tsch-sixtop/node-sixtop.z1
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.MspButton
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspDefaultSerial
- org.contikios.cooja.mspmote.interfaces.MspLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 3.827476552301217
- 2.167129170680247
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 1
-
- z11
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 30.278379737463556
- 17.799585117738026
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 2
-
- z11
-
-
-
- org.contikios.cooja.plugins.SimControl
- 280
- 0
- 160
- 400
- 0
-
-
- org.contikios.cooja.plugins.Visualizer
-
- true
- org.contikios.cooja.plugins.skins.IDVisualizerSkin
- org.contikios.cooja.plugins.skins.GridVisualizerSkin
- org.contikios.cooja.plugins.skins.TrafficVisualizerSkin
- org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
- 4.027583163598053 0.0 0.0 4.027583163598053 133.5292942712438 14.03198741893021
-
- 400
- 3
- 160
- 1
- 1
-
-
- org.contikios.cooja.plugins.LogListener
-
- TSCH-sch
-
-
-
- 854
- 1
- 342
- 0
- 161
-
-
- org.contikios.cooja.plugins.TimeLine
-
- 0
- 1
-
-
-
- 500.0
-
- 1366
- 5
- 166
- 0
- 503
-
-
- org.contikios.cooja.plugins.Notes
-
- Enter notes here
- true
-
- 686
- 4
- 160
- 680
- 0
-
-
- org.contikios.cooja.plugins.RadioLogger
-
- 150
-
- false
- false
-
- 508
- 2
- 343
- 854
- 160
-
-
-
diff --git a/examples/ipv6/rpl-udp/Makefile b/examples/ipv6/rpl-udp/Makefile
deleted file mode 100644
index e871e6c8e..000000000
--- a/examples/ipv6/rpl-udp/Makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-all: udp-client udp-server
-CONTIKI=../../..
-
-ifdef SERVER_REPLY
-CFLAGS+=-DSERVER_REPLY=$(SERVER_REPLY)
-endif
-ifdef PERIOD
-CFLAGS+=-DPERIOD=$(PERIOD)
-endif
-
-include $(CONTIKI)/Makefile.include
diff --git a/examples/ipv6/rpl-udp/Makefile.target b/examples/ipv6/rpl-udp/Makefile.target
deleted file mode 100644
index d56a50bcc..000000000
--- a/examples/ipv6/rpl-udp/Makefile.target
+++ /dev/null
@@ -1 +0,0 @@
-TARGET = sky
diff --git a/examples/ipv6/rpl-udp/rpl-udp-powertrace.csc b/examples/ipv6/rpl-udp/rpl-udp-powertrace.csc
deleted file mode 100644
index c92dc0800..000000000
--- a/examples/ipv6/rpl-udp/rpl-udp-powertrace.csc
+++ /dev/null
@@ -1,584 +0,0 @@
-
-
- [CONTIKI_DIR]/tools/cooja/apps/mrm
- [CONTIKI_DIR]/tools/cooja/apps/mspsim
- [CONTIKI_DIR]/tools/cooja/apps/avrora
- [CONTIKI_DIR]/tools/cooja/apps/mobility
-
- Data collection network using IPv6 and RPL
- 0
- generated
- 5000000
-
- org.contikios.cooja.radiomediums.UDGM
- 50.0
- 50.0
- 1.0
- 1.0
-
-
- 40000
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky1
- Sky Mote Type #sky1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-server.c
- make udp-server.sky TARGET=sky WITH_COMPOWER=1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-server.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky2
- Sky Mote Type #sky2
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-client.c
- make udp-client.sky TARGET=sky WITH_COMPOWER=1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-client.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 48.435974731198804
- -66.16503914182063
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 1
-
- sky1
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 4.049356309774755
- 98.28771308774003
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 2
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 127.9689727848476
- 91.71883780610729
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 3
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 57.897299848739024
- 92.47229665488265
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 4
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 47.34887596588397
- -30.341495695501195
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 5
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 47.13486576528276
- 32.944481932122315
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 6
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -11.42091423859419
- 17.879870626121914
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 7
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 118.92746659954325
- 57.05973076244069
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 8
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 53.68872892015448
- 59.887319605093715
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 9
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 16.45706316609417
- 23.9075414163248
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 10
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -18.9555027263478
- 75.14274313304935
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 11
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 29.265863595275306
- 85.6911670159044
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 12
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -39.298891643282545
- -3.9704359883635574
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 13
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 66.93880603404335
- -42.39683727590697
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 14
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 94.81678343873172
- 26.921376811426246
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 15
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -43.06618588715935
- 30.68867105530305
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 16
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -34.02467970185502
- -24.313824905298304
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 17
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -28.750467760427494
- 48.01822457713635
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 18
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 124.95513738974614
- 20.140247172447996
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 19
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 15.703604317318808
- -47.6710492173345
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 20
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -40.05235049205791
- 92.47229665488265
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 21
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 121.18784314586934
- -24.313824905298304
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 22
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 88.03565379975346
- -44.657213822233054
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 23
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 24.745110502623138
- -1.7100594420374744
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 24
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 94.06332458995635
- -2.4635182908128352
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 25
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -4.639784599615941
- -9.998106778566445
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 26
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -13.681290784920272
- -50.684884612435944
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 27
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 103.10483077526068
- 96.99304974753483
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 28
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 8.922474678340558
- 59.320107308766765
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 29
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 58.650758697514384
- 2.8106936506146916
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 30
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 90.59867707439
- 67.97632874312737
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 31
-
- sky2
-
-
-
- org.contikios.cooja.plugins.SimControl
- 259
- 1
- 184
- 0
- 0
-
-
- org.contikios.cooja.plugins.Visualizer
-
- org.contikios.cooja.plugins.skins.IDVisualizerSkin
- org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
- org.contikios.cooja.plugins.skins.AttributeVisualizerSkin
- 2.349818846983307 0.0 0.0 2.349818846983307 150.19773526533348 176.95275613586946
-
- 520
- 3
- 523
- 269
- 14
-
-
- org.contikios.cooja.plugins.LogListener
-
-
-
- 937
- 0
- 213
- 21
- 464
-
-
- org.contikios.cooja.plugins.ScriptRunner
-
-
- true
-
- 600
- 2
- 700
- 665
- 6
-
-
-
diff --git a/examples/ipv6/rpl-udp/rpl-udp-scale.csc b/examples/ipv6/rpl-udp/rpl-udp-scale.csc
deleted file mode 100644
index 292e442c1..000000000
--- a/examples/ipv6/rpl-udp/rpl-udp-scale.csc
+++ /dev/null
@@ -1,729 +0,0 @@
-
-
- [APPS_DIR]/mrm
- [APPS_DIR]/mspsim
- [APPS_DIR]/avrora
- [APPS_DIR]/serial_socket
- [APPS_DIR]/collect-view
- [APPS_DIR]/powertracker
-
- RPL up and downstream scaleability test network using IPv6 and RPL
- generated
- 5000000
-
- org.contikios.cooja.radiomediums.UDGM
- 50.0
- 50.0
- 1.0
- 1.0
-
-
- 40000
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky1
- Sky Mote Type #sky1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-server.c
- make SERVER_REPLY=1 clean udp-server.sky TARGET=sky DEFINES=TEST_MORE_ROUTES=1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-server.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky2
- Sky Mote Type #sky2
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-client.c
- make SERVER_REPLY=1 clean udp-client.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-client.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 48.435974731198804
- -66.16503914182063
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 1
-
- sky1
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -39.78380986481406
- -48.10655064098382
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 2
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 127.9689727848476
- 91.71883780610729
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 3
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 154.92605604103275
- 40.97896551774433
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 4
-
-
- org.contikios.cooja.mspmote.interfaces.MspSerial
- r~;
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 47.34887596588397
- -30.341495695501195
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 5
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 47.13486576528276
- 32.944481932122315
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 6
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -11.42091423859419
- 17.879870626121914
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 7
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 118.92746659954325
- 57.05973076244069
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 8
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 53.68872892015448
- 59.887319605093715
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 9
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 16.45706316609417
- 23.9075414163248
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 10
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -13.423161364506493
- -38.483037144768275
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 11
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -9.034961217472201
- 44.411389162165406
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 12
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -39.298891643282545
- -3.9704359883635574
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 13
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 66.93880603404335
- -42.39683727590697
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 14
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 94.81678343873172
- 26.921376811426246
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 15
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -43.06618588715935
- 30.68867105530305
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 16
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -34.02467970185502
- -24.313824905298304
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 17
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -28.750467760427494
- 48.01822457713635
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 18
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 124.95513738974614
- 20.140247172447996
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 19
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 15.703604317318808
- -47.6710492173345
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 20
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 154.43072661267115
- -3.279765376986134
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 21
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 121.18784314586934
- -24.313824905298304
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 22
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 88.4612185198951
- -49.763990463932714
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 23
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 24.745110502623138
- -1.7100594420374744
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 24
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 94.06332458995635
- -2.4635182908128352
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 25
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -4.639784599615941
- -9.998106778566445
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 26
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 2.4901685804620115
- -60.89843789583528
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 27
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 103.10483077526068
- 96.99304974753483
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 28
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 8.922474678340558
- 59.320107308766765
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 29
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 58.650758697514384
- 2.8106936506146916
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 30
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 90.59867707439
- 67.97632874312737
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 31
-
- sky2
-
-
-
- org.contikios.cooja.plugins.SimControl
- 289
- 1
- 184
- 31
- 41
-
-
- org.contikios.cooja.plugins.Visualizer
-
- org.contikios.cooja.plugins.skins.IDVisualizerSkin
- org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
- org.contikios.cooja.plugins.skins.AttributeVisualizerSkin
- 2.349818846983307 0.0 0.0 2.349818846983307 187.19773526533345 190.95275613586946
-
- 659
- 3
- 523
- 296
- 11
-
-
- org.contikios.cooja.plugins.LogListener
-
-
-
-
-
- 937
- 4
- 349
- 21
- 464
-
-
- org.contikios.cooja.plugins.ScriptRunner
-
-
- true
-
- 600
- 0
- 700
- 946
- 6
-
-
- org.contikios.cooja.plugins.MoteInterfaceViewer
- 3
-
- Serial port
- 0,0
-
- 350
- 2
- 300
- 976
- 36
-
-
diff --git a/examples/ipv6/rpl-udp/rpl-udp.csc b/examples/ipv6/rpl-udp/rpl-udp.csc
deleted file mode 100644
index 3aa9b270e..000000000
--- a/examples/ipv6/rpl-udp/rpl-udp.csc
+++ /dev/null
@@ -1,711 +0,0 @@
-
-
- [APPS_DIR]/mrm
- [APPS_DIR]/mspsim
- [APPS_DIR]/avrora
- [APPS_DIR]/serial_socket
- [APPS_DIR]/collect-view
- [APPS_DIR]/powertracker
-
- Data collection network using IPv6 and RPL
- generated
- 5000000
-
- org.contikios.cooja.radiomediums.UDGM
- 50.0
- 50.0
- 1.0
- 1.0
-
-
- 40000
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky1
- Sky Mote Type #sky1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-server.c
- make clean udp-server.sky TARGET=sky DEFINES=TEST_MORE_ROUTES=1
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-server.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky2
- Sky Mote Type #sky2
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-client.c
- make clean udp-client.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/rpl-udp/udp-client.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 48.435974731198804
- -66.16503914182063
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 1
-
- sky1
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 4.049356309774755
- 98.28771308774003
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 2
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 127.9689727848476
- 91.71883780610729
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 3
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 57.897299848739024
- 92.47229665488265
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 4
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 47.34887596588397
- -30.341495695501195
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 5
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 47.13486576528276
- 32.944481932122315
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 6
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -11.42091423859419
- 17.879870626121914
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 7
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 118.92746659954325
- 57.05973076244069
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 8
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 53.68872892015448
- 59.887319605093715
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 9
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 16.45706316609417
- 23.9075414163248
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 10
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -18.9555027263478
- 75.14274313304935
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 11
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 29.265863595275306
- 85.6911670159044
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 12
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -39.298891643282545
- -3.9704359883635574
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 13
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 66.93880603404335
- -42.39683727590697
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 14
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 94.81678343873172
- 26.921376811426246
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 15
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -43.06618588715935
- 30.68867105530305
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 16
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -34.02467970185502
- -24.313824905298304
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 17
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -28.750467760427494
- 48.01822457713635
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 18
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 124.95513738974614
- 20.140247172447996
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 19
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 15.703604317318808
- -47.6710492173345
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 20
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -40.05235049205791
- 92.47229665488265
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 21
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 121.18784314586934
- -24.313824905298304
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 22
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 88.03565379975346
- -44.657213822233054
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 23
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 24.745110502623138
- -1.7100594420374744
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 24
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 94.06332458995635
- -2.4635182908128352
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 25
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -4.639784599615941
- -9.998106778566445
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 26
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- -13.681290784920272
- -50.684884612435944
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 27
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 103.10483077526068
- 96.99304974753483
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 28
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 8.922474678340558
- 59.320107308766765
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 29
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 58.650758697514384
- 2.8106936506146916
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 30
-
- sky2
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 90.59867707439
- 67.97632874312737
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspClock
- 1.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 31
-
- sky2
-
-
-
- org.contikios.cooja.plugins.SimControl
- 259
- 3
- 184
- 3
- 15
-
-
- org.contikios.cooja.plugins.Visualizer
-
- org.contikios.cooja.plugins.skins.IDVisualizerSkin
- org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
- org.contikios.cooja.plugins.skins.AttributeVisualizerSkin
- 2.349818846983307 0.0 0.0 2.349818846983307 150.19773526533348 176.95275613586946
-
- 520
- 2
- 523
- 14
- 210
-
-
- org.contikios.cooja.plugins.LogListener
-
-
-
-
-
- 937
- 0
- 213
- 265
- 16
-
-
- org.contikios.cooja.plugins.ScriptRunner
-
-
- true
-
- 651
- 1
- 550
- 547
- 181
-
-
-
diff --git a/examples/ipv6/rpl-udp/udp-client.c b/examples/ipv6/rpl-udp/udp-client.c
deleted file mode 100644
index 95612b7f8..000000000
--- a/examples/ipv6/rpl-udp/udp-client.c
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- *
- */
-
-#include "contiki.h"
-#include "lib/random.h"
-#include "sys/ctimer.h"
-#include "net/ipv6/uip.h"
-#include "net/ipv6/uip-ds6.h"
-#include "net/ipv6/uip-udp-packet.h"
-#include "sys/ctimer.h"
-#include
-#include
-
-#include "dev/serial-line.h"
-#include "net/ipv6/uip-ds6-route.h"
-#include "rpl-dag-root.h"
-
-#define UDP_CLIENT_PORT 8765
-#define UDP_SERVER_PORT 5678
-
-#define UDP_EXAMPLE_ID 190
-
-#define DEBUG DEBUG_FULL
-#include "net/ipv6/uip-debug.h"
-
-#ifndef PERIOD
-#define PERIOD 60
-#endif
-
-#define START_INTERVAL (15 * CLOCK_SECOND)
-#define SEND_INTERVAL (PERIOD * CLOCK_SECOND)
-#define SEND_TIME (random_rand() % (SEND_INTERVAL))
-#define MAX_PAYLOAD_LEN 30
-
-static struct uip_udp_conn *client_conn;
-static uip_ipaddr_t server_ipaddr;
-
-/*---------------------------------------------------------------------------*/
-PROCESS(udp_client_process, "UDP client process");
-AUTOSTART_PROCESSES(&udp_client_process);
-/*---------------------------------------------------------------------------*/
-static int seq_id;
-static int reply;
-
-static void
-tcpip_handler(void)
-{
- char *str;
-
- if(uip_newdata()) {
- str = uip_appdata;
- str[uip_datalen()] = '\0';
- reply++;
- printf("DATA recv '%s' (s:%d, r:%d)\n", str, seq_id, reply);
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-send_packet(void *ptr)
-{
- char buf[MAX_PAYLOAD_LEN];
-
-#ifdef SERVER_REPLY
- uint8_t num_used = 0;
- uip_ds6_nbr_t *nbr;
-
- nbr = nbr_table_head(ds6_neighbors);
- while(nbr != NULL) {
- nbr = nbr_table_next(ds6_neighbors, nbr);
- num_used++;
- }
-
- if(seq_id > 0) {
- ANNOTATE("#A r=%d/%d,color=%s,n=%d %d\n", reply, seq_id,
- reply == seq_id ? "GREEN" : "RED", uip_ds6_route_num_routes(), num_used);
- }
-#endif /* SERVER_REPLY */
-
- seq_id++;
- PRINTF("DATA send to %d 'Hello %d'\n",
- server_ipaddr.u8[sizeof(server_ipaddr.u8) - 1], seq_id);
- sprintf(buf, "Hello %d from the client", seq_id);
- uip_udp_packet_sendto(client_conn, buf, strlen(buf),
- &server_ipaddr, UIP_HTONS(UDP_SERVER_PORT));
-}
-/*---------------------------------------------------------------------------*/
-static void
-print_local_addresses(void)
-{
- int i;
- uint8_t state;
-
- PRINTF("Client IPv6 addresses: ");
- for(i = 0; i < UIP_DS6_ADDR_NB; i++) {
- state = uip_ds6_if.addr_list[i].state;
- if(uip_ds6_if.addr_list[i].isused &&
- (state == ADDR_TENTATIVE || state == ADDR_PREFERRED)) {
- PRINT6ADDR(&uip_ds6_if.addr_list[i].ipaddr);
- PRINTF("\n");
- /* hack to make address "final" */
- if (state == ADDR_TENTATIVE) {
- uip_ds6_if.addr_list[i].state = ADDR_PREFERRED;
- }
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-set_global_address(void)
-{
- uip_ipaddr_t ipaddr;
-
- uip_ip6addr(&ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0, 0, 0);
- uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);
- uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);
-
-/* The choice of server address determines its 6LoWPAN header compression.
- * (Our address will be compressed Mode 3 since it is derived from our
- * link-local address)
- * Obviously the choice made here must also be selected in udp-server.c.
- *
- * For correct Wireshark decoding using a sniffer, add the /64 prefix to the
- * 6LowPAN protocol preferences,
- * e.g. set Context 0 to fd00::. At present Wireshark copies Context/128 and
- * then overwrites it.
- * (Setting Context 0 to fd00::1111:2222:3333:4444 will report a 16 bit
- * compressed address of fd00::1111:22ff:fe33:xxxx)
- *
- * Note the IPCMV6 checksum verification depends on the correct uncompressed
- * addresses.
- */
-
-#if 0
-/* Mode 1 - 64 bits inline */
- uip_ip6addr(&server_ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0, 0, 1);
-#elif 1
-/* Mode 2 - 16 bits inline */
- uip_ip6addr(&server_ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0x00ff, 0xfe00, 1);
-#else
-/* Mode 3 - derived from server link-local (MAC) address */
- uip_ip6addr(&server_ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0x0250, 0xc2ff, 0xfea8, 0xcd1a); //redbee-econotag
-#endif
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(udp_client_process, ev, data)
-{
- static struct etimer periodic;
- static struct ctimer backoff_timer;
-
- PROCESS_BEGIN();
-
- PROCESS_PAUSE();
-
- set_global_address();
-
- PRINTF("UDP client process started nbr:%d routes:%d\n",
- NBR_TABLE_CONF_MAX_NEIGHBORS, NETSTACK_MAX_ROUTE_ENTRIES);
-
- print_local_addresses();
-
- /* new connection with remote host */
- client_conn = udp_new(NULL, UIP_HTONS(UDP_SERVER_PORT), NULL);
- if(client_conn == NULL) {
- PRINTF("No UDP connection available, exiting the process!\n");
- PROCESS_EXIT();
- }
- udp_bind(client_conn, UIP_HTONS(UDP_CLIENT_PORT));
-
- PRINTF("Created a connection with the server ");
- PRINT6ADDR(&client_conn->ripaddr);
- PRINTF(" local/remote port %u/%u\n",
- UIP_HTONS(client_conn->lport), UIP_HTONS(client_conn->rport));
-
- etimer_set(&periodic, SEND_INTERVAL);
- while(1) {
- PROCESS_YIELD();
- if(ev == tcpip_event) {
- tcpip_handler();
- }
-
- if(ev == serial_line_event_message && data != NULL) {
- char *str;
- str = data;
- if(str[0] == 'r') {
- uip_ds6_route_t *r;
- uip_ipaddr_t *nexthop;
- uip_ds6_defrt_t *defrt;
- uip_ipaddr_t *ipaddr;
- defrt = NULL;
- if((ipaddr = uip_ds6_defrt_choose()) != NULL) {
- defrt = uip_ds6_defrt_lookup(ipaddr);
- }
- if(defrt != NULL) {
- PRINTF("DefRT: :: -> %02d", defrt->ipaddr.u8[15]);
- PRINTF(" lt:%lu inf:%d\n", stimer_remaining(&defrt->lifetime),
- defrt->isinfinite);
- } else {
- PRINTF("DefRT: :: -> NULL\n");
- }
-
- for(r = uip_ds6_route_head();
- r != NULL;
- r = uip_ds6_route_next(r)) {
- nexthop = uip_ds6_route_nexthop(r);
- PRINTF("Route: %02d -> %02d", r->ipaddr.u8[15], nexthop->u8[15]);
- /* PRINT6ADDR(&r->ipaddr); */
- /* PRINTF(" -> "); */
- /* PRINT6ADDR(nexthop); */
- PRINTF(" lt:%lu\n", r->state.lifetime);
-
- }
- }
- }
-
- if(etimer_expired(&periodic)) {
- etimer_reset(&periodic);
- ctimer_set(&backoff_timer, SEND_TIME, send_packet, NULL);
- }
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/rpl-udp/udp-server.c b/examples/ipv6/rpl-udp/udp-server.c
deleted file mode 100644
index 1ae29377d..000000000
--- a/examples/ipv6/rpl-udp/udp-server.c
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- *
- */
-
-#include "contiki.h"
-#include "contiki-lib.h"
-#include "contiki-net.h"
-#include "net/ipv6/uip.h"
-#include "rpl.h"
-#include "rpl-dag-root.h"
-
-#include "net/netstack.h"
-#include "dev/button-sensor.h"
-#include
-#include
-#include
-#include
-
-#define DEBUG DEBUG_PRINT
-#include "net/ipv6/uip-debug.h"
-
-#define UIP_IP_BUF ((struct uip_ip_hdr *)&uip_buf[UIP_LLH_LEN])
-
-#define UDP_CLIENT_PORT 8765
-#define UDP_SERVER_PORT 5678
-
-#define UDP_EXAMPLE_ID 190
-
-static struct uip_udp_conn *server_conn;
-
-PROCESS(udp_server_process, "UDP server process");
-AUTOSTART_PROCESSES(&udp_server_process);
-/*---------------------------------------------------------------------------*/
-static void
-tcpip_handler(void)
-{
- char *appdata;
-
- if(uip_newdata()) {
- appdata = (char *)uip_appdata;
- appdata[uip_datalen()] = 0;
- PRINTF("DATA recv '%s' from ", appdata);
- PRINTF("%d",
- UIP_IP_BUF->srcipaddr.u8[sizeof(UIP_IP_BUF->srcipaddr.u8) - 1]);
- PRINTF("\n");
-#if SERVER_REPLY
- PRINTF("DATA sending reply\n");
- uip_ipaddr_copy(&server_conn->ripaddr, &UIP_IP_BUF->srcipaddr);
- uip_udp_packet_send(server_conn, "Reply", sizeof("Reply"));
- uip_create_unspecified(&server_conn->ripaddr);
-#endif
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-print_local_addresses(void)
-{
- int i;
- uint8_t state;
-
- PRINTF("Server IPv6 addresses: ");
- for(i = 0; i < UIP_DS6_ADDR_NB; i++) {
- state = uip_ds6_if.addr_list[i].state;
- if(state == ADDR_TENTATIVE || state == ADDR_PREFERRED) {
- PRINT6ADDR(&uip_ds6_if.addr_list[i].ipaddr);
- PRINTF("\n");
- /* hack to make address "final" */
- if (state == ADDR_TENTATIVE) {
- uip_ds6_if.addr_list[i].state = ADDR_PREFERRED;
- }
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(udp_server_process, ev, data)
-{
- uip_ipaddr_t ipaddr;
-
- PROCESS_BEGIN();
-
- PROCESS_PAUSE();
-
- SENSORS_ACTIVATE(button_sensor);
-
- PRINTF("UDP server started. nbr:%d routes:%d\n",
- NBR_TABLE_CONF_MAX_NEIGHBORS, NETSTACK_MAX_ROUTE_ENTRIES);
-
- uip_ip6addr(&ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0x00ff, 0xfe00, 1);
- rpl_dag_root_init_dag_immediately();
-
- print_local_addresses();
-
- server_conn = udp_new(NULL, UIP_HTONS(UDP_CLIENT_PORT), NULL);
- if(server_conn == NULL) {
- PRINTF("No UDP connection available, exiting the process!\n");
- PROCESS_EXIT();
- }
- udp_bind(server_conn, UIP_HTONS(UDP_SERVER_PORT));
-
- PRINTF("Created a server connection with remote address ");
- PRINT6ADDR(&server_conn->ripaddr);
- PRINTF(" local/remote port %u/%u\n", UIP_HTONS(server_conn->lport),
- UIP_HTONS(server_conn->rport));
-
- while(1) {
- PROCESS_YIELD();
- if(ev == tcpip_event) {
- tcpip_handler();
- } else if (ev == sensors_event && data == &button_sensor) {
- PRINTF("Initiaing global repair\n");
-#if UIP_CONF_IPV6_RPL_LITE
- rpl_global_repair();
-#else
- rpl_repair_root(RPL_DEFAULT_INSTANCE);
-#endif
- }
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/udp-ipv6/Makefile b/examples/ipv6/udp-ipv6/Makefile
deleted file mode 100644
index 762a40971..000000000
--- a/examples/ipv6/udp-ipv6/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-all: udp-server udp-client
-
-CONTIKI = ../../..
-CFLAGS += -DUIP_CONF_ND6_SEND_NS=1
-include $(CONTIKI)/Makefile.include
diff --git a/examples/ipv6/udp-ipv6/Makefile.target b/examples/ipv6/udp-ipv6/Makefile.target
deleted file mode 100644
index 0d5d95ee2..000000000
--- a/examples/ipv6/udp-ipv6/Makefile.target
+++ /dev/null
@@ -1 +0,0 @@
-TARGET = minimal-net
diff --git a/examples/ipv6/udp-ipv6/udp-client.c b/examples/ipv6/udp-ipv6/udp-client.c
deleted file mode 100644
index dc53dada3..000000000
--- a/examples/ipv6/udp-ipv6/udp-client.c
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- *
- */
-
-#include "contiki.h"
-#include "contiki-lib.h"
-#include "contiki-net.h"
-#include "net/ipv6/resolv.h"
-
-#include
-#include
-
-#define DEBUG DEBUG_PRINT
-#include "net/ipv6/uip-debug.h"
-
-#define SEND_INTERVAL 15 * CLOCK_SECOND
-#define MAX_PAYLOAD_LEN 40
-
-static struct uip_udp_conn *client_conn;
-/*---------------------------------------------------------------------------*/
-PROCESS(udp_client_process, "UDP client process");
-AUTOSTART_PROCESSES(&resolv_process,&udp_client_process);
-/*---------------------------------------------------------------------------*/
-static void
-tcpip_handler(void)
-{
- char *str;
-
- if(uip_newdata()) {
- str = uip_appdata;
- str[uip_datalen()] = '\0';
- printf("Response from the server: '%s'\n", str);
- }
-}
-/*---------------------------------------------------------------------------*/
-static char buf[MAX_PAYLOAD_LEN];
-static void
-timeout_handler(void)
-{
- static int seq_id;
-
- printf("Client sending to: ");
- PRINT6ADDR(&client_conn->ripaddr);
- sprintf(buf, "Hello %d from the client", ++seq_id);
- printf(" (msg: %s)\n", buf);
-#if SEND_TOO_LARGE_PACKET_TO_TEST_FRAGMENTATION
- uip_udp_packet_send(client_conn, buf, UIP_APPDATA_SIZE);
-#else /* SEND_TOO_LARGE_PACKET_TO_TEST_FRAGMENTATION */
- uip_udp_packet_send(client_conn, buf, strlen(buf));
-#endif /* SEND_TOO_LARGE_PACKET_TO_TEST_FRAGMENTATION */
-}
-/*---------------------------------------------------------------------------*/
-static void
-print_local_addresses(void)
-{
- int i;
- uint8_t state;
-
- PRINTF("Client IPv6 addresses: ");
- for(i = 0; i < UIP_DS6_ADDR_NB; i++) {
- state = uip_ds6_if.addr_list[i].state;
- if(uip_ds6_if.addr_list[i].isused &&
- (state == ADDR_TENTATIVE || state == ADDR_PREFERRED)) {
- PRINT6ADDR(&uip_ds6_if.addr_list[i].ipaddr);
- PRINTF("\n");
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-#if UIP_CONF_ROUTER
-static void
-set_global_address(void)
-{
- uip_ipaddr_t ipaddr;
-
- uip_ip6addr(&ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0, 0, 0);
- uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);
- uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);
-}
-#endif /* UIP_CONF_ROUTER */
-/*---------------------------------------------------------------------------*/
-static resolv_status_t
-set_connection_address(uip_ipaddr_t *ipaddr)
-{
-#ifndef UDP_CONNECTION_ADDR
-#if RESOLV_CONF_SUPPORTS_MDNS
-#define UDP_CONNECTION_ADDR contiki-udp-server.local
-#elif UIP_CONF_ROUTER
-#define UDP_CONNECTION_ADDR fd00:0:0:0:0212:7404:0004:0404
-#else
-#define UDP_CONNECTION_ADDR fe80:0:0:0:6466:6666:6666:6666
-#endif
-#endif /* !UDP_CONNECTION_ADDR */
-
-#define _QUOTEME(x) #x
-#define QUOTEME(x) _QUOTEME(x)
-
- resolv_status_t status = RESOLV_STATUS_ERROR;
-
- if(uiplib_ipaddrconv(QUOTEME(UDP_CONNECTION_ADDR), ipaddr) == 0) {
- uip_ipaddr_t *resolved_addr = NULL;
- status = resolv_lookup(QUOTEME(UDP_CONNECTION_ADDR),&resolved_addr);
- if(status == RESOLV_STATUS_UNCACHED || status == RESOLV_STATUS_EXPIRED) {
- PRINTF("Attempting to look up %s\n",QUOTEME(UDP_CONNECTION_ADDR));
- resolv_query(QUOTEME(UDP_CONNECTION_ADDR));
- status = RESOLV_STATUS_RESOLVING;
- } else if(status == RESOLV_STATUS_CACHED && resolved_addr != NULL) {
- PRINTF("Lookup of \"%s\" succeded!\n",QUOTEME(UDP_CONNECTION_ADDR));
- } else if(status == RESOLV_STATUS_RESOLVING) {
- PRINTF("Still looking up \"%s\"...\n",QUOTEME(UDP_CONNECTION_ADDR));
- } else {
- PRINTF("Lookup of \"%s\" failed. status = %d\n",QUOTEME(UDP_CONNECTION_ADDR),status);
- }
- if(resolved_addr)
- uip_ipaddr_copy(ipaddr, resolved_addr);
- } else {
- status = RESOLV_STATUS_CACHED;
- }
-
- return status;
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(udp_client_process, ev, data)
-{
- static struct etimer et;
- uip_ipaddr_t ipaddr;
-
- PROCESS_BEGIN();
- PRINTF("UDP client process started\n");
-
-#if UIP_CONF_ROUTER
- set_global_address();
-#endif
-
- print_local_addresses();
-
- static resolv_status_t status = RESOLV_STATUS_UNCACHED;
- while(status != RESOLV_STATUS_CACHED) {
- status = set_connection_address(&ipaddr);
-
- if(status == RESOLV_STATUS_RESOLVING) {
- PROCESS_WAIT_EVENT_UNTIL(ev == resolv_event_found);
- } else if(status != RESOLV_STATUS_CACHED) {
- PRINTF("Can't get connection address.\n");
- PROCESS_YIELD();
- }
- }
-
- /* new connection with remote host */
- client_conn = udp_new(&ipaddr, UIP_HTONS(3000), NULL);
- udp_bind(client_conn, UIP_HTONS(3001));
-
- PRINTF("Created a connection with the server ");
- PRINT6ADDR(&client_conn->ripaddr);
- PRINTF(" local/remote port %u/%u\n",
- UIP_HTONS(client_conn->lport), UIP_HTONS(client_conn->rport));
-
- etimer_set(&et, SEND_INTERVAL);
- while(1) {
- PROCESS_YIELD();
- if(etimer_expired(&et)) {
- timeout_handler();
- etimer_restart(&et);
- } else if(ev == tcpip_event) {
- tcpip_handler();
- }
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/udp-ipv6/udp-server.c b/examples/ipv6/udp-ipv6/udp-server.c
deleted file mode 100644
index a5784dd0c..000000000
--- a/examples/ipv6/udp-ipv6/udp-server.c
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- *
- */
-
-#include "contiki.h"
-#include "contiki-lib.h"
-#include "contiki-net.h"
-
-#include
-
-#define DEBUG DEBUG_PRINT
-#include "net/ipv6/uip-debug.h"
-
-#define UIP_IP_BUF ((struct uip_ip_hdr *)&uip_buf[UIP_LLH_LEN])
-
-#define MAX_PAYLOAD_LEN 120
-
-static struct uip_udp_conn *server_conn;
-
-PROCESS(udp_server_process, "UDP server process");
-AUTOSTART_PROCESSES(&resolv_process,&udp_server_process);
-/*---------------------------------------------------------------------------*/
-static void
-tcpip_handler(void)
-{
- static int seq_id;
- char buf[MAX_PAYLOAD_LEN];
-
- if(uip_newdata()) {
- ((char *)uip_appdata)[uip_datalen()] = 0;
- PRINTF("Server received: '%s' from ", (char *)uip_appdata);
- PRINT6ADDR(&UIP_IP_BUF->srcipaddr);
- PRINTF("\n");
-
- uip_ipaddr_copy(&server_conn->ripaddr, &UIP_IP_BUF->srcipaddr);
- PRINTF("Responding with message: ");
- sprintf(buf, "Hello from the server! (%d)", ++seq_id);
- PRINTF("%s\n", buf);
-
- uip_udp_packet_send(server_conn, buf, strlen(buf));
- /* Restore server connection to allow data from any node */
- memset(&server_conn->ripaddr, 0, sizeof(server_conn->ripaddr));
- }
-}
-/*---------------------------------------------------------------------------*/
-static void
-print_local_addresses(void)
-{
- int i;
- uint8_t state;
-
- PRINTF("Server IPv6 addresses: ");
- for(i = 0; i < UIP_DS6_ADDR_NB; i++) {
- state = uip_ds6_if.addr_list[i].state;
- if(uip_ds6_if.addr_list[i].isused &&
- (state == ADDR_TENTATIVE || state == ADDR_PREFERRED)) {
- PRINT6ADDR(&uip_ds6_if.addr_list[i].ipaddr);
- PRINTF("\n");
- }
- }
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(udp_server_process, ev, data)
-{
-#if UIP_CONF_ROUTER
- uip_ipaddr_t ipaddr;
-#endif /* UIP_CONF_ROUTER */
-
- PROCESS_BEGIN();
- PRINTF("UDP server started\n");
-
-#if RESOLV_CONF_SUPPORTS_MDNS
- resolv_set_hostname("contiki-udp-server");
-#endif
-
-#if UIP_CONF_ROUTER
- uip_ip6addr(&ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0, 0, 0);
- uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);
- uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);
-#endif /* UIP_CONF_ROUTER */
-
- print_local_addresses();
-
- server_conn = udp_new(NULL, UIP_HTONS(3001), NULL);
- udp_bind(server_conn, UIP_HTONS(3000));
-
- while(1) {
- PROCESS_YIELD();
- if(ev == tcpip_event) {
- tcpip_handler();
- }
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/logging/Makefile b/examples/libs/logging/Makefile
similarity index 82%
rename from examples/logging/Makefile
rename to examples/libs/logging/Makefile
index 6f8cecf83..d394c0bc4 100644
--- a/examples/logging/Makefile
+++ b/examples/libs/logging/Makefile
@@ -1,5 +1,5 @@
CONTIKI_PROJECT = logging
all: $(CONTIKI_PROJECT)
-CONTIKI = ../..
+CONTIKI = ../../..
include $(CONTIKI)/Makefile.include
diff --git a/examples/logging/README.md b/examples/libs/logging/README.md
similarity index 100%
rename from examples/logging/README.md
rename to examples/libs/logging/README.md
diff --git a/examples/logging/logging.c b/examples/libs/logging/logging.c
similarity index 100%
rename from examples/logging/logging.c
rename to examples/libs/logging/logging.c
diff --git a/examples/logging/project-conf.h b/examples/libs/logging/project-conf.h
similarity index 97%
rename from examples/logging/project-conf.h
rename to examples/libs/logging/project-conf.h
index ee8d3c00f..f42f08723 100644
--- a/examples/logging/project-conf.h
+++ b/examples/libs/logging/project-conf.h
@@ -45,6 +45,7 @@
#define LOG_CONF_LEVEL_TCPIP LOG_LEVEL_DBG
#define LOG_CONF_LEVEL_MAC LOG_LEVEL_DBG
#define LOG_CONF_LEVEL_FRAMER LOG_LEVEL_DBG
+#define LOG_CONF_LEVEL_6TOP LOG_LEVEL_DBG
/* Enable cooja annotations */
#define LOG_CONF_WITH_ANNOTATE 1
diff --git a/examples/timers/Makefile b/examples/libs/timers/Makefile
similarity index 82%
rename from examples/timers/Makefile
rename to examples/libs/timers/Makefile
index d5b2a2846..60b9c2531 100644
--- a/examples/timers/Makefile
+++ b/examples/libs/timers/Makefile
@@ -1,5 +1,5 @@
CONTIKI_PROJECT = all-timers
all: $(CONTIKI_PROJECT)
-CONTIKI = ../..
+CONTIKI = ../../..
include $(CONTIKI)/Makefile.include
diff --git a/examples/timers/all-timers.c b/examples/libs/timers/all-timers.c
similarity index 65%
rename from examples/timers/all-timers.c
rename to examples/libs/timers/all-timers.c
index 60eb56651..2a1f27b28 100644
--- a/examples/timers/all-timers.c
+++ b/examples/libs/timers/all-timers.c
@@ -36,96 +36,73 @@
#include "sys/timer.h"
#include "sys/rtimer.h"
-PROCESS(process1, "ETimer x Timer x STimer Process");
-PROCESS(process2, "CTimer Process 2");
-PROCESS(process3, "RTimer Process 3");
-AUTOSTART_PROCESSES(&process1, &process2, &process3);
+PROCESS(timer_process, "ETimer x Timer x STimer Process");
+AUTOSTART_PROCESSES(&timer_process);
static int counter_etimer;
static int counter_timer;
static int counter_stimer;
-static int counter_ctimer;
-static int counter_rtimer;
static struct timer timer_timer;
static struct stimer timer_stimer;
static struct ctimer timer_ctimer;
static struct rtimer timer_rtimer;
-static rtimer_clock_t timeout_rtimer = RTIMER_SECOND / 2;
-void
-do_timeout1()
-{
- counter_etimer++;
- if(timer_expired(&timer_timer)) {
- counter_timer++;
- }
-
- if(stimer_expired(&timer_stimer)) {
- counter_stimer++;
- }
-
- printf("\nProcess 1: %s", counter_timer == counter_etimer
- && counter_timer == counter_stimer ? "SUCCESS" : "FAIL");
-}
/*---------------------------------------------------------------------------*/
void
-do_timeout2()
+ctimer_callback(void *ptr)
{
+ /* rearm the ctimer */
ctimer_reset(&timer_ctimer);
- printf("\nProcess 2: CTimer callback called");
- counter_ctimer++;
+ printf("CTimer callback called\n");
}
/*---------------------------------------------------------------------------*/
void
-do_timeout3(struct rtimer *timer, void *ptr)
+rtimer_callback(struct rtimer *timer, void *ptr)
{
- counter_rtimer++;
-
- printf("\nProcess 3: RTimer callback called");
+ /* Normally avoid printing from rtimer - rather do a process poll */
+ printf("RTimer callback called\n");
/* Re-arm rtimer */
- rtimer_set(&timer_rtimer, RTIMER_NOW() + timeout_rtimer, 0, do_timeout3,
- NULL);
+ rtimer_set(&timer_rtimer, RTIMER_NOW() + RTIMER_SECOND / 2, 0,
+ rtimer_callback, NULL);
}
/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(process1, ev, data)
+/*
+ * This Process will count timer expires on one e-timer (that drives the
+ * events to the process), one timer, and one stimer.
+ *
+ */
+PROCESS_THREAD(timer_process, ev, data)
{
static struct etimer timer_etimer;
PROCESS_BEGIN();
+ ctimer_set(&timer_ctimer, CLOCK_SECOND, ctimer_callback, NULL);
+ rtimer_set(&timer_rtimer, RTIMER_NOW() + CLOCK_SECOND / 2, 0,
+ rtimer_callback, NULL);
+
while(1) {
+ /* set all the timers */
timer_set(&timer_timer, 3 * CLOCK_SECOND);
stimer_set(&timer_stimer, 3);
etimer_set(&timer_etimer, 3 * CLOCK_SECOND);
+
PROCESS_WAIT_EVENT_UNTIL(ev == PROCESS_EVENT_TIMER);
- do_timeout1();
+
+ counter_etimer++;
+ if(timer_expired(&timer_timer)) {
+ counter_timer++;
+ }
+
+ if(stimer_expired(&timer_stimer)) {
+ counter_stimer++;
+ }
+
+ printf("Timer process: %s\n", counter_timer == counter_etimer
+ && counter_timer == counter_stimer ? "SUCCESS" : "FAIL");
}
PROCESS_END();
}
/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(process2, ev, data)
-{
- PROCESS_BEGIN();
-
- while(1) {
- ctimer_set(&timer_ctimer, 5 * CLOCK_SECOND, do_timeout2, NULL);
- PROCESS_YIELD();
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(process3, ev, data)
-{
- PROCESS_BEGIN();
-
- while(1) {
- rtimer_set(&timer_rtimer, RTIMER_NOW() + timeout_rtimer, 0,
- do_timeout3, NULL);
- PROCESS_YIELD();
- }
-
- PROCESS_END();
-}
diff --git a/examples/trickle-library/Makefile b/examples/libs/trickle-library/Makefile
similarity index 83%
rename from examples/trickle-library/Makefile
rename to examples/libs/trickle-library/Makefile
index bf7303166..aa3b25f9a 100644
--- a/examples/trickle-library/Makefile
+++ b/examples/libs/trickle-library/Makefile
@@ -2,6 +2,6 @@ CONTIKI_PROJECT = trickle-library
all: $(CONTIKI_PROJECT)
-CONTIKI = ../..
+CONTIKI = ../../..
include $(CONTIKI)/Makefile.include
diff --git a/examples/trickle-library/trickle-library.c b/examples/libs/trickle-library/trickle-library.c
similarity index 100%
rename from examples/trickle-library/trickle-library.c
rename to examples/libs/trickle-library/trickle-library.c
diff --git a/examples/trickle-library/trickle-library.csc b/examples/libs/trickle-library/trickle-library.csc
similarity index 96%
rename from examples/trickle-library/trickle-library.csc
rename to examples/libs/trickle-library/trickle-library.csc
index 7a6d74ca2..bea3f6c3e 100644
--- a/examples/trickle-library/trickle-library.csc
+++ b/examples/libs/trickle-library/trickle-library.csc
@@ -25,9 +25,9 @@
org.contikios.cooja.mspmote.SkyMoteType
sky1
trickle-tester
- [CONTIKI_DIR]/examples/trickle-library/trickle-library.c
+ [CONTIKI_DIR]/examples/libs/trickle-library/trickle-library.c
make trickle-library.sky TARGET=sky
- [CONTIKI_DIR]/examples/trickle-library/trickle-library.sky
+ [CONTIKI_DIR]/examples/libs/trickle-library/trickle-library.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
diff --git a/examples/ipv6/multicast/Makefile b/examples/multicast/Makefile
similarity index 90%
rename from examples/ipv6/multicast/Makefile
rename to examples/multicast/Makefile
index 310177870..2337ea60f 100644
--- a/examples/ipv6/multicast/Makefile
+++ b/examples/multicast/Makefile
@@ -1,7 +1,7 @@
CONTIKI_PROJECT = root intermediate sink
all: $(CONTIKI_PROJECT)
-CONTIKI = ../../..
+CONTIKI = ../..
MODULES += os/net/ipv6/multicast
diff --git a/examples/ipv6/multicast/intermediate.c b/examples/multicast/intermediate.c
similarity index 100%
rename from examples/ipv6/multicast/intermediate.c
rename to examples/multicast/intermediate.c
diff --git a/examples/ipv6/multicast/multicast.csc b/examples/multicast/multicast.csc
similarity index 95%
rename from examples/ipv6/multicast/multicast.csc
rename to examples/multicast/multicast.csc
index a0857c13b..e88913825 100644
--- a/examples/ipv6/multicast/multicast.csc
+++ b/examples/multicast/multicast.csc
@@ -24,9 +24,9 @@
org.contikios.cooja.mspmote.SkyMoteType
sky1
root
- [CONTIKI_DIR]/examples/ipv6/multicast/root.c
+ [CONTIKI_DIR]/examples/multicast/root.c
make root.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/multicast/root.sky
+ [CONTIKI_DIR]/examples/multicast/root.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
@@ -47,9 +47,9 @@
org.contikios.cooja.mspmote.SkyMoteType
sky2
intermediate
- [CONTIKI_DIR]/examples/ipv6/multicast/intermediate.c
+ [CONTIKI_DIR]/examples/multicast/intermediate.c
make intermediate.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/multicast/intermediate.sky
+ [CONTIKI_DIR]/examples/multicast/intermediate.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
@@ -70,9 +70,9 @@
org.contikios.cooja.mspmote.SkyMoteType
sky3
sink
- [CONTIKI_DIR]/examples/ipv6/multicast/sink.c
+ [CONTIKI_DIR]/examples/multicast/sink.c
make sink.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/multicast/sink.sky
+ [CONTIKI_DIR]/examples/multicast/sink.sky
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.RimeAddress
org.contikios.cooja.interfaces.IPAddress
diff --git a/examples/ipv6/multicast/project-conf.h b/examples/multicast/project-conf.h
similarity index 100%
rename from examples/ipv6/multicast/project-conf.h
rename to examples/multicast/project-conf.h
diff --git a/examples/ipv6/multicast/root.c b/examples/multicast/root.c
similarity index 100%
rename from examples/ipv6/multicast/root.c
rename to examples/multicast/root.c
diff --git a/examples/ipv6/multicast/sink.c b/examples/multicast/sink.c
similarity index 100%
rename from examples/ipv6/multicast/sink.c
rename to examples/multicast/sink.c
diff --git a/examples/native-border-router/Makefile b/examples/native-border-router/Makefile
new file mode 100644
index 000000000..d61b29f6e
--- /dev/null
+++ b/examples/native-border-router/Makefile
@@ -0,0 +1,15 @@
+CONTIKI_PROJECT=border-router
+all: $(CONTIKI_PROJECT)
+MODULES += os/services/slip-cmd
+
+CONTIKI=../..
+
+PROJECT_SOURCEFILES += border-router-cmds.c tun-bridge.c httpd-simple.c
+PROJECT_SOURCEFILES += slip-config.c slip-dev.c border-router-mac.c
+
+MAKE_MAC = MAKE_MAC_OTHER
+MAKE_NET = MAKE_NET_IPV6
+include $(CONTIKI)/Makefile.include
+
+connect-router: border-router.native
+ sudo ./border-router.native fd00::1/64
diff --git a/examples/ipv6/native-border-router/Makefile.target b/examples/native-border-router/Makefile.target
similarity index 100%
rename from examples/ipv6/native-border-router/Makefile.target
rename to examples/native-border-router/Makefile.target
diff --git a/examples/ipv6/native-border-router/README.md b/examples/native-border-router/README.md
similarity index 100%
rename from examples/ipv6/native-border-router/README.md
rename to examples/native-border-router/README.md
diff --git a/examples/ipv6/native-border-router/border-router-cmds.c b/examples/native-border-router/border-router-cmds.c
similarity index 100%
rename from examples/ipv6/native-border-router/border-router-cmds.c
rename to examples/native-border-router/border-router-cmds.c
diff --git a/examples/ipv6/native-border-router/border-router-cmds.h b/examples/native-border-router/border-router-cmds.h
similarity index 100%
rename from examples/ipv6/native-border-router/border-router-cmds.h
rename to examples/native-border-router/border-router-cmds.h
diff --git a/examples/ipv6/native-border-router/border-router-mac.c b/examples/native-border-router/border-router-mac.c
similarity index 100%
rename from examples/ipv6/native-border-router/border-router-mac.c
rename to examples/native-border-router/border-router-mac.c
diff --git a/examples/ipv6/native-border-router/border-router.c b/examples/native-border-router/border-router.c
similarity index 97%
rename from examples/ipv6/native-border-router/border-router.c
rename to examples/native-border-router/border-router.c
index b8d6fcc6e..e55e3f870 100644
--- a/examples/ipv6/native-border-router/border-router.c
+++ b/examples/native-border-router/border-router.c
@@ -82,15 +82,7 @@ CMD_HANDLERS(border_router_cmd_handler);
PROCESS(border_router_process, "Border router process");
-#if WEBSERVER==0
-/* No webserver */
-AUTOSTART_PROCESSES(&border_router_process,&border_router_cmd_process);
-#elif WEBSERVER>1
-/* Use an external webserver application */
-#include "webserver-nogui.h"
-AUTOSTART_PROCESSES(&border_router_process,&border_router_cmd_process,
- &webserver_nogui_process);
-#else
+#if BORDER_ROUTER_CONF_WEBSERVER
/* Use simple webserver with only one page */
#include "httpd-simple.h"
PROCESS(webserver_nogui_process, "Web server");
@@ -212,9 +204,10 @@ httpd_simple_get_script(const char *name)
{
return generate_routes;
}
-
-#endif /* WEBSERVER */
-
+#else /* BORDER_ROUTER_CONF_WEBSERVER */
+/* No webserver */
+AUTOSTART_PROCESSES(&border_router_process,&border_router_cmd_process);
+#endif /* BORDER_ROUTER_CONF_WEBSERVER */
/*---------------------------------------------------------------------------*/
static void
print_local_addresses(void)
diff --git a/examples/ipv6/native-border-router/border-router.h b/examples/native-border-router/border-router.h
similarity index 100%
rename from examples/ipv6/native-border-router/border-router.h
rename to examples/native-border-router/border-router.h
diff --git a/examples/ipv6/native-border-router/httpd-simple.c b/examples/native-border-router/httpd-simple.c
similarity index 100%
rename from examples/ipv6/native-border-router/httpd-simple.c
rename to examples/native-border-router/httpd-simple.c
diff --git a/examples/ipv6/native-border-router/httpd-simple.h b/examples/native-border-router/httpd-simple.h
similarity index 100%
rename from examples/ipv6/native-border-router/httpd-simple.h
rename to examples/native-border-router/httpd-simple.h
diff --git a/examples/ipv6/native-border-router/project-conf.h b/examples/native-border-router/project-conf.h
similarity index 98%
rename from examples/ipv6/native-border-router/project-conf.h
rename to examples/native-border-router/project-conf.h
index c6c9e4f30..5a0c524eb 100644
--- a/examples/ipv6/native-border-router/project-conf.h
+++ b/examples/native-border-router/project-conf.h
@@ -30,6 +30,8 @@
#ifndef PROJECT_ROUTER_CONF_H_
#define PROJECT_ROUTER_CONF_H_
+#define BORDER_ROUTER_CONF_WEBSERVER 1
+
#define UIP_FALLBACK_INTERFACE rpl_interface
/* use a non-default network driver */
diff --git a/examples/ipv6/native-border-router/slip-config.c b/examples/native-border-router/slip-config.c
similarity index 100%
rename from examples/ipv6/native-border-router/slip-config.c
rename to examples/native-border-router/slip-config.c
diff --git a/examples/ipv6/native-border-router/slip-dev.c b/examples/native-border-router/slip-dev.c
similarity index 100%
rename from examples/ipv6/native-border-router/slip-dev.c
rename to examples/native-border-router/slip-dev.c
diff --git a/examples/ipv6/native-border-router/tun-bridge.c b/examples/native-border-router/tun-bridge.c
similarity index 100%
rename from examples/ipv6/native-border-router/tun-bridge.c
rename to examples/native-border-router/tun-bridge.c
diff --git a/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/Makefile b/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/Makefile
deleted file mode 100644
index 841f43125..000000000
--- a/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/Makefile
+++ /dev/null
@@ -1,7 +0,0 @@
-CONTIKI_PROJECT = udp-echo-server
-
-all: $(CONTIKI_PROJECT)
-
-CONTIKI = ../../../..
-CFLAGS += -DUIP_CONF_ND6_SEND_NS=1
-include $(CONTIKI)/Makefile.include
diff --git a/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/Makefile.target b/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/Makefile.target
deleted file mode 100644
index 777593c88..000000000
--- a/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/Makefile.target
+++ /dev/null
@@ -1 +0,0 @@
-TARGET = cc2538dk
diff --git a/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/udp-echo-server.c b/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/udp-echo-server.c
deleted file mode 100644
index b7f698169..000000000
--- a/examples/platform-specific/cc2538dk/udp-ipv6-echo-server/udp-echo-server.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright (c) 2012, Texas Instruments Incorporated - http://www.ti.com/
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * 3. Neither the name of the copyright holder nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-/** \addtogroup cc2538-examples
- * @{
- *
- * \defgroup cc2538-echo-server cc2538dk UDP Echo Server Project
- *
- * Tests that a node can correctly join an RPL network and also tests UDP
- * functionality
- * @{
- *
- * \file
- * An example of a simple UDP echo server for the cc2538dk platform
- */
-#include "contiki.h"
-#include "contiki-lib.h"
-#include "contiki-net.h"
-
-#include
-
-#define DEBUG DEBUG_PRINT
-#include "net/ipv6/uip-debug.h"
-#include "dev/watchdog.h"
-#include "dev/leds.h"
-#include "rpl.h"
-/*---------------------------------------------------------------------------*/
-#define UIP_IP_BUF ((struct uip_ip_hdr *)&uip_buf[UIP_LLH_LEN])
-#define UIP_UDP_BUF ((struct uip_udp_hdr *)&uip_buf[uip_l2_l3_hdr_len])
-
-#define MAX_PAYLOAD_LEN 120
-/*---------------------------------------------------------------------------*/
-static struct uip_udp_conn *server_conn;
-static char buf[MAX_PAYLOAD_LEN];
-static uint16_t len;
-/*---------------------------------------------------------------------------*/
-PROCESS(udp_echo_server_process, "UDP echo server process");
-AUTOSTART_PROCESSES(&udp_echo_server_process);
-/*---------------------------------------------------------------------------*/
-static void
-tcpip_handler(void)
-{
- memset(buf, 0, MAX_PAYLOAD_LEN);
- if(uip_newdata()) {
- leds_on(LEDS_RED);
- len = uip_datalen();
- memcpy(buf, uip_appdata, len);
- PRINTF("%u bytes from [", len);
- PRINT6ADDR(&UIP_IP_BUF->srcipaddr);
- PRINTF("]:%u\n", UIP_HTONS(UIP_UDP_BUF->srcport));
- uip_ipaddr_copy(&server_conn->ripaddr, &UIP_IP_BUF->srcipaddr);
- server_conn->rport = UIP_UDP_BUF->srcport;
-
- uip_udp_packet_send(server_conn, buf, len);
- uip_create_unspecified(&server_conn->ripaddr);
- server_conn->rport = 0;
- }
- leds_off(LEDS_RED);
- return;
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(udp_echo_server_process, ev, data)
-{
-
- PROCESS_BEGIN();
- PRINTF("Starting UDP echo server\n");
-
- server_conn = udp_new(NULL, UIP_HTONS(0), NULL);
- udp_bind(server_conn, UIP_HTONS(3000));
-
- PRINTF("Listen port: 3000, TTL=%u\n", server_conn->ttl);
-
- while(1) {
- PROCESS_YIELD();
- if(ev == tcpip_event) {
- tcpip_handler();
- }
- }
-
- PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
-/**
- * @}
- * @}
- */
diff --git a/examples/platform-specific/nrf52dk/blink-hello/Makefile.target b/examples/platform-specific/nrf52dk/blink-hello/Makefile.target
new file mode 100644
index 000000000..3853b313a
--- /dev/null
+++ b/examples/platform-specific/nrf52dk/blink-hello/Makefile.target
@@ -0,0 +1 @@
+TARGET = nrf52dk
diff --git a/examples/platform-specific/nrf52dk/coap-demo/Makefile.target b/examples/platform-specific/nrf52dk/coap-demo/Makefile.target
new file mode 100644
index 000000000..3853b313a
--- /dev/null
+++ b/examples/platform-specific/nrf52dk/coap-demo/Makefile.target
@@ -0,0 +1 @@
+TARGET = nrf52dk
diff --git a/examples/platform-specific/nrf52dk/mqtt-demo/Makefile.target b/examples/platform-specific/nrf52dk/mqtt-demo/Makefile.target
new file mode 100644
index 000000000..3853b313a
--- /dev/null
+++ b/examples/platform-specific/nrf52dk/mqtt-demo/Makefile.target
@@ -0,0 +1 @@
+TARGET = nrf52dk
diff --git a/examples/platform-specific/nrf52dk/timer-test/Makefile.target b/examples/platform-specific/nrf52dk/timer-test/Makefile.target
new file mode 100644
index 000000000..3853b313a
--- /dev/null
+++ b/examples/platform-specific/nrf52dk/timer-test/Makefile.target
@@ -0,0 +1 @@
+TARGET = nrf52dk
diff --git a/examples/platform-specific/zoul/at-test/Makefile.target b/examples/platform-specific/zoul/at-test/Makefile.target
new file mode 100644
index 000000000..75430a6e4
--- /dev/null
+++ b/examples/platform-specific/zoul/at-test/Makefile.target
@@ -0,0 +1 @@
+TARGET = zoul
diff --git a/examples/platform-specific/zoul/orion/client/Makefile.target b/examples/platform-specific/zoul/orion/client/Makefile.target
new file mode 100644
index 000000000..75430a6e4
--- /dev/null
+++ b/examples/platform-specific/zoul/orion/client/Makefile.target
@@ -0,0 +1 @@
+TARGET = zoul
diff --git a/examples/rpl-border-router/Makefile b/examples/rpl-border-router/Makefile
new file mode 100644
index 000000000..2f02a031e
--- /dev/null
+++ b/examples/rpl-border-router/Makefile
@@ -0,0 +1,21 @@
+CONTIKI_PROJECT=border-router
+all: $(CONTIKI_PROJECT)
+
+CONTIKI=../..
+
+PROJECT_SOURCEFILES += slip-bridge.c httpd-simple.c
+
+ifeq ($(PREFIX),)
+ PREFIX = fd00::1/64
+endif
+
+include $(CONTIKI)/Makefile.include
+
+$(CONTIKI)/tools/tunslip6: $(CONTIKI)/tools/tunslip6.c
+ (cd $(CONTIKI)/tools && $(MAKE) tunslip6)
+
+connect-router: $(CONTIKI)/tools/tunslip6
+ sudo $(CONTIKI)/tools/tunslip6 $(PREFIX)
+
+connect-router-cooja: $(CONTIKI)/tools/tunslip6
+ sudo $(CONTIKI)/tools/tunslip6 -a 127.0.0.1 $(PREFIX)
diff --git a/examples/ipv6/rpl-border-router/border-router.c b/examples/rpl-border-router/border-router.c
similarity index 98%
rename from examples/ipv6/rpl-border-router/border-router.c
rename to examples/rpl-border-router/border-router.c
index ab3dc8086..c6a812d93 100644
--- a/examples/ipv6/rpl-border-router/border-router.c
+++ b/examples/rpl-border-router/border-router.c
@@ -65,14 +65,7 @@ static uint8_t prefix_set;
PROCESS(border_router_process, "Border router process");
-#if WEBSERVER==0
-/* No webserver */
-AUTOSTART_PROCESSES(&border_router_process);
-#elif WEBSERVER>1
-/* Use an external webserver application */
-#include "webserver-nogui.h"
-AUTOSTART_PROCESSES(&border_router_process,&webserver_nogui_process);
-#else
+#if BORDER_ROUTER_CONF_WEBSERVER
/* Use simple webserver with only one page for minimum footprint.
* Multiple connections can result in interleaved tcp segments since
* a single static buffer is used for all segments.
@@ -346,12 +339,12 @@ PT_THREAD(generate_routes(struct httpd_state *s))
httpd_simple_script_t
httpd_simple_get_script(const char *name)
{
-
return generate_routes;
}
-
-#endif /* WEBSERVER */
-
+#else /* BORDER_ROUTER_CONF_WEBSERVER */
+/* No webserver */
+AUTOSTART_PROCESSES(&border_router_process);
+#endif /* BORDER_ROUTER_CONF_WEBSERVER */
/*---------------------------------------------------------------------------*/
static void
print_local_addresses(void)
diff --git a/examples/ipv6/rpl-border-router/httpd-simple.c b/examples/rpl-border-router/httpd-simple.c
similarity index 100%
rename from examples/ipv6/rpl-border-router/httpd-simple.c
rename to examples/rpl-border-router/httpd-simple.c
diff --git a/examples/ipv6/rpl-border-router/httpd-simple.h b/examples/rpl-border-router/httpd-simple.h
similarity index 100%
rename from examples/ipv6/rpl-border-router/httpd-simple.h
rename to examples/rpl-border-router/httpd-simple.h
diff --git a/examples/ipv6/rpl-border-router/project-conf.h b/examples/rpl-border-router/project-conf.h
similarity index 96%
rename from examples/ipv6/rpl-border-router/project-conf.h
rename to examples/rpl-border-router/project-conf.h
index 63930dd77..32703ce45 100644
--- a/examples/ipv6/rpl-border-router/project-conf.h
+++ b/examples/rpl-border-router/project-conf.h
@@ -39,7 +39,9 @@
#define WEBSERVER_CONF_CFS_CONNS 2
#endif
-#if WEBSERVER
+#define BORDER_ROUTER_CONF_WEBSERVER 1
+
+#if BORDER_ROUTER_CONF_WEBSERVER
#define UIP_CONF_TCP 1
#endif
diff --git a/examples/ipv6/rpl-border-router/slip-bridge.c b/examples/rpl-border-router/slip-bridge.c
similarity index 100%
rename from examples/ipv6/rpl-border-router/slip-bridge.c
rename to examples/rpl-border-router/slip-bridge.c
diff --git a/examples/websockets/Makefile b/examples/rpl-udp/Makefile
similarity index 50%
rename from examples/websockets/Makefile
rename to examples/rpl-udp/Makefile
index 49d706070..0a4d4d4e5 100644
--- a/examples/websockets/Makefile
+++ b/examples/rpl-udp/Makefile
@@ -1,6 +1,4 @@
-all: websocket-example
+all: udp-client udp-server udp-client-packet-debug
+
CONTIKI=../..
-
include $(CONTIKI)/Makefile.include
-
-
diff --git a/examples/ipv6/json-ws/project-conf.h b/examples/rpl-udp/project-conf.h
similarity index 76%
rename from examples/ipv6/json-ws/project-conf.h
rename to examples/rpl-udp/project-conf.h
index 1135d7dd1..4575084e9 100644
--- a/examples/ipv6/json-ws/project-conf.h
+++ b/examples/rpl-udp/project-conf.h
@@ -1,7 +1,4 @@
/*
- * Copyright (c) 2012, Swedish Institute of Computer Science.
- * All rights reserved.
- *
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
@@ -25,23 +22,16 @@
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
+ *
+ * This file is part of the Contiki operating system.
*/
#ifndef PROJECT_CONF_H_
#define PROJECT_CONF_H_
-#include "jsontree.h"
-#define HTTPD_WS_CONF_USER_STATE struct jsontree_context json
-
-/* #define JSON_WS_CONF_CALLBACK_PROTO "http" | "udp" | "cosm" */
-#define JSON_WS_CONF_CALLBACK_PROTO "http"
-#define JSON_WS_CONF_CALLBACK_PORT 80
-#define JSON_WS_CONF_CALLBACK_INTERVAL 120
-
-#define WEBSERVER_CONF_INBUF_SIZE 200
-
-#define WEBSERVER_CONF_OUTBUF_SIZE (UIP_TCP_MSS + 20 + 80)
-
-#define WEBSERVER_CONF_CFS_CONNS 3
+/* Hardcoded global IPv6 address of the server.
+ * Must match link-local */
+#define INIT_SERVER_IPADDR(ipaddr) \
+ uip_ip6addr(&ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0x0212, 0x7401, 0x0001, 0x0101)
#endif /* PROJECT_CONF_H_ */
diff --git a/examples/rpl-udp/rpl-udp-packet-debug.csc b/examples/rpl-udp/rpl-udp-packet-debug.csc
new file mode 100644
index 000000000..2349934e6
--- /dev/null
+++ b/examples/rpl-udp/rpl-udp-packet-debug.csc
@@ -0,0 +1,285 @@
+
+
+ [APPS_DIR]/mrm
+ [APPS_DIR]/mspsim
+ [APPS_DIR]/avrora
+ [APPS_DIR]/serial_socket
+ [APPS_DIR]/collect-view
+ [APPS_DIR]/powertracker
+
+ RPL-UDP Example -- Packet Debug
+ generated
+ 5000000
+
+ org.contikios.cooja.radiomediums.UDGM
+ 50.0
+ 50.0
+ 1.0
+ 1.0
+
+
+ 40000
+
+
+ org.contikios.cooja.mspmote.SkyMoteType
+ sky1
+ Sky Mote Type #sky1
+ [CONTIKI_DIR]/examples/rpl-udp/udp-server.c
+ make clean udp-server.sky TARGET=sky
+ [CONTIKI_DIR]/examples/rpl-udp/udp-server.sky
+ org.contikios.cooja.interfaces.Position
+ org.contikios.cooja.interfaces.RimeAddress
+ org.contikios.cooja.interfaces.IPAddress
+ org.contikios.cooja.interfaces.Mote2MoteRelations
+ org.contikios.cooja.interfaces.MoteAttributes
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ org.contikios.cooja.mspmote.interfaces.SkyButton
+ org.contikios.cooja.mspmote.interfaces.SkyFlash
+ org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
+ org.contikios.cooja.mspmote.interfaces.Msp802154Radio
+ org.contikios.cooja.mspmote.interfaces.MspSerial
+ org.contikios.cooja.mspmote.interfaces.SkyLED
+ org.contikios.cooja.mspmote.interfaces.MspDebugOutput
+ org.contikios.cooja.mspmote.interfaces.SkyTemperature
+
+
+ org.contikios.cooja.mspmote.SkyMoteType
+ sky2
+ Sky Mote Type #sky2
+ [CONTIKI_DIR]/examples/rpl-udp/udp-client-packet-debug.c
+ make clean udp-client-packet-debug.sky TARGET=sky
+ [CONTIKI_DIR]/examples/rpl-udp/udp-client-packet-debug.sky
+ org.contikios.cooja.interfaces.Position
+ org.contikios.cooja.interfaces.RimeAddress
+ org.contikios.cooja.interfaces.IPAddress
+ org.contikios.cooja.interfaces.Mote2MoteRelations
+ org.contikios.cooja.interfaces.MoteAttributes
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ org.contikios.cooja.mspmote.interfaces.SkyButton
+ org.contikios.cooja.mspmote.interfaces.SkyFlash
+ org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
+ org.contikios.cooja.mspmote.interfaces.Msp802154Radio
+ org.contikios.cooja.mspmote.interfaces.MspSerial
+ org.contikios.cooja.mspmote.interfaces.SkyLED
+ org.contikios.cooja.mspmote.interfaces.MspDebugOutput
+ org.contikios.cooja.mspmote.interfaces.SkyTemperature
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 30.051578821079996
+ -64.69428746901113
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 1
+
+ sky1
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 21.31366587648077
+ -34.91404431659299
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 2
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 57.165216906562264
+ -34.02362118358309
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 3
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 75.1786320042507
+ -60.441618586411096
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 4
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 59.11488934836
+ -7.544844766953879
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 5
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 91.720430365082
+ -22.736406051209734
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 6
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 92.90372351580778
+ 2.532304558933846
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 7
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 120.28246466847423
+ 19.133402903417824
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 8
+
+ sky2
+
+
+
+ org.contikios.cooja.plugins.SimControl
+ 249
+ 4
+ 184
+ 3
+ 15
+
+
+ org.contikios.cooja.plugins.Visualizer
+
+ org.contikios.cooja.plugins.skins.IDVisualizerSkin
+ org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
+ org.contikios.cooja.plugins.skins.AttributeVisualizerSkin
+ 1.3598488697820064 0.0 0.0 1.3598488697820064 6.142207908179105 118.20877091196155
+
+ 234
+ 1
+ 227
+ 14
+ 210
+
+
+ org.contikios.cooja.plugins.LogListener
+
+
+
+
+
+ 1011
+ 0
+ 556
+ 759
+ 7
+
+
+ org.contikios.cooja.plugins.TimeLine
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+
+
+
+ 681.712557066089
+
+ 1804
+ 3
+ 352
+ 0
+ 567
+
+
+ org.contikios.cooja.plugins.RadioLogger
+
+ 150
+
+ false
+ false
+
+ 500
+ 2
+ 546
+ 259
+ 12
+
+
diff --git a/examples/rpl-udp/rpl-udp.csc b/examples/rpl-udp/rpl-udp.csc
new file mode 100644
index 000000000..f2a217a7b
--- /dev/null
+++ b/examples/rpl-udp/rpl-udp.csc
@@ -0,0 +1,286 @@
+
+
+ [APPS_DIR]/mrm
+ [APPS_DIR]/mspsim
+ [APPS_DIR]/avrora
+ [APPS_DIR]/serial_socket
+ [APPS_DIR]/collect-view
+ [APPS_DIR]/powertracker
+
+ RPL-UDP Example
+ generated
+ 5000000
+
+ org.contikios.cooja.radiomediums.UDGM
+ 50.0
+ 50.0
+ 1.0
+ 1.0
+
+
+ 40000
+
+
+ org.contikios.cooja.mspmote.SkyMoteType
+ sky1
+ Sky Mote Type #sky1
+ [CONTIKI_DIR]/examples/rpl-udp/udp-server.c
+ make clean udp-server.sky TARGET=sky
+ [CONTIKI_DIR]/examples/rpl-udp/udp-server.sky
+ org.contikios.cooja.interfaces.Position
+ org.contikios.cooja.interfaces.RimeAddress
+ org.contikios.cooja.interfaces.IPAddress
+ org.contikios.cooja.interfaces.Mote2MoteRelations
+ org.contikios.cooja.interfaces.MoteAttributes
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ org.contikios.cooja.mspmote.interfaces.SkyButton
+ org.contikios.cooja.mspmote.interfaces.SkyFlash
+ org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
+ org.contikios.cooja.mspmote.interfaces.Msp802154Radio
+ org.contikios.cooja.mspmote.interfaces.MspSerial
+ org.contikios.cooja.mspmote.interfaces.SkyLED
+ org.contikios.cooja.mspmote.interfaces.MspDebugOutput
+ org.contikios.cooja.mspmote.interfaces.SkyTemperature
+
+
+ org.contikios.cooja.mspmote.SkyMoteType
+ sky2
+ Sky Mote Type #sky2
+ [CONTIKI_DIR]/examples/rpl-udp/udp-client.c
+ make clean udp-client.sky TARGET=sky
+ [CONTIKI_DIR]/examples/rpl-udp/udp-client.sky
+ org.contikios.cooja.interfaces.Position
+ org.contikios.cooja.interfaces.RimeAddress
+ org.contikios.cooja.interfaces.IPAddress
+ org.contikios.cooja.interfaces.Mote2MoteRelations
+ org.contikios.cooja.interfaces.MoteAttributes
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ org.contikios.cooja.mspmote.interfaces.SkyButton
+ org.contikios.cooja.mspmote.interfaces.SkyFlash
+ org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
+ org.contikios.cooja.mspmote.interfaces.Msp802154Radio
+ org.contikios.cooja.mspmote.interfaces.MspSerial
+ org.contikios.cooja.mspmote.interfaces.SkyLED
+ org.contikios.cooja.mspmote.interfaces.MspDebugOutput
+ org.contikios.cooja.mspmote.interfaces.SkyTemperature
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 30.051578821079996
+ -64.69428746901113
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 1
+
+ sky1
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 21.31366587648077
+ -34.91404431659299
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 2
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 57.165216906562264
+ -34.02362118358309
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 3
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 75.1786320042507
+ -60.441618586411096
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 4
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 59.11488934836
+ -7.544844766953879
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 5
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 91.720430365082
+ -22.736406051209734
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 6
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 92.90372351580778
+ 2.532304558933846
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 7
+
+ sky2
+
+
+
+
+ org.contikios.cooja.interfaces.Position
+ 120.28246466847423
+ 19.133402903417824
+ 0.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspClock
+ 1.0
+
+
+ org.contikios.cooja.mspmote.interfaces.MspMoteID
+ 8
+
+ sky2
+
+
+
+ org.contikios.cooja.plugins.SimControl
+ 249
+ 4
+ 184
+ 3
+ 15
+
+
+ org.contikios.cooja.plugins.Visualizer
+
+ org.contikios.cooja.plugins.skins.IDVisualizerSkin
+ org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
+ org.contikios.cooja.plugins.skins.AttributeVisualizerSkin
+ 1.3598488697820064 0.0 0.0 1.3598488697820064 6.142207908179105 118.20877091196155
+
+ 234
+ 1
+ 227
+ 14
+ 210
+
+
+ org.contikios.cooja.plugins.LogListener
+
+
+
+
+
+ 1011
+ 0
+ 556
+ 759
+ 7
+
+
+ org.contikios.cooja.plugins.TimeLine
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+
+
+
+ 681.712557066089
+
+ 1804
+ 3
+ 352
+ 0
+ 567
+
+
+ org.contikios.cooja.plugins.RadioLogger
+
+ 150
+
+ false
+ false
+
+ 500
+ 2
+ 546
+ 259
+ 12
+
+
+
diff --git a/examples/rpl-udp/udp-client-packet-debug.c b/examples/rpl-udp/udp-client-packet-debug.c
new file mode 100644
index 000000000..032075060
--- /dev/null
+++ b/examples/rpl-udp/udp-client-packet-debug.c
@@ -0,0 +1,110 @@
+#include "contiki.h"
+#include "rpl.h"
+#include "random.h"
+#include "net/netstack.h"
+#include "net/ipv6/simple-udp.h"
+#include "net/ipv6/uipbuf.h"
+
+#include "sys/log.h"
+#define LOG_MODULE "App"
+#define LOG_LEVEL LOG_LEVEL_INFO
+
+#define WITH_SERVER_REPLY 1
+#define UDP_CLIENT_PORT 8765
+#define UDP_SERVER_PORT 5678
+
+static struct simple_udp_connection udp_conn;
+
+#define START_INTERVAL (15 * CLOCK_SECOND)
+#define SEND_INTERVAL (60 * CLOCK_SECOND)
+
+#define UIP_IP_BUF ((struct uip_ip_hdr *)&uip_buf[UIP_LLH_LEN])
+
+static struct simple_udp_connection udp_conn;
+static uip_ipaddr_t server_ipaddr;
+
+/*---------------------------------------------------------------------------*/
+PROCESS(udp_client_process, "UDP client -- packet debug");
+AUTOSTART_PROCESSES(&udp_client_process);
+/*---------------------------------------------------------------------------*/
+static enum netstack_ip_action
+ip_input(void)
+{
+ uint8_t proto = 0;
+ uipbuf_get_last_header(uip_buf, uip_len, &proto);
+ LOG_INFO("Incoming packet proto: %d from ", proto);
+ LOG_INFO_6ADDR(&UIP_IP_BUF->srcipaddr);
+ LOG_INFO_("\n");
+ return NETSTACK_IP_PROCESS;
+}
+/*---------------------------------------------------------------------------*/
+static enum netstack_ip_action
+ip_output(const linkaddr_t *localdest)
+{
+ uint8_t proto;
+ uint8_t is_me = 0;
+ uipbuf_get_last_header(uip_buf, uip_len, &proto);
+ is_me = uip_ds6_is_my_addr(&UIP_IP_BUF->srcipaddr);
+ LOG_INFO("Outgoing packet (%s) proto: %d to ", is_me ? "send" : "fwd ", proto);
+ LOG_INFO_6ADDR(&UIP_IP_BUF->destipaddr);
+ LOG_INFO_("\n");
+ return NETSTACK_IP_PROCESS;
+}
+/*---------------------------------------------------------------------------*/
+struct netstack_ip_packet_processor packet_processor = {
+ .process_input = ip_input,
+ .process_output = ip_output
+};
+/*---------------------------------------------------------------------------*/
+static void
+udp_rx_callback(struct simple_udp_connection *c,
+ const uip_ipaddr_t *sender_addr,
+ uint16_t sender_port,
+ const uip_ipaddr_t *receiver_addr,
+ uint16_t receiver_port,
+ const uint8_t *data,
+ uint16_t datalen)
+{
+ unsigned count = *(unsigned *)data;
+ LOG_INFO("Received response %u from ", count);
+ LOG_INFO_6ADDR(sender_addr);
+ LOG_INFO_("\n");
+}
+/*---------------------------------------------------------------------------*/
+PROCESS_THREAD(udp_client_process, ev, data)
+{
+ static struct etimer periodic_timer;
+ static unsigned count;
+
+ PROCESS_BEGIN();
+
+ INIT_SERVER_IPADDR(server_ipaddr);
+ /* Initialize UDP connection */
+ simple_udp_register(&udp_conn, UDP_CLIENT_PORT, NULL,
+ UDP_SERVER_PORT, udp_rx_callback);
+
+ /* register packet processor */
+ netstack_ip_packet_processor_add(&packet_processor);
+
+ etimer_set(&periodic_timer, random_rand() % SEND_INTERVAL);
+ PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&periodic_timer));
+ etimer_set(&periodic_timer, SEND_INTERVAL);
+ while(1) {
+ PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&periodic_timer));
+
+ if(rpl_is_reachable()) {
+ LOG_INFO("Sending request %u to ", count);
+ LOG_INFO_6ADDR(&server_ipaddr);
+ LOG_INFO_("\n");
+ simple_udp_sendto(&udp_conn, &count, sizeof(count), &server_ipaddr);
+ count++;
+ } else {
+ LOG_INFO("Not reachable yet %p\n", rpl_get_any_dag());
+ }
+
+ etimer_reset(&periodic_timer);
+ }
+
+ PROCESS_END();
+}
+/*---------------------------------------------------------------------------*/
diff --git a/examples/rpl-udp/udp-client.c b/examples/rpl-udp/udp-client.c
new file mode 100644
index 000000000..c3dd7ba7e
--- /dev/null
+++ b/examples/rpl-udp/udp-client.c
@@ -0,0 +1,75 @@
+#include "contiki.h"
+#include "rpl.h"
+#include "random.h"
+#include "net/netstack.h"
+#include "net/ipv6/simple-udp.h"
+
+#include "sys/log.h"
+#define LOG_MODULE "App"
+#define LOG_LEVEL LOG_LEVEL_INFO
+
+#define WITH_SERVER_REPLY 1
+#define UDP_CLIENT_PORT 8765
+#define UDP_SERVER_PORT 5678
+
+static struct simple_udp_connection udp_conn;
+
+#define START_INTERVAL (15 * CLOCK_SECOND)
+#define SEND_INTERVAL (60 * CLOCK_SECOND)
+
+static struct simple_udp_connection udp_conn;
+static uip_ipaddr_t server_ipaddr;
+
+/*---------------------------------------------------------------------------*/
+PROCESS(udp_client_process, "UDP client");
+AUTOSTART_PROCESSES(&udp_client_process);
+/*---------------------------------------------------------------------------*/
+static void
+udp_rx_callback(struct simple_udp_connection *c,
+ const uip_ipaddr_t *sender_addr,
+ uint16_t sender_port,
+ const uip_ipaddr_t *receiver_addr,
+ uint16_t receiver_port,
+ const uint8_t *data,
+ uint16_t datalen)
+{
+ unsigned count = *(unsigned *)data;
+ LOG_INFO("Received response %u from ", count);
+ LOG_INFO_6ADDR(sender_addr);
+ LOG_INFO_("\n");
+}
+/*---------------------------------------------------------------------------*/
+PROCESS_THREAD(udp_client_process, ev, data)
+{
+ static struct etimer periodic_timer;
+ static unsigned count;
+
+ PROCESS_BEGIN();
+
+ INIT_SERVER_IPADDR(server_ipaddr);
+ /* Initialize UDP connection */
+ simple_udp_register(&udp_conn, UDP_CLIENT_PORT, NULL,
+ UDP_SERVER_PORT, udp_rx_callback);
+
+ etimer_set(&periodic_timer, random_rand() % SEND_INTERVAL);
+ PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&periodic_timer));
+ etimer_set(&periodic_timer, SEND_INTERVAL);
+ while(1) {
+ PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&periodic_timer));
+
+ if(rpl_is_reachable()) {
+ LOG_INFO("Sending request %u to ", count);
+ LOG_INFO_6ADDR(&server_ipaddr);
+ LOG_INFO_("\n");
+ simple_udp_sendto(&udp_conn, &count, sizeof(count), &server_ipaddr);
+ count++;
+ } else {
+ LOG_INFO("Not reachable yet %p\n", rpl_get_any_dag());
+ }
+
+ etimer_reset(&periodic_timer);
+ }
+
+ PROCESS_END();
+}
+/*---------------------------------------------------------------------------*/
diff --git a/examples/rpl-udp/udp-server.c b/examples/rpl-udp/udp-server.c
new file mode 100644
index 000000000..95bf29f37
--- /dev/null
+++ b/examples/rpl-udp/udp-server.c
@@ -0,0 +1,105 @@
+/*
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the Institute nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * This file is part of the Contiki operating system.
+ *
+ */
+
+#include "contiki.h"
+#include "rpl.h"
+#include "rpl-dag-root.h"
+#include "net/netstack.h"
+#include "net/ipv6/simple-udp.h"
+
+#include "sys/log.h"
+#define LOG_MODULE "App"
+#define LOG_LEVEL LOG_LEVEL_INFO
+
+#define WITH_SERVER_REPLY 1
+#define UDP_CLIENT_PORT 8765
+#define UDP_SERVER_PORT 5678
+
+static struct simple_udp_connection udp_conn;
+
+PROCESS(udp_server_process, "UDP server");
+AUTOSTART_PROCESSES(&udp_server_process);
+/*---------------------------------------------------------------------------*/
+static void
+udp_rx_callback(struct simple_udp_connection *c,
+ const uip_ipaddr_t *sender_addr,
+ uint16_t sender_port,
+ const uip_ipaddr_t *receiver_addr,
+ uint16_t receiver_port,
+ const uint8_t *data,
+ uint16_t datalen)
+{
+ unsigned count = *(unsigned *)data;
+ LOG_INFO("Received request %u from ", count);
+ LOG_INFO_6ADDR(sender_addr);
+ LOG_INFO_("\n");
+#if WITH_SERVER_REPLY
+ LOG_INFO("Sending reply %u to ", count);
+ LOG_INFO_6ADDR(sender_addr);
+ LOG_INFO_("\n");
+ simple_udp_sendto(&udp_conn, &count, sizeof(count), sender_addr);
+#endif /* WITH_SERVER_REPLY */
+}
+/*---------------------------------------------------------------------------*/
+PROCESS_THREAD(udp_server_process, ev, data)
+{
+ uip_ipaddr_t ipaddr;
+ uip_ds6_addr_t *link_local_addr;
+
+ PROCESS_BEGIN();
+
+ /* Initialize Global address */
+ INIT_SERVER_IPADDR(ipaddr);
+ LOG_INFO("Global IPv6 address: ");
+ LOG_INFO_6ADDR(&ipaddr);
+ LOG_INFO_("\n");
+
+ /* Get link-local address */
+ link_local_addr = uip_ds6_get_link_local(-1);
+ if(link_local_addr == NULL) {
+ LOG_ERR("No link-local address\n");
+ PROCESS_EXIT();
+ }
+ if(memcmp(((uint8_t*)&link_local_addr->ipaddr + 8),
+ ((uint8_t*)&ipaddr + 8), 8)) {
+ LOG_ERR("Global IPv6 address does not match link-local IPv6 address\n");
+ PROCESS_EXIT();
+ }
+
+ /* Initialize DAG root */
+ rpl_dag_root_init(&ipaddr, &ipaddr);
+ rpl_dag_root_init_dag_immediately();
+
+ /* Initialize UDP connection */
+ simple_udp_register(&udp_conn, UDP_SERVER_PORT, NULL,
+ UDP_CLIENT_PORT, udp_rx_callback);
+
+ PROCESS_END();
+}
+/*---------------------------------------------------------------------------*/
diff --git a/examples/ipv6/slip-radio/Makefile b/examples/slip-radio/Makefile
similarity index 96%
rename from examples/ipv6/slip-radio/Makefile
rename to examples/slip-radio/Makefile
index f5e3ffac6..f4bd8ca35 100644
--- a/examples/ipv6/slip-radio/Makefile
+++ b/examples/slip-radio/Makefile
@@ -6,7 +6,7 @@ ifeq ($(TARGET),)
-include Makefile.target
endif
-CONTIKI=../../..
+CONTIKI=../..
PROJECT_SOURCEFILES += slip-net.c
ifeq ($(TARGET),sky)
diff --git a/examples/ipv6/slip-radio/README.md b/examples/slip-radio/README.md
similarity index 100%
rename from examples/ipv6/slip-radio/README.md
rename to examples/slip-radio/README.md
diff --git a/examples/ipv6/slip-radio/project-conf.h b/examples/slip-radio/project-conf.h
similarity index 100%
rename from examples/ipv6/slip-radio/project-conf.h
rename to examples/slip-radio/project-conf.h
diff --git a/examples/ipv6/slip-radio/slip-net.c b/examples/slip-radio/slip-net.c
similarity index 100%
rename from examples/ipv6/slip-radio/slip-net.c
rename to examples/slip-radio/slip-net.c
diff --git a/examples/ipv6/slip-radio/slip-radio-cc2420.c b/examples/slip-radio/slip-radio-cc2420.c
similarity index 100%
rename from examples/ipv6/slip-radio/slip-radio-cc2420.c
rename to examples/slip-radio/slip-radio-cc2420.c
diff --git a/examples/ipv6/slip-radio/slip-radio-mc1322x.c b/examples/slip-radio/slip-radio-mc1322x.c
similarity index 100%
rename from examples/ipv6/slip-radio/slip-radio-mc1322x.c
rename to examples/slip-radio/slip-radio-mc1322x.c
diff --git a/examples/ipv6/slip-radio/slip-radio-rf230.c b/examples/slip-radio/slip-radio-rf230.c
similarity index 100%
rename from examples/ipv6/slip-radio/slip-radio-rf230.c
rename to examples/slip-radio/slip-radio-rf230.c
diff --git a/examples/ipv6/slip-radio/slip-radio-sky-sensors.c b/examples/slip-radio/slip-radio-sky-sensors.c
similarity index 100%
rename from examples/ipv6/slip-radio/slip-radio-sky-sensors.c
rename to examples/slip-radio/slip-radio-sky-sensors.c
diff --git a/examples/ipv6/slip-radio/slip-radio.c b/examples/slip-radio/slip-radio.c
similarity index 100%
rename from examples/ipv6/slip-radio/slip-radio.c
rename to examples/slip-radio/slip-radio.c
diff --git a/examples/ipv6/slip-radio/slip-radio.h b/examples/slip-radio/slip-radio.h
similarity index 100%
rename from examples/ipv6/slip-radio/slip-radio.h
rename to examples/slip-radio/slip-radio.h
diff --git a/examples/antelope/shell/Makefile b/examples/storage/antelope-shell/Makefile
similarity index 100%
rename from examples/antelope/shell/Makefile
rename to examples/storage/antelope-shell/Makefile
diff --git a/examples/antelope/shell/shell-db.c b/examples/storage/antelope-shell/shell-db.c
similarity index 100%
rename from examples/antelope/shell/shell-db.c
rename to examples/storage/antelope-shell/shell-db.c
diff --git a/examples/cfs-coffee/Makefile b/examples/storage/cfs-coffee/Makefile
similarity index 85%
rename from examples/cfs-coffee/Makefile
rename to examples/storage/cfs-coffee/Makefile
index a042a1150..4d27d6f8f 100644
--- a/examples/cfs-coffee/Makefile
+++ b/examples/storage/cfs-coffee/Makefile
@@ -1,4 +1,4 @@
-CONTIKI = ../..
+CONTIKI = ../../..
MODULES += os/services/unit-test
diff --git a/examples/cfs-coffee/README.md b/examples/storage/cfs-coffee/README.md
similarity index 100%
rename from examples/cfs-coffee/README.md
rename to examples/storage/cfs-coffee/README.md
diff --git a/examples/cfs-coffee/example-coffee.c b/examples/storage/cfs-coffee/example-coffee.c
similarity index 100%
rename from examples/cfs-coffee/example-coffee.c
rename to examples/storage/cfs-coffee/example-coffee.c
diff --git a/examples/cfs-coffee/project-conf.h b/examples/storage/cfs-coffee/project-conf.h
similarity index 100%
rename from examples/cfs-coffee/project-conf.h
rename to examples/storage/cfs-coffee/project-conf.h
diff --git a/examples/cfs-coffee/test-cfs.c b/examples/storage/cfs-coffee/test-cfs.c
similarity index 100%
rename from examples/cfs-coffee/test-cfs.c
rename to examples/storage/cfs-coffee/test-cfs.c
diff --git a/examples/cfs-coffee/test-coffee.c b/examples/storage/cfs-coffee/test-coffee.c
similarity index 100%
rename from examples/cfs-coffee/test-coffee.c
rename to examples/storage/cfs-coffee/test-coffee.c
diff --git a/examples/eeprom-test/Makefile b/examples/storage/eeprom-test/Makefile
similarity index 75%
rename from examples/eeprom-test/Makefile
rename to examples/storage/eeprom-test/Makefile
index 46c909138..343a62165 100644
--- a/examples/eeprom-test/Makefile
+++ b/examples/storage/eeprom-test/Makefile
@@ -1,6 +1,5 @@
CONTIKI_PROJECT = eeprom-test
+CONTIKI = ../../..
all: $(CONTIKI_PROJECT)
-TARGET=mbxxx
-CONTIKI = ../..
include $(CONTIKI)/Makefile.include
diff --git a/examples/eeprom-test/eeprom-test.c b/examples/storage/eeprom-test/eeprom-test.c
similarity index 100%
rename from examples/eeprom-test/eeprom-test.c
rename to examples/storage/eeprom-test/eeprom-test.c
diff --git a/os/net/rpl-lite/rpl-dag.c b/os/net/rpl-lite/rpl-dag.c
index 6db878844..36373dfb1 100644
--- a/os/net/rpl-lite/rpl-dag.c
+++ b/os/net/rpl-lite/rpl-dag.c
@@ -536,7 +536,7 @@ process_dio_init_dag(uip_ipaddr_t *from, rpl_dio_t *dio)
LOG_ANNOTATE("#A init=%u\n", curr_instance.dag.dag_id.u8[sizeof(curr_instance.dag.dag_id) - 1]);
- LOG_WARN_("just joined, no parent yet, setting timer for leaving\n");
+ LOG_WARN("just joined, no parent yet, setting timer for leaving\n");
rpl_timers_schedule_leaving();
return 1;
diff --git a/tests/01-compile-base/Makefile b/tests/01-compile-base/Makefile
index f59d80c14..9054a3560 100644
--- a/tests/01-compile-base/Makefile
+++ b/tests/01-compile-base/Makefile
@@ -4,11 +4,11 @@ TOOLSDIR=../../tools
EXAMPLES = \
hello-world/native \
hello-world/sky \
-eeprom-test/native \
-ipv6/multicast/sky \
-logging/native \
-ipv6/rpl-udp/sky \
-ipv6/rpl-simple/sky \
+storage/eeprom-test/native \
+multicast/sky \
+libs/logging/native \
+rpl-udp/sky \
+native-border-router/native \
TOOLS=
diff --git a/tests/02-compile-arm-ports/Makefile b/tests/02-compile-arm-ports/Makefile
index 805a98ff4..ab20dbb57 100644
--- a/tests/02-compile-arm-ports/Makefile
+++ b/tests/02-compile-arm-ports/Makefile
@@ -12,13 +12,11 @@ platform-specific/cc26xx/cc26xx-web-demo/srf06-cc26xx:BOARD=launchpad/cc1310 \
platform-specific/cc26xx/cc26xx-web-demo/srf06-cc26xx:BOARD=launchpad/cc1350 \
platform-specific/cc26xx/very-sleepy-demo/srf06-cc26xx \
hello-world/cc2538dk \
-ipv6/rpl-border-router/cc2538dk \
-ipv6/rpl-udp/cc2538dk \
-ipv6/rpl-simple/cc2538dk \
-ipv6/coap-example/cc2538dk \
+rpl-border-router/cc2538dk \
+rpl-udp/cc2538dk \
+coap-example/cc2538dk \
ipso-objects/cc2538dk \
-platform-specific/cc2538dk/udp-ipv6-echo-server/cc2538dk \
-ipv6/multicast/cc2538dk \
+multicast/cc2538dk \
platform-specific/cc2538-common/cc2538dk \
platform-specific/cc2538-common/mqtt-demo/cc2538dk \
platform-specific/cc2538-common/crypto/cc2538dk \
@@ -28,7 +26,7 @@ platform-specific/cc2538-common/mqtt-demo/zoul \
platform-specific/cc2538-common/crypto/zoul \
platform-specific/cc2538-common/pka/zoul \
platform-specific/zoul/orion/ip64-router/zoul:BOARD=orion \
-ipv6/coap-example/zoul \
+coap-example/zoul \
ipso-objects/zoul \
hello-world/zoul \
sensniff/cc2538dk \
@@ -37,15 +35,24 @@ sensniff/zoul \
sensniff/zoul:ZOUL_CONF_SUB_GHZ_SNIFFER=1 \
sensniff/srf06-cc26xx \
sensniff/srf06-cc26xx:BOARD=launchpad/cc1310 \
-cfs-coffee/cc2538dk \
-cfs-coffee/openmote-cc2538 \
-cfs-coffee/zoul \
-ipv6/rpl-tsch/zoul \
-ipv6/rpl-tsch/zoul:MAKE_WITH_ORCHESTRA=1 \
-ipv6/rpl-tsch/zoul:MAKE_WITH_SECURITY=1 \
-logging/zoul \
+storage/cfs-coffee/cc2538dk \
+storage/cfs-coffee/openmote-cc2538 \
+storage/cfs-coffee/zoul \
+storage/antelope-shell/zoul \
+6tisch/simple-node/zoul \
+6tisch/simple-node/zoul:MAKE_WITH_ORCHESTRA=1 \
+6tisch/simple-node/zoul:MAKE_WITH_SECURITY=1 \
+libs/logging/zoul \
6tisch/etsi-plugtest-2017/zoul:BOARD=remote \
-6tisch/etsi-plugtest-2017/srf06-cc26xx:BOARD=launchpad/cc2650
+6tisch/etsi-plugtest-2017/srf06-cc26xx:BOARD=launchpad/cc2650 \
+6tisch/6p-packet/zoul \
+6tisch/sixtop/zoul \
+http-socket/zoul \
+libs/timers/zoul \
+libs/trickle-library/zoul \
+nullnet/zoul \
+slip-radio/zoul \
+
TOOLS=
diff --git a/tests/03-compile-nxp-ports/Makefile b/tests/03-compile-nxp-ports/Makefile
index 0672f9786..782ca92d2 100644
--- a/tests/03-compile-nxp-ports/Makefile
+++ b/tests/03-compile-nxp-ports/Makefile
@@ -16,10 +16,10 @@ platform-specific/jn516x/tsch/simple-sensor-network/rpl-border-router/jn516x \
platform-specific/jn516x/tsch/tx-power-verification/rpl-border-router/jn516x \
platform-specific/jn516x/tsch/uart1-test-node/jn516x \
sensniff/jn516x \
-ipv6/rpl-tsch/jn516x \
-ipv6/rpl-tsch/jn516x:MAKE_WITH_ORCHESTRA=1 \
-ipv6/rpl-tsch/jn516x:MAKE_WITH_SECURITY=1 \
-logging/jn516x \
+6tisch/simple-node/jn516x \
+6tisch/simple-node/jn516x:MAKE_WITH_ORCHESTRA=1 \
+6tisch/simple-node/jn516x:MAKE_WITH_SECURITY=1 \
+libs/logging/jn516x \
6tisch/etsi-plugtest-2017/jn516x
TOOLS=
diff --git a/tests/04-compile-nrf52-ports/Makefile b/tests/04-compile-nrf52-ports/Makefile
index f3448450c..7f4ad4f2d 100644
--- a/tests/04-compile-nrf52-ports/Makefile
+++ b/tests/04-compile-nrf52-ports/Makefile
@@ -13,7 +13,7 @@ platform-specific/nrf52dk/coap-demo/nrf52dk:coap-client:SERVER_IPV6_ADDR=ffff \
platform-specific/nrf52dk/mqtt-demo/nrf52dk \
platform-specific/nrf52dk/blink-hello/nrf52dk \
platform-specific/nrf52dk/timer-test/nrf52dk \
-logging/nrf52dk
+libs/logging/nrf52dk
TOOLS=
diff --git a/tests/08-ipv6/01-cooja-ipv6-udp.csc b/tests/08-ipv6/01-cooja-ipv6-udp.csc
deleted file mode 100644
index f1103317c..000000000
--- a/tests/08-ipv6/01-cooja-ipv6-udp.csc
+++ /dev/null
@@ -1,183 +0,0 @@
-
-
- [APPS_DIR]/mrm
- [APPS_DIR]/mspsim
- [APPS_DIR]/avrora
- [APPS_DIR]/serial_socket
- [APPS_DIR]/collect-view
- [APPS_DIR]/powertracker
-
- My simulation
- generated
- 1000000
-
- org.contikios.cooja.radiomediums.UDGM
- 50.0
- 100.0
- 1.0
- 1.0
-
-
- 40000
-
-
- org.contikios.cooja.contikimote.ContikiMoteType
- mtype350
- Receiver
- [CONTIKI_DIR]/examples/ipv6/udp-ipv6/udp-server.c
- make TARGET=cooja clean
-make udp-server.cooja TARGET=cooja
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.Battery
- org.contikios.cooja.contikimote.interfaces.ContikiVib
- org.contikios.cooja.contikimote.interfaces.ContikiMoteID
- org.contikios.cooja.contikimote.interfaces.ContikiRS232
- org.contikios.cooja.contikimote.interfaces.ContikiBeeper
- org.contikios.cooja.contikimote.interfaces.ContikiIPAddress
- org.contikios.cooja.contikimote.interfaces.ContikiRadio
- org.contikios.cooja.contikimote.interfaces.ContikiButton
- org.contikios.cooja.contikimote.interfaces.ContikiPIR
- org.contikios.cooja.contikimote.interfaces.ContikiClock
- org.contikios.cooja.contikimote.interfaces.ContikiLED
- org.contikios.cooja.contikimote.interfaces.ContikiCFS
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.MoteAttributes
- false
-
-
- org.contikios.cooja.contikimote.ContikiMoteType
- mtype981
- Sender
- [CONTIKI_DIR]/examples/ipv6/udp-ipv6/udp-client.c
- make udp-client.cooja TARGET=cooja
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.Battery
- org.contikios.cooja.contikimote.interfaces.ContikiVib
- org.contikios.cooja.contikimote.interfaces.ContikiMoteID
- org.contikios.cooja.contikimote.interfaces.ContikiRS232
- org.contikios.cooja.contikimote.interfaces.ContikiBeeper
- org.contikios.cooja.contikimote.interfaces.ContikiIPAddress
- org.contikios.cooja.contikimote.interfaces.ContikiRadio
- org.contikios.cooja.contikimote.interfaces.ContikiButton
- org.contikios.cooja.contikimote.interfaces.ContikiPIR
- org.contikios.cooja.contikimote.interfaces.ContikiClock
- org.contikios.cooja.contikimote.interfaces.ContikiLED
- org.contikios.cooja.contikimote.interfaces.ContikiCFS
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.MoteAttributes
- false
-
-
-
- org.contikios.cooja.interfaces.Position
- 98.76075470611741
- 30.469519951198897
- 0.0
-
-
- org.contikios.cooja.contikimote.interfaces.ContikiMoteID
- 1
-
-
- org.contikios.cooja.contikimote.interfaces.ContikiRadio
- 250.0
-
- mtype350
-
-
-
- org.contikios.cooja.interfaces.Position
- 58.59043340181549
- 22.264557758786697
- 0.0
-
-
- org.contikios.cooja.contikimote.interfaces.ContikiMoteID
- 2
-
-
- org.contikios.cooja.contikimote.interfaces.ContikiRadio
- 250.0
-
- mtype981
-
-
-
- org.contikios.cooja.plugins.SimControl
- 248
- 2
- 200
- 0
- 0
-
-
- org.contikios.cooja.plugins.LogListener
-
- ID:1
-
-
-
- 851
- 1
- 187
- 1
- 521
-
-
- org.contikios.cooja.plugins.Visualizer
-
- org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
- org.contikios.cooja.plugins.skins.IDVisualizerSkin
- org.contikios.cooja.plugins.skins.TrafficVisualizerSkin
- 2.565713585691764 0.0 0.0 2.565713585691764 -91.30090099174814 -28.413835696190525
-
- 246
- 3
- 121
- 1
- 201
-
-
- org.contikios.cooja.plugins.RadioLogger
-
- 133
-
- false
- false
-
- 246
- 4
- 198
- 0
- 323
-
-
- org.contikios.cooja.plugins.ScriptRunner
-
-
- true
-
- 600
- 0
- 520
- 250
- -1
-
-
-
diff --git a/tests/08-ipv6/02-sky-slip-radio.csc b/tests/08-ipv6/02-sky-slip-radio.csc
index 3d205c2d7..35f4c95ac 100644
--- a/tests/08-ipv6/02-sky-slip-radio.csc
+++ b/tests/08-ipv6/02-sky-slip-radio.csc
@@ -24,9 +24,9 @@
se.sics.cooja.mspmote.SkyMoteType
sky1
slip radio
- [CONTIKI_DIR]/examples/ipv6/slip-radio/slip-radio.c
+ [CONTIKI_DIR]/examples/slip-radio/slip-radio.c
make slip-radio.sky TARGET=sky
- [CONTIKI_DIR]/examples/ipv6/slip-radio/slip-radio.sky
+ [CONTIKI_DIR]/examples/slip-radio/slip-radio.sky
se.sics.cooja.interfaces.Position
se.sics.cooja.interfaces.RimeAddress
se.sics.cooja.interfaces.IPAddress
diff --git a/tests/08-ipv6/15-cooja-multicast-11-hops-rollt-tm.csc b/tests/08-ipv6/15-cooja-multicast-11-hops-rollt-tm.csc
index c9bdd16be..8fdc9fcd9 100644
--- a/tests/08-ipv6/15-cooja-multicast-11-hops-rollt-tm.csc
+++ b/tests/08-ipv6/15-cooja-multicast-11-hops-rollt-tm.csc
@@ -24,7 +24,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype612
Root/sender
- [CONTIKI_DIR]/examples/ipv6/multicast/root.c
+ [CONTIKI_DIR]/examples/multicast/root.c
make root.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_ROLL_TM
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
@@ -48,7 +48,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype890
Intermediate
- [CONTIKI_DIR]/examples/ipv6/multicast/intermediate.c
+ [CONTIKI_DIR]/examples/multicast/intermediate.c
make intermediate.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_ROLL_TM
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
@@ -72,7 +72,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype956
Receiver
- [CONTIKI_DIR]/examples/ipv6/multicast/sink.c
+ [CONTIKI_DIR]/examples/multicast/sink.c
make sink.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_ROLL_TM
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
diff --git a/tests/08-ipv6/16-cooja-multicast-11-hops-smrf.csc b/tests/08-ipv6/16-cooja-multicast-11-hops-smrf.csc
index 8ee4053bd..c99541032 100644
--- a/tests/08-ipv6/16-cooja-multicast-11-hops-smrf.csc
+++ b/tests/08-ipv6/16-cooja-multicast-11-hops-smrf.csc
@@ -24,7 +24,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype612
Root/sender
- [CONTIKI_DIR]/examples/ipv6/multicast/root.c
+ [CONTIKI_DIR]/examples/multicast/root.c
make root.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_SMRF
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
@@ -48,7 +48,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype890
Intermediate
- [CONTIKI_DIR]/examples/ipv6/multicast/intermediate.c
+ [CONTIKI_DIR]/examples/multicast/intermediate.c
make intermediate.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_SMRF
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
@@ -72,7 +72,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype956
Receiver
- [CONTIKI_DIR]/examples/ipv6/multicast/sink.c
+ [CONTIKI_DIR]/examples/multicast/sink.c
make sink.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_SMRF
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
diff --git a/tests/08-ipv6/17-cooja-multicast-11-hops-esmrf.csc b/tests/08-ipv6/17-cooja-multicast-11-hops-esmrf.csc
index ea64b23e0..6c68043d1 100644
--- a/tests/08-ipv6/17-cooja-multicast-11-hops-esmrf.csc
+++ b/tests/08-ipv6/17-cooja-multicast-11-hops-esmrf.csc
@@ -24,7 +24,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype612
Root/sender
- [CONTIKI_DIR]/examples/ipv6/multicast/root.c
+ [CONTIKI_DIR]/examples/multicast/root.c
make root.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_ESMRF
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
@@ -48,7 +48,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype890
Intermediate
- [CONTIKI_DIR]/examples/ipv6/multicast/intermediate.c
+ [CONTIKI_DIR]/examples/multicast/intermediate.c
make intermediate.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_ESMRF
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
@@ -72,7 +72,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype956
Receiver
- [CONTIKI_DIR]/examples/ipv6/multicast/sink.c
+ [CONTIKI_DIR]/examples/multicast/sink.c
make sink.cooja TARGET=cooja DEFINES=UIP_MCAST6_CONF_ENGINE=UIP_MCAST6_ENGINE_ESMRF
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
diff --git a/tests/08-ipv6/18-cooja-multicast-31-hops.csc b/tests/08-ipv6/18-cooja-multicast-31-hops.csc
index 27321d624..1da00d7cf 100644
--- a/tests/08-ipv6/18-cooja-multicast-31-hops.csc
+++ b/tests/08-ipv6/18-cooja-multicast-31-hops.csc
@@ -24,7 +24,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype816
Root/sender
- [CONTIKI_DIR]/examples/ipv6/multicast/root.c
+ [CONTIKI_DIR]/examples/multicast/root.c
make root.cooja TARGET=cooja
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
@@ -48,7 +48,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype53
Intermediate
- [CONTIKI_DIR]/examples/ipv6/multicast/intermediate.c
+ [CONTIKI_DIR]/examples/multicast/intermediate.c
make intermediate.cooja TARGET=cooja
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
@@ -72,7 +72,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype191
Receiver
- [CONTIKI_DIR]/examples/ipv6/multicast/sink.c
+ [CONTIKI_DIR]/examples/multicast/sink.c
make sink.cooja TARGET=cooja
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
diff --git a/tests/08-ipv6/19-cooja-rpl-tsch.csc b/tests/08-ipv6/19-cooja-rpl-tsch.csc
index 97f4dd798..694d9a0c1 100644
--- a/tests/08-ipv6/19-cooja-rpl-tsch.csc
+++ b/tests/08-ipv6/19-cooja-rpl-tsch.csc
@@ -24,7 +24,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype1
Cooja Mote Type #mtype1
- [CONTIKI_DIR]/examples/ipv6/rpl-tsch/node.c
+ [CONTIKI_DIR]/examples/6tisch/simple-node/node.c
make TARGET=cooja clean
make node.cooja TARGET=cooja MAKE_WITH_ORCHESTRA=0 MAKE_WITH_SECURITY=0 MAKE_WITH_PERIODIC_ROUTES_PRINT=1
org.contikios.cooja.interfaces.Position
diff --git a/tests/08-ipv6/20-cooja-rpl-tsch-orchestra.csc b/tests/08-ipv6/20-cooja-rpl-tsch-orchestra.csc
index 676d86366..7593ae9b2 100644
--- a/tests/08-ipv6/20-cooja-rpl-tsch-orchestra.csc
+++ b/tests/08-ipv6/20-cooja-rpl-tsch-orchestra.csc
@@ -24,11 +24,11 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype11
Cooja Mote Type #mtype11
- [CONTIKI_DIR]/examples/ipv6/rpl-tsch/node.c
+ [CONTIKI_DIR]/examples/6tisch/simple-node/node.c
make TARGET=cooja clean
make node.cooja TARGET=cooja MAKE_WITH_ORCHESTRA=1 MAKE_WITH_SECURITY=0 MAKE_WITH_PERIODIC_ROUTES_PRINT=1
[CONTIKI_DIR]/examples/ipv6/rpl-tsch/node.mtype1
+ EXPORT="copy">[CONTIKI_DIR]/examples/6tisch/simple-node/node.mtype1
org.contikios.cooja.interfaces.Position
org.contikios.cooja.interfaces.Battery
org.contikios.cooja.contikimote.interfaces.ContikiVib
diff --git a/tests/08-ipv6/21-cooja-rpl-tsch-security.csc b/tests/08-ipv6/21-cooja-rpl-tsch-security.csc
index ffa370b01..5da4a0f32 100644
--- a/tests/08-ipv6/21-cooja-rpl-tsch-security.csc
+++ b/tests/08-ipv6/21-cooja-rpl-tsch-security.csc
@@ -24,7 +24,7 @@
org.contikios.cooja.contikimote.ContikiMoteType
mtype11
Cooja Mote Type #mtype11
- [CONTIKI_DIR]/examples/ipv6/rpl-tsch/node.c
+ [CONTIKI_DIR]/examples/6tisch/simple-node/node.c
make TARGET=cooja clean
make node.cooja TARGET=cooja MAKE_WITH_ORCHESTRA=0 MAKE_WITH_SECURITY=1 MAKE_WITH_PERIODIC_ROUTES_PRINT=1
org.contikios.cooja.interfaces.Position
diff --git a/tests/08-ipv6/x03-sky-ipv6-udp-fragmentation.csc b/tests/08-ipv6/x03-sky-ipv6-udp-fragmentation.csc
deleted file mode 100644
index a8afc751a..000000000
--- a/tests/08-ipv6/x03-sky-ipv6-udp-fragmentation.csc
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
- [APPS_DIR]/mrm
- [APPS_DIR]/mspsim
- [APPS_DIR]/avrora
- [APPS_DIR]/serial_socket
- [APPS_DIR]/collect-view
- [APPS_DIR]/powertracker
-
- My simulation
- generated
- 1000000
-
- org.contikios.cooja.radiomediums.UDGM
- 50.0
- 100.0
- 1.0
- 1.0
-
-
- 40000
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky1
- UDP client
- [CONTIKI_DIR]/examples/ipv6/udp-ipv6/udp-client.c
- make clean TARGET=sky
-make udp-client.sky TARGET=sky DEFINES=UDP_CONNECTION_ADDR=fe80::212:7402:2:202,SICSLOWPAN_CONF_FRAG=1,SEND_TOO_LARGE_PACKET_TO_TEST_FRAGMENTATION=1
- [CONTIKI_DIR]/examples/ipv6/udp-ipv6/udp-client.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
- org.contikios.cooja.mspmote.SkyMoteType
- sky2
- UDP server
- [CONTIKI_DIR]/examples/ipv6/udp-ipv6/udp-server.c
- make udp-server.sky TARGET=sky DEFINES=SICSLOWPAN_CONF_FRAG=1
- [CONTIKI_DIR]/examples/ipv6/udp-ipv6/udp-server.sky
- org.contikios.cooja.interfaces.Position
- org.contikios.cooja.interfaces.RimeAddress
- org.contikios.cooja.interfaces.IPAddress
- org.contikios.cooja.interfaces.Mote2MoteRelations
- org.contikios.cooja.interfaces.MoteAttributes
- org.contikios.cooja.mspmote.interfaces.MspClock
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- org.contikios.cooja.mspmote.interfaces.SkyButton
- org.contikios.cooja.mspmote.interfaces.SkyFlash
- org.contikios.cooja.mspmote.interfaces.SkyCoffeeFilesystem
- org.contikios.cooja.mspmote.interfaces.Msp802154Radio
- org.contikios.cooja.mspmote.interfaces.MspSerial
- org.contikios.cooja.mspmote.interfaces.SkyLED
- org.contikios.cooja.mspmote.interfaces.MspDebugOutput
- org.contikios.cooja.mspmote.interfaces.SkyTemperature
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 56.49442624080769
- 69.16564756567392
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 1
-
- sky1
-
-
-
-
- org.contikios.cooja.interfaces.Position
- 70.13661699393737
- 61.114518596613784
- 0.0
-
-
- org.contikios.cooja.mspmote.interfaces.MspMoteID
- 2
-
- sky2
-
-
-
- org.contikios.cooja.plugins.SimControl
- 248
- 0
- 200
- 0
- 0
-
-
- org.contikios.cooja.plugins.LogListener
-
-
-
-
-
- 683
- 2
- 550
- 12
- 417
-
-
- org.contikios.cooja.plugins.Visualizer
-
- org.contikios.cooja.plugins.skins.IDVisualizerSkin
- org.contikios.cooja.plugins.skins.AddressVisualizerSkin
- org.contikios.cooja.plugins.skins.UDGMVisualizerSkin
- org.contikios.cooja.plugins.skins.GridVisualizerSkin
- org.contikios.cooja.plugins.skins.MoteTypeVisualizerSkin
- 6.1185311939665725 0.0 0.0 6.1185311939665725 -264.82328143448046 -341.0405575126179
-
- 250
- 3
- 183
- 6
- 214
-
-
- org.contikios.cooja.plugins.ScriptRunner
-
-
- true
-
- 572
- 1
- 552
- 704
- 417
-
-
- org.contikios.cooja.plugins.RadioLogger
-
- 183
-
- false
- false
-
-
- 1008
- 4
- 406
- 261
- 7
-
-
-
diff --git a/tests/scan_build/Makefile b/tests/scan_build/Makefile
index 807bf387c..4add781f1 100644
--- a/tests/scan_build/Makefile
+++ b/tests/scan_build/Makefile
@@ -3,7 +3,7 @@ TOOLSDIR=../../tools
EXAMPLES = \
hello-world/native \
-eeprom-test/native \
+storage/eeprom-test/native \
TOOLS=