NBA Feed
팀 뉴스와 경기 정보를 제공, 점수는 직접 확인할 때까지 숨겨져 있습니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기A console for the NordicTrack Commercial 1250 that replaces iFit and drives the motor directly.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A replacement console for the NordicTrack Commercial 1250 treadmill. It runs on the treadmill's own screen instead of iFit and drives the motor directly: speed, incline, start, pause and stop, with no subscription and no account.
treadmill-deck.tommymassaro.com is the project page, and /console runs the interface in a browser in demo mode.
It's a personal project, built for one treadmill. It may work on other iFit consoles of the same generation, but it hasn't been tried on any.
c1250-deck.html is the whole UI, in a full-screen WebView on the console. It uses
the Cabin design system's Lit finish (inlined), and also runs as a
plain web page (/console/, demo mode, or Bluetooth FTMS through QZ in Chrome).FitPro.java
speaks it, as worked out from the iFit app: the startup sequence, the security handshake, and the
read/write of speed, incline and workout mode. Belt.java runs it four times a second. USB permission
comes from iFit's own updater, which grants the board to any app that asks; iFit has to be stopped
first, since only one app can hold the board. Older consoles with iFit's separate GlassOS service are
driven over its local gRPC API instead (GlassOS.java).worker/index.js on Cloudflare Workers, data in KV): the project page, the web
console, and three parts behind a private key: the app's update channel, the Diagnostics report box,
and the run store that feeds Apple Fitness.| Path | What |
|---|---|
c1250-deck.html | The console UI (one file) |
android/ | The app: Java source, build and release scripts |
installer/ | Putting the app on a treadmill |
site/, tools/ | The project page; tools/make-site.mjs builds the web console into site/console/ |
worker/, wrangler.jsonc | The Cloudflare Worker |
bg/ | Home screen photos (Unsplash; credits in bg/CREDITS.md) |
Needs JDK 11+ and the Android SDK command-line tools with platform 33 and build-tools 35.0.0:
sdkmanager "platforms;android-33" "build-tools;35.0.0"
ANDROID_HOME=~/Library/Android/sdk bash android/build.sh
That gives android/c1250-deck.apk. Private settings come from a folder next to this repo,
../treadmill-deck-private (or DECK_PRIVATE=…):
secrets.env with DECK_KEY (the site key), DECK_SITE (your site), KS_PASS and
CLOUDFLARE_ACCOUNT_IDkeystore/c1250deck.jks, the signing keyWithout it, the build makes a throwaway signing key and leaves uploads and updates off. Keep your signing key safe: a console only takes updates signed with the key it was installed with.
See installer/README.txt. In short: unlock the console's Android settings (privileged mode), then
install the APK, either with installer/install.sh over ADB or by opening it in the console's browser.
In the app, Settings → Start on power-up makes it the treadmill's home screen.
bash android/release.sh 1.9.3 "What's new"
It bumps the version, builds, writes the APK and manifest to the private folder's releases/, and
publishes both to the update channel (Cloudflare KV; needs CLOUDFLARE_API_TOKEN). Consoles offer the
update within 6 hours, or straight away from Settings → Check for updates. Site changes deploy with
npx wrangler@4 deploy.
Each finished run goes to <site>/runs. An iPhone Shortcut picks up new ones and logs them:
<site>/runs/pending?k=<DECK_KEY>start, minutes, miles
and kcal; Log Workout (Running) with those as date, duration (min), calories (kcal) and
distance (mi); then Get Dictionary Value id and Get Contents of URL
<site>/runs/<id>/logged?k=<DECK_KEY>.If you also wear an Apple Watch, broadcast heart rate with an app like BlueHeart or HeartCast and turn off that app's own workout saving, or each run counts twice.
MIT (see LICENSE). The Home photos keep the Unsplash License, and the libraries their own.
The first motor client was adapted from
nordictrack-ifit-bypass by Matt Wissler
(MIT). OkHttp and Okio are Apache 2.0. Home photos from Unsplash (see bg/CREDITS.md).
C1250 Deck isn't affiliated with NordicTrack, iFit or ICON. Use it at your own risk: the console's STOP key and safety key always override the app, and should be within reach whenever the belt moves.