2 Technical Challenge Excellence

Bodensee Dogs

Maze league · Germany · RoboCup 2026 · 2nd place

Document register

  1. Poster1 pagePublished
  2. Presentation videoYouTubePublished
  3. Bill of materialsNot shared
  4. Team description paperNot shared
  5. Engineering journalNot shared
  6. Source codeNot shared

Sharing each document is the team's decision. “Not shared” means this team chose not to publish it, or did not submit one — not that it is missing from the archive.

Bodensee Dogs's robot
The Bodensee Dogs team

In their words

We are the Bodensee Dogs from Lake Constance, Germany.

Our robot is entirely self-built, as we developed custom 3D-printed components, a linked two axle suspension system, which transmits the same impulse to diagonal wheels. Custom-molded silicone wheels that, thanks to their lack of profile, make it easier for the robot to navigate stairs. Five custom-designed boards, Main, Power, UI, ToF, and ToF Breakout, offer modularity and customizability.

The robot's software is based on a sequential control system, which, when combined with custom-programmed sensor libraries or wrappers, enables structured and rapid debugging. In addition, both the robot and the cameras feature a comprehensive SD card logging system that generates detailed crash reports, among other things.

The robot's navigation algorithm is based on a combination of the shortest path strategy and the right-hand rule.

To make it easy and quick to understand the navigation and simultaneous mapping process, we have developed a visualization tool that can display every mapping step using special “version control” logs. The tool is also used to create maps that can be used for unit tests to validate the navigation algorithm.

What sets us apart from other teams is our decision to avoid AI-based victim identification. Instead, we use a Haar-cascade-like algorithm for recognizing visual victims, ensuring fast adaptability and easy calibration. Cognitive targets are also identified using an algorithmic approach that assigns colors to pixels using a nearest-neighbor method.

To ensure the necessary performance, we have offloaded large portions of the algorithms into the camera's firmware.

Poster

Read the text of this document — 1191 words
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.

Open as plain text

1 page, rendered as images so they load quickly. The text above is the document's own, extracted from the PDF.

Download the original PDF (869 KB) from GitHub

Presentation video

Hosted on YouTube. The player loads only when you press play.

Open in YouTube