Skip to content
@Venice-D2D

Venice

Enabling device-to-device communication.

Venice

This GitHub organisation aims at studying how to enable device-to-device communication between smartphones and desktop computers.

Each one of its repositories hosts a communication channel, leveraging a D2D technology such as Bluetooth; you'll also find an example application allowing file exchange between devices using channels of your choice.

Context

There are lots of device-to-device technologies out there, ready to be used, such as Wi-Fi, NFC, Bluetooth etc; there are also lots of use-cases that could leverage those technologies, but we feel like something is missing in between.

A link layer abstraction is missing between D2D tech and opportunistic networks.

To solve that problem, we propose the Venice framework, an abstraction layer that allows applications to manipulate communication technologies through the use of channels.

Some vocabulary

A channel is an object that encapsulates a device-to-device physical communication technology (Bluetooth or Wi-Fi, for instance), to send data from user A to user B.

This framework makes use of two different channel types, bootstrap channels and data channels. Bootstrap channels transmit metadata about communication exchanges and data channels (e.g. authentication data required to open a Wi-Fi connection); Data channels do have a greater throughput than bootstrap channels, and are typically intented to carry payload data between nodes.

Implementation

List of communication channels

Bootstrap channels
Data channels

Demo app

This organization includes a demonstration app that showcases all mentioned channels; it's located here: https://github.com/Venice-D2D/venice_demo_app.

Here is a video showing how channels can be leveraged to exchange data between two phones:

demo.mp4

Pinned Loading

  1. delta_scheduler delta_scheduler Public

    Dart 2 2

  2. venice_demo_app venice_demo_app Public

    An example application to test communication channels.

    Dart 1 2

Repositories

Showing 10 of 10 repositories
  • venice-qt Public

    Desktop implemetation of venice en C++ and QT

    Venice-D2D/venice-qt’s past year of commit activity
    C++ 0 0 0 0 Updated Jun 11, 2024
  • venice_demo_app Public

    An example application to test communication channels.

    Venice-D2D/venice_demo_app’s past year of commit activity
    Dart 1 2 0 0 Updated Apr 8, 2024
  • ble_bootstrap_channel Public

    Transmit metadata between devices through Bluetooth Low Energy.

    Venice-D2D/ble_bootstrap_channel’s past year of commit activity
    C++ 0 0 0 0 Updated Feb 16, 2024
  • .github Public
    Venice-D2D/.github’s past year of commit activity
    0 0 0 0 Updated Dec 6, 2023
  • wifi_data_channel Public

    Transmit data between devices through a direct Wi-Fi connection.

    Venice-D2D/wifi_data_channel’s past year of commit activity
    Dart 2 3 0 0 Updated Nov 24, 2023
  • qr_code_bootstrap_channel Public

    Transmit metadata between devices through QR codes.

    Venice-D2D/qr_code_bootstrap_channel’s past year of commit activity
    C++ 0 2 0 0 Updated Nov 24, 2023
  • Venice-D2D/delta_scheduler’s past year of commit activity
    Dart 2 MIT 2 1 0 Updated Nov 24, 2023
  • venice_core Public

    Core utils of the Venice device-to-device communication framework.

    Venice-D2D/venice_core’s past year of commit activity
    Dart 1 1 0 0 Updated Nov 24, 2023
  • bluetooth_data_channel Public

    Transmit data between devices through a Bluetooth connection.

    Venice-D2D/bluetooth_data_channel’s past year of commit activity
    Dart 0 0 0 0 Updated Sep 27, 2023
  • multipeer_data_channel Public Forked from Adri1dolent/multipeer_data_channel

    Transmit data between iOS devices through a direct Wi-Fi connection.

    Venice-D2D/multipeer_data_channel’s past year of commit activity
    Swift 0 3 0 0 Updated Mar 2, 2023

Top languages

Loading…

Most used topics

Loading…