[ZTE Axon 7 Accessories] manu7irl:
Anybody heard about the possibility to use full docking station like this one on our device?

**I just got this from J5create rep.:

http://www.j5create.com/our-products/android/jud650.html

EDITED: ##NEWS##

This Dock does not support MHL/Slimport , and has Aerospaceman from ZTE Forum specified it the Axon 7 does not support MHL!

The dock is based on:

Open Accessory Protocol 2.0

Open accessories explained:

http://android-developers.blogspot.co.il/2011/05/bright-idea-android-open-accessories.html

You can buy it on bhphotovideo.com (available in October 2k16):

https://www.bhphotovideo.com/c/product/1205674-REG/j5create_jud650_android_docking_station.html

NEW DISCOVERIES:

I just analysed this dock datasheet and it comes with an nice little app - so called com.mct.aoabus2.apk --> https://mega.nz/#!DF0kRLhT

here is the key to donwload the apk: !btKgz4xWGHYJT976Hob8lAE1QWXM0t_SkGn1VGyL6-c

you also get it from Google Play Store: https://play.google.com/store/apps/details?id=com.mct.aoabus2

I decompiled that apk and found that it is not MHL enabled at all this much more complex and the dock itself surely has a micro-controller in it and it is acting as usb hub and also a display controller/adb client.

Also noticed in the obb folder a HEX file containing linux kernel info and a lot of linux modules so called drivers for all the hardware that's inside that dock and also for hardware you might connect to it.

There is inside that APK app a API function called mediaprojection this API stream the screen content to the dock like a smartphone streams content to the chromecast, the only difference is that it is doing that via the usb bus connection.

inside "mct_mediaprojection.smali":

.class Lcom/mct/aoabus/mct_mediaProjection;
.super Ljava/lang/Object;
.source "ScreenRecorder.java"

# static fields
.field public static mediaProjection:Landroid/media/projection/MediaProjection;

# direct methods
.method constructor <init>()V
.locals 0

.prologue
.line 227
invoke-direct {p0}, Ljava/lang/Object;-><init>()V

return-void
.end method

inside "usbconmnection.smali":

.class public Lcom/mct/aoabus/UsbConnection;
.super Lcom/mct/aoabus/Connection;
.source "UsbConnection.java"

# static fields
.field private static final D:Z = false

.field private static final TAG:Ljava/lang/String; = "MCT"

# instance fields
.field mAccessory:Landroid/hardware/usb/UsbAccessory;

.field mFileDescriptor:Landroid/os/ParcelFileDescriptor;

.field mInputStream:Ljava/io/FileInputStream;

.field mOutputStream:Ljava/io/FileOutputStream;

# direct methods
.method public constructor <init>(Landroid/hardware/usb/UsbManager;Landroid/hardware/usb/UsbAccessory;)V
.locals 2
.param p1, "usbManager" # Landroid/hardware/usb/UsbManager;
.param p2, "accessory" # Landroid/hardware/usb/UsbAccessory;

.prologue
.line 40
invoke-direct {p0}, Lcom/mct/aoabus/Connection;-><init>()V

.line 43
invoke-virtual {p1, p2}, Landroid/hardware/usb/UsbManager;->openAccessory(Landroid/hardware/usb/UsbAccessory;)Landroid/os/ParcelFileDescriptor;

move-result-object v1

iput-object v1, p0, Lcom/mct/aoabus/UsbConnection;->mFileDescriptor:Landroid/os/ParcelFileDescriptor;

.line 44
iget-object v1, p0, Lcom/mct/aoabus/UsbConnection;->mFileDescriptor:Landroid/os/ParcelFileDescriptor;

if-eqz v1, :cond_0

.line 45
iput-object p2, p0, Lcom/mct/aoabus/UsbConnection;->mAccessory:Landroid/hardware/usb/UsbAccessory;

.line 46
iget-object v1, p0, Lcom/mct/aoabus/UsbConnection;->mFileDescriptor:Landroid/os/ParcelFileDescriptor;

invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;

move-result-object v0

.line 47
.local v0, "fd":Ljava/io/FileDescriptor;
new-instance v1, Ljava/io/FileInputStream;

invoke-direct {v1, v0}, Ljava/io/FileInputStream;-><init>(Ljava/io/FileDescriptor;)V

iput-object v1, p0, Lcom/mct/aoabus/UsbConnection;->mInputStream:Ljava/io/FileInputStream;

.line 48
new-instance v1, Ljava/io/FileOutputStream;

invoke-direct {v1, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/FileDescriptor;)V

iput-object v1, p0, Lcom/mct/aoabus/UsbConnection;->mOutputStream:Ljava/io/FileOutputStream;

.line 50
.end local v0 # "fd":Ljava/io/FileDescriptor;
:cond_0
return-void
.end method

# virtual methods
.method public close()V
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation

.prologue
.line 65
iget-object v0, p0, Lcom/mct/aoabus/UsbConnection;->mFileDescriptor:Landroid/os/ParcelFileDescriptor;

if-eqz v0, :cond_0

.line 66
iget-object v0, p0, Lcom/mct/aoabus/UsbConnection;->mInputStream:Ljava/io/FileInputStream;

invoke-virtual {v0}, Ljava/io/FileInputStream;->close()V

.line 67
iget-object v0, p0, Lcom/mct/aoabus/UsbConnection;->mOutputStream:Ljava/io/FileOutputStream;

invoke-virtual {v0}, Ljava/io/FileOutputStream;->close()V

.line 68
iget-object v0, p0, Lcom/mct/aoabus/UsbConnection;->mFileDescriptor:Landroid/os/ParcelFileDescriptor;

invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V

.line 70
:cond_0
return-void
.end method

.method public getInputStream()Ljava/io/InputStream;
.locals 1

.prologue
.line 54
iget-object v0, p0, Lcom/mct/aoabus/UsbConnection;->mInputStream:Ljava/io/FileInputStream;

return-object v0
.end method

.method public getOutputStream()Ljava/io/OutputStream;
.locals 1

.prologue
.line 59
iget-object v0, p0, Lcom/mct/aoabus/UsbConnection;->mOutputStream:Ljava/io/FileOutputStream;

return-object v0
.end method

The dock is manufactured by MCT, model name AOABusADK

In accessory_filter.xml,

<usb-accessory manufacturer="MCT" model="AOABusADK" version="2.0" />