For every robotics project, choosing a suitable framework and middleware for software and hardware is a challenging task which may influence the entire project. Robotics applications typically are resource constrained when it comes to computations and memory usage. They are built on different hardware platforms and applied in different domains. Therefore it is hard to introduce a common framework for all types of projects. However, in recent years several new attempts have been made and received attention from both researchers and industry. These frameworks are still under development and need to be extended. This paper discusses the different features that are needed for robotics frameworks and compares some of the available middleware and standards.