Go Down

Topic: New X10ABOT Arduino Robotics Framework (Read 2 times) previous topic - next topic


Hello Arduino Community!
I have been working at an Arduino Library that will hopefully do for robotics what Arduino did for electronics.
I named it "X10ABOT" - The scalable, modular, extensible robotics framework. It allows for easy managing of robot sensor's and actuators across one or more Arduino boards by allows you to connect up to 112 ardunios over I2C and control them easily from the Motherboard.


But I was getting too excited about it and wanted to let other people try it out while I develop it. So instead of trying to perfect it, here I present a Minimum Viable Product (MVP) version. This version currently works with the UNO (or any compatible pinout) and can be made to work with any Arduino by changing a few pin settings in the Daughterboard Library. It currently has the capability of controlling any Sensor or Actuator that requires: Digital I/O, PWM or Analogue input.
The code is located  here https://github.com/frazras/X10ABOT_MB  and https://github.com/frazras/X10ABOT_DB just install both of them like any regular Arduino Library and run the example code from The motherboard Library(if 1 Arduino) or both, one library on each board if more than one Arduino's are used.

This is still in active development, I am doing some testing now, but if you have ANY question, reply here or get me on twitter @frazras for faster response.

There are 4 ports(on the UNO setup), see pin association below
  //{{PWM a, PWM b}, {I/O a, I/O b}}
  {{10, 11}, {12, 13}},  //port 1
  {{6, 9}, {7, 8}} //port 2

  //{{I/O a, I/O b}, analog}
  {{2, 4}, 0}, //port 1
  {{16, 17}, 1} //port 2

Drew Davis


Definitely looks interesting; is the name of the project a "play on words" for "extend-a-bot"?
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.


That is correct, it is made out of the need to be able to scale to support multiple sensors and actuator outside of the capability of a single Arduino. It also accomplishes this by abstracting the functionalities of the board to microcode instructions communicated over an I2C bus. These instructions are interpreted on the daughterboard(slave) devices as hardware assertions.

Go Up