ZTE MF823 4G LTE on Raspberry Pi 3 not working

I'd like to set up my Raspberry Pi 3 with LEDE and a ZTE MF823 4G LTE dongle to function as a mobile Wifi hotspot (https://medium.com/openwrt-iot/lede-openwrt-using-4g-lte-usb-for-your-internet-connection-3e3824580c).
Using the latest lede-17.01.4 image for bcm2710 was no problem, and ethernet and the wifi hotspot work like a charm. However, I can't get the 4G USB modem recognised.

When using an Ubuntu Mate image for the Raspberry Pi 3 the dongle is recognized and an usb interface is added.

$ dmesg (on Ubuntu Mate)
[...]
[ 5336.491300] usb 1-1.2: new high-speed USB device number 6 using dwc_otg
[ 5336.611653] usb 1-1.2: New USB device found, idVendor=19d2, idProduct=1403
[ 5336.611671] usb 1-1.2: New USB device strings: Mfr=2, Product=3, SerialNumber=4
[ 5336.611680] usb 1-1.2: Product: ZTE WCDMA Technologies MSM
[ 5336.611688] usb 1-1.2: Manufacturer: ZTE,Incorporated
[ 5336.611696] usb 1-1.2: SerialNumber: MF8230ZTED010000
[ 5336.644784] usb-storage 1-1.2:1.2: USB Mass Storage device detected
[ 5336.671297] scsi host0: usb-storage 1-1.2:1.2
[ 5336.771748] usbcore: registered new interface driver cdc_ether
[ 5336.781962] rndis_host 1-1.2:1.0 usb0: register 'rndis_host' at usb-3f980000.usb-1.2, RNDIS device, 36:4b:50:b7:ef:b2
[ 5336.786112] usbcore: registered new interface driver rndis_host
[ 5336.799228] usbcore: registered new interface driver rndis_wlan
[ 5336.887522] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[ 5337.681732] scsi 0:0:0:0: CD-ROM            CWID     USB SCSI CD-ROM  2.31 PQ: 0 ANSI: 2
[ 5337.692790] scsi 0:0:0:1: Direct-Access     ZTE      MMC Storage      2.31 PQ: 0 ANSI: 2
[ 5337.695264] sd 0:0:0:1: [sda] Attached SCSI removable disk
[ 5337.704508] scsi 0:0:0:0: Attached scsi generic sg0 type 5
[ 5337.704698] sd 0:0:0:1: Attached scsi generic sg1 type 0
[ 5337.721332] sr 0:0:0:0: [sr0] scsi-1 drive
[ 5337.721351] cdrom: Uniform CD-ROM driver Revision: 3.20
[ 5337.722118] sr 0:0:0:0: Attached scsi CD-ROM sr0

$ ifconfig usb0 (on Ubuntu Mate)
usb0      Link encap:Ethernet  HWaddr 36:4b:50:b7:ef:b2
          inet addr:192.168.32.116  Bcast:192.168.32.255  Mask:255.255.255.0
          inet6 addr: fe80::10:3628:75ed:c7f5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:48 errors:0 dropped:0 overruns:0 frame:0
          TX packets:54 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:8227 (8.2 KB)  TX bytes:12151 (12.1 KB)

Plugging in the dongle on LEDE outputs almost the same messages, but no interface is added, and the /dev/cdc-wdm0 device mentioned in the linked article above is not created.

