
Gymnasticon memungkinkan sepeda latihan usang dan/atau eksklusif untuk bekerja dengan Zwift dan aplikasi pelatihan lainnya. Dukungan untuk sepeda baru dapat ditambahkan dengan mudah. Diagram di bawah ini menunjukkan contoh cara kerjanya dengan sepeda home roda gila.

Setiap perangkat lunak, komputer sepeda, atau menonton yang mendukung Bluetooth LE dan Sensor Power Meter dan Cadence Standar Bluetooth harus berfungsi, termasuk:
Raspberry Pi Zero W direkomendasikan untuk pengalaman pengguna terbaik. Setiap sistem Linux atau MacOS terbaru harus dapat menjalankan gymnasticon.
Catatan: Jika menggunakan Bluetooth Le Bike (misalnya roda gila), diperlukan adaptor Bluetooth LE 4.1+ dengan kemampuan multi-peran. Semua perangkat Raspberry Pi yang tercantum di atas memiliki kemampuan ini tetapi tidak setiap adaptor BT 4.1+ dijamin memilikinya. Atau, dua adaptor BT 4.0+ juga dapat berfungsi: satu untuk klien (untuk terhubung ke sepeda) dan satu untuk server (untuk menerima koneksi dari Zwift atau aplikasi lain).

Ini adalah cara termudah untuk bangun dan berlari di raspberry pi.
Prasyarat:
dd(1)Tangga:
ddFile konfigurasi:
Jika menggunakan sepeda selain roda gila atau peloton - buat dan adaptasi file gymnasticon.json dalam folder utama kartu SD. Itu harus berakhir di folder yang sama dengan bootcode.bin , cmdline.txt , config.txt , dll.
Contoh berikut mengkonfigurasi gymnasticon untuk mencari motor Schwinn IC4 dan untuk mengurangi nilai pengukuran daya sebesar 8%:
{
"bike": "ic4",
"power-scale": 0.92
}
Contoh berikut mengkonfigurasi gymnasticon untuk mencari sepeda serizer m:
{
"bike": "keiser"
}
Lihat di bawah untuk opsi konfigurasi tambahan.
Selama Gymnastion Boot pertama memungkinkan sistem file overlay untuk sistem file root ("/") dan mount "/boot" sebagai read-only. Ini mengurangi risiko korupsi sistem file yang fatal sebagai akibat dari kegagalan daya misalnya, tetapi juga memperpanjang masa pakai kartu SD dengan meminimalkan keausan.
Oleh karena itu, shutdown gymnasticon yang bersih tidak diperlukan. Simpan saja Raspberry Pi Anda terhubung dan berjalan.
Masih mungkin untuk mengatur jaringan dan akses jarak jauh sehingga Anda dapat memeriksa log, atau berpartisipasi dalam pekerjaan pengembangan. Tetapi mode ini tidak diperlukan, juga tidak direkomendasikan untuk pengguna biasa.
CATATAN: Gambar PI OS yang dimodifikasi ini akan berperilaku setara dengan stok gambar PI sehubungan dengan file
wpa_supplicant.confdansshhanya selama boot pertama. Ini berarti bahwa pengaturan WiFi dan SSH menjadi bagian dari sistem file underlay dan bertahan di reboot berikutnya. Menempatkan filewpa_supplicant.confatausshke partisi boot setelah boot pertama akan menghasilkan pengaturan yang tidak bertahan di seluruh reboot. Perhatikan juga bahwa dalam hal ini filewpa_supplicant.confdansshdihapus dan tidak tersedia selama reboot lain.
Anda dapat mengubah sistem file root antara mode baca saja dan baca-tulis, tetapi juga menunjukkan mode saat ini menggunakan perintah overctl .
Sepeda roda gila
Sepeda peloton (dengan kabel pasif)
Coba Mulai Cepat dulu. Jika tidak, baca terus untuk cara memasang gymnasticon dan ketergantungannya secara manual.
Ketergantungan:
Node.js 12.16.1+
Di Linux (termasuk Raspberry Pi)
sudo apt-get install libudev-dev (Diperlukan oleh node-bluetooth-hci-socket)Catatan: Pengguna Anda harus memiliki izin untuk mengakses adaptor Bluetooth dan layanan beriklan.
Memasang:
npm install -g gymnasticon
gymnasticon
Untuk berjalan sebagai pengguna yang tidak mampu:
# this gives cap_net_raw+eip to all node programs not just gymnasticon
sudo setcap cap_net_raw+eip $(eval readlink -f $(which node))
Untuk berjalan pada waktu boot, restart saat keluar dan untuk menghindari memberikan cap_net_raw+eip ke biner simpul, disarankan untuk berjalan di bawah SystemD. Lihat deploy/gymnasticon.service dari repositori ini untuk contoh file unit SystemD.
sudo cp gymnasticon.service /etc/systemd/system
sudo systemctl enable gymnasticon
sudo systemctl start gymnasticon
Untuk melihat output gymnasticon berjalan di bawah SystemD:
journalctl -u gymnasticon -f
Catatan: Opsi CLI di bawah ini juga dapat digunakan dalam file konfigurasi.
--bike ic4pada baris perintah sama dengan{"bike":"ic4"}dalam file config.
$ gymnasticon --help
__o
_ <_
(_)/(_)
Gymnasticon
v1.4.0
usage: gymnasticon [OPTIONS]
Options:
--config <filename> load options from json file [string]
--bike <type>
[string] [choices: "flywheel", "peloton", "ic4", "keiser", "bot",
"autodetect"] [default: "autodetect"]
--bike-connect-timeout <seconds> [number] [default: 0]
--bike-receive-timeout <seconds> [number] [default: 4]
--bike-adapter <name> for bike connection [default: "hci0"]
--flywheel-address <macaddr>
--flywheel-name <name>
--peloton-path <path> usb serial device path
[string] [default: "/dev/ttyUSB0"]
--bot-power <watts> initial bot power [number]
--bot-cadence <rpm> initial bot cadence [number]
--bot-host <host> for power/cadence control over udp [string]
--bot-port <port> for power/cadence control over udp [number]
--server-adapter <name> for app connection [default: "hci0"]
--server-name <name> used for Bluetooth advertisement
[default: "Gymnasticon"]
--server-ping-interval <seconds> ping app when user not pedaling
[number] [default: 1]
--ant-device-id <id> ANT+ device id for bike power broadcast
[number] [default: 11234]
--power-scale <value> scale watts by this multiplier
[number] [default: 1]
--power-offset <value> add this value to watts [number] [default: 0]
--version Show version number [boolean]
-h, --help Show help [boolean]
git clone https://github.com/ptx2/gymnasticon.git
cd gymnasticon
npm run build
npm link
gymnasticon --help
Seharusnya sepele untuk menambah dukungan untuk sepeda berpemilik lainnya, selama ada cara untuk mendapatkan data irama/daya realtime-ish dari mereka.
Mit
Baca catatan pengembangan di sini.