diff --git a/code/arduino/Movement-sensor-code/Connectivity.cpp b/code/arduino/Movement-sensor-code/Connectivity.cpp
index a1c30c4..367e114 100644
--- a/code/arduino/Movement-sensor-code/Connectivity.cpp
+++ b/code/arduino/Movement-sensor-code/Connectivity.cpp
@@ -4,7 +4,7 @@ void Connectivity::connectWiFi(char* ssid, char* pass){
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED) {
- Serial.println("connecting to wifi");
+ // Serial.println("connecting to wifi");
delay(1000);
}
Serial.println(WiFi.localIP());
diff --git a/code/arduino/Movement-sensor-code/Movement-sensor-code.ino b/code/arduino/Movement-sensor-code/Movement-sensor-code.ino
index be47405..35b30bb 100644
--- a/code/arduino/Movement-sensor-code/Movement-sensor-code.ino
+++ b/code/arduino/Movement-sensor-code/Movement-sensor-code.ino
@@ -3,35 +3,38 @@
// SensorManager::Rotation offset;
void setup() {
- Serial.begin(9600);
- Serial.println("startup");
+ // Serial.begin(9600);
+ // Serial.println("startup");
//connect to internet and start sensor
connectivity.connectWiFi(ssid, pass);
sensorManager.sensorSetup();
-
}
+unsigned long lastTime = 0; // will store the last time the code was run
+
void loop() {
SensorManager::eulerAngles eulerRotation = sensorManager.getEulerAngles();
SensorManager::acceleration rotationAcceleration = sensorManager.getAcelleration();
- unsigned long lastTime = 0; // will store the last time the code was run
-
- Serial.print(eulerRotation.roll);
- Serial.print(" ");
- Serial.print(eulerRotation.yaw);
- Serial.print(" ");
- Serial.print(eulerRotation.pitch);
- Serial.println();
unsigned long currentTime = millis();
if (currentTime - lastTime >= 100) { // 100 ms has passed
- String message = "{\"deviceId\": 1, \"rotationX\":\"" + String(eulerRotation.roll) + "\",\"rotationY\":\"" + String(eulerRotation.pitch) + "\",\"rotationZ\":\"" + String(eulerRotation.yaw) + "\",\"accelerationX\":\"" + String(rotationAcceleration.x) + "\",\"accelerationY\":\"" + String(rotationAcceleration.y) + "\",\"accelerationZ\":\"" + String(rotationAcceleration.z) + "\",\"type\":\"data\"}";
- Serial.println(connectivity.httpPost("192.168.137.146", "/", 3445, message.c_str(), message.length(), "json"));
- Serial.println(message);
+ memset(buffer, 0, BUFFER_SIZE);
+ sprintf(
+ buffer,
+ "{\"deviceId\": %d, \"rotationX\": %f, \"rotationY\": %f, \"rotationZ\": %f, \"accelerationX\": %f, \"accelerationY\": %f, \"accelerationZ\": %f, \"type\": %s}",
+ DEVICE_ID,
+ eulerRotation.roll,
+ eulerRotation.pitch,
+ eulerRotation.yaw,
+ rotationAcceleration.x,
+ rotationAcceleration.y,
+ rotationAcceleration.z,
+ "data");
+ // %d = int, %f = floatation, %s = string
+ connectivity.httpPost("192.168.137.45", "/", 3445, buffer, strlen(buffer), "application/json");
lastTime = currentTime;
-}
+ }
}
//acceleration.X
//acceleration.Y
//acceleration.Z
-
diff --git a/code/arduino/Movement-sensor-code/SensorManager.cpp b/code/arduino/Movement-sensor-code/SensorManager.cpp
index 075e5ce..77836e4 100644
--- a/code/arduino/Movement-sensor-code/SensorManager.cpp
+++ b/code/arduino/Movement-sensor-code/SensorManager.cpp
@@ -9,15 +9,15 @@ void SensorManager::sensorSetup() {
//wait for the sensor to start before continue
if (myIMU.begin() == false) {
delay(1000);
- Serial.println(".");
+ // Serial.println(".");
}
//start sensorfunction and start autocalibration
//once calibration is enabled it attempts to every 5 min
- Wire.setClock(400000);
myIMU.enableGyroIntegratedRotationVector(100); //send data every 100ms
myIMU.enableAccelerometer(100); //Send data update every 100ms
Serial.println(F("magnetometer rotation enabled"));
+ myIMU.enableStepCounter(500); //Send data update every 500ms
}
//get sensordata
SensorManager::RotationQuintillions SensorManager::getQuintillions() {
@@ -39,7 +39,7 @@ SensorManager::RotationQuintillions SensorManager::getQuintillions() {
return rotation;
}
}
-//calculate Quintillions to Euler angles from -1π to +1π
+//calculate Quintillions to Euler angles from -1π to +1π
SensorManager::eulerAngles SensorManager::getEulerAngles() {
SensorManager::RotationQuintillions rotation = getQuintillions();
float roll = atan2(2.0f * (rotation.w * rotation.i + rotation.j * rotation.k), 1.0f - 2.0f * (rotation.i * rotation.i + rotation.j * rotation.j));
@@ -48,11 +48,24 @@ SensorManager::eulerAngles SensorManager::getEulerAngles() {
eulerAngles EulerAngles = { roll, pitch, yaw };
return EulerAngles;
}
-SensorManager::acceleration SensorManager::getAcelleration(){
- float x = myIMU.getAccelX();
- float y = myIMU.getAccelY();
- float z = myIMU.getAccelZ();
- acceleration Acceleration = { x, y, z };
+SensorManager::acceleration SensorManager::getAcelleration() {
+ float x = myIMU.getAccelX();
+ float y = myIMU.getAccelY();
+ float z = myIMU.getAccelZ();
+ acceleration Acceleration = { x, y, z };
- return Acceleration;
+ return Acceleration;
+}
+
+bool SensorManager::sensorTap() {
+ int taps = 0;
+ if (myIMU.dataAvailable() == true) {
+ int taps = myIMU.getStepCount();
+ }
+ if (taps) {
+ return true;
+ }
+ else {
+ return false;
+ }
}
\ No newline at end of file
diff --git a/code/arduino/Movement-sensor-code/SensorManager.h b/code/arduino/Movement-sensor-code/SensorManager.h
index 6a8a796..aaf4d71 100644
--- a/code/arduino/Movement-sensor-code/SensorManager.h
+++ b/code/arduino/Movement-sensor-code/SensorManager.h
@@ -21,7 +21,7 @@ public:
eulerAngles getEulerAngles();
acceleration getAcelleration();
-
+ bool sensorTap();
private:
struct RotationQuintillions {
float i;
diff --git a/code/arduino/Movement-sensor-code/headerFIle.h b/code/arduino/Movement-sensor-code/headerFIle.h
index b7b8220..b065b3e 100644
--- a/code/arduino/Movement-sensor-code/headerFIle.h
+++ b/code/arduino/Movement-sensor-code/headerFIle.h
@@ -8,6 +8,8 @@ Connectivity connectivity;
WebSocketsClient webSocket;
#define USE_SERIAL Serial
-
#define ssid "1235678i"
#define pass "12345678"
+#define BUFFER_SIZE 1024
+#define DEVICE_ID 1
+char *buffer = (char *)malloc(sizeof(char) * BUFFER_SIZE);
diff --git a/code/src/Fitbot/.idea/misc.xml b/code/src/Fitbot/.idea/misc.xml
index c120dfd..4496bac 100644
--- a/code/src/Fitbot/.idea/misc.xml
+++ b/code/src/Fitbot/.idea/misc.xml
@@ -16,6 +16,7 @@
+
diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/FitnessActivity.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/FitnessActivity.java
index e302337..89a857f 100644
--- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/FitnessActivity.java
+++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/FitnessActivity.java
@@ -70,9 +70,11 @@ public class FitnessActivity extends RobotActivity implements RobotLifecycleCall
@Override
public void onRobotFocusGained(QiContext qiContext) {
- personalMotionPreviewElement.provideQiContext(qiContext);
// Find the VideoView by its ID
- //CompletableFuture.runAsync(() -> FitnessCycle.executeMovement("bicepcurl", 10, qiContext));
+// CompletableFuture.runAsync(() -> FitnessCycle.executeMovement("bicepcurl", 10, qiContext));
+ Log.i("Motion", "qiContext provided");
+ personalMotionPreviewElement.provideQiContext(qiContext);
+
// FitnessCycle.playVideo(qiContext, videoView, this);
}
diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/HelpActivity.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/HelpActivity.java
index def4026..3ffa2e3 100644
--- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/HelpActivity.java
+++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/HelpActivity.java
@@ -4,6 +4,7 @@ import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.example.fitbot.R;
+import com.example.fitbot.util.ButtonNavigation;
public class HelpActivity extends AppCompatActivity {
@@ -11,5 +12,8 @@ public class HelpActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_help);
+
+ ButtonNavigation.setupButtonNavigation(this, R.id.homeButton, MainActivity.class);
+
}
}
\ No newline at end of file
diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java
index ca30bf2..b2fa7ba 100644
--- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java
+++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java
@@ -14,6 +14,7 @@ import android.util.Log;
import android.widget.Button;
import com.example.fitbot.R;
+import com.example.fitbot.util.ButtonNavigation;
public class MainActivity extends AppCompatActivity {
@@ -48,11 +49,8 @@ public class MainActivity extends AppCompatActivity {
toolbar = findViewById(R.id.toolbar);
startButton = findViewById(R.id.startButton);
- startButton.setOnClickListener(v -> { // Switch to fitness activity
- Log.i("MainActivity", "Switching to FitnessActivity");
- Intent intent = new Intent(MainActivity.this, FitnessActivity.class);
- startActivity(intent);
- });
+ ButtonNavigation.setupButtonNavigation(this, R.id.startButton, FitnessActivity.class);
+ ButtonNavigation.setupButtonNavigation(this, R.id.helpButton, HelpActivity.class);
/*---Tool Bar---*/
setSupportActionBar(toolbar); // Make the toolbar act as the action bar
diff --git a/code/src/Fitbot/app/src/main/res/layout/activity_end_screen.xml b/code/src/Fitbot/app/src/main/res/layout/activity_end_screen.xml
index fd3a2e9..b07bcad 100644
--- a/code/src/Fitbot/app/src/main/res/layout/activity_end_screen.xml
+++ b/code/src/Fitbot/app/src/main/res/layout/activity_end_screen.xml
@@ -56,14 +56,12 @@
style="@style/TextStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginStart="539dp"
- android:layout_marginEnd="533dp"
android:text="Gefeliciteerd"
- app:layout_constraintBottom_toTopOf="@+id/workoutText"
+ app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="@+id/myRectangleView" />
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintVertical_bias="0.155" />
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/code/src/Fitbot/app/src/main/res/values/strings.xml b/code/src/Fitbot/app/src/main/res/values/strings.xml
index 9a6d467..13c9af6 100644
--- a/code/src/Fitbot/app/src/main/res/values/strings.xml
+++ b/code/src/Fitbot/app/src/main/res/values/strings.xml
@@ -13,6 +13,8 @@
Home
Skip
Complete
+
+ Als je op de startknop drukt komen oefingen op het scherm. Het doel is om die zo goedmogelijk na te doen zodat je punten verzameld. Als je klaar bent kunt u op de COMPLETE knop drukken in het sport scherm en dan kunt u uw punten inzien
#f22b1d
\ No newline at end of file