diff --git a/android/gradle.properties b/android/gradle.properties
index 135006f9c1386c8757595c43e890e911f732f5a3..85b94f88ee157e1d1b3cec184c8948902443d36f 100644
--- a/android/gradle.properties
+++ b/android/gradle.properties
@@ -1,5 +1,5 @@
 org.gradle.jvmargs=-Xmx1536M
 android.useAndroidX=true
 android.enableJetifier=true
-app.versionName=0.0.6
-app.versionCode=6
+app.versionName=0.0.7
+app.versionCode=7
diff --git a/fastlane/metadata/android/en-US/changelogs/7.txt b/fastlane/metadata/android/en-US/changelogs/7.txt
new file mode 100644
index 0000000000000000000000000000000000000000..a345447c07623ed595a7109163f79087d4773ae7
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/7.txt
@@ -0,0 +1 @@
+Add a "4 arrows" command keyboard
diff --git a/fastlane/metadata/android/fr-FR/changelogs/7.txt b/fastlane/metadata/android/fr-FR/changelogs/7.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e01a3eb8dee3efde0eac918ffc3871ab0411fb0c
--- /dev/null
+++ b/fastlane/metadata/android/fr-FR/changelogs/7.txt
@@ -0,0 +1 @@
+Ajout d'un clavier de commandes "4 flèches"
diff --git a/lib/layout/keyboard.dart b/lib/layout/keyboard.dart
new file mode 100644
index 0000000000000000000000000000000000000000..a8b7a69a9023f63bfc73fcc3d168078b82df1746
--- /dev/null
+++ b/lib/layout/keyboard.dart
@@ -0,0 +1,88 @@
+import 'dart:math';
+
+import 'package:flutter/material.dart';
+
+import '../provider/data.dart';
+import '../utils/api.dart';
+
+class Keyboard {
+
+  static Container buildWidget(Data myProvider) {
+    Widget buildKeyWidget(String direction) {
+      String keyText = '';
+
+      String north = '🔼';
+      String south = '🔽';
+      String west = '◀️';
+      String east = '▶️';
+
+      if (direction == 'north') {
+        keyText = north;
+      } else {
+        if (direction == 'south') {
+          keyText = south;
+        } else {
+          if (direction == 'west') {
+            keyText = west;
+          } else {
+            if (direction == 'east') {
+              keyText = east;
+            }
+          }
+        }
+      }
+
+      return TextButton(
+        style: TextButton.styleFrom(
+          padding: const EdgeInsets.all(0),
+        ),
+        child: Text(
+          keyText,
+          style: TextStyle(
+            fontSize: 60.0,
+            fontWeight: FontWeight.w800,
+          ),
+          textAlign: TextAlign.center
+        ),
+        onPressed: () {
+          if (keyText != '') {
+            Api.move(myProvider, direction);
+          }
+        },
+      );
+    }
+
+    return Container(
+      margin: EdgeInsets.symmetric(horizontal: 2),
+      padding: EdgeInsets.all(2),
+
+      child: Table(
+        defaultVerticalAlignment: TableCellVerticalAlignment.middle,
+        children: [
+          TableRow(
+            children: [
+              TableCell(child: buildKeyWidget('')),
+              TableCell(child: buildKeyWidget('north')),
+              TableCell(child: buildKeyWidget('')),
+            ]
+          ),
+          TableRow(
+            children: [
+              TableCell(child: buildKeyWidget('west')),
+              TableCell(child: buildKeyWidget('')),
+              TableCell(child: buildKeyWidget('east')),
+            ]
+          ),
+          TableRow(
+            children: [
+              TableCell(child: buildKeyWidget('')),
+              TableCell(child: buildKeyWidget('south')),
+              TableCell(child: buildKeyWidget('')),
+            ]
+          ),
+        ],
+      )
+    );
+  }
+
+}
diff --git a/lib/screens/home.dart b/lib/screens/home.dart
index 15439f75078b5da02eec770e4886bec02b52a4c2..325686a3f0ecaeda5907e77b3f10d6658c3fb367 100644
--- a/lib/screens/home.dart
+++ b/lib/screens/home.dart
@@ -1,6 +1,7 @@
 import 'package:flutter/material.dart';
 import 'package:provider/provider.dart';
 
+import '../layout/keyboard.dart';
 import '../provider/data.dart';
 import '../screens/settings.dart';
 import '../utils/api.dart';
@@ -52,6 +53,7 @@ class _HomeState extends State<Home> {
         child: Center(
           child: Column(
             children: [
+              Keyboard.buildWidget(myProvider),
               FlatButton(
                 child: Container(
                   child: Text('get API status'),
@@ -59,6 +61,7 @@ class _HomeState extends State<Home> {
                 onPressed: () => Api.updateApiStatus(myProvider),
               ),
               Text(myProvider.apiStatus)
+
             ],
           )
         ),
diff --git a/lib/utils/api.dart b/lib/utils/api.dart
index 043e76e09abbdd973e16b1f58c94b6333903c0f6..19716120facf47cee1464c13c3da05ebc6317261 100644
--- a/lib/utils/api.dart
+++ b/lib/utils/api.dart
@@ -19,4 +19,19 @@ class Api {
     myProvider.updateApiStatus(status['status']);
   }
 
+  static Future<void> move(Data myProvider, String direction) async {
+
+    final response = await http.get(
+      Uri.http(
+        myProvider.apiHost,
+        direction
+      )
+    );
+
+    String responseData = utf8.decode(response.bodyBytes);
+    Map<String, dynamic> result = json.decode(responseData);
+
+    myProvider.updateApiStatus(result['result']);
+  }
+
 }