diff --git a/aports/device/device-nokia-n900/APKBUILD b/aports/device/device-nokia-n900/APKBUILD
index e88652352a08b6e62128a3c5483b8fc7916c6882..4fb90d6cfbed2dfa12a4830d5853704552c6ae2e 100644
--- a/aports/device/device-nokia-n900/APKBUILD
+++ b/aports/device/device-nokia-n900/APKBUILD
@@ -1,6 +1,6 @@
 pkgname=device-nokia-n900
 pkgver=2
-pkgrel=7
+pkgrel=8
 pkgdesc="Nokia N900"
 url="https://github.com/postmarketOS"
 arch="noarch"
@@ -30,6 +30,7 @@ source="
 	weston.ini
 	i3wm/i3wm.conf
 	i3wm/i3status.conf
+	i3wm/bq27200_status.sh
 "
 options="!check"
 
@@ -93,6 +94,8 @@ i3wm() {
 		"$subpkgdir"/etc/skel/.config/i3/config
 	install -D -m644 "$srcdir"/i3status.conf \
 		"$subpkgdir"/etc/skel/.config/i3/i3status.conf
+	install -D -m755 "$srcdir"/bq27200_status.sh \
+		"$subpkgdir"/etc/skel/.config/i3/bq27200_status.sh
 }
 
 nonfree_firmware() {
@@ -114,5 +117,6 @@ dc585e11bf4e06e36c5c62bcc024eaacecc30437d9da5257df14be05e247a2f2bc208874be3058ed
 143c21f0b18a016d37cb44178e9daea09f128a90769b48353c03c3f245cb9b1f7e773b9ccee084973fc78ddd7a18c2642e54888a85bda7c7daecddc9a8c62eff  pointercal
 e023df91295fe7e410e163747d17e5b92fe3c022ff076e286778b8334368f885603b8fda65671e4a7328766da7b2552ea4df1b1399df23e504a41a6655771142  asound.state
 7f48d1a044f8c02f7b1d11487ec1f83978d9b0ea12529156e7418f82be556d9baee32b70c4d911174e388bb4941dc19519e93e7551d00ffcd825c848665ff096  weston.ini
-bd140c57259f8788c1db49e0b85d17868d837fa094f8d3bb3dc5114b4c6ad5c184b718ceb60b920cefe6f42162477c9753d7784494b7787202c6ba57b49d5005  i3wm.conf
-ea70ed51ed55ff307a6562985c8919d3e57c8bf6a4f6ab9fe5329477f0409da9424ca5c8371fb497ecfc5438c106d967f8258054725e4eb84e4a49e7f95f5dcd  i3status.conf"
+387c76ef51d08b1f397364657ab32c5915fbd62b2786e9fd61b47e9eeed36d24571e22974ea36cb1b01c25eef5789c4e8e1de9a23de3a4a9192e727ed6a7ab67  i3wm.conf
+3bed8554400d6bbebf7e61b14f347a0f3e24b29be296c56fc829ed655cf67fa547c09bb715589b716d6c3f04492e9f3a12473dce6c7151bc15562b9d102bac2f  i3status.conf
+4e7abd1ac6223494b2ce96f7fb2dfe6116ee8a526440df07307994ed577f1860222548f7512273b5a21febac8119794774658f60e5d6976747ddc60323d26a62  bq27200_status.sh"
diff --git a/aports/device/device-nokia-n900/i3wm/bq27200_status.sh b/aports/device/device-nokia-n900/i3wm/bq27200_status.sh
new file mode 100755
index 0000000000000000000000000000000000000000..599e994f58d62411fa4d75d6701d2454458dcf41
--- /dev/null
+++ b/aports/device/device-nokia-n900/i3wm/bq27200_status.sh
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+# i3status wrapper for displaying correct battery status on N900/bq27200
+#
+# Author:
+# - Sicelo A. Mhlongo <absicsz@gmail.com> (2018)
+#
+# Based on i3status/contrib/net-speed.sh by
+#
+# - Moritz Warning <moritzwarning@web.de> (2016)
+# - Zhong Jianxin <azuwis@gmail.com> (2014)
+#
+# See file LICENSE in the i3status root directory for license information.
+#
+
+battery_path="/sys/class/power_supply/bq27200-0/"
+
+get_battery(){
+        read capacity < "${battery_path}capacity"
+        read chg_full < "${battery_path}charge_full"
+        read voltage < "${battery_path}voltage_now"
+        read disch_rate < "${battery_path}current_now"
+        notification="$capacity%\/$(( ( chg_full / 1000 ) ))mAh -- $(( ( voltage / 1000 ) ))mV @ $(( ( disch_rate / -1000 ) ))mA"
+}
+
+# When 'output_mode' is set to "i3bar", i3status produces JSON output. We
+# must read and emit the first three lines of output without modification
+# as they make up the header. Once in the 'while' loop, we read a line of
+# output from i3status, remove the opening field delimiter ,[ and prepend
+# the calculated battery info and a delimiter
+
+/usr/bin/i3status -c ~/.config/i3/i3status.conf |  ( read line && \
+echo "$line" && read line && echo "$line" && read line && echo "$line" && \
+while :
+do
+        read line
+        get_battery
+        echo ",[{\"full_text\":\"${notification}\"},${line#,\[}" || exit 1
+done )
diff --git a/aports/device/device-nokia-n900/i3wm/i3status.conf b/aports/device/device-nokia-n900/i3wm/i3status.conf
index ef9c77d8d08195faa7202baab612d96a4086c616..a24d29807ccacde05667d1de8add71974b16c571 100644
--- a/aports/device/device-nokia-n900/i3wm/i3status.conf
+++ b/aports/device/device-nokia-n900/i3wm/i3status.conf
@@ -12,11 +12,11 @@ general {
         color_good = "#009900"
         color_bad = "#990000"
         color_degraded = "#999900"
+        output_format = "i3bar"
 }
 
 order += "disk /"
 order += "wireless _first_"
-order += "battery all"
 order += "load"
 order += "tztime local"
 
@@ -25,12 +25,8 @@ wireless _first_ {
         format_down = "W: down"
 }
 
-battery all {
-        format = "%status %percentage %remaining"
-}
-
 tztime local {
-        format = "%Y-%m-%d %H:%M:%S"
+        format = "%Y-%m-%d %H:%M"
 }
 
 load {
diff --git a/aports/device/device-nokia-n900/i3wm/i3wm.conf b/aports/device/device-nokia-n900/i3wm/i3wm.conf
index edae49dcf16cc47bd933ab4e1f01243894a4b99b..de7198a537328f8eb6e05e80df670eca1bb18e1b 100644
--- a/aports/device/device-nokia-n900/i3wm/i3wm.conf
+++ b/aports/device/device-nokia-n900/i3wm/i3wm.conf
@@ -3,6 +3,11 @@ font pango:monospace 8
 new_window 1pixel
 
 mode "workspace" {
+        bindsym a workspace 1
+        bindsym s workspace 2
+        bindsym d workspace 3
+        bindsym f workspace 4
+        bindsym g workspace 5
         bindsym Left workspace prev
         bindsym Right workspace next
         bindsym Shift+Left move container to workspace prev
@@ -44,7 +49,7 @@ bindsym XF86ScreenSaver exec --no-startup-id lock.sh
 # finds out, if available)
 bar {
         position top
-        status_command i3status --conf ~/.config/i3/i3status.conf
+        status_command exec ~/.config/i3/bq27200_status.sh
         colors {
                 background #000000
                 statusline #ffffff