diff --git a/.vscode/settings.json b/.vscode/settings.json
index 0dc8485d70a8b9adafe9b3c138a299d38e639e26..74d9bae1b0355fa2feef595e842cfb7ee44eaaf3 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,7 +1,19 @@
 {
     "files.associations": {
         "ratio": "cpp",
-        "sstream": "cpp"
+        "sstream": "cpp",
+        "filesystem": "cpp",
+        "string": "cpp",
+        "chrono": "cpp",
+        "variant": "cpp",
+        "map": "cpp",
+        "set": "cpp",
+        "string_view": "cpp",
+        "unordered_map": "cpp",
+        "locale": "cpp"
     },
-    "editor.defaultFormatter": "chiehyu.vscode-astyle"
+    "editor.defaultFormatter": "chiehyu.vscode-astyle",
+    "[xml]": {
+        "editor.defaultFormatter": "redhat.vscode-xml"
+    }
 }
\ No newline at end of file
diff --git a/Modules/StateViewer/stateviewermodule.cpp b/Modules/StateViewer/stateviewermodule.cpp
index d0fe2dc96d698d04c845d53d98da0ede45a44bd9..0164c7817aa4b28f4b8e4320c4d0563f0a75a7af 100644
--- a/Modules/StateViewer/stateviewermodule.cpp
+++ b/Modules/StateViewer/stateviewermodule.cpp
@@ -1,26 +1,29 @@
 #include "stateviewermodule.h"
-#include "ui_stateviewermodule.h"
 
 #include <QInputDialog>
 #include <QLineEdit>
-#include "Core/modulemessagesbroker.h"
+
 #include "Components/TopicAndFieldSelector/topicandfieldselector.h"
+#include "Core/modulemessagesbroker.h"
+#include "ui_stateviewermodule.h"
 
