Category Archives: Communications

Huawei P8 (GRA-L09) modding

This post about “modding” of a Huawei P8 aims to summarize most of the standard procedures you need when you want to modify the device software (also called “firmware”), because you are a developer or want to be more flexible in how you use your device.

Normally, in order to gain this knowledge, you have to read a lot of “geeky” posts on sites like xda developers, which is very time consuming, and sometimes even leads to complete failure (you end up “bricking” your device), because many people there don’t bother to post clear and comprehensive instructions, but simply assume people have some pre-knowledge and know how to do things.

I don’t yet consider this post “finalized” yet (it needs some “polishing”), but I would like to make it available already now to make sure it won’t be forgotten… ūüėČ

Fastboot Mode

“Fastboot” mode is a special mode your device can be put into in order to perform certain maintenance operations, such as (un-) locking your boot loader, flashing partition images, etc. The tool you use on your PC or Mac to communicate with the phone while it is in “fastboot” mode is also called fastboot. It is part of the Android platform tools which you can download here directly from Google.

Continue reading Huawei P8 (GRA-L09) modding

Im Gigabit-Zeitalter angekommen!

Am 01.04.2018 (kein Aprilscherz!) wurde mein Internet-Anschluss von der Deutsche Glasfaser von 200 MBit/s (symmetrisch) auf nunmehr 500 MBit/s (ebenfalls symmetrisch, d. h. die Geschwindigkeit wird sowohl auf dem Downlink wie auch auf dem Uplink erreicht) umgestellt.

Und da der Anschluss vollduplex ist, d. h. Uplink und Downlink gleichzeitig in Betrieb sind, da die √úbertragung auf unterschiedlichen Frequenzen erfolgt (WDM), habe ich insgesamt 1 GBit/s zur Verf√ľgung. ūüėČ

Ich f√ľge hier mal einen Auszug eines selbstprogrammierten Benchmarks bei, der die Geschwindigkeit eindrucksvoll illustriert:

netbench

Es handelt sich hier nicht um irgendwelche “Pseudo-Benchmarks” √† la Fritzbox, wo nur die ausgehandelte Leitungs-Geschwindigkeit zwischen Modem und DSL-Access-Multiplexer angezeigt wird (was nichts √ľber den tats√§chlich erzielbaren Durchsatz aussagt, weil dieser auch von der Kapazit√§t des Backbones und der Peerings abh√§ngt!), sondern um tats√§chlich alle f√ľnf Minuten gemessene jeweils 20 sek√ľndliche √úbertragungen zwischen meinem Glasfaser-Anschluss und dem Hetzner-Root-Server, der diesen Blog beherbergt.

Continue reading Im Gigabit-Zeitalter angekommen!

Sony Xperia X Compact Modding

I decided to write this post since I couldn’t find any single page that lists all the “secrets” you need to know when modding your Sony Xperia X Compact (XC) codenamed “Kugo” in a concise manner and in a single place. And after half a year when I last tinkered with my XC, I had forgotten about all the details again, so I had to research them again anyway…

I give credit to the following XDA people (but not limited to them, I apologize to those who I might have forgotten):

General Approach

The general approach when modding your phone is the following:

  1. Flash custom recovery
  2. Backup current installation/data
  3. (Optionally: flash latest stock firmware)
  4. (Optionally: flash custom recovery that works with your new stock firmware)
  5. Root
  6. Flash other mods or use “root” apps

Custom Recovery

Fastboot Mode

First let’s explain what “fastboot mode” is: Fastboot is both a tool and a protocol for writing data directly to your phone’s flash memory. In practical use, it is used to flash images such as recoveries, bootloaders, and kernels to your Android device.

The “fastboot” tool (as well as “adb” which is also needed when tinkering with your Android smart phone) is part of the Android “platform tools,” which you can download directly from Google (roughly 4M only).

To bring your phone into fastboot mode, perform the following steps:

  1. Switch the phone off.
  2. Hold “Volume up” and connect your phone to the USB port of your PC. The notification LED should first light up in red, then blue, and provided you have correctly installed drivers, you will be able to use fastboot commands.
    Note that the screen will remain black. You can check whether you are in fastboot mode with the following command:

    $ fastboot devices
    BH901XXXXX    fastboot

    If you see output similar to the above, you have successfully put your phone in fastboot mode.

