ofono Open-source telephony Rémi Denis-Courmont Aki Niemi Maemo summit October 10th 2009 Nokia Devices R&D Maemo Software

Similar documents
Skywire Software Developer s Guide

Tethering an Android Smartphone to USB Devices

USER MANUAL: 4G. The PiIoT is a WAN communications board which provides a 2G / 3G / 4G

Chamber of commerce: Het Kasteel 315. All our proposals and agreements are subject to the General conditions of

Lessons in Application Development

UC20 Android RIL Driver User Guide

Android RIL Driver User Guide Version 1.0

USER MANUAL: Raspberry Pi 2

Configuring a GSM (3G) modem on a GW2040 Series Router

Tizen Architecture Overview

Gemalto EHS6T-USB Terminal Starter Kit. Getting Started Guide

2007 Aalborg University, Mobile Device Group. Qtopia Phone Edition and Qtopia Greenphone

Document Name: GPRS Startup. GPRS Startup_V01.00 Status: Created

Cellular Platform Access

MPCIE-3G Quick Installation Guide

Embedded Linux Conference EU Complex Cameras on Linux. Mauro Carvalho Chehab. Oct, SRBR Samsung R&D Institute Brazil

Product Description. HUAWEI E173 HSPA USB Stick V100R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date

Product Description. HUAWEI E3531 HSPA+ USB Stick V100R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 02. Date

Tizen Telephony. Jongman Park

Product Description. HUAWEI E353 HSPA+ USB Stick V100R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date

Cinterion BGS2T (RS232) Terminal Starter Kit. Getting Started Guide

Arm11 Based Accident Alert and Vehicle Tracking Using GSM and GPS

G3x Series. Technical Product Description. Fixed Wireless Terminals for GSM/EDGE Mobile Networks

Product Description. HUAWEI E156G HSDPA USB Stick V100R001 Issue:- 01 Date: Enjoy.

Product Description. HUAWEI E160E HSDPA USB Stick V100R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date


Product Description. HUAWEI E369 HSPA+ USB Stick V400R001 HUAWEI TECHNOLOGIES CO., LTD.

EDW-ML8021 GSM GPRS Modem User s Manual. Page 1

EES3, EGS5/-X, EGS3, BGS3/-ATEX

Wireless IP for M2M / IoT 101

USR-GPRS-MODEM user manual

Understanding D-Bus. Meetup Toulouse, May Myle ne Josserand embedded Linux and kernel engineering

OpenEZX and OpenMoko, truly free software for mobile phones

Introduction to Network Technologies & Layered Architecture BUPT/QMUL

Android - open source mobile platform

Linux based 3G Specification. Multimedia Mobile Phone API. Preface. Document: CELF_MPP_Preface_FR1_ CE Linux Forum Technical Document

GNS-MC35iT, GNS-MC35iU Terminals datasheet

Publication of specifications for the mobile network interfaces offered by Wind

Open Source Software in mobile devices. Timofey Turenko Nokia Research Center, Office of CTO

Session 3 Networks I

Installation GPS & GPRS (FleetPC-3)

Embedded Software: Its Growing Influence on the Hardware world

Data Link Protocols. TCP/IP Suite and OSI Reference Model

Columbia University in the city of new york

Mark Falco Oracle Coherence Development

Industrial Tri-band 3G Modem GTM-201-3GWA Series. User Manual

This document is available at GPRS Startup. User Guide. Preliminary

Communication Networks - 3 general areas: data communications, networking, protocols

Development of Complex KNX Devices

3G Wireless. from an Operator s Perspective. David T. Shimozawa Technology Development. Page 1. June 2001

Communicating over the Network

ModemUSB/E12 User Manual v0.1

TetraNode Scalability and Performance. White paper

TELTONIKA ModemUSB/G10 User Manual v0.1

Wireless Personal Area Networks & Wide Area Networks

Other Protocols. Arash Habibi Lashkari

User Manual for VE GSM Modem

Developer s overview of the Android platform

Developing for Cellular Networks

Facing the Reality: Virtualization in a Microkernelbased Operating System. Matthias Lange, MOS, January 26th, 2016

Souran Q2686 Design Guide

Beetle: Operating System Support for the Internet of Things

Building an embedded software IDE on top of Eclipse

MER CELLULAR TELEPHONY ARCHITECTURE

Networking Applications

Data Communication & Computer Networks MCQ S

Product Description. HiLink E3251 DC-HSPA+ USB Stick V100R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date

TCOM 370 NOTES 99-1 NETWORKING AND COMMUNICATIONS

NEO 4.5. User Manual

SIMCom_3G_Linux_Driver_Applica tion Note_V1.00

Ericsson W25. Fixed Wireless Terminal for WCDMA/HSDPA Mobile Networks. User's Guide. Software Release 1.4 (R10)

Network Architecture Models

Wireless IP for IoT / M2M 101 The Basics

High-Touch Delivery Learning Services

WCDMA UGxx PPP Application Note

How to use Linux driver

The Shrink Wrapped Myth:

Product Description. MS2372h-153 LTE USB Stick V100R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date

Merlin for GPRS User s Manual

Bikash Sadhukhan. M.Tech(CSE) Lecturer. Dept of CSE/IT Techno India College of Technology

Advisor Advanced UltraSync Reference Manual

ETSI TS V1.1.1 ( )

