Updated serial port, pragma once
authorThomas Pietrzak <thomas.pietrzak@gmail.com>
Tue, 26 Apr 2022 10:34:25 +0000 (12:34 +0200)
committerThomas Pietrzak <thomas.pietrzak@gmail.com>
Tue, 26 Apr 2022 10:34:25 +0000 (12:34 +0200)
.vscode/launch.json
README.md
TactonDebug/AngleTester/angletester.cpp
TactonDebug/AngleTester/angletester.h
TactonDebug/MagicCircle/magiccircle.cpp
TactonDebug/MagicCircle/magiccircle.h
TactonDebug/TactonDebug/tactondebug.cpp
TactonDebug/TactonDebug/tactondebug.h
TactonPlayer/ArduinoSerial
TactonPlayer/Tacton.hpp
TactonPlayer/TactonPlayer.hpp

index e0ff6cd19a196fe400de926f8b1118168f207a75..9b0c8c718aa0940361e864a41da4abf6e43e525d 100644 (file)
@@ -13,6 +13,7 @@
       "environment": [],
       "cwd": "${workspaceFolder}/TactonDebug/AngleTester/",
       "externalConsole": false,
+      "stopAtEntry": false,
       "logging": {
         "moduleLoad": false,
         "trace": true
index bbe6396177da333c6c833a41a6926515020bb7bf..3bbb02f0ec7369c67260a10631cbf7d02fbc53d1 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,7 +1,8 @@
 # TactonLibrary
+
 Arduino library + host PC library + GUI for debugging
 
-# Compiling
+## Compiling
 
 On VSCode, please use the C/C++ Extension pack. Compiling uses CMake, tested on Mac so far.
 
index 1d75ba728c66a6e9072016e7b5f1b1eac1961684..afa7f2d3f183bdd16ea1d22a3d03ef3a3e896cbb 100644 (file)
@@ -7,7 +7,8 @@ AngleTester::AngleTester(QWidget *parent, Qt::WindowFlags flags)
 {\r
        try\r
        {\r
-               _tactonPlayer = new TactonPlayer("COM4");\r
+               //_tactonPlayer = new TactonPlayer("COM4");\r
+               _tactonPlayer = new TactonPlayer("/dev/tty.usbserial-FTFRHUAO"); // Mac USB serial cable\r
        }\r
        catch(...)\r
        {\r
index 99f6e44cdedfdd9418d2b43bc5345b51d09ee9da..c0ba7146f5c220bb38eeae651b6e6ebf056ed44a 100644 (file)
@@ -1,5 +1,4 @@
-#ifndef ANGLETESTER_H\r
-#define ANGLETESTER_H\r
+#pragma once\r
 \r
 #include <QMainWindow>\r
 #include "ui_angletester.h"\r
@@ -23,5 +22,3 @@ class AngleTester : public QMainWindow, Ui::AngleTesterClass
        private:\r
                TactonPlayer *_tactonPlayer;\r
 };\r
-\r
-#endif // ANGLETESTER_H\r
index 888724657e0a816e74b61365fbe34bdd4bca3fbe..07773c8d186cd6f6f481dbd3f05b07b147e37efc 100644 (file)
@@ -2,18 +2,28 @@
 \r
 #include <cmath>\r
 \r
+#include <iostream>\r
+using namespace std;\r
+\r
 MagicCircle::MagicCircle(QWidget *parent, Qt::WindowFlags flags)\r
        : QMainWindow(parent, flags), _timer(this), _angle(0), _clockwise(true)\r
 {\r
        try\r
        {\r
-               _tactonPlayer = new TactonPlayer("COM8");\r
+//             _tactonPlayer = new TactonPlayer("COM8");\r
+               _tactonPlayer = new TactonPlayer("/dev/tty.usbserial-FTFRHUAO"); // Mac USB serial cable\r
        }\r
-       catch(...)\r
+       catch (const char* message)\r
        {\r
+               cerr << message << endl;\r
                _tactonPlayer = NULL;\r
        }\r
-\r
+       catch (...)\r
+       {\r
+               cerr << "Error" << endl;\r
+               _tactonPlayer = NULL;\r
+       }\r
+       \r
        setupUi(this);\r
 \r
        layout()->setSizeConstraint(QLayout::SetFixedSize);\r
@@ -27,7 +37,7 @@ MagicCircle::MagicCircle(QWidget *parent, Qt::WindowFlags flags)
        connect(_play, SIGNAL(clicked(bool)), this, SLOT(play(bool)));\r
        connect(_stop, SIGNAL(clicked(bool)), this, SLOT(stop(bool)));\r
 \r
-       connect(_direction, SIGNAL(currentIndexChanged (const QString &)), this, SLOT(setDirection(const QString &)));\r
+       connect(_direction, SIGNAL(currentTextChanged (const QString &)), this, SLOT(setDirection(const QString &)));\r
        connect(_speed, SIGNAL(valueChanged(int)), this, SLOT(setSpeed(int)));\r
        connect(_resolution, SIGNAL(valueChanged(int)), this, SLOT(setResolution(int)));\r
        connect(_frequency, SIGNAL(valueChanged(int)), this, SLOT(setFrequency(int)));\r
@@ -93,25 +103,8 @@ void MagicCircle::setFrequency(int frequency)
 \r
 void MagicCircle::tactileFeedback(float angle)\r
 {\r
-       _tactonPlayer->playAngle(angle);// * M_PI / 180);\r
+       _tactonPlayer->playAngle(angle);\r
        return;\r
-\r
-       unsigned char amplitudes[4];\r
-       memset(amplitudes, 0, 4);\r
-\r
-       //vertical\r
-       if (angle < 180)\r
-               amplitudes[1] = 255 * sin(angle * M_PI / 180);\r
-       else\r
-               amplitudes[3] = - 255 * sin(angle * M_PI / 180);\r
-\r
-       //horizontal\r
-       if (angle < 90 ||angle > 270)\r
-               amplitudes[0] = 255 * cos(angle * M_PI / 180);\r
-       else\r
-               amplitudes[2] = - 255 * cos(angle * M_PI / 180);\r
-\r
-       _tactonPlayer->setAmplitudes(4, amplitudes);\r
 }\r
 \r
 void MagicCircle::visualFeedback(float)\r
index f23bb4f56946abb45ae864fe69ed07a2183accfc..b176108fd9dacd048e359eeb9e2ef4c0b251c266 100644 (file)
@@ -1,5 +1,4 @@
-#ifndef MAGICCIRCLE_H\r
-#define MAGICCIRCLE_H\r
+#pragma once\r
 \r
 #include <QMainWindow>\r
 #include "ui_magiccircle.h"\r
@@ -39,5 +38,3 @@ class MagicCircle : public QMainWindow, Ui::MagicCircleClass
                TactonPlayer *_tactonPlayer;\r
                QTimer _timer;\r
 };\r
-\r
-#endif // MAGICCIRCLE_H\r
index 4ebdec38ba280c7557afdbdc13eaf1b8bee15f66..be6fa45c092776f291de1dc4c944bcd82f2dd15e 100644 (file)
@@ -10,7 +10,8 @@ TactonDebug::TactonDebug(QWidget *parent, Qt::WindowFlags flags)
 {\r
        try\r
        {\r
-               _tactonPlayer = new TactonPlayer("COM4");\r
+               //_tactonPlayer = new TactonPlayer("COM4");\r
+               _tactonPlayer = new TactonPlayer("/dev/tty.usbserial-FTFRHUAO"); // Mac USB serial cable\r
        }\r
        catch(...)\r
        {\r
index c385d47a01db56d0723026f2e783151038db44d1..7008b267197aebafd04022cdcab750d6d0387afe 100644 (file)
@@ -1,5 +1,4 @@
-#ifndef TACTONDEBUG_H\r
-#define TACTONDEBUG_H\r
+#pragma once\r
 \r
 #include <QMainWindow>\r
 #include "ui_tactondebug.h"\r
@@ -31,5 +30,3 @@ class TactonDebug : public QMainWindow, Ui::TactonDebugClass
 \r
                TactonPlayer *_tactonPlayer;\r
 };\r
-\r
-#endif // TACTONDEBUG_H\r
index 629e40c4944430c75ef4378a8614471febf44e43..9eb831e643bfa4472bdfe757bbbc45ba25cd036b 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 629e40c4944430c75ef4378a8614471febf44e43
+Subproject commit 9eb831e643bfa4472bdfe757bbbc45ba25cd036b
index 3f7dbc1e2b4fe48488edae3924da11e4401642c9..47aa99442e9e5c212efce8421025b20a32f90971 100644 (file)
@@ -1,5 +1,4 @@
-#ifndef _TACTON_\r
-#define _TACTON_\r
+#pragma once\r
 \r
 #define POS1_UP_FORWARD 0x01\r
 #define POS1_UP_BACKWARD 0x02\r
@@ -82,5 +81,3 @@ class EXPORTED Tacton
                unsigned int *_frequencies;\r
                unsigned char *_amplitudes;\r
 };\r
-\r
-#endif\r
index cd326a50d4d01afaba39f05104c238e548fe2117..7f38996ca8e80c6eca8a4926d5a1d9a9fc24958c 100644 (file)
@@ -1,5 +1,4 @@
-#ifndef _TACTONPLAYER_\r
-#define _TACTONPLAYER_\r
+#pragma once\r
 \r
 #include "Tacton.hpp"\r
 \r
@@ -57,5 +56,3 @@ class EXPORTED TactonPlayer
 private:\r
                Serial *_comport;\r
 };\r
-\r
-#endif\r