diff --git a/NucuCar.Sensors/NucuCar.Sensors.csproj b/NucuCar.Sensors/NucuCar.Sensors.csproj
index 9a1cfd5..9e3f884 100644
--- a/NucuCar.Sensors/NucuCar.Sensors.csproj
+++ b/NucuCar.Sensors/NucuCar.Sensors.csproj
@@ -78,7 +78,7 @@
-
+
diff --git a/NucuCar.Domain.Telemetry/Abstractions/ITelemeter.cs b/NucuCar.Telemetry/Abstractions/ITelemeter.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/Abstractions/ITelemeter.cs
rename to NucuCar.Telemetry/Abstractions/ITelemeter.cs
diff --git a/NucuCar.Domain.Telemetry/Abstractions/TelemetryPublisher.cs b/NucuCar.Telemetry/Abstractions/TelemetryPublisher.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/Abstractions/TelemetryPublisher.cs
rename to NucuCar.Telemetry/Abstractions/TelemetryPublisher.cs
diff --git a/NucuCar.Domain.Telemetry/NucuCar.Domain.Telemetry.csproj b/NucuCar.Telemetry/NucuCar.Telemetry.csproj
similarity index 100%
rename from NucuCar.Domain.Telemetry/NucuCar.Domain.Telemetry.csproj
rename to NucuCar.Telemetry/NucuCar.Telemetry.csproj
diff --git a/NucuCar.Domain.Telemetry/Publishers/TelemetryPublisherAzure.cs b/NucuCar.Telemetry/Publishers/TelemetryPublisherAzure.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/Publishers/TelemetryPublisherAzure.cs
rename to NucuCar.Telemetry/Publishers/TelemetryPublisherAzure.cs
diff --git a/NucuCar.Domain.Telemetry/Publishers/TelemetryPublisherConsole.cs b/NucuCar.Telemetry/Publishers/TelemetryPublisherConsole.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/Publishers/TelemetryPublisherConsole.cs
rename to NucuCar.Telemetry/Publishers/TelemetryPublisherConsole.cs
diff --git a/NucuCar.Domain.Telemetry/Publishers/TelemetryPublisherDisk.cs b/NucuCar.Telemetry/Publishers/TelemetryPublisherDisk.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/Publishers/TelemetryPublisherDisk.cs
rename to NucuCar.Telemetry/Publishers/TelemetryPublisherDisk.cs
diff --git a/NucuCar.Domain.Telemetry/Publishers/TelemetryPublisherFirestore.cs b/NucuCar.Telemetry/Publishers/TelemetryPublisherFirestore.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/Publishers/TelemetryPublisherFirestore.cs
rename to NucuCar.Telemetry/Publishers/TelemetryPublisherFirestore.cs
diff --git a/NucuCar.Domain.Telemetry/Readme.md b/NucuCar.Telemetry/Readme.md
similarity index 100%
rename from NucuCar.Domain.Telemetry/Readme.md
rename to NucuCar.Telemetry/Readme.md
diff --git a/NucuCar.Domain.Telemetry/Telemetry.cs b/NucuCar.Telemetry/Telemetry.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/Telemetry.cs
rename to NucuCar.Telemetry/Telemetry.cs
diff --git a/NucuCar.Domain.Telemetry/TelemetryConfig.cs b/NucuCar.Telemetry/TelemetryConfig.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/TelemetryConfig.cs
rename to NucuCar.Telemetry/TelemetryConfig.cs
diff --git a/NucuCar.Domain.Telemetry/TelemetryPublisherFactory.cs b/NucuCar.Telemetry/TelemetryPublisherFactory.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/TelemetryPublisherFactory.cs
rename to NucuCar.Telemetry/TelemetryPublisherFactory.cs
diff --git a/NucuCar.Domain.Telemetry/TelemetryPublisherOptions.cs b/NucuCar.Telemetry/TelemetryPublisherOptions.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/TelemetryPublisherOptions.cs
rename to NucuCar.Telemetry/TelemetryPublisherOptions.cs
diff --git a/NucuCar.Domain.Telemetry/TelemetryPublisherType.cs b/NucuCar.Telemetry/TelemetryPublisherType.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/TelemetryPublisherType.cs
rename to NucuCar.Telemetry/TelemetryPublisherType.cs
diff --git a/NucuCar.Domain.Telemetry/TelemetryWorker.cs b/NucuCar.Telemetry/TelemetryWorker.cs
similarity index 100%
rename from NucuCar.Domain.Telemetry/TelemetryWorker.cs
rename to NucuCar.Telemetry/TelemetryWorker.cs
diff --git a/NucuCar.TestClient/NucuCar.TestClient.csproj b/NucuCar.TestClient/NucuCar.TestClient.csproj
index adc560d..22c1d8f 100644
--- a/NucuCar.TestClient/NucuCar.TestClient.csproj
+++ b/NucuCar.TestClient/NucuCar.TestClient.csproj
@@ -13,8 +13,8 @@
-
+
diff --git a/NucuCar.UnitTests/NucuCar.UnitTests.csproj b/NucuCar.UnitTests/NucuCar.UnitTests.csproj
index b3943b5..f1d1264 100644
--- a/NucuCar.UnitTests/NucuCar.UnitTests.csproj
+++ b/NucuCar.UnitTests/NucuCar.UnitTests.csproj
@@ -16,9 +16,9 @@
-
+
diff --git a/NucuCar.sln b/NucuCar.sln
index dc1abb2..0c4e409 100644
--- a/NucuCar.sln
+++ b/NucuCar.sln
@@ -8,7 +8,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NucuCar.Domain", "NucuCar.D
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NucuCar.UnitTests", "NucuCar.UnitTests\NucuCar.UnitTests.csproj", "{C6F07921-1052-4945-911E-F328A622F229}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NucuCar.Domain.Telemetry", "NucuCar.Domain.Telemetry\NucuCar.Domain.Telemetry.csproj", "{C20407F3-AB62-4590-B4FF-A0DCFCFA232B}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NucuCar.Telemetry", "NucuCar.Telemetry\NucuCar.Telemetry.csproj", "{C20407F3-AB62-4590-B4FF-A0DCFCFA232B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/Readme.md b/Readme.md
index 6ad171b..96edbe0 100644
--- a/Readme.md
+++ b/Readme.md
@@ -1,53 +1,112 @@
-# WIP
+# Introduction (WIP)
-## Solution Information
+An attempt to create a remote weather station hub on the Raspberry Pi.
-An attempt to create a remote controlled toy car.
-Powered by Raspberry Pi and .Net Core 3.1.
+The repository consists on several modules written in C# and an Android application written in Java.
-https://docs.microsoft.com/en-us/dotnet/core/install/
+Communication between the Raspberry and the Android application is done via [gRPC](https://grpc.io/).
+
+**The project is still undergoing development and it's not production ready.**
[![CircleCI](https://circleci.com/gh/dnutiu/NucuCar.svg?style=svg)](https://circleci.com/gh/dnutiu/NucuCar)
-### NucuCar.Domain
+# Architecture
-Holds common classes and interfaces that are required by the projects.
+TBD
-It provides all the types that are generated via protocol buffers.
+# Installing and Developing
-### NucuCar.Common
+## Requirements
-Contains implementations for common logic, contains wrappers.
-Usually utility classes and methods that are not necessarily tied to this solution
-and can be reused.
+To build this project you will need to install .Net Core 3.1 and Android Studio.
-### NucuCar.Telemetry
+* https://docs.microsoft.com/en-us/dotnet/core/install/
+* https://developer.android.com/studio
-Holds concrete implementation for telemetry publishers and workers.
+To run this project on the Raspberry Pi you will need dotnet core 3.1. installed.
-### NucuCar.Sensors
-Manages all the car sensors. For more info see the readme file located in the project directory.
-### NucuCar.TestClient
+## Building
-Command line utility to play around with the car functionality. You can use it to remotely read data from the sensors via gRPC methods and to publish and read telemetry data.
+The following script provides instructions on how to build the whole project and deploy the NucuCar.Sensors module on the Raspberry Pi.
----
-
-### Building and Running.
-
-To build the project and target the Raspberry Pi you can use the following command:
+#### Manual
```$xslt
+// Build project
dotnet build --runtime linux-arm -p:PublishSingleFile=true --configuration Release
+
+// Navigate to desired project directory, for example NucuCar.Sensors.
+cd NucuCar.Sensors
+
+// Create .tar
+tar -zcvf nh.tar.gz .\bin\Release\netcoreapp3.1\linux-arm\*
+
+// Copy onto pi (replace with your ip, user)
+sftp pi@192.168.0.100
+sftp> put nh.tar.gz
+sftp> exit
+
+// SSH into pi
+ssh pi@192.168.0.100
+
+// Extract the archive and cd into it
+tarĀ -zxvf nh.tar.gz
+cd bin/Release/netcoreapp3.1/linux-arm/
+
+// Grant execution permissions
+chmod +x NucuCar.Sensors
+
+// Run the program
+./NucuCar.Sensors
```
---
+#### Docker-Compose
+
To run the project you can take advantage of `docker-compsose` and run it with the following commands:
```bash
git clone https://github.com/dnutiu/NucuCar.git
cd NucuCar
docker-compose up
-```
\ No newline at end of file
+```
+_(This is not recommended as the performance will take a significant hit.)_
+
+## Directory Structure Overview
+
+### NucuHub.Android
+
+Holds the Android application.
+
+We are currently targeting Android API 29+.
+
+### NucuCar.Domain
+
+Holds common classes and interfaces that are required by the projects,
+provides all the types that are generated via protocol buffers and some utility classes.
+
+### NucuCar.Telemetry
+
+Holds concrete implementation for telemetry publishers and workers.
+The Telemetry project can be used by other projects such as
+NucuCar.Sensors to send telemetry into the cloud.
+
+This project is not deployed.
+
+### NucuCar.Sensors
+
+Manages all the sensors. For more info see the readme file located in the project directory.
+
+This module is runnable and is deployed on the Raspberry Pi.
+
+### NucuCar.TestClient
+
+Command line utility to play around with the car functionality.
+You can use it to remotely read data from the sensors via gRPC methods and
+to publish and read telemetry data.
+
+### Docs
+
+Holds project resources and documentation.