Digital terrestrial television broadcasting Interactive channel

University of Pretoria

What Operators Want vs. What Device Vendors Provide, Conflict?

STUDIO 7.0 USER MANUAL

Product Description. HiLink E3531 HSPA+ USB Stick V100R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 02. Date

Product Description. HUAWEI E5573Cs-931 Mobile WiFi V200R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date

August 4, 2008 August 11, 2008 August 18, 2008 August 25, Avg. Time on Site 00:06:55 Site Avg: 00:05:35 (23.74%)

Application Note 24 Making and receiving GSM Circuit-Switched Data Calls (CSD). Applies to routers with Siemens wireless WAN modules only.

Introduction to RoweBots Ultra Tiny Linux RTOS

Govt. of Karnataka, Department of Technical Education Diploma in Computer Science Sixth Semester. Contact Hrs / week: 4 Total hrs: 64

Gemalto (Cinterion) EHS6 Concept Board

BitPipe Cellular Dev- Kit

GSM manual and Software User Guide

Linux based 3G Specification. Multimedia Mobile Phone API. Preface. Document: CELF_MPP_Preface_FR2_ CE Linux Forum Technical Document

ENRNG3076 : Oral presentation BEng Computer and Communications Engineering

Communication Technologies

Product Description. HiLink E3131 HSPA+ USB Stick V100R001 HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date

3JTech-iPP2 Modem Documents

Transcription:

Open-source telephony Aki Niemi Devices R&D Maemo Software Maemo summit 2009 - October 10th 2009

Outline 1 A brief history of Linux telephony 2 N900 3

A brief history of Linux telephony N900 Outline 1 A brief history of Linux telephony 2 N900 3

A brief history of Linux telephony N900 What s (cellular) telephony? network status network selection SIM security (PIN, PUK... ) SIM phone book

A brief history of Linux telephony N900 What s (cellular) telephony? network status network selection SIM security (PIN, PUK... ) SIM phone book voice calls Short Message Service (SMS) location supplementary services General packet radio service (GPRS)...

A brief history of Linux telephony N900 The standard (?) Hayes commands set ITU V.250 3GPP 27.007 better known as AT commands

A brief history of Linux telephony N900 The standard (?) Hayes commands set ITU V.250 3GPP 27.007 better known as AT commands designed in the seventies... originally for 300 bauds fixed serial line ASCII

A brief history of Linux telephony N900 The standard (?) Hayes commands set ITU V.250 3GPP 27.007 better known as AT commands designed in the seventies... originally for 300 bauds fixed serial line ASCII awkward multiplexing PPP (binary) for backward-compatibility

A brief history of Linux telephony N900 Besides the standard AT commands extensions: vendor-specific commands many implementations not fully adherent

A brief history of Linux telephony N900 Besides the standard AT commands extensions: vendor-specific commands many implementations not fully adherent Full replacement for AT commands, e.g.: : Phonet / ISI ST-Ericsson: CAIF PPP can be replaced too: proprietary framing Ethernet emulation

A brief history of Linux telephony N900 Existing solutions Qtopia: technology showcase for Qt

A brief history of Linux telephony N900 Existing solutions Qtopia: technology showcase for Qt OpenMoko: low-level D-Bus API Android Radio Interface Layer (RIL)

A brief history of Linux telephony N900 Existing solutions Qtopia: technology showcase for Qt OpenMoko: low-level D-Bus API Android Radio Interface Layer (RIL) NetworkManager: laptop-centric, AT-specific, IP-centric N900 CSD: modem-specific, closed

A brief history of Linux telephony N900 Outline 1 A brief history of Linux telephony 2 N900 3

A brief history of Linux telephony N900 N900 telephony architecture Telepathy Ring ICd Applications D-Bus IP stack PulseAudio CSD GPRS interface Phonet stack Phonet pipe Character dev McSAAB (Phonet device) CMT speech OMAP SSI driver SSI bus Cellular modem

A brief history of Linux telephony N900 Phonet simple datagram-based binary protocol multiplexing out of the box asynchronous notifications abstraction layer for modem interconnect one IP packet = one Phonet datagram

A brief history of Linux telephony N900 Phonet simple datagram-based binary protocol multiplexing out of the box asynchronous notifications abstraction layer for modem interconnect one IP packet = one Phonet datagram 2.6.28: Phonet stack, GPRS, USB gadget 2.6.31: USB host driver same stack on N900 and PC!

A brief history of Linux telephony N900 Outline 1 A brief history of Linux telephony 2 N900 3

A brief history of Linux telephony N900 architecture D-Bus core stack Modem driver API Generic AT driver Calypso driver ISI driver TTY Phonet stack Plugin API

A brief history of Linux telephony N900 core stack Core: D-Bus (de)serialization network registration logic call handling logic SMS retransmit, format and parsing SIM phonebook to vcard conversion data caching... Plugins: call history SMS storage

A brief history of Linux telephony N900 drivers hardware auto-detection modem message formatting/parsing plugin sub-layer for AT modem variants hardware-specific extra functions

A brief history of Linux telephony N900 vs CSD comparison D-Bus CSD plugins core CSD ISI driver Phonet stack OMAP SSI USB CDC-Phonet Cellular modem device

A brief history of Linux telephony N900 References project http://www.ofono.org/ Linux kernel http://www.kernel.org/

A brief history of Linux telephony N900 Any questions?