Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Associated JBoss community project(s):


Idea Proposals


Thread support in Drogue IoT

Summary of idea:

The Drogue IoT project aims to support different types of connectivity to Drogue IoT Cloud. Although we have drivers and examples for WiFi, LoRa and Bluetooth LE at present, we would like to
expand support to protocols like Thread. There are several building blocks in Thread that is missing from the Rust ecosystem:


  • 6LoWPAN - One building block for data transport is the 6LoWPAN protocol that maps IPv6 on top of link layers like Bluetooth LE or 802.15.4 (used in Thread)
  • DHCPv6 - A DHCPv6 client is needed in order to configure a Thread device with an IPv6 address
  • DNSv6 - A DNSv6 client is needed for a Thread device to map hostnames to IPv6 addresses

Each of these building blocks are probably a project on its own, so its probably best to focus on one.

Knowledge prerequisite:

  • Embedded programming
  • Basic understanding of network programming
  • Reading protocol specifications
  • Rust (optionally)

Github organization: https://github.com/drogue-iot

Skill level: Intermediate

Project Chat: https://matrix.to/#/#drogue-iot:matrix.org

Contact(s) / potential mentors(s): Ulf Lilleengen (lulf@redhat.com)

Associated JBoss community project(s): Drogue IoT


CoAP protocol support for constrained devices in Rust

Summary of idea:

The Drogue IoT project aims to support different types of connectitiby to Drogue IoT Cloud with examples for embedded devices written in Rust. One such protocol is the Constrained Application Protocol (CoAP).

The goal of this project is to provide a CoAP protocol library that compiles and runs on constrained embedded devices (no_std). It is not expected that the entire protocol spec is supported, having a working CoAP client sending
requests to a cloud server would be a great achievement. Reusing existing open source crates and adopting them to support constrained devices is fine, so the first phase of the project would be to identify potential libraries that could be reused and/or adopted.

Knowledge prerequisite:

  • Embedded programming
  • Basic understanding of network programming
  • Reading protocol specs
  • Rust (optionally)

Github organization: https://github.com/drogue-iot

Skill level: Intermediate

Project Chat: https://matrix.to/#/#drogue-iot:matrix.org

Contact(s) / potential mentors(s): Ulf Lilleengen (lulf@redhat.com)

Associated JBoss community project(s): Drogue IoT


MQTT client support for constrained devices in Rust

Summary of idea:

The Drogue IoT project aims to support different types of connectitiby to Drogue IoT Cloud with examples for embedded devices written in Rust. One such protocol is the MQTT (Message Queuing Telemetry Transport).

The goal of this project is to provide a MQTT client library that compiles and runs on constrained embedded devices (no_std). It is not expected that the entire protocol spec is supported, having a working MQTT client sending
unacked MQTT messages to a MQTT server would be a great achievement. Reusing existing open source crates and adopting them to support constrained devices is fine, so the first phase of the project would be to identify potential libraries that could be reused and/or adopted.

Knowledge prerequisite:

  • Embedded programming
  • Basic understanding of network programming
  • Reading protocol specs
  • Rust (optionally)

Github organization: https://github.com/drogue-iot

Skill level: Intermediate

Project Chat: https://matrix.to/#/#drogue-iot:matrix.org

Contact(s) / potential mentors(s): Ulf Lilleengen (lulf@redhat.com)

Associated JBoss community project(s): Drogue IoT


New Drogue IoT protocol endpoint

...