-enum states {INIT = 1,
-             INIT_DONE = 2,
-             INIT_ERROR = 3,
-             TEST_MODE = 8,
-             SENSORS_CALIBRATION = 4,
-             ALGOS_CALIBRATION = 5,
-             DISARMED = 6,
-             ARMED = 7,
-             ASCENDING = 10,
-             DROGUE_DESCENT = 11,
-             TERMINAL_DESCENT = 12,
-             LANDED = 13
-            };
-
-StateViewerModule::StateViewerModule(QWidget* parent) : DefaultModule(parent), ui(new Ui::StateViewerModule) {
+enum states {
+    INVALID = 0,
+    INIT,
+    INIT_ERROR,
+    SENSORS_CALIBRATION,
+    ALGOS_CALIBRATION,
+    DISARMED,
+    TEST_MODE,
+    ARMED,
+    ASCENDING,
+    DROGUE_DESCENT,
+    TERMINAL_DESCENT,
+    LANDED
+};
+
+StateViewerModule::StateViewerModule(QWidget* parent)
+    : DefaultModule(parent), ui(new Ui::StateViewerModule) {
     ui->setupUi(this);
     defaultContextMenuSetup();
 
@@ -34,22 +37,19 @@ StateViewerModule::StateViewerModule(QWidget* parent) : DefaultModule(parent), u
     labels.append(ui->label_8_TERMINAL);
     labels.append(ui->label_9_END);
 
-
-    QMap<int, int>indexes{
+    labelsIndexes = {
         {INIT, 0},
         {INIT_ERROR, 0},
-        {INIT_DONE, 0},
         {TEST_MODE, 1},
         {SENSORS_CALIBRATION, 2},
         {ALGOS_CALIBRATION, 2},
-        {DISARMED, 3 },
+        {DISARMED, 3},
         {ARMED, 4},
         {ASCENDING, 5},
         {DROGUE_DESCENT, 6},
         {TERMINAL_DESCENT, 7},
         {LANDED, 8},
     };
-    labelsIndexes = indexes;
 }
 
 StateViewerModule::~StateViewerModule() {
@@ -57,9 +57,7 @@ StateViewerModule::~StateViewerModule() {
     delete ui;
 }
 
-QWidget* StateViewerModule::toWidget() {
-    return this;
-}
+QWidget* StateViewerModule::toWidget() { return this; }
 
 XmlObject StateViewerModule::toXmlObject() {
     XmlObject obj(getName(ModuleId::STATEVIEWER));
@@ -70,47 +68,45 @@ XmlObject StateViewerModule::toXmlObject() {
 }
 
 void StateViewerModule::fromXmlObject(const XmlObject& xmlObject) {
-    if(xmlObject.getObjectName() == getName(ModuleId::STATEVIEWER)) {
-        auto f = TopicAndFieldFilter::fromStringUnsafe(xmlObject.getAttribute("filter"));
-        setFilter(f);
+    if (xmlObject.getObjectName() == getName(ModuleId::STATEVIEWER)) {
+        auto filter = TopicAndFieldFilter::fromStringUnsafe(
+            xmlObject.getAttribute("filter"));
+        setFilter(filter);
     }
 }
 
 void StateViewerModule::addCustomActionsToMenu() {
     QAction* config = new QAction("Choose input topic and field");
-    connect(config, &QAction::triggered, this, &StateViewerModule::onConfigureClicked);
+    connect(config, &QAction::triggered, this,
+            &StateViewerModule::onConfigureClicked);
 
     addActionToMenu(config);
 }
 
 void StateViewerModule::onConfigureClicked() {
-    TopicAndFieldSelector::selectTopicAndField([this](const TopicAndFieldFilter & filter) {
-        setFilter(filter);
-    });
+    TopicAndFieldSelector::selectTopicAndField(
+        [this](const TopicAndFieldFilter& filter) { setFilter(filter); });
 }
 
 void StateViewerModule::setFilter(const TopicAndFieldFilter& newFilter) {
     getCore()->getModuleMessagesBroker()->unsubscribe(filter.getTopic(), this);
-    getCore()->getModuleMessagesBroker()->subscribe(newFilter.getTopic(), this, [this](const ModuleMessage & msg) {
-        onMsgReceived(msg);
-    });
+    getCore()->getModuleMessagesBroker()->subscribe(
+        newFilter.getTopic(), this,
+        [this](const ModuleMessage& msg) { onMsgReceived(msg); });
     filter = newFilter;
 }
 
 void StateViewerModule::onMsgReceived(const ModuleMessage& msg) {
     MessageField field;
-    if(!filter.matchMessage(msg, field)) {
-        return;
-    }
 
-    int value = (int) field.getInteger(-1);
-    if(value != -1) {
-        setState(value);
-    }
+    if (!filter.matchMessage(msg, field)) return;
+
+    int value = (int)field.getUInteger(-1);
+    if (value != -1) setState(value);
 }
 
 void StateViewerModule::setState(int state) {
-    if(state != currentState) {
+    if (state != currentState) {
         currentState = state;
         updateView(state);
     }
@@ -121,37 +117,26 @@ void StateViewerModule::updateView(int state) {
     QString completedStyle = "background-color:green;";
     QString errorStyle = "background-color:red;";
 
-    if(state == INIT) {
+    if (state == INIT) {
         ui->label_1_INIT->setStyleSheet(currentStateStyle);
-    } else if(state == INIT_DONE) {
-        ui->label_1_INIT->setStyleSheet(completedStyle);
-    } else if(state == INIT_ERROR) {
+    } else if (state == INIT_ERROR) {
         ui->label_1_INIT->setStyleSheet(errorStyle);
-    } else if(state > INIT_ERROR && labelsIndexes.contains(state)) {
+    } else if (state > INIT_ERROR && labelsIndexes.contains(state)) {
         int index = labelsIndexes[state];
-        if(index < labels.count()) {
+
+        if (index < labels.count())
             labels[index]->setStyleSheet(currentStateStyle);
-        }
     }
 
-    if(labelsIndexes.contains(state)) {
-        setStyleAfter(labelsIndexes[state] + 1, "");
-        setStyleBefore(labelsIndexes[state] - 1, completedStyle);
-    }
-}
+    if (labelsIndexes.contains(state)) {
+        int index = labelsIndexes[state];
 
-void StateViewerModule::setStyleAfter(int threshold, const QString& style) {
-    for (int i = threshold; i < labels.count(); i++ ) {
-        labels[i]->setStyleSheet(style);
-    }
-}
+        // Set as completed every state before the current
+        for (int i = index - 1; i >= 0; i--)
+            labels[i]->setStyleSheet(completedStyle);
 
-void StateViewerModule::setStyleBefore(int threshold, const QString& style) {
-    for (int i = threshold; i >= 0 && i < labels.count(); i-- ) {
-        labels[i]->setStyleSheet(style);
+        // Reset every state after the current
+        for (int i = index + 1; i < labels.count(); i++)
+            labels[i]->setStyleSheet("");
     }
 }
-
-
-
-
diff --git a/Modules/StateViewer/stateviewermodule.h b/Modules/StateViewer/stateviewermodule.h
index 1297e46d105b9e49375d29b66c336204d7722613..2b62b6349c9aaef70f39be903f2c23a9550067f8 100644
--- a/Modules/StateViewer/stateviewermodule.h
+++ b/Modules/StateViewer/stateviewermodule.h
@@ -1,12 +1,12 @@
 #ifndef STATEVIEWERMODULE_H
 #define STATEVIEWERMODULE_H
 
-#include <QWidget>
 #include <QLabel>
+#include <QWidget>
 
-#include "Modules/DefaultModule/defaultmodule.h"
 #include "Core/Message/modulemessage.h"
 #include "Core/Message/topicandfieldfilter.h"
+#include "Modules/DefaultModule/defaultmodule.h"
 
 namespace Ui {
 class StateViewerModule;
@@ -15,7 +15,7 @@ class StateViewerModule;
 class StateViewerModule : public DefaultModule {
     Q_OBJECT
 
-  public:
+   public:
     explicit StateViewerModule(QWidget* parent = nullptr);
     ~StateViewerModule();
 
@@ -24,18 +24,15 @@ class StateViewerModule : public DefaultModule {
     XmlObject toXmlObject() override;
     void fromXmlObject(const XmlObject& xmlObject) override;
 
-
-  protected:
+   protected:
     void addCustomActionsToMenu() override;
     void onConfigureClicked();
     void setFilter(const TopicAndFieldFilter& filter);
     void onMsgReceived(const ModuleMessage& msg);
     void setState(int state);
     void updateView(int state);
-    void setStyleAfter(int threshold, const QString& style);
-    void setStyleBefore(int threshold, const QString& style);
 
-  private:
+   private:
     Ui::StateViewerModule* ui;
     TopicAndFieldFilter filter;
 
@@ -45,4 +42,4 @@ class StateViewerModule : public DefaultModule {
     QMap<int, int> labelsIndexes;
 };
 
-#endif // STATEVIEWERMODULE_H
+#endif  // STATEVIEWERMODULE_H
diff --git a/Modules/StateViewer/stateviewermodule.ui b/Modules/StateViewer/stateviewermodule.ui
index 58c7abd166bdea2fb2d00cb78df33ad46c35ea5e..d489155124219990a9c97f3deae393b750035cdd 100644
--- a/Modules/StateViewer/stateviewermodule.ui
+++ b/Modules/StateViewer/stateviewermodule.ui
@@ -1,142 +1,140 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <ui version="4.0">
- <class>StateViewerModule</class>
- <widget class="QWidget" name="StateViewerModule">
-  <property name="geometry">
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>975</width>
-    <height>225</height>
-   </rect>
-  </property>
-  <property name="windowTitle">
-   <string>Form</string>
-  </property>
-  <layout class="QVBoxLayout" name="verticalLayout">
-   <item>
-    <widget class="QScrollArea" name="scrollArea">
-     <property name="widgetResizable">
-      <bool>true</bool>
-     </property>
-     <widget class="QWidget" name="scrollAreaWidgetContents">
-      <property name="geometry">
-       <rect>
-        <x>0</x>
-        <y>0</y>
-        <width>953</width>
-        <height>203</height>
-       </rect>
-      </property>
-      <property name="styleSheet">
-       <string notr="true">border: 1px solid grey;
-color: white;</string>
-      </property>
-      <layout class="QGridLayout" name="gridLayout">
-       <item row="0" column="4">
-        <widget class="QLabel" name="label_5_ARMED">
-         <property name="text">
-          <string>ARMED</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="1">
-        <widget class="QLabel" name="label_2_TEST">
-         <property name="text">
-          <string>TEST
+    <class>StateViewerModule</class>
+    <widget class="QWidget" name="StateViewerModule">
+        <property name="geometry">
+            <rect>
+                <x>0</x>
+                <y>0</y>
+                <width>975</width>
+                <height>225</height>
+            </rect>
+        </property>
+        <property name="windowTitle">
+            <string>Form</string>
+        </property>
+        <layout class="QVBoxLayout" name="verticalLayout">
+            <item>
+                <widget class="QScrollArea" name="scrollArea">
+                    <property name="widgetResizable">
+                        <bool>true</bool>
+                    </property>
+                    <widget class="QWidget" name="scrollAreaWidgetContents">
+                        <property name="geometry">
+                            <rect>
+                                <x>0</x>
+                                <y>0</y>
+                                <width>953</width>
+                                <height>203</height>
+                            </rect>
+                        </property>
+                        <property name="styleSheet">
+                            <string notr="true">border: 1px solid grey; color: white;</string>
+                        </property>
+                        <layout class="QGridLayout" name="gridLayout">
+                            <item row="0" column="4">
+                                <widget class="QLabel" name="label_5_ARMED">
+                                    <property name="text">
+                                        <string>ARMED</string>
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                            <item row="0" column="1">
+                                <widget class="QLabel" name="label_2_TEST">
+                                    <property name="text">
+                                        <string>TEST
 MODE</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="2">
-        <widget class="QLabel" name="label_3_CALIBRATION">
-         <property name="text">
-          <string>CALIBRATION</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="7">
-        <widget class="QLabel" name="label_8_TERMINAL">
-         <property name="text">
-          <string>TERMINAL
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                            <item row="0" column="2">
+                                <widget class="QLabel" name="label_3_CALIBRATION">
+                                    <property name="text">
+                                        <string>CALIBRATION</string>
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                            <item row="0" column="7">
+                                <widget class="QLabel" name="label_8_TERMINAL">
+                                    <property name="text">
+                                        <string>TERMINAL
 DESCENT</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="5">
-        <widget class="QLabel" name="label_6_ASCENDING">
-         <property name="text">
-          <string>ASCENDING</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="3">
-        <widget class="QLabel" name="label_4_DISARMED">
-         <property name="styleSheet">
-          <string notr="true">border: 1px solid grey;
-color: white;</string>
-         </property>
-         <property name="text">
-          <string>DISARMED</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="6">
-        <widget class="QLabel" name="label_7_DROGUE">
-         <property name="text">
-          <string>DROGUE
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                            <item row="0" column="5">
+                                <widget class="QLabel" name="label_6_ASCENDING">
+                                    <property name="text">
+                                        <string>ASCENDING</string>
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                            <item row="0" column="3">
+                                <widget class="QLabel" name="label_4_DISARMED">
+                                    <property name="styleSheet">
+                                        <string notr="true">border: 1px solid grey; color: white;</string>
+                                    </property>
+                                    <property name="text">
+                                        <string>DISARMED</string>
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                            <item row="0" column="6">
+                                <widget class="QLabel" name="label_7_DROGUE">
+                                    <property name="text">
+                                        <string>DROGUE
 DESCENT</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="0">
-        <widget class="QLabel" name="label_1_INIT">
-         <property name="text">
-          <string>INIT</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="8">
-        <widget class="QLabel" name="label_9_END">
-         <property name="text">
-          <string>END
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                            <item row="0" column="0">
+                                <widget class="QLabel" name="label_1_INIT">
+                                    <property name="text">
+                                        <string>INIT</string>
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                            <item row="0" column="8">
+                                <widget class="QLabel" name="label_9_END">
+                                    <property name="text">
+                                        <string>END
 MISSION</string>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-        </widget>
-       </item>
-      </layout>
-     </widget>
+                                    </property>
+                                    <property name="alignment">
+                                        <set>Qt::AlignCenter</set>
+                                    </property>
+                                </widget>
+                            </item>
+                        </layout>
+                    </widget>
+                </widget>
+            </item>
+        </layout>
     </widget>
-   </item>
-  </layout>
- </widget>
- <resources/>
- <connections/>
-</ui>
+    <resources />
+    <connections />
+</ui>
\ No newline at end of file