问题标签 [contiki-ng]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
244 浏览

iot - Contiki-NG 是否支持 Radio Duty Cycling (RDC)?

我目前正在使用 Contiki-NG 开发一个无线传感器网络项目。但是,我需要添加 Radio Duty Cycling 功能以节省能源。可以使用 Contiki mac 在 Contiki 中添加 RDC。似乎 Contiki-ng 没有 Contiki mac 之类的东西。我在contiki-ng/os/net/mac/中看到的只有 CSMA MAC、BLE MAC、TSCH MAC、NullMAC 和一些共享 MAC 组件。有什么方法可以在 Contiki-NG 上使用 RDC?

0 投票
0 回答
384 浏览

macos - 在 cooja Contiki-ng 问题中构建示例

我通常在 Contiki 中使用 cooja,但是,我想使用 Contiki-ng 测试 RPL。我在我的机器(Mac OS Catalina)上成功安装了 Contiki-ng。当我在终端中构建示例时,它们会成功构建,然后我可以将其作为本机目标实现。但是,当我尝试编译它们以运行 cooja 模拟时,我收到以下错误:

我认为问题出在 msp430 上,但我已安装完毕,但我不知道问题出在哪里。

我也尝试运行 Docker 映像,但由于我对 Docker 很陌生,我无法运行它,因为我不明白这些步骤“准备 contiker 函数,运行 contiker:$ contiker bash”

任何帮助,将不胜感激。

谢谢你。

0 投票
1 回答
399 浏览

contiki - 在 TSCH 时间表上分离 RPL 和应用程序时隙 (Contiki-NG)

我正在尝试构建一个 TSCH 计划,使 RPL 传输到一个时隙,我的应用程序在另一个时隙中传输,有人知道这是否可能吗?

我尝试使用以下函数来安排我的 TSCH slotframe,但目前我无法弄清楚如何让 TSCH 识别 RPL 和应用程序消息。

0 投票
1 回答
102 浏览

macos - 如何在不再存在 RDC 的 Contiki-NG 中以 100% 占空比运行接收器节点

我正在使用 Contiki-NG 开发一个项目。我需要重新创建一种接收器类型的微尘,其中数据接收器以 100% 的占空比运行,以确保高数据包接收率。我从does-contiki-ng-support-radio-duty-cycling-rdc 主题中了解到,RDC 层已经消失,但我不太明白如何解决这个问题。

在项目的先前版本中,使用的代码是:

对 Contiki-NG 有任何帮助吗?

先感谢您。亲切的问候!

0 投票
1 回答
350 浏览

contiki - Contiki-ng:在 Cooja 中嗅探邻居数据包并像普通节点一样响应/发送

我使用 udp-server 和 udp-client 运行 rpl-udp 的示例。我想启用 udp-client 来嗅探来自邻居节点的数据包,但同时让它表现得像一个普通节点。这怎么可能?我添加了 NETSTACK_RADIO.set_value(RADIO_PARAM_RX_MODE, 0) 禁用 RADIO_RX_MODE_ADDRESS_FILTER (使其为 0)但是当我在 Cooja 中模拟时(使用 z1)节点不会嗅探所有数据包。此外,我收到许多重复的警告,如下所示:

是否有任何其他标志允许嗅探所有数据包并减少重复数据包?

谢谢您的帮助!

编辑:我在这里尝试了这个解决方案https://sourceforge.net/p/contiki/mailman/message/34888182/但我面临同样的问题(有很多重传和重复的数据包)。

0 投票
1 回答
432 浏览

ipv6 - 如何在 Contiki-NG 中向邻居发送单播数据包?

在 Contiki-NG 中是否可以使用邻居缓存中的链接地址将自定义数据包从 udp 客户端节点发送到邻居?我正在寻找一种避免发送 icmpv6 数据包的方法,因为它会上升到根,然后根将它发送到目的地。我看到 Contiki 启用了网状拓扑,因此应该可以直接向邻居发送数据包,而无需将数据包转发给父节点。我将不胜感激任何帮助!

0 投票
1 回答
87 浏览

iot - RPL 协议中有多个父级

Contiki-NG 在 RPL 实现中是否支持多个父级?如果是,我该如何启用它?

0 投票
1 回答
179 浏览

c - 不能在 Contiki 中使用 malloc

我正在尝试使用 Contiki-ng 操作系统为物联网平台编写一个简单的程序。第一次测试没问题,但是在尝试分配动态内存时发生了一些奇怪的事情。我正在使用的测试代码如下:

在构建项目时,会出现一个错误,指出“ In function _sbrk_r: undefined reference to _sbrk ”。在互联网上查看了一些论坛后,我设法通过在项目的 Makefile 中包含以下行来解决这个问题:

这解决了这个问题,因为在路径 os/lib/newlib 中有一个文件 syscalls.c,它实现了提到的 _sbrk 函数。但是,现在出现以下错误:

在此处输入图像描述

我没有在互联网上发现任何人有同样的问题,所以我被困在这里。此外,我不知道为什么,但从那时起,从 Makefile 中删除“MODULES += os/lib/newlib”行没有任何作用,_eheap 和 _heap 的问题仍然存在,而不会返回未定义的 _sbrk 错误。但是,我相信这个奇怪的错误是由于 Eclipse IDE 清理项目的问题造成的。如果需要,来自 syscalls.c 的代码如下:

我希望有人能帮助我。我读过 Contiki 提供了更多使用动态内存的方法,但我需要这样做,因为代码的其他部分依赖于 malloc 的使用并且无法更改。

谢谢。

0 投票
1 回答
1168 浏览

java - ant run 命令的 JAVA_HOME 路径

我正在尝试在我的系统中安装 contiki-ng 并且一切进展顺利,直到我尝试ant run在目录中运行命令contiki-ng/tools/cooja,然后我得到以下响应:

我们无法运行 Java,请确保您已安装 Java。
我们试图执行 /usr/lib/jvm/java-11-openjdk-amd64/bin/java/bin/java 但失败了。
如果您在不寻常的地方安装了 Java,您可以将 JAVA_HOME 设置为包含 Java 安装的目录。

我意识到我必须在 .bashrc 文件中更改/usr/lib/jvm/java-11-openjdk-amd64/bin/java/bin/java/usr/lib/jvm/java-11-openjdk-amd64/bin/java(从末尾删除 /bin/java;我复制了错误的路径)。

即使这样做了,我仍然遇到同样的错误。有人可以帮忙吗?

0 投票
1 回答
191 浏览

iot - Contiki-NG 是否支持 Rime 协议,还是有类似的协议?

Contiki OS 支持一系列所谓的 Rime 协议 [ http://contiki.sourceforge.net/docs/2.6/a01798.html ] 其中一个“abc”对于低级收音机来说是理想的测试我的任务是写作。

但是,我必须使用 continiki-ng,并且在研究时我发现,令我惊讶的是,没有提到 Rime 或“abc”协议!

Rime 协议是否已从 contiki-ng 中删除,如果是,是否存在等效的低级协议,用于在指定信道上简单地发送和接收无线电数据包,而无需所有更高的网络层?

如果最坏的情况发生在最坏的情况下,我想我可以使用 UDP。但是为了对我正在使用的物联网设备进行压力测试,我会更喜欢较低级别的协议。