Flashing a OnePlus One from CM to LineageOS

As Cyanogen Inc closed down its operations in December 2016, CyanogenMod was affected too and my OnePlus One (OPO) did not receive updates anymore. This is not ideal, as new and old bugs have will remain. For instance did my phone often not reconnect to the 4G network, when a wifi connection was lost, This was very annoying. For this reason, if was about time to upgrade to a new OS: LineageOS.


[LineageOS][1] is a fork of CyanogenMod and contunes the quite successful project for our benefit. [LineageOS][2]14 is compatible with Android 7.1 and very easy to install. These are the steps which I had to follow.

How to Upgrade

  • Create a backup with Helios. Use the [Chrome Helium app][3] if the app on your mobile phone refuses to start.
  • Download and install [adb][4]
  • Download the TWRP custom ROM:
  • Download [LineageOS][5]. The codename for the OPO is bacon.
  • Download the [Google apps mini distribution][6] (stock is too large) [here][7].
  • Enable developer tools and connect the phone with a USB cable
  • Reboot the device with adb:./adb reboot bootloader 
  • Check if the device is recognized:./fastboot devices 
  • Enable OEM unlock:fastboot oem unlock 
  • Install the custom rom:fastboot flash recovery twrp-x.x.x-x-bacon.img 
  • Reboot into the new ROM:With the device powered down, hold the Volume Down and Power buttons.

Copy the files to the device

