PCBs OpenMV N6 Cameras All PCBs are designed, assembled and We use two cameras that operate Bodensee Dogs soldered by hand. Main PCB (under the chassis) Our main PCB houses the Teensy 4.0, independently from the Teensy 4.0 to ensure high frame rates. Both cameras are equipped with fisheye lenses, to handle the a fast and small microcontroller. It also narrow distance to the wall. connects our OpenMV cameras and Germany Rescue Maze includes the BNO055 gyro sensor. Rescue kit deployment We use a metal gear SG90 Servo to Power PCB control the direction of the deployment. The This PCB is connected to the battery torque of the servo is transferred to a Team and supplies the robot with power. It toothed rack to guarantee linear trajectory. We are a team of four students from the Lake Constance region in southern Germany and also integrates our motor drivers and are members of the robotics club at our school. Robotics has become an integral part of our provides the PWM output for our Limit Switches everyday life, which we are committed to not only on school days, but also on weekends and servo. We have two switches at the front of the vacations. Over the past few years, we have gained valuable knowledge and strengthened robot that are triggered when the robot is UI PCB driving against an object. This prevents our teamwork. We highly value the importance of a strong team spirit, with each member It contains our display, switches, major offsets of the robot's position. contributing their unique strengths, and are very proud to be part of RoboCupJunior. buttons and LEDs for debugging purposes and clear indications during Suspension system a run. The front and back wheels are mounted on Laurence Schreiter a movable axle. Both axles are connected CAD and mechanical design, Team Captain ToF PCB with a linkage. In order to prevent cable clutter and “I designed and fabricated all the robot components, including the suspension plug issues, we designed ToF PCBs to Color Sensor system consisting of silicone wheels and two movable axles.” house all ToFs and the color sensor. We use the Adafruit TCS34725 to detect As all ToFs have the same non- the different tile colors. The strong Finn ten Tusscher modifiable I2C address the PCB is equipped with a Multiplexer. illumination ensures clear distinction PCB design, electronics developer between the colors. “I am responsible for the design, the production, and the assembly of the ToF VL53L4CD Breakouts Our ToF breakouts are designed Silicone Wheels robot’s main, power, UI and ToF PCBs.” Self-made wheels allow us to fully asymmetrically to maximize the distance between two adjacent customize the size and profile. The soft Jannik von Bank sensors. Therefore the robot can silicone guarantees high grip and smooth Sequential control, logging system evaluate its position fast and traversing over ramps, stairs, bumpers and accurately in the maze. debris. “I integrated the seqeuntial control system with which the robot drives and performs the different tasks. Additionally, I coded our custom logging system.” Thilo Hirscher Sequential control Legend: Main Step Victim Identification Navigation and map visualization, Victim identification The foundation of our program is the Subroutine Step Cognitive Targets Victim Handling Start “I am responsible for the navigation and the map, as well as the custom victim IPO model combined with sequential Redistributor Step are identified using a custom algorithm, which starts by finding, identification algorithms. I also developed the visualization application for the control. To create a clear structure filtering and grouping color blobs. Then all pixels from the center multi-floor map.” the control system is divided into U Turn Right Turn Left Turn Drive Plate Obstacle Handling outward get assigned a color using a 1-NN classifier. This data Previous Achievements three types of steps, as shown on can be used to evaluate the thickness of the color rings. ● 2024: 4th place at German Open the right. Main steps should always Drive Ramp ● 2024: 2nd place at European Championship lead to a distributor step and also have Visual Victims ● 2025: 1st place at German Open the option of branching to subroutines. Blue Tile Black Tile 1.Find black blobs with the find_blobs() function. ● 2025: 3rd place at World Championship Additionally this allows us to reuse Corrections 2.Filter by size and position. Calculate rotation using axis lines. ● 2026: 2nd place at German Open subroutines or perform isolated tests on 3.Apply letter-specific Haar-cascade like feature collections. individual or sequences of steps. Navigation A feature compares two areas of a blob based on their brightness. If the brightness quotient is below a certain threshold, SD Card Logging the next feature is checked; otherwise, the blob gets discarded. For fast and easy debugging we use For example, if all the features of the letter Ψ feature collection a custom logger. Every log message passed, the letter Ψ is identified. We implemented the Haar- Some impressions of the is regularly saved to an SD card in cascade like system directly in the firmware of Start of run World Championship combination with the current map the camera to ensure high frame rates. Add unexplored tiles in directions with no wall Salvador 2025 state as well as something we call version control messages. Every Navigation Reached destination of No time the map is changed a version LOP Behavior path? Contact control message is created to store this difference and later saved to the When an LOP is triggered the map gets rebuilt to the last matching checkpoint using the version control Yes Search for unexplored tiles We share our work on many different social media platforms regularly. You can find the links SD card. Furthermore we have messages of the map. This ensures that the map will to those on the website of our robotics club at our school, the Bildungszentrum Markdorf ensured that even if the robot crashes be exactly the same as at the checkpoint. Also the tile Unexplored tiles found? No Calculate and drive path to starting tile https://markdorf-robotics.de/ or simply scan the QR code. we still flush all information to the SD on which the LOP was triggered gets flagged as Yes Exit the run card using a custom crash handler. To view all this data we developed a map unsafe, which ensures that the robot only drives over Calculate path and path time for Address visualization tool that can display the version control messages as a map allowing us to the tile when there is no other path. unexplored tiles from current position Roboter AG Bildungszentrum Markdorf view all the changes to the map and see what log messages were logged on a selected Are there Ensisheimerstraße 30 tile. Unit testing adjacent unexplored No Pick shortest path D-88677 Markdorf, Germany With Googletest and our map visualization tool to build tiles? Yes We and the dev. We and the dev. test maps, we wrote over 210 fully independent unit Pick path according to right hand rule E-Mail use environment use environment tests to test the navigation and mapping code Drive one tile according to path bodenseedogs@gmail.com C++ VS Code + Platform IO Micropython OpenMV IDE thoroughly.