Continue reading Sony Xperia X Compact Modding

Jabra Speak 510 Kurztest

Heute möchte ich ganz kurz das Jabra Speak 510 besprechen.

√úberblick

Bei dem Jabra Speak 510 handelt es sich um ein Konferenzmikrofon bzw. einen Konferenzlautsprecher, welcher per USB oder Bluetooth mit Laptops oder Handys gekoppelt werden kann, um dann “freih√§ndig” Telefonate bzw. Videokonferenzen f√ľhren zu k√∂nnen.

Das Ger√§t besitzt ein zylinderf√∂rmiges Geh√§use, von der Grundfl√§che etwas gr√∂√üer als ein Bierdeckel w√ľrde ich sagen, H√∂he etwa f√ľnf Zentimeter. Das Gewicht betr√§gt ziemlich genau 200 g. Im Lieferumfang enthalten ist eine Neoprenh√ľlle, mit der das Ger√§t gesch√ľtzt vor Kratzern transportiert werden kann. Auch vor Besch√§digung durch St√ľrze sch√ľtzt es scheinbar recht gut. Mir ist es aus ca. 1 m herunter gefallen, und es funktioniert nach wie vor ohne Probleme.

Jabra Speak 510
Jabra Speak 510

Vorteile gegen√ľber Headsets

Ich habe mir dieses Konferenzmikro vor einigen Monaten gekauft, weil ich täglich oft mehrere Stunden in Telefonkonferenzen oder Videokonferenzen per Microsoft Skype for Business zubringe. Mein Plantronics-Headset ist nach einigen Stunden, obwohl es grundsätzlich sehr bequem zu tragen ist, dann einfach nur noch eine Plage.
Continue reading Jabra Speak 510 Kurztest

Monitoring Microsoft SNDS Status

If you operate a mail server, you should be aware of its “reputation,” because a bad reputation can give you issues sending email to certain recipients.

Microsoft operate a set of services called “Smart Network Data Services (SNDS)” to protect their own email services. If they see spam or other “malicious” activity from your address space, they might put you on a blacklist, and based on that reject email from you. It is easy to register yourself so that you can query the status of your IP address space. Just visit the above site and get started.

I created a quick’n’dirty monitoring script for Nagios to monitor the status of my IP address space in SNDS. Whenever there is data for one of my IP addresses, this script will return a WARNING status, so that I can look into it.

The script looks like follows:

#!/bin/bash

URL='https://postmaster.live.com/snds/ipStatus.aspx?key=12345678-1234-1234-1234-0123456789ab'

