1
 
 
Account
In your account you can view the status of your application, save incomplete applications and view current news and events
March 04, 2015

Tutorial - Mario Kart

What is the article about?

The "Lego Mindstorms: Mario Kart" project was launched in October 2014. The idea behind this is that the IT trainees at OTTO come together every Friday, every two weeks for a joint project in order to exploit synergies and also to specifically compensate for content that the vocational school cannot provide.

Hello dear technology friends!

In the following article, we want to give you a little insight into the tutorial "Lego Mindstorms: Mario Kart", which was launched as part of the IT specialist training for the 2012/13 cohorts.

Who is working on it, what technology is used and what is actually the goal of the whole thing? More about this now!

The "Lego Mindstorms: Mario Kart" project was launched in October 2014. The idea behind it is that the IT trainees at OTTO get together every Friday, every two weeks for a joint project in order to take advantage of synergies and also to specifically compensate for content that the vocational school cannot provide. Our team consists of seven IT students from the 2nd and 3rd year of their apprenticeship and is a mix of application developers and system integrators. The project is supervised by Christian Finckler.

The idea behind the project is as follows: Based on Nintendo's successful fun racer Mario Kart http://de.wikipedia.org/wiki/Mario_Kart, a racing game transferred to reality is to be designed and developed. At least two players will race against each other and will be able to influence each other by means of various gadgets. The robots will be controlled via an app for Android smartphones. The game logic and communication will be managed by means of a NodeJS server running on a Raspberry Pi.

mariokart
mariokart

With the Android app, the user can select one of the vehicles and then control it. The integration of powerups, which are supposed to be similar to the virtual original, is also planned. These are displayed in the interface and can be fired at the push of a button. In addition to one button each for acceleration and braking, the interface also includes a "D-pad" for directional control, a speed indicator and the familiar "Start" and "Select" buttons, which have been replaced in the current console generation.

In addition to a motor for acceleration and control, the karts realized with Lego also have sensors to scan the ground and thus stay on course (keyword: track boundaries, start/finish line as well as markings for PowerUps). The programming is done using Java and Lejos http://www.lejos.org/ The vehicle itself has no intelligence, but only receives the control signals from the server and sends it in turn its data such as speed, if necessary "position" or PowerUp.

The NodeJS server running on the Raspberry Pi receives support from a MongoDB database and also coordinates the communication between apps and the vehicles.

The communication is done using websockets. Both the vehicles and the Android apps log in to the server and the server redistributes the messages accordingly.

The implementation of this project has been ongoing since October 2014 and will continue until May 2015.

Of course, there have been a few hurdles to overcome up to this point. For example, Android programming was for almost everyone in the team, a closed book. With the help of forum posts and Google Marathons, it could be opened and read and understood with the support of Christian Finckler and Lennart Bartelt. Another challenge was that each team member could also apply and expand their knowledge in each area. By means of regular stand-ups we kept each other up to date and with changing pairing partners we made sure that no knowledge islands were created.

We would be happy about any questions, suggestions or comments!

As soon as we have reached the next milestone, we will certainly hear from you again.

0No comments yet.

Write a comment
Answer to: Reply directly to the topic

Written by

timhillmer

Similar Articles

We want to improve out content with your feedback.

How interesting is this blogpost?

We have received your feedback.

Cookies erlauben?

OTTO und drei Partner brauchen deine Einwilligung (Klick auf "OK") bei einzelnen Datennutzungen, um Informationen auf einem Gerät zu speichern und/oder abzurufen (IP-Adresse, Nutzer-ID, Browser-Informationen).
Die Datennutzung erfolgt für personalisierte Anzeigen und Inhalte, Anzeigen- und Inhaltsmessungen sowie um Erkenntnisse über Zielgruppen und Produktentwicklungen zu gewinnen. Mehr Infos zur Einwilligung gibt’s jederzeit hier. Mit Klick auf den Link "Cookies ablehnen" kannst du deine Einwilligung jederzeit ablehnen.

Datennutzungen

OTTO arbeitet mit Partnern zusammen, die von deinem Endgerät abgerufene Daten (Trackingdaten) auch zu eigenen Zwecken (z.B. Profilbildungen) / zu Zwecken Dritter verarbeiten. Vor diesem Hintergrund erfordert nicht nur die Erhebung der Trackingdaten, sondern auch deren Weiterverarbeitung durch diese Anbieter einer Einwilligung. Die Trackingdaten werden erst dann erhoben, wenn du auf den in dem Banner auf otto.de wiedergebenden Button „OK” klickst. Bei den Partnern handelt es sich um die folgenden Unternehmen:
Google Inc., Meta Platforms Ireland Limited, elbwalker GmbH
Weitere Informationen zu den Datenverarbeitungen durch diese Partner findest du in der Datenschutzerklärung auf otto.de/jobs. Die Informationen sind außerdem über einen Link in dem Banner abrufbar.