Hello there! 👋 I'm Andreas Menzel, a Software Developer from Bavaria, Germany.
I currently work as a Software Developer for intelligent robotic stations at a robotics and automation startup based in Munich. As part of a small, agile team, I am responsible for developing the software behind our FactoryCube system. This includes not only the "RoboHive Core", responsible for communicating with robots and other hardware, but also the RoboHive UI — the intuitive, web-based user interface. Find out more about this project below.
Outside of software development, I’ve found a real passion in FPV drone building and flying. It’s mainly the hands-on aspect that I enjoy: building drones from scratch, soldering components, tuning flight performance, and yes, occasionally crashing them. The cycle of breaking, repairing, and improving is almost as rewarding as the flights themselves.
My Top Skills
                
                Apart from the skills listed above, which I currently work with on a daily basis, I have also gained some experience in other languages and technologies like Ansible, C/C++, Flask/FastAPI, Java, SQL, and more. I am happy to renew and refine these and other skills in the future, if needed.
My ❤️ Projects
            RoboHive
RoboHive, developed by Leverage Robotics GmbH, is a software for intuitive programming and control of robots and machines. With a unique, time-based drag-and-drop interface, RoboHive makes it easy to create, visualize and synchronize complex workflows across multiple machines.
The integration of artificial intelligence and the flexible use of Python make it possible to implement even sophisticated automation efficiently and transparently.
Technologies Used- RoboHive Core: Written mostly in Python 3 and UrScript (for robots from Universal Robots), the core defines the high-level work flow and provides interfaces for/to robots, conveyor belts, SPS controlled hardware and more.
 - RoboHive UI: The user interface written in HTML, CSS, JavaScript/TypeScript and VueJS provides a powerful and intuitive, drag-and-drop infused user interface with easy synchronization of machines and powerful error handling functionality.
 
            Ask the Wizard
Are you still thinking while coding or are you already Asking The Wizard? 🧙 Ask The Wizard, the revolutionary Python module package system not only embraces side effects but celebrates them!
Create an entire UI infused search window with just three lines of code!
import ask_the_wizard.wizard_importer
import a_function_named_search_window_that_does_the_following_The_window_created_with_pysimplegui_has_a_text_field_where_you_can_enter_a_website_Eg_google_com_When_clicking_the_OPEN_button_the_website_will_be_opened_If_the_website_does_not_exist_the_text_field_will_be_treated_as_a_search_query_and_the_search_query_will_be_searched_with_google_com_When_clicking_the_CLOSE_button_the_window_will_be_closed as wizardry
wizardry.search_window()
                
                
                There is nothing more to say - except for: Try it at your own risk! Or on your friends' computer.
Technologies UsedImplemented in and for Python 3, AskTheWizard utilizes the OpenAI API to generate the code to be executed using the gpt-3.5-turbo model.
            Autonomous Drone Delivery System
During my studies at the Technical University of Munich, I conceptualized, designed, and implemented a Proof-of-Concept for an Autonomous Drone Delivery System (ADDS). This project served as the cornerstone of my bachelor's thesis and is intended to inspire future research and development in the field. Despite a tight timeframe of just four months, I successfully delivered the fully functional prototype.
Goal: Automatically coordinate and control multiple drones simultaneously to safely and autonomously transport (small) cargo containers.
The core of the ADDS consists of four key components, three of which are public and open source:
- ADDS-FlightControl: Central server and brain of the ADDS. Plans the flight routes for each drone while making sure that drones cannot collide. Interfaces with the blockchain and manages the blackbox.
 - ADDS-DJI-AndroidApp: Bridge between Flight Control and the DJI-drone. Sends commands to and requests flight data (location, altitude, etc.) from the drone.
 - ADDS-ControlPanel: Web-Application to monitor the entire drone fleet. Has multiple "applets", e.g. an interactive Open Street Maps-map, bar charts to monitor the state of charge of every drone, and more.
 
The code for the fourth component, ADDS-CChainLink, is private due to the usage of a blockchain technology developed by my professor, that is not (yet) open to the public. This component stores all relevant flight data in a blockchain, so that it cannot be manipulated or deleted.
Technologies UsedFlight Control was developed using Python 3, with a custom API deployed with Flask and NetworkX for flight path calculations. I chose SQLite as a simple and easily copyable database system. The accompanying DJI-Android App was coded in Java. The Control Panel, a standalone Web-Application, was built with pure HTML, CSS, and Javascript. Lastly, C-Chain Link was implemented using Go with another custom API.
Working on this project was incredibly rewarding. It provided me with the opportunity to explore a wide array of programming languages and technologies. Seeing the drones operate in the real world, directly as a result of my code, brought a tangible, satisfying aspect to the work that was uniquely enjoyable.
            Centimenti
Centimenti is a fun, but rather dumb Mentimeter quiz-bot. It uses brute-force to fight its way to the top of the leaderboard. It was mainly created to learn how to use Selenium, and, of course, have fun!
Technologies UsedCoded in Python 3, centimenti takes arguments via argparse and uses the Selenium-module to manually log into the Mentimeter quiz and answer the questions.