/billy

The javascript code behind Billy, the robot

Primary LanguageJavaScript

Billy

Billy

This is the repository that holds the billy robot's code. Billy is a robot that is running in a raspberry pi zero w board (for now).

Billy's Main Goal

The first priority is to help humans by doing mainly physical work like opening windows, closing doors, switching the lights on/off or bringing objects to it's owner's hands. Here are some of the thoughts that motivates me building robots:

  • The lack of personal affordable human-sized useful robots in the actual society.
  • My self-development as a computer scientist and human being.
  • The lack of help that some people suffer for having physical disabilities.

I need to feed my cat when I'm traveling and I don't want to bother my neighbors.

Future Ideas

Here are some other benefits that Billy could give us:

  • Respond to voice commands.
  • Take pictures of you.
  • Squat down.
  • Walk.
  • If you are a developer, you could control Billy remotely through internet (as I do right now) and this could be a game changing if you travel constantly.
  • Write letters for you.
  • Bring cans or snacks from the kitchen.
  • Put your clothes in the washing machine.

Risks & Challenges

As the same as every single device connected to the internet, Billy could be a target for many different kinds of cyber attacks, but as long as the default operational system is Linux and the owner doesn't change the default configuration, security shouldn't be a problem. Today is possible to make machines recognize someone's voice and only obey that specific voice and register tasks that can be done for any voice.

One thing to be in mind though is that every tool can be used for bad things, and a robot would not be the exception for this rule. But I'll try to think more about this when I have a working robot, I promise.

Now here are some challenges that I'll be facing if this campaign grow successfully:

  • Create and train a deep learning neural network to make Billy smarter.
  • When I say smarter I mean: know how to avoid obstacles while walking, recognize objects, predict object's weight, know how to interact with different object shapes, balance the object's weight with itself weight while carrying it, recognizing animals, humans, memorizing their names and interacting with the environment (like doors or windows).
  • Make sure the code is well organized and easy to implement if done by other person.

Buying List for Future Development

Any help is appreciated 🍺

Squat2 Squat1