content="$(curl -s $URL)"
size=${#content}

if [ $size -gt 0 ]; then
    echo "WARNING:SNDS status seems to be UNHEALTHY"
    exit 1
fi

echo "OK:SNDS status is OK"
exit 0

You also need command and service definitions in Nagios as follows:

define command{
        command_name    check_snds
        command_line    /usr/local/lib/nagios/plugins/check_snds
}

define service {
        host_name                       my_host
        service_description             SNDS
        check_command                   check_snds
        use                             generic-service-internal
        notification_interval           0 ; set > 0 if you want to be renotified
}

Now, Nagios will monitor the “reputation” of your address space for you.

WLAN-Probleme erkennen und beseitigen

Aus aktuellem Anlass schreibe ich hier einmal etwas zu g√§ngigen WLAN/WiFi-Problemen — wie erkenne ich sie, und wie beseitige ich sie.

(Der aktuelle Anlass ist, dass hier bei uns im Ort endlich die lang ersehnten Aktivierungen unserer Glasfaser/FTTH-Anschl√ľsse von “Deutsche Glasfaser” erfolgt sind. Daher h√§ufen sich diese Fragen bei mir und anderen Mitgliedern unserer B√ľrgerinitiative.)

Zun√§chst einmal ein bisschen Grundlagenwissen, (hoffentlich) so erkl√§rt dass es auch Menschen verstehen k√∂nnen, die nicht Elektrotechnik studiert haben. ūüėČ

WLAN ist ein “shared medium”, ein “geteiltes (√úbertragungs-) Medium”, d. h. die maximal erreichbare Geschwindigkeit wird zwischen allen Teilnehmern eines WLANs aufgeteilt. F√ľhrt also gerade eine Station im Netz einen gro√üen Download mit hoher Geschwindigkeit durch, dann werden die anderen Stationen im Netz entsprechend ausgebremst.

WLAN kann auf zwei Frequenz”b√§ndern” stattfinden, dem “alten” 2,4 GHz-Band und dem (relativ) neuen 5 GHz-Band. Client (also Laptop, Handy…) und Router (Access Point) m√ľssen jeweils beide das 5 GHz-Band beherrschen, damit dieses benutzt werden kann (Stichworte sind 802.11a oder 802.11ac, bei 802.11n kann es sich sowohl um 2,4 als auch 5 GHz handeln). Als “Access Point” bezeichnet man das WLAN-Radio in einem Router, es gibt auch separate Access Points, die nur der Koppelung von drahtlosen Stationen an ein drahtgebundenes LAN dienen.

Auf Grund seiner hohen Frequenzen ist das 5 GHz-Band “kurzwelliger”, dadurch ist seine Reichweite gegen√ľber dem 2,4 GHz-Band begrenzt (es durchdringt nicht so leicht Decken und W√§nde), was durchaus gewisse Vorteile hat, doch dazu sp√§ter.

Die gesamten 2,4 bzw. 5 GHz-B√§nder werden in so genannte “Kan√§le” aufgeteilt, damit sich mehrere Betreiber eines WLANs nicht “ins Gehege kommen” und jeweils einen eigenen Kanal zum √úbertragen haben. In eng besiedelten Gegenden, z. B. in Innenstadtbereichen, aber auch durchaus hier bei uns im Neubaugebiet, kommt es oft vor, dass sich Kan√§le √ľberlappen. Dies ist unbedingt zu vermeiden, weil dies die √úbertragungsrate f√ľr alle(!) beteiligten WLANs reduziert.

Um festzustellen, ob diese Situation bei sich selbst vorliegt, sollte man ein Tool wie den kostenlosen WiFiAnalyzer benutzen. Im Bereich “Channel Graph” kann man dann einen Graphen wie den Folgenden sehen:screenshot_20170105-213839-576x1024

Was sagt uns jetzt dieser Graph? Zum einen sehen wir oben in blau, dass hier das 2,4 GHz-Band betrachtet wird (man kann dort auch auf das 5 GHz-Band umschalten, um dieses zu betrachten). Unten sieht man die Kanäle im 2,4 GHz-Band, in Deutschland sind 1-13 erlaubt.

(An dieser Stelle die dringende Warnung, keine verbotenen Kan√§le zu benutzen. Dies kann St√∂rungen verursachen. Der Verursacher haftet f√ľr alle entstehenden Kosten, das kann schnell in die Tausende Euro gehen, plus eine empfindliche Geldbu√üe nach sich ziehen!)

Die einzelnen farbigen, mehr oder weniger “hohen” Buckel sind die Frequenzb√§nder, die die einzelnen WLANs belegen. Wie bereits gesagt sollten sich diese idealerweise nicht √ľberlappen. Die “H√∂he” der Buckel zeigen die Signalst√§rke an. Je h√∂her der Buckel, desto st√§rker das Signal. Wenn das eigene WLAN von einem oder mehreren fremden WLAN(s) √ľberlappt wird, dann ist der Einfluss umso geringer, je schw√§cher das oder die fremde(n) WLAN(s) ist/sind.

Idealerweise spricht man sich als Nachbarn gegenseitig ab, wer welchen Kanal belegt, damit eben nicht solche √úberlappungen zu Stande kommen. Der Bereich “Access Points” in der oben empfohlenen Android-App ist hier sehr hilfreich. Wenn man sich auf der eigenen Stra√üe bewegt, kann man an der Signalst√§rke relativ schnell erkennen, wo welches WLAN “zu Hause ist”.

Ein Access Point benutzt zu jedem Zeitpunkt nur einen bestimmten Kanal (bzw. mehrere Kan√§le geb√ľndelt, um den Durchsatz zu erh√∂hen). Viele Access Points sind ab Werk so eingestellt, dass sie sich automatisch den “besten” Kanal suchen. Ich pers√∂nlich rate dazu, den eigenen Access Point fest auf einen bestimmten Kanal einzustellen und diesen mit den Nachbarn zu koordinieren, um besagte √úberlappung zu verhindern.

Eine weitere Einstellung sollte auch nach M√∂glichkeit modifiziert werden. Viele Access Points erlauben die Einstellung der Sendeleistung. Diese sollte m√∂glichst konservativ gew√§hlt werden derart, dass der Access Point die eigenen Ger√§te gerade noch gut erreicht, jedoch nicht viel weiter sendet. Sonst kommt eben die erw√§hnte √úberlappung zu Stande, die man gerne vermeiden m√∂chte. Access Points, die so eine √úberlappung feststellen, k√∂nnen dann durchaus ihre Sendeleistung (in vorgegebenem Rahmen) erh√∂hen, um den anderen zu “√ľbert√∂nen”. Dies geschieht, damit wieder ein gewisser “Signal-Rauschabstand” gew√§hrleistet ist, um das (eigene) Signal vom “Rauschen” (dem Fremdsignal) sauber trennen zu k√∂nnen.

Um Überlappungen zu reduzieren oder zu vermeiden kann man auch die Kanalbreite reduzieren. In dem obigen Screenshot sieht man hauptsächlich WLANs, die eine Kanalbreite von 20 MHz benutzen. Wie bereits kurz erwähnt kann man die Kanalbreite erhöhen, um einen größeren Durchsatz zu erzielen. Das rote WLAN im obigen Diagramm benutzt eine Kanalbreite von 40 MHz. Dadurch kommen entsprechend viele Überlappungen zu Stande.

Reduziert man die Kanalbreite, so vermeidet man ggf. eine √úberlappung vollst√§ndig oder reduziert zumindest die Anzahl der √ľberlappenden Netze. Obwohl dadurch die (unter Idealbedingungen) maximal erzielbare Kanalbreite reduziert wird, wird man wahrscheinlich in der Praxis feststellen, dass der Betrieb nun wesentlich stabiler ist und die Transferraten wom√∂glich h√∂her sind als vorher!

Alternativ, und das ist meine dringendste Empfehlung, kann man auf das 5 GHz-Band ausweichen. Wenn alle eigenen Ger√§te dieses unterst√ľtzen, dann empfehle ich, das 2.4 GHz-Band komplett abzuschalten. Dies kommt auch einem Bluetooth-Betrieb zu Gute, der auf einem √§hnlichen Frequenzbereich stattfindet. Das 5 GHz-Band bietet deutlich h√∂here Transferraten und den zus√§tzlichen Vorteil, dass es nicht so “√ľberlaufen” ist wie das 2,4 GHz-Band. Dies ist zum einen der geringeren Verbreitung geschuldet, zum anderen aber auch der deutlich geringeren Durchdringung und damit Reichweite der 5 GHz-Wellen.

Hier noch einmal ein Screenshot von meiner eigenen Situation, diesmal im 5 GHz-Band:

screenshot_20170105-223020Man sieht, dass bei mir √ľberhaupt nur zwei Netze im 5 GHz-Band sichtbar sind. Mein eigenes (welches man an Hand der Signalst√§rke sehr einfach identifizieren kann) und ein fremdes. Der Signal-Rauschabstand zwischen diesen beiden Netzen ist jedoch so gro√ü, dass das Fremdnetz quasi nicht st√∂rt. Ich erreiche hier Transferraten von mehr als 200 MBit/s in beide Richtungen (beim Senden und beim Empfangen) mit Stationen, die das unterst√ľtzen.

So, das soll es gewesen sein. Ich hoffe, dieser Blog-Post nutzt dem einen oder dem anderen. Ich w√ľrde mich in diesem Fall √ľber einen Kommentar hier in meinem Blog sehr freuen. Fragen werde ich gerne beantworten. Sollte ich etwas vergessen haben, werde ich den Post noch entsprechend erg√§nzen.

Viel Erfolg beim Optimieren Eurer WLANs!

DrayTek Vigor130: Warnung vor “ALL”-Firmware

Aus eigener Erfahrung kann ich nur dringend vor der Installation der “ALL”-Firmware-Varianten beim DrayTek Vigor130 warnen, insbesondere wenn zwischen der installierten Version und der zu installierenden Version einige Builds liegen.

Die “ALL”-Variante beh√§lt die aktuellen Einstellungen bei, die “RST”-Variante setzt das Modem/den Router auf die Werkseinstellungen zur√ľck. Das klingt schlimmer als es ist, denn wenn man vorher die Einstellungen √ľber das Web-Interface herunter l√§dt/sichert, kann man diese nach erfolgreichem Upgrade wieder hoch laden/restaurieren.

Wie auch immer, ich hatte Version 3.7.8.3_m7 installiert und wollte auf 3.7.9.3_m7 upgraden, und zwar unter Verwendung der “ALL”-Variante. Beim Upgrade ist nichts schief gelaufen (jedenfalls nicht offensichtlich), trotzdem erhielt ich hinterher folgende Popup-Warnung im Browser:

screen-shot-2016-11-10-at-09-02-12Ich versuchte dann die selbe Firmwareversion erneut zu installieren, aber die Fehlermeldung erschien wieder. Au√üerdem wurde unten in der linken “Men√ľleiste” folgende Meldung angezeigt:

screen-shot-2016-11-10-at-10-54-23Ich versuchte also, die “RST”-(Reset)-Variante zu flashen — mit dem selben (Miss-) Erfolg. ūüôĀ

Bei einem Telefonat mit der wie immer sehr freundlichen und kompetenten DrayTek-Hotline wurde mir dann empfohlen, die TFTP-Notfall-Wiederherstellung zu nutzen, was ich dann auch tat.

Dazu muss man zun√§chst das Modem direkt per Netzwerkkabel mit einem Windows-PC/Laptop verbinden, welchen man manuell/statisch auf die IP-Adresse 192.168.1.2 setzt. Dann das Modem ausschalten,¬† den Resetknopf an der R√ľckseite mit einem Kuli gedr√ľckt halten, und dann das Modem wieder einschalten. Den Resetknopf f√ľr ca. f√ľnf Sekunden gedr√ľckt halten, dann startet der TFTP-Server im Modem.

Nun mit dem Firmware-Update-Tool, welches man bei DrayTek herunter laden kann, die Firmwaredatei an das Modem (unter der default-Adresse 192.168.1.1) schicken. Das ganze sollte √ľbrigens auch mit einem Linux- oder macOS-Rechner funktionieren, es reicht ein normaler TFTP-Client.

Fertig!

Nach dem Reboot dann noch √ľber das Webinterface die Konfiguration wieder restaurieren, und alles ist wieder gut.

Der ganze Vorgang hat insgesamt nur etwa zehn Minuten gedauert.

Update U-Boot on TP-Link TL-WDR4300

A couple of days ago while I was working from home my trusted TP-Link TL-WDR4300 seemed to have died suddenly (just a couple of days after the two year warranty had expired!) — at least this was the result of my initial investigations.

The symptom I had is that suddenly my internet connection seemed to be down — which was surprising enough, as since I upgraded to VDSL2 vectoring my line was rock-solid, and it normally dropped only once a month or even once every couple of months. When I tried to find out what happened I noticed that my router was inaccessible, I couldn’t even ping it. I thought it had crashed, so I power-cycled it to reboot it, but it didn’t come up…

So my conclusion was that it had died.

I quickly reconfigured a Linksys WRT1200AC which I bought a couple of months ago as a spare device, meant to replace the current router “one day”, and put it into operation…

Today I spent some time investigating what actually happened. I wanted to use the serial console of my rev. 1.7 device (the PCB is rev. 1.3), but found that there was no connector in place for the UART, just the holes in the PCB.

dav

So I quickly soldered in the pins, and connected the router to a laptop.

sdr

To my surprise the router booted without any issue at all. I played around with it until I was sure that there was absolutely no problem — I thought the file system in the flash memory might have been corrupted, but everything was ok.

So now that I had opened the device and connected a laptop to the serial console, I thought it would be a good occasion to update the U-Boot boot loader to a modified one by “pepe2k” that adds a lot of very useful features.

I used the instructions pepe2k provided on Github, specifically the part where he describes how to install via TFTP from the serial console. The “biggest challenge” was to find where to download the actual boot loader binary. Finally I found it here.

My VerizonWireless prepay experience

We just returned from a one month vacation trip to Florida. In order to be able to use the internet when on the go, and also to be able to make and receive phone calls we decided to use a prepay card from VerizonWireless (VZW), as they seem to have the best 4G (LTE) coverage. The SIM is normally $45 for a month, including unlimited texts and calls and 1 GB of data, but we got it from Walmart for about $37, plus we received a free one-time bonus of 1 GB data when we activated the SIM via phone.

Our customer experience was pretty bad, and I want to share with you what kind of problems we had so that you can avoid those if possible.

The phone I intended to use was an iPhone 6 Plus. This cell phone is among the cell phones that have the most LTE bands available in the world, and I explicitly checked to make sure that VZW’s bands are covered. But when I tried to use the phone it couldn’t attach to the network. I got in touch with VZW, and it turned out that they only let phones use their network (with their own VZW prepay SIMs, that is!) that have been sold by or for VZW. But after talking to them for a while and letting them know about my disappointment (because in Europe this doesn’t seem to be common) they agreed to make an exception and have my iPhone authorized to use the network.

Even after four days (they said it should take 48 hours max), more than 3.5 hours talking to or chatting with their support, and even changing the SIM in a nearby VZW store, my iPhone still didn’t work, so I looked into other options. It turned out that you can buy simply 4G cell phones here real dirt cheap, so I bought a Motorola Moto E (2nd Gen) for less than $50. This phone immediately worked with the SIM I had.

I logged onto their MyVerizon prepay Desktop Home page to check and update some settings. This portal was another really bad experience, something which you really cannot ask your customers to use. The issues I encountered were the following:

  • After I had entered my address here in Florida (we lived in the house of relatives), there was trailing characters in the street address which I didn’t enter, and which I could not remove by any means.
  • Furthermore I couldn’t change my device from the original iPhone 6 Plus to the new Motorola Moto E — all changes (including IMEI which was verified to be “valid” and “known” to VZW) seemed to the accepted, and change of device was confirmed, but when I went into the main menu and back to “Device” the iPhone was still listed.
  • In addition I couldn’t change my Voice Mail PIN, probably the reason why voice mail was not available for my SIM during the whole month of our stay.

As an alternative to the bad web portal I installed the “My Verizon Mobile” Android app, but that was disappointing, too. There was absolutely no way to tell the app not to ask for the password again — a bad thing as I normally use “strong” passwords which I cannot easily remember, so how to use the app when on the go?! More issues encountered were

  • “Usage” details permanently give me “An error occurred while processing your request;”
  • in “My Features” I couldn’t activate the “Block Premium Messaging” option (even though changing the switch produced a confirmation that said the change was successful); every time I return to this menu item the setting is back to allow premium messaging;
  • in “Settings” > “Contact Info” I couldn’t make any changes, as the app declared my email address invalid (as it contains a “+” in the so-called “local-part,” which is the part left of the “@”). That was of course nonsense, as RFC-2822 allows such email addresses, I constantly receive mail on such addresses and VZW’s web portal allowed it as “valid;”
  • changing my Voice Mail Password (PIN) was also impossible in the Android app. I always got an error message saying “We are sorry, but we are not able to process your request at this time. Please try again later.”

What I must admit, though, their staff were always very friendly and tried to help — but what can you do if your IT systems let you down?!

The main reason I write this blog post is to let people from Europe know about the limitations they might encounter when trying to use their own phone with a local prepay SIM. But I also want to let VZW know my frustration with their bad self-service tools. This is not how you treat your valuable customers!!!