Project

General

Profile

Actions

AVM BlueFRITZ!

In the early 2000s (before WIFI was ubiquitous) AVM had a product line called BlueFRITZ!
Via Bluetooth one could access their supported ISDN- and DSL-routers without any cabling.

Supported hardware

Product Description Misc
USB Adapter
BlueFRITZ! USB USB Bluetooth Adapter VID/PID 057c:2200
BlueFRITZ! USB 2.0 USB Bluetooth Adapter VID/PID 057c:3800
ISDN Product
BlueFRITZ! AP-X Bluetooth enabled ISDN router
BlueFRITZ! AP-ISDN ISDN-"Access Point" - small and powered via the ISDN bus
BlueFRITZ! AP-DSL DSL-/ISDN-router with Bluetooth
OEM variants
T-Com Eumex C 200 Variant of the BlueFRITZ! AP-X for the german Telekom
Teledat C 120X Another variant of the BlueFRITZ! AP-X for the german Telekom
Teledat C 120data USB Bluetooth adapter sold for the Teledat C 120X
Product bundles
BlueFRITZ! Startpaket v2.0 BlueFRITZ! USB v2.0 + BlueFRITZ! AP-X
BlueFRITZ! ISDN Set v2.0 BlueFRITZ! USB v2.0 + BlueFRITZ! AP-ISDN
BlueFRITZ! DSL Set v2.0 BlueFRITZ! USB v2.0 + BlueFRITZ! AP-DSL

These devices expose a CAPI 2.0 interface that can be used on Windows and Linux.

The Common ISDN Bluetooth Access Profile (CIP) offers a uniform way to access the ISDN services of other devices via Bluetooth. This means that all features are made available in the B and D channels. CIP does not define a new ISDN interface, but uses the established Common ISDN API (CAPI 2.0). The CAPI Message Transport Protocol (CMTP) is used to enable CAPI Bluetooth. This protocol defines the uniform transport of CAPI messages over a Bluetooth L2CAP channel.

Linux Support

Linux mainline support (CMTP/Kernel CAPI) and proper tooling for Bluez exists since 2003.
https://ftp.avm.de/archive/cardware/bluefritz.usb/linux/info.txt
https://web.archive.org/web/20080208063930/http://www.holtmann.org/linux/bluetooth/isdn.html (german only)

CMTP (CAPI Message Transport Protocol) is a transport layer for CAPI messages.
https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/tools/parser/cmtp.c

ciptool (used to set up, maintain, and inspect the CIP configuration)
https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/tools/ciptool.c
https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/tools/ciptool.rst

BlueFRITZ! AP-ISDN

Small and lightweight (35g) ISDN Access Point.
16-digit hardcoded Bluetooth PIN is printed on the back of the case.

Hardware

The hardware is built around the following major functional blocks:

Chip Function (expected)
AVM ARM VP22437-ZYA0YKN.Z1 03 tS0445 - AVM-UBIK 1.0 ARM based SoC
Infineon PSB3186F V1.1 0446 ISDN S/T Interface
AVM BLUEJOB.PV18 H2465-018 2CEA18146.1 0446 AA TWN Bluetooth Interface
MX E044211 29LV800BTXBC-70 2K474300 TAIWAN 8Mbit NOR Flash Memory
Samsung K4S641632H-TC75 64Mbit SDRAM Memory
III S1W RF LNA/PA?
Altera EPM3032A TC44-10 Glue Logic

Configuration example

  • Kernel 4.12.14
  • BlueFRITZ! AP-ISDN (PIN: 1500750033515501)
  • BlueFRITZ! USB 2.0

lsusb

Bus 001 Device 002: ID 057c:3800 AVM GmbH BlueFRITZ! Bluetooth Stick

hciconfig/hcitool

# hciconfig -a
hci0:   Type: Primary  Bus: USB
        BD Address: 00:04:0E:8B:7A:95  ACL MTU: 120:20  SCO MTU: 24:5
        DOWN·
        RX bytes:5101 acl:32 sco:0 events:172 errors:0
        TX bytes:1602 acl:32 sco:0 commands:90 errors:0
        Features: 0xff 0xff 0x05 0x00 0x00 0x00 0x00 0x00
        Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3·
        Link policy:·
        Link mode: SLAVE ACCEPT

# hcitool dev
Devices:
        hci0    00:04:0E:8B:7A:95

# hcitool -i hci0 scan
Scanning ...
        00:04:0E:8B:7E:8D       Bluetooth ISDN Access Point

bluetoothctl (pairing)

