๐Ÿ’“ ๅฐ็ฑณๆ‰‹็Žฏๅฎžๆ—ถๅฟƒ็އๆ•ฐๆฎ้‡‡้›† - Your Soul, Your Beats!

Related tags

DevOps Tools mebeats
Overview

๐Ÿ’“ mebeats Go Go Report Card

ๅฐ็ฑณๆ‰‹็Žฏๅฎžๆ—ถๅฟƒ็އๆ•ฐๆฎ้‡‡้›† - Your Soul, Your Beats!

  • cmd/mebeats-client: the mebeats client. It collects the heart rate data from Mi Band and reports to server.
  • cmd/mebeats-server: the mebeats sever. It receives the heart rate data and generate the badge.

Requirement

  • MiBand (2, 3, 4, 5, 6)
  • macOS 11.3.1 or higher

Run server

git clone [email protected]:wuhan005/mebeats.git

cd mebeats/cmd/mebeats-server

go build . && ./mebeats-server --key=<your_secret_key>

Server runs on 0.0.0.0:2830.

Run client

git clone [email protected]:wuhan005/mebeats.git

cd mebeats/cmd/mebeats-client

go build . && ./mebeats-client --addr=<mi_band_addr> --auth-key=<mi_band_auth_key> --server-addr=<mebeats_server_addr> --server-key=<your_secret_key>

License

MIT

You might also like...
๐Ÿถ Kubernetes CLI To Manage Your Clusters In Style!
๐Ÿถ Kubernetes CLI To Manage Your Clusters In Style!

K9s - Kubernetes CLI To Manage Your Clusters In Style! K9s provides a terminal UI to interact with your Kubernetes clusters. The aim of this project i

Open URL in your local web browser from the SSH-connected remote environment.

opener Open URL in your local web browser from the SSH-connected remote environment. How does opener work? opener is a daemon process that runs locall

Validation of best practices in your Kubernetes clusters
Validation of best practices in your Kubernetes clusters

Best Practices for Kubernetes Workload Configuration Fairwinds' Polaris keeps your clusters sailing smoothly. It runs a variety of checks to ensure th

๐Ÿ›… Backup your Kubernetes Stateful Applications

Stash Stash by AppsCode is a cloud-native data backup and recovery solution for Kubernetes workloads. If you are running production workloads in Kuber

A cli that exposes your local resources to kubernetes
A cli that exposes your local resources to kubernetes

ktunnel Expose your local resources to kubernetes ๐Ÿ“ Table of Contents About Getting Started Usage Documentation Contributing Authors Acknowledgments

Bubbly is an open-source platform that gives you confidence in your continuous release process.
Bubbly is an open-source platform that gives you confidence in your continuous release process.

Bubbly Bubbly - Release Readiness in a Bubble Bubbly emerged from a need that many lean software teams practicing Continuous Integration and Delivery

Putting serverless on your server
Putting serverless on your server

Matterless: putting serverless on your server Serverless computing enables you to build applications that automatically scale with demand, and your wa

Testcontainers is a Golang library that providing a friendly API to run Docker container. It is designed to create runtime environment to use during your automatic tests.

When I was working on a Zipkin PR I discovered a nice Java library called Testcontainers. It provides an easy and clean API over the go docker sdk to

Collect data about your dependencies

Collect data about your dependencies Features and Data Sources: Go modules, runs tests, detects tests and benchmarks Flexible rendering with Graphviz,

