Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions de-DE/code/code-project-example/main.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
print("Hello, world")
4 changes: 4 additions & 0 deletions de-DE/code/code-project-example/project_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
name: "Code Project Example"
identifier: "code-project-example"
type: 'python'
build: false
Binary file added de-DE/images/banner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added de-DE/images/new-project-button.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
22 changes: 22 additions & 0 deletions de-DE/meta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
title: Our beat
hero_image: images/banner.png
description: Use your microbit to make a theme tune for your Code Club
pdf: resources/rpi-our-beat.pdf
version: 1
listed: true
copyedit: true
last_tested: "2025-07-11"
steps:
- title: Das wirst du machen
- title: A simple melody
completion:
- engaged
- title: Play and stop
completion:
- internal
- title: Challenge — Build a band
challenge: true
- title: Challenge — microbit V2 drum loop
challenge: true
completion:
- external
48 changes: 48 additions & 0 deletions de-DE/step_1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
## Was du machen wirst

🎼 Use your BBC micro:bit to make a theme tune for your Code Club 🎶 🥁 🎸 🎹

**UNPLUGGED**: [Download](resources/unplugged-sound-sequence.pdf){:target="_blank"} the 'Sound sequence' warm up activity.

\--- print-only ---

TODO:
![ALT TEXT](images/IMAGE.png)

\--- /print-only ---

\--- no-print ---

\--- task ---

<div style="display: flex; flex-wrap: wrap">
<div style="flex-basis: 200px; flex-grow: 1">

Click the A button to start a melody.

Click A again to stop.

**Notice**: The melody does not stop until it has finished.

</div>
<div>

🎼🎼🎼🎼🎼🎼🎼🎼🎼

<div style="position:relative;height:0;padding-bottom:125%;overflow:hidden;"><iframe style="position:absolute;top:0;left:0;width:100%;height:100%;" src="https://makecode.microbit.org/---run?id=S95780-80011-49234-87416" allowfullscreen="allowfullscreen" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" frameborder="0"></iframe></div>

</div>

\--- /task ---

\--- /no-print ---

## --- collapse ---

## title: micro:bit V1 users

The speaker output is only available on the micro:bit V2. You will need to connect external headphones or speakers to play sound on the micro:bit V1. You will still be able to play the sound on the simulator.

Here is a [guide to connecting headphones and speakers to the micro:bit V1](https://makecode.microbit.org/projects/hack-your-headphones/make){:target="_blank"}.

\--- /collapse ---
94 changes: 94 additions & 0 deletions de-DE/step_2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
## A simple melody

Create your first tune!

\--- task ---

Open the MakeCode editor at [makecode.microbit.org](https://makecode.microbit.org){:target="_blank"}.

\--- /task ---

### First micro:bit project?

[[[makecode-tour]]]

\--- task ---

### Create your project

Create and name your project:

Click on the **New Project** button.

<img src="images/new-project-button.png" alt="The New Project button inside MakeCode." width="250"/>

\--- /task ---

\--- task ---

Give your new project a name (e.g. 'Our Club') and click **Create**.

\--- /task ---

\--- task ---

### Make a melody

From the `Music`{:class="microbitmusic"} menu, drag the `play melody ... at tempo 120 (bpm) [until done]`{:class="microbitmusic"} block and place it inside the `forever`{:class="microbitbasic"} block.

```microbit
basic.forever(function () {
music.play(music.stringPlayable("- - - - - - - - ", 120), music.PlaybackMode.UntilDone)
})
```

\--- /task ---

\--- task ---

Click on the melody to open the Editor.

\--- /task ---

\--- task ---

Switch to the Gallery and choose a melody.

See the melody pattern in the Editor.

\--- /task ---

\--- task ---

Click the play ▶️ button to hear the chosen melody.

See the melody pattern in the Editor.

\--- /task ---

\--- task ---

### Listen and tune

**Test**

- Try different melodies and hear the changes
- Change the notes to change the melody

\--- /task ---

\--- task ---

Keep experimenting until you hear a melody you like.

\--- /task ---

\--- task ---

When you make a change to a code block in the code editor panel, the simulator will restart.

**Test**

- The melody should play until it is done (and then loop because of the `forever`{:class="microbitbasic"} block)

\--- /task ---
129 changes: 129 additions & 0 deletions de-DE/step_3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
## Play and stop

\--- task ---

### Button A

From the `Input`{:class='microbitinput'} menu, drag an `on button`{:class='microbitinput'} block to the code editor panel.

```microbit
input.onButtonPressed(Button.A, function () {
})
```

\--- /task ---

\--- task ---

### Add a variable

Use a variable to track if the melody is playing.

Open the `Variables`{:class='microbitvariables'} menu and click **Make a Variable**.

Name your new variable `playing`.

\--- /task ---

\--- task ---

### Playing or not playing

From the `Variables`{:class='microbitvariables'} menu, drag a `set playing`{:class='microbitvariables'} block inside the `on button`{:class='microbitinput'} block.

```microbit
input.onButtonPressed(Button.A, function () {
playing = (0)
})
```

\--- /task ---

Use a `not`{:class='microbitlogic'} block to change `playing` between true and false.

\--- task ---

From the `Logic`{:class='microbitlogic'} menu, drag a `not`{:class='microbitlogic'} block inside the `0`.

```microbit
input.onButtonPressed(Button.A, function () {
playing = !(true)
})
```

\--- /task ---

\--- task ---

From the `Variables`{:class='microbitvariables'} menu, drag the `playing`{:class='microbitvariables'} block inside the `not`{:class='microbitlogic'} block.

```microbit
input.onButtonPressed(Button.A, function () {
playing = !(playing)
})
```

\--- /task ---

\--- task ---

### Play the melody when playing is true

From the `Logic`{:class='microbitlogic'} menu, drag an `if`{:class='microbitlogic'} block inside your `forever`{:class='microbitbasic'} block.

```microbit
basic.forever(function () {
if (true) {

}
music.play(music.stringPlayable("G F G A G F A E ", 120), music.PlaybackMode.UntilDone)
})
```

\--- /task ---

\--- task ---

Place your melody inside the `if`{:class='microbitlogic'} block.

```microbit
basic.forever(function () {
if (true) {
music.play(music.stringPlayable("G F G A G F A E ", 120), music.PlaybackMode.UntilDone)
}
})
```

**Notice**: The melody will play because `true` is the default.

\--- /task ---

\--- task ---

From the `Variables`{:class='microbitvariables'} menu, drag the `playing`{:class='microbitvariables'} block inside the `if`{:class='microbitlogic'} block.

```microbit
basic.forever(function () {
if (playing) {
music.play(music.stringPlayable("G F G A G F A E ", 120), music.PlaybackMode.UntilDone)
}
})
```

Now, the melody will only play if the 'playing' variable is set to `true` by the button.

\--- /task ---

\--- task ---

**Test**:

Press button A to set 'playing' to `true` (starting the melody).

Press button A again to set 'playing' to `false` (stopping the melody).

\--- /task ---

Share your tune with us!

[[[microbit-share]]]
Loading