[NEW] Controller 00:04:0E:8B:7A:95 leap151 [default]
Agent registered
[bluetooth]# scan on
Discovery started
[CHG] Controller 00:04:0E:8B:7A:95 Discovering: yes
[NEW] Device 00:04:0E:8B:7E:8D 00-04-0E-8B-7E-8D
[CHG] Device 00:04:0E:8B:7E:8D LegacyPairing: no
[CHG] Device 00:04:0E:8B:7E:8D Name: Bluetooth ISDN Access Point
[CHG] Device 00:04:0E:8B:7E:8D Alias: Bluetooth ISDN Access Point
[CHG] Device 00:04:0E:8B:7E:8D LegacyPairing: yes
...
[bluetooth]# trust 00:04:0E:8B:7E:8D
[CHG] Device 00:04:0E:8B:7E:8D Trusted: yes
Changing 00:04:0E:8B:7E:8D trust succeeded
...
[bluetooth]# pair 00:04:0E:8B:7E:8D
Attempting to pair with 00:04:0E:8B:7E:8D
[CHG] Device 00:04:0E:8B:7E:8D Connected: yes
Request PIN code
[Blue1m[agent] Enter PIN code: 1500750033515501
[CHG] Device 00:04:0E:8B:7E:8D UUIDs: 00001101-0000-1000-8000-00805f9b34fb
[CHG] Device 00:04:0E:8B:7E:8D UUIDs: 00001103-0000-1000-8000-00805f9b34fb
[CHG] Device 00:04:0E:8B:7E:8D UUIDs: 00001109-0000-1000-8000-00805f9b34fb
[CHG] Device 00:04:0E:8B:7E:8D UUIDs: 00001116-0000-1000-8000-00805f9b34fb
[CHG] Device 00:04:0E:8B:7E:8D UUIDs: 00001128-0000-1000-8000-00805f9b34fb
[CHG] Device 00:04:0E:8B:7E:8D ServicesResolved: yes
[CHG] Device 00:04:0E:8B:7E:8D Paired: yes
Pairing successful
[CHG] Device 00:04:0E:8B:7E:8D ServicesResolved: no
[CHG] Device 00:04:0E:8B:7E:8D Connected: no
...
[bluetooth]# connect 00:04:0E:8B:7E:8D
Attempting to connect to 00:04:0E:8B:7E:8D
[CHG] Device 00:04:0E:8B:7E:8D Connected: yes
[CHG] Device 00:04:0E:8B:7E:8D ServicesResolved: yes
[Bluetooth ISDN Access Point]#
...
[Bluetooth ISDN Access Point]# info 00:04:0E:8B:7E:8D
Device 00:04:0E:8B:7E:8D (public)
        Name: Bluetooth ISDN Access Point
        Alias: Bluetooth ISDN Access Point
        Class: 0x00420214
        Icon: phone
        Paired: yes
        Trusted: yes
        Blocked: no
        Connected: yes
        LegacyPairing: yes
        UUID: Serial Port               (00001101-0000-1000-8000-00805f9b34fb)
        UUID: Dialup Networking         (00001103-0000-1000-8000-00805f9b34fb)
        UUID: Cordless Telephony        (00001109-0000-1000-8000-00805f9b34fb)
        UUID: NAP                       (00001116-0000-1000-8000-00805f9b34fb)
        UUID: Common ISDN Access        (00001128-0000-1000-8000-00805f9b34fb)
        RSSI: -20

ciptool

# ciptool search
Searching ...
        Checking service for 00:04:0E:8B:7E:8D
        Connecting to device 00:04:0E:8B:7E:8D
Local device is not accepting role switch

# ciptool connect
# ciptool show
1 00:04:0E:8B:7E:8D connected

capiinfo

# capiinfo 
            capi20.c: 164              CapiDebug():[capi20_isinstalled]: standard loop - module: standard
            capi20.c: 164              CapiDebug():[capi20_isinstalled]: capi_fd: 4
Number of Controllers : 1
Controller 1:
Manufacturer: AVM Berlin
CAPI Version: 2.0
Manufacturer Version: 3.11-04  (49.20)
Serial Number: 0753293
BChannels: 2
Global Options: 0x00000031
   internal controller supported
   Supplementary Services supported
   channel allocation supported (leased lines)
B1 protocols support: 0xc000000f
   64 kbit/s with HDLC framing
   64 kbit/s bit-transparent operation
   V.110 asynconous operation with start/stop byte framing
   V.110 synconous operation with HDLC framing
B2 protocols support: 0x00000b0b
   ISO 7776 (X.75 SLP)
   Transparent
   LAPD with Q.921 for D channel X.25 (SAPI 16)
   ISO 7776 (X.75 SLP) with V.42bis compression
   V.120 asyncronous mode
   V.120 bit-transparent mode
B3 protocols support: 0x8000000f
   Transparent
   T.90NL, T.70NL, T.90
   ISO 8208 (X.25 DTE-DTE)
   X.25 DCE

  0100
  0200
  31000000
  0f0000c0
  0b0b0000
  0f000080
  00000000 00000000 00000000 00000000 00000000 00000000
  01000001 00020000 00000000 00000000 00000000

Supplementary services support: 0x000003ff
   Hold / Retrieve
   Terminal Portability
   ECT
   3PTY
   Call Forwarding
   Call Deflection
   MCID
   CCBS

dmesg

usb 1-1: New USB device found, idVendor=057c, idProduct=3800
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1: Product: Bluetooth Device
usb 1-1: Manufacturer: Bluetooth Device
usb 1-1: SerialNumber: 957A8B0E0400
...
Bluetooth: Core ver 2.22
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: L2CAP socket layer initialized
Bluetooth: SCO socket layer initialized
usbcore: registered new interface driver btusb
...
... // paired bluetooth
...
Bluetooth: CMTP (CAPI Emulation) ver 1.0
Bluetooth: CMTP socket layer initialized
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Bluetooth: BNEP filters: protocol multicast
Bluetooth: BNEP socket layer initialized
...
... // ciptool connect
...
Bluetooth: Found 1 CAPI controller(s) on device 00:04:0e:8b:7e:8d
kcapi: controller [001]: 00:04:0e:8b:7e:8d attached
kcapi: controller [001] "00:04:0e:8b:7e:8d" ready.
...
... // CAPI initialized (capiinit)
...
CAPI 2.0 started up with major 68 (middleware)
...
... // ciptool release
...
kcapi: controller [001]: 00:04:0e:8b:7e:8d unregistered

Updated by roox 6 months ago · 5 revisions

Add picture from clipboard (Maximum size: 48.8 MB)