# dmesg
[  206.712563] usb 1-1.2: new high-speed USB device number 6 using dwc_otg
[  206.843197] usb 1-1.2: New USB device found, idVendor=19d2, idProduct=1403
[  206.854746] usb 1-1.2: New USB device strings: Mfr=2, Product=3, SerialNumber=4
[  206.866727] usb 1-1.2: Product: ZTE WCDMA Technologies MSM
[  206.876819] usb 1-1.2: Manufacturer: ZTE,Incorporated
[  206.886466] usb 1-1.2: SerialNumber: MF8230ZTED010000
[  206.917034] rndis_host 1-1.2:1.0 usb0: register 'rndis_host' at usb-3f980000.usb-1.2, RNDIS device, 36:4b:50:b7:ef:b2
[  206.934126] usb-storage 1-1.2:1.2: USB Mass Storage device detected
[  206.945595] scsi host0: usb-storage 1-1.2:1.2
[  207.953326] scsi 0:0:0:0: CD-ROM            CWID     USB SCSI CD-ROM  2.31 PQ: 0 ANSI: 2
[  207.967312] scsi 0:0:0:1: Direct-Access     ZTE      MMC Storage      2.31 PQ: 0 ANSI: 2
[  207.982410] sd 0:0:0:1: [sda] Attached SCSI removable disk

These packages are installed:

# opkg list-installed
base-files - 173.1-r3560-79f57e422d
brcm2708-gpu-fw - 2017-03-03-78c4983379de0537f49a97fb37ceaaf42632b28c
brcmfmac-firmware-43430-sdio - 2016-09-21-42ad5367-1
brcmfmac-firmware-usb - 2016-09-21-42ad5367-1
busybox - 1.25.1-4
dnsmasq - 2.78-1
dropbear - 2017.75-2
firewall - 2017-05-27-a4d98aea-1
fstools - 2017-06-30-bdcb075f-1
fwtool - 1
hostapd-common - 2016-12-19-ad02e79d-6
ip6tables - 1.4.21-2
iptables - 1.4.21-2
iw - 4.9-1
jshn - 2017-02-24-96305a3c-1
jsonfilter - 2016-07-02-dea067ad-1
kernel - 4.4.92-1-941bd61ec34599b8fbb7f22362fad59a
kmod-brcmfmac - 4.4.92+2017-01-31-3
kmod-brcmutil - 4.4.92+2017-01-31-3
kmod-cfg80211 - 4.4.92+2017-01-31-3
kmod-fs-configfs - 4.4.92-1
kmod-fs-vfat - 4.4.92-1
kmod-hid - 4.4.92-1
kmod-hid-generic - 4.4.92-1
kmod-input-core - 4.4.92-1
kmod-input-evdev - 4.4.92-1
kmod-ip6tables - 4.4.92-1
kmod-ipt-conntrack - 4.4.92-1
kmod-ipt-core - 4.4.92-1
kmod-ipt-nat - 4.4.92-1
kmod-lib-crc-ccitt - 4.4.92-1
kmod-mii - 4.4.92-1
kmod-mmc - 4.4.92-1
kmod-nf-conntrack - 4.4.92-1
kmod-nf-conntrack6 - 4.4.92-1
kmod-nf-ipt - 4.4.92-1
kmod-nf-ipt6 - 4.4.92-1
kmod-nf-nat - 4.4.92-1
kmod-nls-base - 4.4.92-1
kmod-nls-cp437 - 4.4.92-1
kmod-nls-iso8859-1 - 4.4.92-1
kmod-nls-utf8 - 4.4.92-1
kmod-ppp - 4.4.92-1
kmod-pppoe - 4.4.92-1
kmod-pppox - 4.4.92-1
kmod-scsi-core - 4.4.92-1
kmod-slhc - 4.4.92-1
kmod-sound-arm-bcm2835 - 4.4.92-1
kmod-sound-core - 4.4.92-1
kmod-usb-core - 4.4.92-1
kmod-usb-gadget - 4.4.92-1
kmod-usb-gadget-eth - 4.4.92-1
kmod-usb-hid - 4.4.92-1
kmod-usb-lib-composite - 4.4.92-1
kmod-usb-net - 4.4.92-1
kmod-usb-net-cdc-eem - 4.4.92-1
kmod-usb-net-cdc-ether - 4.4.92-1
kmod-usb-net-cdc-mbim - 4.4.92-1
kmod-usb-net-cdc-ncm - 4.4.92-1
kmod-usb-net-cdc-subset - 4.4.92-1
kmod-usb-net-qmi-wwan - 4.4.92-1
kmod-usb-net-rndis - 4.4.92-1
kmod-usb-ohci - 4.4.92-1
kmod-usb-serial - 4.4.92-1
kmod-usb-serial-option - 4.4.92-1
kmod-usb-serial-wwan - 4.4.92-1
kmod-usb-storage - 4.4.92-1
kmod-usb-storage-extras - 4.4.92-1
kmod-usb-wdm - 4.4.92-1
lede-keyring - 2017-01-20-a50b7529-1
libblobmsg-json - 2017-02-24-96305a3c-1
libc - 1.1.16-1
libgcc - 5.4.0-1
libip4tc - 1.4.21-2
libip6tc - 1.4.21-2
libiwinfo - 2016-09-21-fd9e17be-1
libiwinfo-lua - 2016-09-21-fd9e17be-1
libjson-c - 0.12.1-1
libjson-script - 2017-02-24-96305a3c-1
liblua - 5.1.5-1
libnl-tiny - 0.1-5
libpthread - 1.1.16-1
librt - 1.1.16-1
libubox - 2017-02-24-96305a3c-1
libubus - 2017-02-18-34c6e818-1
libubus-lua - 2017-02-18-34c6e818-1
libuci - 2016-07-04-e1bf4356-1
libuci-lua - 2016-07-04-e1bf4356-1
libuclient - 2017-09-06-24d6eded-1
libusb-1.0 - 1.0.21-1
libxtables - 1.4.21-2
logd - 2017-03-10-16f7e161-1
lua - 5.1.5-1
luci - git-17.290.79498-d3f0685-1
luci-app-firewall - git-17.290.79498-d3f0685-1
luci-base - git-17.290.79498-d3f0685-1
luci-lib-ip - git-17.290.79498-d3f0685-1
luci-lib-jsonc - git-17.290.79498-d3f0685-1
luci-lib-nixio - git-17.290.79498-d3f0685-1
luci-mod-admin-full - git-17.290.79498-d3f0685-1
luci-proto-ipv6 - git-17.290.79498-d3f0685-1
luci-proto-ppp - git-17.290.79498-d3f0685-1
luci-proto-qmi - git-17.315.61305-a9bddc4-1
luci-theme-bootstrap - git-17.290.79498-d3f0685-1
mtd - 21
netifd - 2017-01-25-650758b1-1
odhcp6c - 2017-01-30-c13b6a05-2
odhcpd - 2017-10-02-c6f3d5d4-2
opkg - 2017-03-23-1d0263bb-1
ppp - 2.4.7-11
ppp-mod-pppoe - 2.4.7-11
procd - 2017-08-08-66be6a23-1
rpcd - 2016-12-03-0577cfc1-1
ubox - 2017-03-10-16f7e161-1
ubus - 2017-02-18-34c6e818-1
ubusd - 2017-02-18-34c6e818-1
uci - 2016-07-04-e1bf4356-1
uclient-fetch - 2017-09-06-24d6eded-1
uhttpd - 2017-08-19-3fd58e9b-1
uhttpd-mod-ubus - 2017-08-19-3fd58e9b-1
umbim - 2015-07-04-29aaf43b-1
uqmi - 2016-12-19-8ceeab69-1
usb-modeswitch - 2017-05-24-453da8e5-1
usign - 2015-07-04-ef641914-1
wpad-mini - 2016-12-19-ad02e79d-6
wwan - 2014-07-17-1

Does anyone have an idea what is missing on LEDE that Ubuntu Mate has out of the box?

Log shows that an rndis interface usb0 is created. Perhaps it is simply not up. Use ifconfig -a to show all interfaces, even those that are down.

If that is the case, LEDE may bring the interface up automatically once you attach usb0 to the wan network.

Thanks! This was the missing part. Adding

config interface 'wan'
    option proto 'dhcp'
    option ifname 'usb0'

to /etc/config/network was all that was needed to get it up and running. The usb0 interface got an IP address from the dongle and because I entered all connection settings in it's configuration page before (on Ubuntu) it automatically connected to the internet.