SkillAgentSearch skills...

OpenD

The openD framework for DECT ULE

Install / Use

/learn @opend-connect/OpenD
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Brief

This project is the open source openD developer's framework. The purpose of this project is to provide a framework which defines a unified API for DECT and Ultra Low Energy (ULE) DECT fixed and portable part devices designed to support various hardware platforms.

The idea of the openD framework is to make the DECT and ULE technology available to enable a fast and easy development of DECT and ULE devices. The framework provides sample codes, tutorials and documentation.

Table of Contents

<a name="opendcommunity"/>

OpenD Community

The openD community is the place where you can find all information around DECT ULE and the openD framework. It is the place where developers come together to discuss DECT ULE and openD related topics and to exchange information and know-how. You will also find much more:

  • News and events about openD and DECT ULE
  • General information regarding the openD project
  • Information about manufacturers and supported hardware
  • Forums
  • Blogs
  • Live chat
<a name="quickstartguide"/>

Quick Start Guide

<a name="quickstartguide_intro"/>

Introduction

The background of the quick start guide is to provide a fast and easy introduction into the principles of the openD framework project. Users should get familiar with the purpose and concepts of the demonstration applications and should be able to setup a hardware configuration with a fixed part (FP) and a portable part (PP). One could also name the fixed part as a base and a portable part as a handset. Also, a user should be able to setup and configure his development environment and be able to build different configurations of this project.

<a name="demonstrationapplications"/>

Demonstration Applications

In general, the purpose of the demonstration applications is to provide an overview of the key features of the openD framework - especially, this includes the utilization of HAN FUN profiles and services as well as voice calls and audio links. This chapter lists all available demonstration applications including a short descriptions containing the important services and principles. Please also refer to section Hardware Platforms for a description which describes the hardware platforms and its related demonstration application features.

Basic call

This example is a voice call from the PP to the FP or vise versa. It demonstrates the openD framework opens up a voice call including the management services as device registration, initiating the call and picking up the phone. This framework provides examples for both, the FP and the PP as initiator of the call.

  1. Run the FP_LEGACY_CLIENT and FP_LEGACY_SERVER demo applications on the Raspberry PI 3 and the PP_LEGACY_BASICCALL demo application on the Nucleo hardware.

    • UDP FP legacy client:
        $ ./fp_legacy_client_rpi
      
    • UDP FP legacy server:
      • Dialog FP: You should call the demo application with the serial port as argument.
        $ ./fp_legacy_server_rpi <SERIAL PORT>
        
        Example:
        $ ./fp_legacy_server_rpi /dev/ttyACM0
        
      • DSPG FP: You can start the demo application without any arguments.
        $ ./fp_legacy_server_rpi
        
  2. Open the registration window with the client demo application.<br/> The terminal input to open the registration window is the key "w".

  3. Press the blue button on the Nucleo hardware to send a registration request.<br/> Wait until the successful registration confirmation terminal output on the client demo application.

  4. Setup a call with the handset id shown in the successful registration confirmation output on the client demo application.<br/> The terminal input to setup a call with the handset id h is "r h". To setup a call with the Nucleo hardware press the blue button.<br/> Wait until the successful call setup confirmation terminal output on the client demo application.

  5. Release a call with the call id shown in the successful call setup confirmation output on the client demo application.<br/> The terminal input to release a call with the call id <c> is "t <c>". To release a call with the Nucleo hardware press the blue button.<br/> Wait until the successful call release confirmation terminal output on the client demo application.

Note: It is also possible to use a C38H hardware as handset.<br/> Note: You can write a shell script to pipe the sound of the dspg hardware.<br/> Example for shell script:

#!/bin/bash
pulseaudio -k
pactl load-module module-loopback source="nameOfSource" sink="nameOfSink"
pactl load-module module-loopback source="nameOfSource" sink="nameOfSink"

Internal call

The internal call example shows how to handle voice calls from one PP to another PP using a central FP. The FP acts as a central "server" between the to PPs and forwards the call.

  1. Run the FP_LEGACY_CLIENT and FP_LEGACY_SERVER demo applications on the Raspberry PI 3 and the PP_LEGACY_INTERCOM demo application on the two Nucleo hardwares.

    • UDP FP legacy client:
        $ ./fp_legacy_client_rpi
      
    • UDP FP legacy server:
      • Dialog FP: You should call the demo application with the serial port as argument.
        $ ./fp_legacy_server_rpi <SERIAL PORT>
        
        Example:
        $ ./fp_legacy_server_rpi /dev/ttyACM0
        
      • DSPG FP: You can start the demo application without any arguments.
        $ ./fp_legacy_server_rpi
        
  2. Open the registration window with the client demo application.<br/> The terminal input to open the registration window is the key "w".

  3. Press the blue button on the first Nucleo hardware to send a registration request with the first handset.<br/> Wait until the successful registration confirmation terminal output on the client demo application.

  4. Open the registration window with the client demo application.<br/> The terminal input to open the registration window is the key "w".

  5. Press the blue button on the second Nucleo hardware to send a registration request with the second handset.<br/> Wait until the successful registration confirmation terminal output on the client demo application.

  6. Press the blue button on the first Nucleo hardware to send a setup intercom call request.

  7. Press the blue button on the second Nucleo hardware to answer the setup intercom call request.

  8. To release a call press the blue button on the first or second Nucleo hardware.

Note: It is also possible to use a C38H hardware as handset.<br/> Note: You can write a shell script to pipe the sound of the dspg hardware.<br/> Example for shell script:

#!/bin/bash
pulseaudio -k
pactl load-module module-loopback source="nameOfSource" sink="nameOfSink"
pactl load-module module-loopback source="nameOfSource" sink="nameOfSink"

Device management example on the PP to change the volume for audio

This is an example which shows how to use the device management services of the openD framework to change the volume of an active audio connection.

  1. Run the legacy demo applications on the Raspberry PI 3 and also the legacy demo application on the Nucleo hardware.

  2. Open the registration window with the client demo application.<br/> The terminal input to open the registration window is the key "w".

  3. Press the blue button on the Nucleo hardware to send a registration request.<br/> Wait until the successful registration confirmation terminal output on the client demo application.

  4. Setup a call with the handset id shown in the successful registration confirmation output on the client demo application.<br/> The terminal input to setup a call with the handset id h is "r h". To setup a call with the Nucleo hardware press the blue button.<br/> Wait until the successful call setup confirmation terminal output on the client demo application.

  5. Volume up the audio on the client demo application.<br/> The terminal input to mute the audio is "i".<br/> Wait until the successful volume up the audio confirmation terminal output on the client demo application.

  6. Volume down the audio on the client demo application.<br/> The terminal input to mute the audio is "o".<br/> Wait until the successful volume down the audio confirmation terminal output on the client demo application.

Device management example on the PP to mute audio

This example demonstrates how to mute the volume on the PP for an active audio connection with the openD framework. The implementation uses the device management services.

  1. Run the legacy demo applications on the Raspberry PI 3 and also the legacy demo application on the Nucleo hardware.

  2. Open the registration window with the client demo application.<br/> The terminal input to open the registration window is the key "w".

  3. Press the blue button on the Nucleo hardware to send a registration request.<br/> Wait until the successful registration confirmation terminal output on the client demo application.

  4. Setup a call with the handset id shown in the successful registration confirmation output on the client dem

Related Skills

View on GitHub
GitHub Stars41
CategoryDevelopment
Updated2mo ago
Forks13

Languages

C

Security Score

90/100

Audited on Jan 14, 2026

No findings