You will hear the terms open source, git, github and thingiverse and others used alot in the DIY (do it yourself) robot building hobby and throughout the entire software and robotics industry.
Open source software for robot builders is essentially just programs or parts of programs that you can legally download free and modify and use to get your robot and its servo motors and sensors to do things right away, like move its arms or blink an eyelid.
As you get more advanced and want to add some artificial intelligence or computer vision to your robot you may access some more advanced open source software like the Open CV software.
Open source is said to be both a philosophy and a development model.
In the 70s and 80s software was often made to be free as a way to encourage others to learn programming and get better at it so that the amount and quality of software would increase.
This is sort of whats happening now in the robotics and AI community with the OpenCV project and whats happening at the Hanson Robotics company with their “Sophia DAO: Initiative” and other places.
Here is a quote of how Hanson Robotics wants to encourage everyone to help shape the future of their robot Sophia and all robots which will be built from here on.
QUOTE from Hanson Robotics Website: https://www.hansonrobotics.com/sophiadao-governance-organization-for-agi-development/
QUOTE “This would be an upgradeable decentralized autonomous organization (DAO) as a means to create a public/private initiative to nurture and guide the maturation and growth of Sophia the Robot. As well, allowing for interested and committed members of the public to directly participate in the open-source development of Sophia’s software, initiatives, and research.” END QUOTE
Open source software can be used in a robot that you plan to sell although there are some grey areas with open source software and you should always read the license with any software.
The challenge is that the term open source has been used to refer to many things all the way from ecology to 3d printed files and certain hardware.
You can print your own amazing robot using the freely available 3d files at the InMoov site but you are really not supposed to sell your finished robot for more than what you paid to make it. It is considered proper form to ask the InMoov owner Gael Langevin and the community for permission to sell it first.
Here is another robotics site with an open source view Pollen Robotics https://www.pollen-robotics.com/opensource/ . Their current robot is named Reachy and they had an earlier robot named Poppy which made quite an impact in the media several years ago.
Now there have been many cases of totally legally selling open source software as is the case with Linux.
Linux was developed from an operating system called Minix which was based on the original operating system called Unix.
Open source software relies on the user community to support each other which is why most companies in the past did not want to use software that they didn’t own 100 % and provide 100% of the support for it.
Linux was and is open source. But companies like Red Hat Linux released their own version back in the late 1990s for profit which was legal because they provided their own software support for it.
You can go on Youtube and watch a great Tedtalk video of one of the original creators of mySql, Michael Widenius explain how he and two other Scandinavian coworkers worked on mySql from the beginning as an Opensource project and later sold the software to Sun Microsystems for over a billion dollars.
Now there has also been software controversy over the years with Linux and hardware makers like the issues with the graphics card maker Nvidia since about 2015.
Many hardware makers don’t really like having open source software on their platforms because it can be very difficult and expensive to offer support when something goes wrong with the possibly dozens of versions of open source software like Linux and the revisions that might be out there.
Here are a handful of some important open source robotics software solutions:
- – ROS
- – Gazebo Robot Simulators
- – Navigation for Mobile robotic bases
- – RVIZ Robot Visualizer
- – Movelt Motion Planning Platform
Now lets address the terms git and github or Gitlab as they relate to Opensource software.
It gets a little complicate because apparently GitLab is open source but GitHub is not open source.
Git is basically an open source way to handle version control of software and GitHub is the website or company that is associated with it and it has been owned by Microsoft since 2019.
It makes it easier for programmers to put their code on the site so others can look at it and improve upon it but private companies can have their own version of git for controlling software versions on their own internal websites or databases.\
It is not for beginners because using git is at the command line level although there is a graphical version available…its alot of Linux kind of command line cryptic words like “fs” with a lot of /’s.
Anytime you see a Hollywood movie where they show a hacker at work or a spy movie accessing company files, you will probably be looking at lines and lines of linux or maybe even something from github.
For example here is a link to a github location of an amazing author of arudino books and more, Bob Davis. https://github.com/bobdavis321/Arduino-Servo-Projects
With the Arduino, you can go to a github location like this and get programs called “sketches” to make your robot servos and sensors do something.
Now Thingiverse deals with the 3d printing community.
It is basically a website set up to share 3d files to print just about anything and use it under the GNU licensing agreement.
It was started in 2008 and was part of the 3d printing machine website of the company Makerbot Industries.
There are now more than a handful of similar sites like MyMiniFactory , cults, cgtrader and more.
Here is a link to the Github location for the University of Texas’ BWI Building wide intelligence project where they have been trying to build and perfect fully autonomous robots which could patrol and help staff and students on campus. AI is being used and continuous research is taking place there.