# Lineage
adb push ~/Downloads/OPO-Upgrade/ /sdcard/
# Google Apps
adb push ~/Downloads/OPO-Upgrade/ /sdcard/```

Install both zip files by selecting first the LineageOS and then the Google Apps Zip file

Thats it. Reboot and begin with the setup or restore the backup.

## Update 28.09.2017

The problem that the phone would not reconnect to 3G/4G again after losing the Wifi signal still persisted with LineageOS. A friend recommended flashing the firmware of the device. After installing the version<span id="ERrNAupH" class="rHaZZnshWI">2016_1-25_.4.0.1.c7-00011</span> downloaded from [here][8] solved the issue for now. No more connection problems so far

<div class="twttr_buttons">
  <div class="twttr_twitter">
    <a href="" class="twitter-share-button" data-via="" data-hashtags=""  data-size="default" data-url=""  data-related="" target="_blank">Tweet</a>
  <div class="twttr_followme">
    <a href="" class="twitter-follow-button" data-show-count="true" data-size="default"  data-show-screen-name="false"  target="_blank">Follow me</a>


Das Phrasensammelsurium

Wer viel liest, dem stechen sie unweigerlich ins Auge: sinnbefreite und nervige Phrasen, die sich wie aus dem Nichts in verschiedenen Medien erscheinen und sich plötzlich überall ausbreiten. Journalisten, Autoren und Wissenschafter sind meist Vielleser und machen sich – ganz unbewusst – Ausdrucksweisen, einzelne Begriffe und ganze Phrasen zu eigen. Diese übernehmen sie dann in ihren eigenen Wortschatz und das Drama nimmt seinen Lauf.

Aufgrund mangelnden Detailwissens meinerseits möchte und kann ich gar nicht auf die sprachwissenschaftlichen Hintergründe eingehen. Man kann sich aber beispielsweise mit Hilfe des Google Ngram Viewers ansehen, wann bestimmte Begriffe im deutschen Buch-Korpus auftauchen. Leider gibt es diese Daten für die deutsche Sprache nur bis einschließlich 2008, weswegen ganz aktuelle Phrasen noch nicht enthalten sind. Abgebildet ist ein Beispiel für das Wort Narrativ, das nun allenthalben herhalten muss.

Selbstverständlich gibt es verschiedenste Projekte, wie beispielsweise die Floskelwoche oder dieser Artikel im Österreichischen Journalist, die sich ganz diesem Thema verschrieben haben. Ich möchte hier dennoch meine persönliche Liste nervtötender Phrasen und Füllwörter in mehr oder weniger alphabetischer Reihenfolge festhalten. Einsendungen sind sehr willkommen.

  • “Aber nun der Reihe nach …”
  • Alternativlos
  • “Am Ende des Tages”
  • “Ganz einem Thema verschrieben”
  • Inflationär
  • “X kann Y”. Beispiel: “Karl-Heinz kann Social Media”
  • Narrativ
  • “X neu denken”.
  • Postfaktisch
  • “So muss X”. Beispiel: “So muss Technik
  • Spannend!
  • “Wir sind X”. Beispiel: “Wir sind Papst

Phrase einreichen

Timelape Photography with the Camera Module V2 and a Raspberry Pi Model B

Recently, I bought a camera module for the Raspberry Pi and experimented a little bit with the possibilities a scriptable camera provides. The new Camera Module V2 offers 8.08 MP from a Sony sensor and can be controlled with a well documented Python library. It allows to take HD videos and shoot still images. Assembly is easy, but as the camera is attached with a rather short ribbon cable, which renders the handling is a bit cumbersome. For the moment, a modified extra hand from my soldering kit acts as a makeshift.

Initial Setup

The initial setup is easy and just requires a few steps, which is not surprising because most of the documentation is targeted to kids in order to encourage their inner nerd. Still works for me as well 🙂

Attach the cable to the raspberry pi as described here. You can also buy an adapter for the Pi Zero. Once the camera is wired to the board, activate the module with the tool raspi-config.

Then you are ready to install the Python library with sudo apt-get install python3-picamera, add your user to the video group with usermod -a -G video USERNAME  and then reboot the Raspberry. After you logged in again, you can start taking still images with the simple command raspistill -o output.jpg. You can find some more documentation and usage examples here.

Timelapse Photography

What I really enjoy is making timelapse videos with the Raspberry Pi, which gives a nice effect for everyday phenomena and allows to observe processes which are usually too slow to follow. The following Gif shows a melting ice cube. I took one picture every five seconds.

A Small Python Script

The following script creates a series of pictures with a defined interval and stores all images with a filename indicating the time of shooting in a folder. It is rather self explanatory. The camera needs a little bit of time to adjust, so we set the adjustTime variable to 5 seconds. Then we take a picture every 300 seconds, each image has a resolution of 1024×768 pixels.

import os
import time
import picamera
from datetime import datetime

# Grab the current datetime which will be used to generate dynamic folder names
d =
initYear = "%04d" % (d.year)
initMonth = "%02d" % (d.month)
initDate = "%02d" % (
initHour = "%02d" % (d.hour)
initMins = "%02d" % (d.minute)
initSecs = "%02d" % (d.second)

folderToSave = "timelapse_" + str(initYear) + str(initMonth) + str(initDate) +"_"+ str(initHour) + str(initMins)

# Set the initial serial for saved images to 1
fileSerial = 1

# Create and configure the camera

# Create and configure the camera
with picamera.PiCamera() as camera:
    camera.resolution = (1024, 768)
    #camera.exposure_compensation = 5

    # Start the preview and give the camera a couple of seconds to adjust

        start = time.time()
        while True:
            d =
            # Set FileSerialNumber to 000X using four digits
            fileSerialNumber = "%04d" % (fileSerial)

            # Capture the CURRENT time (not start time as set above) to insert into each capture image filename
            hour = "%02d" % (d.hour)
            mins = "%02d" % (d.minute)
            secs = "%02d" % (d.second)
            camera.capture(str(folderToSave) + "/" + str(fileSerialNumber) + "_" + str(hour) + str(mins) + str(secs) + ".jpg")

            # Increment the fileSerial
            fileSerial += 1

    except KeyboardInterrupt:
        print ('interrupted!')
        # Stop the preview and close the camera

finish = time.time()
print("Captured %d images in %d seconds" % (fileSerial,finish - start))

This script then can run unattended and it creates a batch of images on the Raspberry Pi.

Image Metadata

The file name preserves the time of the shot, so that we can see later when a picture was taken. But the tool also stores EXIF metadata, which can be used for processing. You can view the data with the exiftool.

>ExifTool Version Number         : 9.46
File Name                       : 1052.jpg
Directory                       : .
File Size                       : 483 kB
File Modification Date/Time     : 2016:07:08 08:49:52+02:00
File Access Date/Time           : 2016:07:08 09:19:14+02:00
File Inode Change Date/Time     : 2016:07:08 09:17:52+02:00
File Permissions                : rw-r--r--
File Type                       : JPEG
MIME Type                       : image/jpeg
Exif Byte Order                 : Big-endian (Motorola, MM)
Make                            : RaspberryPi
Camera Model Name               : RP_b'imx219'
X Resolution                    : 72
Y Resolution                    : 72
Resolution Unit                 : inches
Modify Date                     : 2016:07:05 08:37:33
Y Cb Cr Positioning             : Centered
Exposure Time                   : 1/772
F Number                        : 2.0
Exposure Program                : Aperture-priority AE
ISO                             : 50
Exif Version                    : 0220
Date/Time Original              : 2016:07:05 08:37:33
Create Date                     : 2016:07:05 08:37:33
Components Configuration        : Y, Cb, Cr, -
Shutter Speed Value             : 1/772
Aperture Value                  : 2.0
Brightness Value                : 2.99
Max Aperture Value              : 2.0
Metering Mode                   : Center-weighted average
Flash                           : No Flash
Focal Length                    : 3.0 mm
Maker Note Unknown Text         : (Binary data 332 bytes, use -b option to extract)
Flashpix Version                : 0100
Color Space                     : sRGB
Exif Image Width                : 1024
Exif Image Height               : 768
Interoperability Index          : R98 - DCF basic file (sRGB)
Exposure Mode                   : Auto
White Balance                   : Auto
Compression                     : JPEG (old-style)
Thumbnail Offset                : 1054
Thumbnail Length                : 24576
Image Width                     : 1024
Image Height                    : 768
Encoding Process                : Baseline DCT, Huffman coding
Bits Per Sample                 : 8
Color Components                : 3
Y Cb Cr Sub Sampling            : YCbCr4:2:0 (2 2)
Aperture                        : 2.0
Image Size                      : 1024x768
Shutter Speed                   : 1/772
Thumbnail Image                 : (Binary data 24576 bytes, use -b option to extract)
Focal Length                    : 3.0 mm
Light Value                     : 12.6

Processing Images

The Raspberry Pi would need a lot of time to create an animated Gif or a video from these images. This is why I decided to add new images automatically to a Git repository on Github and fetch the results on my Desktop PC. I created a new Git repository and adapted the script shown above to store the images within the folder of the repository. I then use the following script to add and push the images to Github using a cronjob.

>cd /home/stefan/Github/Timelapses
now=$(date +"%m_%d_%Y %H %M %S")
echo $now
git pull
git add *.jpg
git commit -am "New pictures added $now"
git push

You can add this to you user’s cron table with crontab -e and the following line, which adds the images every 5 minutes,

*/5	*	*	*	*	/home/stefan/Github/Timelapses/

On a more potent machine, you can clone the repository and pull the new images like this:

cd /home/stefan-srv/Github/Timelapses
now=$(date +"%m_%d_%Y %H %M %S")
echo "$now"
git pull --rebase

The file names are convenient for being able to read the date when it was taken, but most of the Linux tools require the files to be named within a sequence. The following code snippet renames the files into a sequence with four digits and pads them with zeros if possible.

for i in *.jpg; do
  new=$(printf "%04d.jpg" "$a") #04 pad to length of 4
  mv -- "$i" "$new"
  let a=a+1

Animated Gifs

Imagemagick offers a set of great tools for images processing. With its submodule convert, you can create animated Gifs from a series of images like this:

convert -delay 10 -loop 0 *.jpg Output.gif

This adds a delay after each images and loops the gif images infinitely. ImageMagick requires a lot of RAM for larger Gif images and does not handle memory allocation well, but the results are still nice. Note that the files get very large, so a smaller resolution might be more practical.

Still Images to Videos

The still images can also be converted in videos. Use the following command to create an image with 10 frames per second:

>avconv -framerate 10 -f image2 -i %04d.jpg -c:v h264 -crf 1

Example: Nordkette at Innsbruck, Tirol

This timelapse video of the Inn Valley Range in the north of the city of Innsbruck has been created by taking a picture with a Raspberry Pi Camera Module V2 every 5 minutes. This video consists of 1066 still images.

Blattlinien in überregionalen Tages- und Wochenzeitungen

Österreich verfügt über ein überschaubaren Zeitungsmarkt, dem es insbesondere an überregionalen Qualitätserzeugnissen mangelt. Trotz einiger weniger Lichtblicke, beherrscht das Kleinformat den Markt und damit zu weiten Teilen die öffentliche Meinung. Um dem Zeitungssterben entgegenzuwirken, bieten die meisten Tages- und Wochenzeitungen zusätzlich ein Online-Portal an. Das Österreichische Mediengesetz sieht in periodisch erscheinenden Medien eine sogenannte Offenlegung (§25) vor, in der nicht nur die Eigentumsverhältnisse der Medien, sondern auch eine Erklärung über die grundlegende Richtung eines periodischen Druckwerks anzugeben ist. Darunter versteht man die sogenannte Blattlinie, in der die grundlegende Orientierung eines Mediums dargelegt wird. Diese Blattlinie ist auch für Online-Medien vorgesehen und wird meist im Impressum angegeben. In Deutschland spricht man hingegen vom Tendenzschutz. Weitere Vorgaben, welche die Tendenz oder Richtung einer Publikation darlegen, finden sich oftmals in sogenannten Redaktionsrichtlinien (hier ein Beispiel des Datums) oder in den Statuten.

Die Blattlinien der Medien und ihre Web-Portalen bieten einen interessanten Überblick über das Selbstverständnis der österreichischen Medien. Anbei eine unkommentierte Liste der bekanntesten überregionalen Tages- und Wochenzeitungen und ihren Blattlinien. Nicht nur die Bezeichnung der Offenlegung (Blattlinie, grundlegende Ausrichtung, Grundsätze), sondern auch deren Umfang bieten Aufschluss über die Eigensichtweise der reichweitenstärksten Medien im Lande. Alle Beiträge sind direkte Zitate, die ich dem Impressum des jeweiligen Mediums entnommen habe. Alle Blattlinien stammen vom 28.10.2015.

Linienkultur: Überblick über die Blattlinien österreichischer Medien


Grundlegende Richtung:

Gegen das Falsche in Politik und Kultur. Für mehr Lebenslust.



Kleine Zeitung


  1. Der Verein fördert christliche Medienarbeit, insbesondere die Bildung von Medienfachleuten, die Herstellung und Verbreitung von Medienwerken aller Art, die dem Geist der katholischen Kirche und ihrer Lehre, den Dialog zwischen Glauben und Wissenschaft, der ökumenischen und interreligiösen Begegnung, der katholischen Soziallehre, dem Schutz der Menschenwürde und den Grundsätzen der Demokratie und Völkerverständigung dienen. 2. Der Verein verfolgt ausschließlich gemeinnützige, caritative und/oder kirchliche Zwecke im Sinne der §§ 34 ff Bundesabgabenordnung in der jeweils gültigen Fassung.

Grundlegende Richtung: ist eine von allen politischen Parteien und Interessenvertretungen unabhängige Plattform für digitale Medien. Sie steht auf dem Boden christlicher Weltanschauung, tritt für eine plurale, demokratische Gesellschaftsordnung, die Eigenständigkeit der Bundesländer und die völkerrechtliche Unabhängigkeit der Republik Österreich ein und begrüßt den europäischen Einigungsprozess.


Grundlegende Richtung:

Online Serviceseite für „Krone”-Abonnenten und „Krone”-BonusCard-Besitzer als auch Bestellseite für Neukunden.


Grundsätze und Ziel des KURIER:

A) Die politische (grundlegende geistige) Richtung des KURIER bestimmt der Herausgeber.

  1. Der KURIER ist eine unabhängige österreichische Tageszeitung.

  2. Die Redaktion hält sich daher von allen direkten und indirekten Einflüssen politischer Parteien und Interessengruppen frei.

  3. Der KURIER setzt sich vorbehaltlos für die Integrität, Eigenstaatlichkeit und den föderalistischen Aufbau der Republik Österreich und deren konstruktiven Beitrag zum europäischen Einigungsprozess ein.

  4. Der KURIER bekennt sich zur parlamentarischen Demokratie und zum Rechtsstaat. Durch seine publizistische Tätigkeit fördert er deren Weiterentwicklung. Er bekämpft konstruktiv Missstände im demokratischen Leben.

  5. Der KURIER betrachtet sich als Instrument der demokratischen Meinungsbildung im Sinne einer umfassenden Informationsfreiheit.

  6. Der KURIER tritt für die größtmögliche Freiheit der Staatsbürger im Rahmen der Gesetze ein. Er bejaht daher eine freie Gesellschaftsordnung und ihre geordnete Weiterentwicklung, die jeden Extremismus ausschließt.

  7. Der KURIER unterstützt Idee und System der Sozialen Marktwirtschaft unter Berücksichtigung der Ökologie.

  8. Richtschnur seiner publizistischen Tätigkeit ist die Vertiefung der Toleranz in allen Lebensbereichen, die Verteidigung der Gewissensfreiheit und die Achtung vor allen Glaubens- und Religionsgemeinschaften.

B) Blatt-Typus: Der KURIER ist eine überregionale Tageszeitung, die sich mit dem Ziel einer möglichst weiten Verbreitung an Leser aus allen Schichten der Bevölkerung wendet und diesen umfassende, objektive und rasche Information, kritische und profilierte Kommentierung und gehaltvolle Unterhaltung bietet.

Oe24 (Österreich)


Die Presse


Die grundlegende Blattlinie der “Presse” ist im Redaktionsstatut wie folgt festgehalten: “Die Presse vertritt in Unabhängigkeit von den politischen Parteien bürgerlich-liberale Auffassungen auf einem gehobenen Niveau. Sie tritt für die parlamentarische Demokratie auf der Grundlage des Mehrparteiensystems und die Rechtsstaatlichkeit ein.

Die Presse bekennt sich zu den Grundsätzen der sozialen Gerechtigkeit bei Aufrechterhaltung der Eigenverantwortlichkeit des Staatsbürgers, zur Wahrung des privaten Eigentums unter Beachtung seiner Verpflichtungen gegenüber der Gesellschaft, zu den Grundsätzen der sozialen Marktwirtschaft, zur freien unternehmerischen Initiative und zum Leistungswettbewerb.

Sie verteidigt die Grundfreiheiten und Menschenrechte und bekämpft alle Bestrebungen, die geeignet sind, diese Freiheiten und Rechte oder die demokratische rechtsstaatliche Gesellschaftsordnung zu gefährden.

Die Presse betrachtet es als journalistische Standespflicht, ihre Leser objektiv und so vollständig wie nur möglich über alle Ereignisse von allgemeinem Interesse zu informieren. Stellung zu nehmen und Kritik zu üben wird von der Tageszeitung Die Presse als ihre Aufgabe und ihr unveräußerliches Recht angesehen.

Salzburger Nachrichten


Die Salzburger Nachrichten sind eine parteipolitisch unabhängige Tageszeitung, dem christlichen Weltbild verpflichtet, und treten unabdingbar für die Freiheit des einzelnen Menschen ein. Die Salzburger Nachrichten sind gegen jede totalitäre Herrschaftsform, respektieren die von der UNO deklarierten Menschenrechte und bekennen sich zu einem neutralen demokratischen Österreich, zur Rechtstaatlichkeit und zum System der sozialen Marktwirtschaft. Die Salzburger Nachrichten sehen in der Erfüllung ihrer Aufgabe, der Information und der Kontrolle, einen wesentlichen Beitrag zur demokratischen Gesellschaft. Die Freiheit der Journalisten, nach bestem Wissen und Gewissen arbeiten zu können, ist durch den Herausgeber garantiert.

Der Standard


Der Standard ist ein liberales Medium. Es ist unabhängig von politischen Parteien, Institutionen und Interessengruppen und wendet sich an alle Leserinnen und Leser, die hohe Ansprüche an eine gründliche und umfassende Berichterstattung sowie an eine fundierte, sachgerechte Kommentierung auf den Gebieten von Wirtschaft, Politik, Kultur und Gesellschaft stellen. tritt ein:

  • für die Wahrung und Förderung der parlamentarischen Demokratie und der republikanisch politischen Kultur.
  • für rechtsstaatliche Ziele bei Ablehnung von politischem Extremismus und Totalitarismus.
  • für Stärkung der wirtschaftlichen Wettbewerbsfähigkeit des Landes nach den Prinzipien einer sozialen Marktwirtschaft.
  • für Toleranz gegenüber allen ethnischen und religiösen Gemeinschaften.
  • für die Gleichberechtigung aller Staatsbürger und Staatsbürgerinnen und aller Bundesländer der Republik Österreich.

Sie werden sagen: “Das können andere auch sagen.” Das stimmt. Doch es kommt darauf an, mit welchem Leben die Lippenbekenntnisse erfüllt werden. DER STANDARD I leben die Blattphilosophie in einer ebenso klaren wie anspruchsvollen Weise. Er trennt zwischen Bericht und Kommentar, gewichtet die Ereignisse und lässt seinen Lesern den nötigen Spielraum für die eigene Meinung. So fördert er, was zugleich sein Ziel ist: eine mündige Leserschaft.

Tiroler Tageszeitung

Grundlegende Richtung: tritt im Interesse der Steuerzahler für eine sparsame Gestion der öffentlichen Haushalte ein und ist dort besonders kritisch, wo mit fremdem Geld gewirtschaftet wird; zum Beispiel bei staatsnahen Organisationen und in Publikumsaktiengesellschaften. setzt sich für eine breite Streuung des Aktienbesitzes und eine offene, transparente Börse ein. Ein Hauptziel der Nachrichtenplattform ist es, mit seinen Usern in einen Dialog zu treten, für sie nützlich zu sein und ihre Unabhängigkeit durch nachhaltigen wirtschaftlichen Erfolg zu sichern.