GitHub - wesbos/javascript-drones
source link: https://github.com/wesbos/javascript-drones
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
readme.md
JavaScript Drones!
Watch the videos:
Part 1 → https://www.youtube.com/watch?v=JzFvGf7Ywkk
Part 2 → https://www.youtube.com/watch?v=ozMwRq-IT2w
⚠️️️ ⚠️ ️️⚠️️️ Use the codebase as your own risk. The drone can hurt you and I'm not responsible for that. Always test commands with the props removed first. Don't be dumb. ⚠️️️ ⚠️️️ ⚠️️️
Flying a Drone with React and Node.js
IBM is giving away 2,000 DJI Tello drones as part of a contest and I made this video to help them promote it.
- Enter the contest at https://developer.ibm.com/contest (US/ Canada Only)
- More details about the challenge at https://developer.ibm.com/blogs/2018/11/12/win-a-drone-program-a-drone-change-the-world/
Software Used
- React (with React Hooks!)
- Styled Components for styling
- Node.js and UDP4 sockets for communicating with drone
- Socket.io WebSockets for sending data to/from the browser
- Next.js for easy react setup
Hardware Used
- DJI Tello Drone
- Extra Batteries - it comes with one and I bought two extra. For continual development I'd say you only need two — one in the charger and one in the drone. For flying away from your house you definitely need at least 3 as they only last about 10-15 mins.
- Fast Battery Charger with 4 slots
Using This Code
Frontend
- cd
frontend
npm install
npm run dev
Backend
- cd
backend
npm install
- connect to drone via wifi
npm start
Troubleshooting
[Docs for Tello are available here](https://dl-cdn.ryzerobotics.com/downloads/tello/20180910/Tello SDK Documentation EN_1.3.pdf)
I had to update the firmware of my drone when it came in the mail before I could use this 1.3 API. Do this via the Tello app on your phone.
If you let the drone's WIFI connection lapse, you have to restart the server by typing rs
into the terminal. This will re-run the command command
that puts the drone in SDK mode. If you don't do this, it will ignore any commands you send it.
License — WTFPL
I want you to build cool stuff with this.
Please hack on it and make your own cool things.
Examples & Resources
- jsolderitsch/tello-nodejs - very simple JavaScript examples
- FFMpeg + Node.js Video in the browser complicated example
- Some Japanese Developer Figured out how to get video working with WebRTC
- Link your repo here for others to learn!
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK