Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ttu/lego-boost-app
React Application for controlling Lego Boost from the browser with Web Bluetooth API
https://github.com/ttu/lego-boost-app
create-react-app lego lego-boost pwa react typescript web-bluetooth-api
Last synced: 4 days ago
JSON representation
React Application for controlling Lego Boost from the browser with Web Bluetooth API
- Host: GitHub
- URL: https://github.com/ttu/lego-boost-app
- Owner: ttu
- License: mit
- Created: 2018-12-09T11:01:25.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2022-01-14T14:23:16.000Z (almost 3 years ago)
- Last Synced: 2024-11-01T22:50:39.836Z (11 days ago)
- Topics: create-react-app, lego, lego-boost, pwa, react, typescript, web-bluetooth-api
- Language: TypeScript
- Homepage: https://legoboost.azurewebsites.net/
- Size: 3.35 MB
- Stars: 68
- Watchers: 5
- Forks: 14
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Lego Boost Browser Application
Control Lego Boost from the browser without any installations.
Deployed to: https://legoboost.azurewebsites.net/
## Features
* Code control
* Control Boost with JavaScript code
* Manual control
* Control Boost with arrow controls
* AI control
* Boost drives automatically and evades obstacles
* Individual motor control
* Control each motor individually### Manual control
![Manual Control](docs/manual_control.JPG "Boost Icon")
### Code control
![Code Control](docs/code_control.JPG "Boost Icon")## Progressive Web Application
Application asks permission to add a link to mobile phone's home screen. Application will then open as a standalone application.
![Boost Icon](docs/pwa_icon.png "Boost Icon")
## Web Bluetooth API
Application uses [Web Bluetooth API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API) to communicate with Lego Boost.
Web Bluetooth API works with __Windows, Mac, Linux__ and __Android__ (6.0->) devices with __Chrome__ and __Opera__ browsers. Unfortunately Apple iOS doesn't support Web Bluetooth.
[Supported devices](https://github.com/WebBluetoothCG/web-bluetooth/blob/master/implementation-status.md)
If connection doesn't work, test connection to Lego Boost with [Google's sample tester](https://googlechrome.github.io/samples/web-bluetooth/read-characteristic-value-changed.html).
### Communication module
Uses [lego-boost-browser](https://github.com/ttu/lego-boost-browser) package for device communication and control.
## Run locally
```sh
$ npm install
$ npm start
```## Docker
NOTE: lego-boost-browser package is installed from GitHub. Docker will work after package is released to npm.
## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
## Disclaimer
LEGO and BOOST are Trademarks from The LEGO Company, which do not support this project.
Project maintainers are not responsible for any damage on your LEGO BOOST devices - use it at your own risk.
## License
Licensed under the [MIT](https://github.com/ttu/lego-boost-app/blob/master/LICENSE) License.