Comments
  • My macOS Bug Sur could not connect to MiBand3 all the time

    My macOS Bug Sur could not connect to MiBand3 all the time

    The mebeats-client seems to stopped at this line of code. iPhone's bluetooth could always discover and connect to band successfully, but mac couldn't. Any way to fix this, thanks.

    opened by IcedOtaku 2
  • Does it support reading broadcast HR ?

    Does it support reading broadcast HR ?

    The Miband supports broadcasting heart rate to other devices. In this situation, the client can read the heart rate without auth key. Most of the sports watch supports broadcasting heart rate.

    opened by wh201906 0
  • ๆ”ฏๆŒๅฐ็ฑณๆ‰‹็Žฏ6ๅ—๏ผŸ

    ๆ”ฏๆŒๅฐ็ฑณๆ‰‹็Žฏ6ๅ—๏ผŸ

    ๆˆ‘ๆต‹่ฏ•ไบ†ๅฐ็ฑณๆ‰‹็Žฏ6๏ผŒAuth้ชŒ่ฏๆ”ถๅˆฐ็š„่ฟ”ๅ›ž็ ๆ˜ฏ100307 ๆˆ‘็”จ็š„ๆ˜ฏjsๆต‹่ฏ• async authenticate() { await this.startNotifications(this.chars.auth, async (e) => { const value = e.target.value.buffer; const cmd = buf2hex(value.slice(0, 3)); if (cmd === "100101") { console.log("Set new key OK"); } else if (cmd === "100201") { const number = value.slice(3); console.log("Received authentication challenge: ", buf2hex(value.slice(3))); const key = aesjs.utils.hex.toBytes(this.authKey); const aesCbc = new aesjs.ModeOfOperation.cbc(key); const out = aesCbc.encrypt(new Uint8Array(number)); const cmd2 = concatBuffers(new Uint8Array([3, 0]), out); console.log("Sending authentication response"); await this.chars.auth.writeValue(cmd2); } else if (cmd === "100301") { await this.onAuthenticated(); } else if (cmd === "100308") { console.log("Received authentication failure"); } else { throw new Error(Unknown callback, cmd='${cmd}'); } }); await this.chars.auth.writeValue(Uint8Array.from([2, 0])); }

    help wanted 
    opened by foenix66 2
Owner
E99p1ant
Gopher ๐Ÿญ / PHPer ๐Ÿ˜ / CTFer ๐Ÿšฉ @vidar-team / Be cool, but also be warm. โ˜บ๏ธ
E99p1ant
Supporting your devops by shortening your strings using common abbreviations and clever guesswork

abbreviate Shorten your strings using common abbreviations. Supported by Tidelift Motivation This tool comes out of a frustration of the name of resou

Pascal Dennerly 193 Dec 14, 2022
Kusk makes your OpenAPI definition the source of truth for API resources in your cluster

Kusk - use OpenAPI to configure Kubernetes What is Kusk? Developers deploying their REST APIs in Kubernetes shouldn't have to worry about managing res

kubeshop 7 Dec 16, 2022
A shields.io API for your youtube channel to protect your api key

Youtube-Channel-Badge A shields.io API for your youtube channel to protect your

Mallikarjun H 0 Dec 23, 2021
A simple download file manager that sorts your files into your desired folders, This was meant to be a small project and nothing big.

GoDFM Simply go to the tags and download the .exe file (or compile it yourself by running go build). Add it to your environment paths by going to sett

null 0 Aug 9, 2022
Enable your Go applications to self update

go-selfupdate Enable your Golang applications to self update. Inspired by Chrome based on Heroku's hk. Features Tested on Mac, Linux, Arm, and Windows

Mark 1.1k Jan 3, 2023
Jenkins CLI allows you manage your Jenkins as an easy way

Quick start ็ฎ€ไฝ“ไธญๆ–‡ Jenkins CLI Jenkins CLI allows you manage your Jenkins in an easy way. No matter if you're a plugin developer, administrator or just

Jenkins Chinese Community 346 Jan 4, 2023
Manage your ssh alias configs easily.

manssh manssh is a command line tool for managing your ssh alias config easily, inspired by storm project, powered by Go. Note: This project is actual

Wendell Sun 276 Nov 9, 2022
grafana-sync Keep your grafana dashboards in sync.

grafana-sync Keep your grafana dashboards in sync. Table of Contents grafana-sync Table of Contents Installing Getting Started Pull Save all dashboard

Maksym Postument 169 Dec 14, 2022
k8s-image-swapper Mirror images into your own registry and swap image references automatically.

k8s-image-swapper Mirror images into your own registry and swap image references automatically. k8s-image-swapper is a mutating webhook for Kubernetes

Enrico Stahn 335 Dec 27, 2022
Easily run your Compose application to the cloud with compose-cli

This CLI tool makes it easy to run Docker containers and Docker Compose applications in the cloud using either Amazon Elastic Container Service (ECS) or Microsoft Azure Container Instances (ACI) using the Docker commands you already know.

Docker 889 Jan 8, 2023