Skip to content

A @bitmakerlabs project to create an AJAX-driven interface to control a robot.

Notifications You must be signed in to change notification settings

jbinto/controlbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ControlBot

This is a JQuery interface to control the mc_hammer_bot robot. It was an assignment at @bitmakerlabs to learn AJAX in an fun and awesome way.

Completed features

  • User interface
  • Send AJAX commands to robot
  • Allow multiple axes (e.g. strafe, turn, forward) to be sent at once
  • Add turn buttons to the UI
  • Add keybindings

To do list in priority order

  • Add a throttle to control the speed (never completed)

Lessons learned

Coding yourself into a corner.

I tried to make a safe (read: "rigid") JavaScript API for sending commands to the robot. I made simple functions like reverse(), turnLeft(), etc. But as new requirements were introduced (e.g. control multiple axes at once, non 100% speed), my API fell apart. You eventually end up wishing you could drop one level lower and just write directly.

Lesson learned: don't over-engineer things in a proof of concept. Good APIs grow organically, they're not designed up front.

About

A @bitmakerlabs project to create an AJAX-driven interface to control a robot.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published