ORM+RPI Zero 2W+ Infrared Sensor on Gallant GRs03HmGa-Pt (Doufit RM-01 Clone?) #61
Replies: 7 comments 20 replies
-
Here is some close-up view of the raw data graphs.
Thank you. |
Beta Was this translation helpful? Give feedback.
-
The flywheel rotation stop. 20241029_082247_1_1.mp4Than you, I do this "disable automatic drag calculation and recovery slope". Uploading VID-20241103-WA0034.mp4… |
Beta Was this translation helpful? Give feedback.
-
How I change to this branch and update oponrowingmonitor on my RPI? |
Beta Was this translation helpful? Give feedback.
-
Yes, some comfigurations in
server.js for replay,
config/rowerProfiles.js for detect flank dow, numOfImpulsesPerRevolution .
And to generate the raw data.
But that's okay, I'm waiting for the new modifications. In the meantime,
I'll be doing tests and calibrations. I can tell you that in my tests the
results are very close to the EXR Game data (this is my only reference at
the moment).
And thanks again for the support.
Em ter., 5 de nov. de 2024, 05:39, Jaap van Ekris ***@***.***>
escreveu:
… You modified some code, that is hard to resolve.
If you are patient, we'll merge these changes into the main branch in
January.
—
Reply to this email directly, view it on GitHub
<#61 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BLY66BVQCFOMMLVAV5M3EKLZ7B72PAVCNFSM6AAAAABRCCG5PWVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTCMJVGE3TQNY>
.
You are receiving this because you authored the thread.Message ID:
<JaapvanEkris/openrowingmonitor/repo-discussions/61/comments/11151787@
github.com>
|
Beta Was this translation helpful? Give feedback.
-
When I stop rowing, I think that some setting on ORM reset session, like
videos above.
Em qua., 6 de nov. de 2024, 03:56, Jaap van Ekris ***@***.***>
escreveu:
… The time limit is too short, and stopping my training too quickly.
What time limit?
I use EXR and ORM daily, haven't seen a disconnect in years.
—
Reply to this email directly, view it on GitHub
<#61 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BLY66BVCRZTTX2V2PSPL2ALZ7G4SXAVCNFSM6AAAAABRCCG5PWVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTCMJWGMYDKMI>
.
You are receiving this because you authored the thread.Message ID:
<JaapvanEkris/openrowingmonitor/repo-discussions/61/comments/11163051@
github.com>
|
Beta Was this translation helpful? Give feedback.
-
The strokes count work right, I count them too.
I'll turn the log on the next rowing to see what happens. Or is it possible
for me to access the log of yesterday's row?
Em qua., 6 de nov. de 2024, 04:48, Abasz ***@***.***>
escreveu:
… Please noughties the force curve. It has several spikes which indicates
the luck of seeing a recovery phase. I think you're stroke detection does
not work properly. Also it would be interesting what the log says when you
lost the Bluetooth connection if there is a crash or anything
—
Reply to this email directly, view it on GitHub
<#61 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BLY66BX24AEJOTY7UMDVYU3Z7HCV5AVCNFSM6AAAAABRCCG5PWVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTCMJWGM2DMNI>
.
You are receiving this because you authored the thread.Message ID:
<JaapvanEkris/openrowingmonitor/repo-discussions/61/comments/11163465@
github.com>
|
Beta Was this translation helpful? Give feedback.
-
Today after, run updateopenrowingmonitor.sh and update, ORM not start, showing this error: sudo journalctl -f -u openrowingmonitor |
Beta Was this translation helpful? Give feedback.
-
ORM+RPI Zero 2W+ Infrared Sensor on Gallant GRs03HmGa-Pt (Doufit RM-01 Clone?)
Good Afternoon everyone, I'm from Brazil.
Starting here the discussion for adaptation/implementation of the ORM on the Gallant GRs03HmGa-Pt Indoor Rowing Machine.
Of course, I also hope that this discussion serves as a tutorial, as well as the others that we see here in this repository, if I am successful, for the next adventurers.
I see that my Gallant Indoor Dry Rowing Machine (GRS03HMGA-PT)
https://gallant.vc/produto/aparelho-simulador-de-remo-magnetico-seco-indoor-gallant-grs03hmga-pt/, is a clone/adaptation or original of the following models:
1 - First I will try to make the system work with the infrared module, since it is the only one I have on hand.
The hw201 infrared module, used in Arduino as a line follower, but I saw that in some projects it is also used as a tachometer, and so I thought it would be much better than the reed switches or the hall.
And according to my look the first tests and results are going well.
Photo of the sensor.
2 - But if option 1 doesn't work, I'm already buying a hall sensor to replace it.
3 - I've already installed PI OS BookWorm on the RPI Zero 2W
4 - I've already installed ORM Beta (/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/jaapvanekris/openrowingmonitor/HEAD/install/install.sh)")
5 - Then, I tried to pair the heart rate monitor.
The Bluetooth on the RPi was on and working, because with my smartphone I could see the Bluetooth of the RPI (openrowingmonitor), but I still had trouble connecting to my heart rate monitor, this XOSS model https://www.amazon.com/XOSS-Optical-Bluetooth-Wireless-Accessories/dp/B07H3QN6JC, XOSS_HRM_00.
Photo of the heart rate monitor.
Through the graphical interface, it is not possible to see and connect to the bracelet.
5.1 - After researching and searching through these discussions on GitHub, I did the following:
I checked to see if there was an error during startup, but to my knowledge I did not see anything.
I used the command to see the Bluetooth logs:
dmesg | grep Blue
5.2 - I researched and saw that by running the command below, I was able to connect to the Xoss XOSS_HRM_00 bracelet.
$ sudo hciconfig hci0 up
5.3 - And with this other command I was able to see and scan other devices. $ sudo hcitool -i hci0 lescan
LE Scan ...
10:D5:61... (unknown)
10:D5:61... TY
38:68:A4... (unknown)
0D:8F:62... (unknown)
84:46:93... (unknown)
5.3 - With the command below, it was possible to see the status of the bluetooth.
$ systemctl status bluetooth
bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; disabled; preset: enabled)
Active: inactive (dead)
Docs: man:bluetoothd(8)
5.4 - With the command below, as well as the command in item 5.2, it was possible to connect to the bracelet and heart rate, and as the other command had to be executed at each RPI startup/reboot.
$ systemctl start bluetooth
After the command, all I had to do was check the bluetooth status.
$ systemctl status bluetooth
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; disabled; preset: enabled)
Active: active (running) since Mon 2024-10-28 16:49:59 -03; 8s ago
Docs: man:bluetoothd(8)
Main PID: 2471 (bluetoothd)
Status: "Running"
Tasks: 1 (limit: 166)
CPU: 225ms
CGroup: /system.slice/bluetooth.service
└─2471 /usr/libexec/bluetooth/bluetoothd
5.5 - Finally, I found a way to enable bluetooth once and for all to connect to the bracelet, without having to do it every time I boot/reboot.
$ sudo systemctl enable bluetooth.service
Synchronizing state of bluetooth.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable bluetooth
Created symlink /etc/systemd/system/dbus-org.bluez.service → /lib/systemd/system/bluetooth.service.
Created symlink /etc/systemd/system/bluetooth.target.wants/bluetooth.service → /lib/systemd/system/bluetooth.service.
6 - Now I started to adapt the hw201 sensor. After racking my brains for the best place, I decided to put it in the wheel that I thought would be the flywheel, as shown in the photos and videos. Before placing it in the current position, I tested it to read from above the wheel, but the sensor was very unstable, blinking a lot with little movement, both due to the imperfections of the surface and because I realized later that the infrared sensor on the cell phone lens was activating the sensor when filming.
The flywheel?
Mechanism of rower
Video of Mechanism
Infrared sensor at place
Videos of tests Sensor
Videos of tests
In this position, the smartphone sensor did not cause interference when filming.
6.1 And now I ask for help. Since you have more knowledge than I do, please confirm for me: is this the FlyWheel of my magnetic rowing machine?
I assumed that it is the FlyWheel because it is where the magnet is to generate the resistance, and this pulley only turns in one direction in the drive (pull), and in the recovery (return) it stops turning.
Photo of the flywheel of the magnetic rowing machine.
Then I saw that on the other side of the wheel, there were 4 holes, which would be ideal for generating the pulses, and that was where I decided to position the infrared sensor for the tests.
7 - Then I configured it to generate the raw data file of currentDt, and since I am in Brazil, unlike the English system, we separated the decimals by commas (,) and not by periods (.), and using LibreOffice, in Calc I replaced all (.) with (,).
Before configuring numOfImpulsesPerRevolution in rowerProfile.js, I ran tests and the currentDt records always started with a very large number.
Below are the first 30 values of currentDt:
134.083536
0.142910000000001
0.102620000000002
0.0825260000000014
0.0742099999999937
0.0671399999999949
0.06275999999999973
0.0561399999999992
0.0544649999999933
0.0519450000000177
0.0509710000000041
0.0477699999999857
0.0484399999999994
0.0480450000000019
0.0485950000000059
0.0471399999999846
0.0492200000000196
0.050289
9999999897
0.0525059999999939
0.0532100000000071
0.0593849999999918
0.0663250000000062
0.0798350000000028
0.100331000000011
0.17091499999998
1.265548
0.124131000000006
0.0842949999999973
0.077715000000012
0.0730900000000077
7.1 - Then I deleted the first value (134.083536) and generated the currentDt graph, the graph didn't look good, the points didn't follow a pattern, it seemed like no pulses had been detected, but strokes count are correct.
7.2 - But even so the amount of rowing was correct, I believe the other values weren't because I haven't refined the other calibrations yet.
8 - Then I set the value of numOfImpulsesPerRevolution to 4 in rowerProfile.js, and redid the entire process; Below are the first 30 values for currentDt:
218.761156
0.151866000000013
0.0816349999999773
0.0648050000000069
0.0542350000000056
0.0485250000000121
0.0442199999999957
0.0422059999999931
0.0383799999999894
0.0365500000000054
0.034934999999902
0.0347600000000057
0.032605000000018
0.0316899999999976
0.0307549999999992
0.0311299999999903
0.0295800000000099
99999987
0.0285159999999962
0.0291600000000187
0.0278199999999913
0.0273349999999937
0.0268949999999961
0.0277250000000038
0.0266249999999957
0.0263450000000205
0.026079999999979
0.0269250000000056
0.0259149999999977
0.0256799999999942
8.1 - Deleting the first row (cell) the value 218.761156, and redid the process of replacing (.) with (,) and the graph was beautiful!
Picture of the graph.
8.2 - The number of strokes is still correct, but the graph only shows a peak as seen in the drawing, but I believe that this will not interfere with the calculations of openrowingmonitor, but if it is an error, I believe that with your help I can calibrate this measurement.
9 - Now follow the raw files, for analysis.
2024-11-01_01-06-38_raw.csv
Raw
2024-11-01_01-06-38_rowingData.csv
Rowing Data
10 - And so far I have done well, and now I ask and need your help to make the fine adjustments, because I still don't understand anything about rowing, tips and suggestions are welcome.
Thank you for reading this far.
Beta Was this translation helpful? Give feedback.
All reactions