From f025bbc6b08bd3daadbd3cd5ada60679589854ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karl=20S=C3=B6derby?= <35461661+karlsoderby@users.noreply.github.com> Date: Tue, 5 Nov 2024 09:49:56 +0100 Subject: [PATCH 1/6] update installation tutorial --- .../assets/package-installed.png | Bin 0 -> 154169 bytes .../modulinos/01.installation/installation.md | 104 ++++++++++++------ 2 files changed, 68 insertions(+), 36 deletions(-) create mode 100644 content/micropython/03.micropython/modulinos/01.installation/assets/package-installed.png diff --git a/content/micropython/03.micropython/modulinos/01.installation/assets/package-installed.png b/content/micropython/03.micropython/modulinos/01.installation/assets/package-installed.png new file mode 100644 index 0000000000000000000000000000000000000000..a24a08957cf31f2cbc1cc045b5045c2d44cc7a83 GIT binary patch literal 154169 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%0A*G@B*EJ(Z1Le8OJY{xFYYoU`_H7 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 literal 0 HcmV?d00001 diff --git a/content/micropython/03.micropython/modulinos/01.installation/installation.md b/content/micropython/03.micropython/modulinos/01.installation/installation.md index fcf8c8fb83..745162c9c7 100644 --- a/content/micropython/03.micropython/modulinos/01.installation/installation.md +++ b/content/micropython/03.micropython/modulinos/01.installation/installation.md @@ -7,28 +7,30 @@ hero_image: "./hero-banner.png" --- -This article will guide you through the installation process for programming the Arduino Modulinos with Micropython. +In this tutorial, we will go through the installation process required for programming the Arduino Modulinos with MicroPython. ## Goals The goals of this tutorial are: -- learn how to install MicroPython on your Arduino board. -- learn how to install MicroPython packages. -- learn how to run a simpe sketch using MicroPython labs. +- Learn how to install a MicroPython package on your board (the Modulino package). ## Hardware & Software Needed -- [MicroPython Labs](https://lab-micropython.arduino.cc/) +You will need a MicroPython compatible board that works with the Modulinos: - [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) +- [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) + +You will also need the following software: +- [MicroPython Labs](https://lab-micropython.arduino.cc/) - [MicroPython Installer](https://labs.arduino.cc/en/labs/micropython-installer) -- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) +- [Modulino MicroPython package](https://github.com/arduino/arduino-modulino-mpy) ## Install MicroPython -If you haven't done so already, you need to install MicroPython on your Arduino board. The easiest way is to install it using the [MicroPython Installer](https://labs.arduino.cc/en/labs/micropython-installer). +To follow this tutorial, you will need to install MicroPython on your Arduino board. The easiest way is to install it using the [MicroPython Installer](https://labs.arduino.cc/en/labs/micropython-installer). -- Open the installer +- Open the installer. - Connect your board. - If it does not appear press the refresh button. - Press "Install MicroPython". @@ -36,27 +38,59 @@ If you haven't done so already, you need to install MicroPython on your Arduino ![MicroPython Installer](./assets/microPythonInstaller.png) -## Install Modulino Package - -To program Modulinos using MicroPython you must first install the Modulino Package. It's where all the code, necessary to interact with the Modulinos is being stored. - -The easiest way of installing it is using `mpremote`. - -***If this is your first time using `mpremote`, check out the [Getting Started article]().*** - -Once you have everything set up, run: +***More details on installing MicroPython on your board are available in the [MicroPython Installation guide]().*** -```bash -mpremote connect mip install github:arduino/arduino-modulino-mpy -``` - -![MicroPython Package Installation](./assets/MicroPythonPackageInstallationDone.png) +## Install Modulino Package -This will install all necessary packages on your Arduino board. +To program Modulinos using MicroPython we must first install the Modulino package. It's where all the code, necessary to interact with the Modulinos is being stored. + +There are two ways of installing a package: +- Through a terminal +- + +### Terminal Installation + +The easiest way of installing it is using `mpremote`. Currently, we will need a version of Python installed on our computer. + +1. Open a terminal, and write the following line: + ```bash + pip install mpremote + ``` + This will install `mpremote`, which makes it possible to install packages on our board via your computer. +2. With `mpremote` installed, we need to run the following command to identify our board's serial port: + ```bash + mpremote connect list + ``` + + Which will give us something like this: + + ```bash + /dev/cu.usbmodem101 ecda3b60a4dccb3f 2341:056b Arduino Nano ESP32 + ``` + - The port here is `/dev/cu.usbmodem101`. Copy this. + +3. Now, run the following the command. Make sure to replace `` with the port of your device obtained in the previous step. + ```bash + mpremote connect mip install github:arduino/arduino-modulino-mpy + ``` + + Upon completion, we should see something like this in the terminal, to verify the success of the installation: + ![Successful installation.](assets/package-installed.png) + +4. Great job. We have now installed the Modulino package on your board! + +**Troubleshooting:** +- Make sure your board is connected to your computer. +- Make sure it is **not** connected in the Arduino Lab for MicroPython, as this might disturb the connection. +- If you are unable to run `mpremote` in the terminal, this means it is not installed. +- If you are unable to run `python` in the terminal, make sure you have installed Python (you can download and install it [here](https://www.python.org/downloads/)) +- If you have installed Python and it is still not working, try running `python3` and `pip3` instead. +- If you installed Python while having the terminal open, try closing the terminal and re-opening it. +- If you run `mpremote` and there's no board appearing in the list, try re-installing the firmware on your board as it might have failed during installation. ## MicroPython Labs -Let's verify that everything was installed and is working correctly. Go to [MicroPython Labs](https://lab-micropython.arduino.cc/) and click on the connect icon in the top left corner. +We can now verify that everything was installed correctly. Go to [MicroPython Labs](https://lab-micropython.arduino.cc/) and click on the connect icon in the top left corner. ![MicroPython Labs](./assets/microPythonLabs.png) @@ -70,18 +104,16 @@ You should see a folder called `lib` and a file called `boot.py`. Go ahead and p ![MicroPython Lab Files](./assets/microPythonLabsFiles.png) -If you see this, it means the package has been installed successfully. If you want to to go even deeper, you can open the modulino folder and have a look at the individual Modulino packages. Don't worry, you don't have to understand what those files mean exactly to continue. - -## First Sketch - -Copy the following line to the MicroPython Labs Editor and press "Run". - -```python -print("Hello, World!") -``` - -You should see "Hello, World", being printed in the commandline. +If you see this, it means the package has been installed successfully. ## Next Steps -Now that you have successfully installed everything it's time to program your first Modulino. \ No newline at end of file +Now that you have successfully installed everything it's time to program your first Modulino. Below are links to the documentation for all Modulinos. They are also accessible in the side menu at [Arduino Docs - MicroPython](https://docs.arduino.cc/micropython/), under "Modulinos". + +- [Modulino Distance](/micropython/modulinos/modulino-distance) +- [Modulino Pixels](/micropython/modulinos/modulino-pixels) +- [Modulino Buzzer](/micropython/modulinos/modulino-buzzer) +- [Modulino Buttons](/micropython/modulinos/modulino-buttons) +- [Modulino Knob](/micropython/modulinos/modulino-knob) +- [Modulino Movement](/micropython/modulinos/modulino-movement) +- [Modulino Thermo](/micropython/modulinos/modulino-thermo) \ No newline at end of file From 236ea55889af3ff4dde0fed50fff46c7052f274d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karl=20S=C3=B6derby?= <35461661+karlsoderby@users.noreply.github.com> Date: Tue, 5 Nov 2024 09:52:12 +0100 Subject: [PATCH 2/6] Update installation.md --- .../modulinos/01.installation/installation.md | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/content/micropython/03.micropython/modulinos/01.installation/installation.md b/content/micropython/03.micropython/modulinos/01.installation/installation.md index 745162c9c7..7c8442f328 100644 --- a/content/micropython/03.micropython/modulinos/01.installation/installation.md +++ b/content/micropython/03.micropython/modulinos/01.installation/installation.md @@ -13,32 +13,32 @@ In this tutorial, we will go through the installation process required for progr The goals of this tutorial are: -- Learn how to install a MicroPython package on your board (the Modulino package). +- Learn how to install a MicroPython package on an Arduino board (the Modulino package). ## Hardware & Software Needed -You will need a MicroPython compatible board that works with the Modulinos: +We will need a MicroPython compatible board that works with the Modulinos: - [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) - [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) -You will also need the following software: +We will also need the following software: - [MicroPython Labs](https://lab-micropython.arduino.cc/) - [MicroPython Installer](https://labs.arduino.cc/en/labs/micropython-installer) - [Modulino MicroPython package](https://github.com/arduino/arduino-modulino-mpy) ## Install MicroPython -To follow this tutorial, you will need to install MicroPython on your Arduino board. The easiest way is to install it using the [MicroPython Installer](https://labs.arduino.cc/en/labs/micropython-installer). +To follow this tutorial, we will need to install MicroPython on our Arduino board. The easiest way is to install it using the [MicroPython Installer](https://labs.arduino.cc/en/labs/micropython-installer). - Open the installer. -- Connect your board. +- Connect the board to the computer. - If it does not appear press the refresh button. - Press "Install MicroPython". - Wait for the installation to finish. ![MicroPython Installer](./assets/microPythonInstaller.png) -***More details on installing MicroPython on your board are available in the [MicroPython Installation guide]().*** +***More details on installing MicroPython on our board are available in the [MicroPython Installation guide]().*** ## Install Modulino Package @@ -56,7 +56,7 @@ The easiest way of installing it is using `mpremote`. Currently, we will need a ```bash pip install mpremote ``` - This will install `mpremote`, which makes it possible to install packages on our board via your computer. + This will install `mpremote`, which makes it possible to install packages on our board via our computer. 2. With `mpremote` installed, we need to run the following command to identify our board's serial port: ```bash mpremote connect list @@ -69,7 +69,7 @@ The easiest way of installing it is using `mpremote`. Currently, we will need a ``` - The port here is `/dev/cu.usbmodem101`. Copy this. -3. Now, run the following the command. Make sure to replace `` with the port of your device obtained in the previous step. +3. Now, run the following the command. Make sure to replace `` with the port of our device obtained in the previous step. ```bash mpremote connect mip install github:arduino/arduino-modulino-mpy ``` @@ -77,7 +77,7 @@ The easiest way of installing it is using `mpremote`. Currently, we will need a Upon completion, we should see something like this in the terminal, to verify the success of the installation: ![Successful installation.](assets/package-installed.png) -4. Great job. We have now installed the Modulino package on your board! +4. Great job. We have now installed the Modulino package on our board! **Troubleshooting:** - Make sure your board is connected to your computer. @@ -94,21 +94,21 @@ We can now verify that everything was installed correctly. Go to [MicroPython La ![MicroPython Labs](./assets/microPythonLabs.png) -Select the board and press select "connect". You should, now be connected to your Arduino board. +Select the board and press select "connect". We should now be connected to our Arduino board. -***If you experience any issues, try disconnecting and connecting the board again and reinstall MicroPython using the [MicroPython Installer](https://labs.arduino.cc/en/labs/micropython-installer).*** +***If we experience any issues, try disconnecting and connecting the board again and reinstall MicroPython using the [MicroPython Installer](https://labs.arduino.cc/en/labs/micropython-installer).*** To verify that the Modulino package has been installed correctly, click on the file icon in the top bar of the Labs editor. -You should see a folder called `lib` and a file called `boot.py`. Go ahead and press on the `lib` folder and you should see several files and a folder called `modulino`. +We should see a folder called `lib` and a file called `boot.py`. Go ahead and press on the `lib` folder and we should see several files and a folder called `modulino`. ![MicroPython Lab Files](./assets/microPythonLabsFiles.png) -If you see this, it means the package has been installed successfully. +If we see this, it means the package has been installed successfully. ## Next Steps -Now that you have successfully installed everything it's time to program your first Modulino. Below are links to the documentation for all Modulinos. They are also accessible in the side menu at [Arduino Docs - MicroPython](https://docs.arduino.cc/micropython/), under "Modulinos". +Now that we have successfully installed everything it's time to program our first Modulino. Below are links to the documentation for all Modulinos. They are also accessible in the side menu at [Arduino Docs - MicroPython](https://docs.arduino.cc/micropython/), under "Modulinos". - [Modulino Distance](/micropython/modulinos/modulino-distance) - [Modulino Pixels](/micropython/modulinos/modulino-pixels) From 806a1ac6160f388d1ffe9d3623eee44e3f9a0503 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karl=20S=C3=B6derby?= <35461661+karlsoderby@users.noreply.github.com> Date: Tue, 5 Nov 2024 10:00:54 +0100 Subject: [PATCH 3/6] Distance+pixels --- .../02.modulino-distance/modulino-distance.md | 28 +++++++++++-------- .../03.modulino-pixels/modulino-pixels.md | 22 +++++++++------ 2 files changed, 29 insertions(+), 21 deletions(-) diff --git a/content/micropython/03.micropython/modulinos/02.modulino-distance/modulino-distance.md b/content/micropython/03.micropython/modulinos/02.modulino-distance/modulino-distance.md index 478333e0c8..703c9eac7c 100644 --- a/content/micropython/03.micropython/modulinos/02.modulino-distance/modulino-distance.md +++ b/content/micropython/03.micropython/modulinos/02.modulino-distance/modulino-distance.md @@ -1,38 +1,41 @@ --- - title: 'Modulino Distance' -description: 'Get started with using the Modulino Distance' +description: 'Get started with the Modulino Distance using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' hero_image: "./hero-banner.png" - --- -This article will show you how to get started with the Modulino Distance and measure the distance to an object. +In this tutorial, we will get started with the Modulino Distance, which can measure the distance to an object. + +***Note that the installation of the Modulino package is not covered in this tutorial. For details on how to install this, visit the [MicroPython - Modulino Package Installation tutorial](/micropython/modulinos/installation).*** ## Goals The goals of this tutorial are: -- learn how to connect a Modulino to the Arduino Nano ESP32. +- learn how to connect a Modulino to an Arduino using MicroPython - learn how to program the Modulino Distance. ## Hardware & Software Needed -- [MicroPython Labs](https://lab-micropython.arduino.cc/) -- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) -- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) +For this tutorial, we will need the following hardware: - [Modulino Distance](https://store.arduino.cc/products/plug-and-make-kit) - [Arduino Nano to QWIIC Connector Carrier]() +- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) or [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) + +We will also need the following software: +- [MicroPython Labs](https://lab-micropython.arduino.cc/) +- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) ## Connect the Modulino -Before programming it, you need to first connect your Modulino Distance to your Arduino Nano ESP32. Follow the diagram below to connect your Modulino Distance and Nano ESP32. +Before we start programming, we will need to connect our Modulino Distance to our Arduino board. For this we can follow the circuit diagram below: ![Circuit Diagram]() -## Code +## Modulino Distance Code Example -Copy the code below and run it in Arduino MicroPython labs connected to your Arduino Nano ESP32. +Copy the code below and run it in Arduino MicroPython labs, while connected to our board. ```python from modulino import ModulinoDistance @@ -43,4 +46,5 @@ distance = ModulinoDistance() while True: print(f"📏 Distance: {distance.distance} cm") sleep_ms(50) -```` +``` + diff --git a/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md b/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md index 50ab9f543a..fe19cb4f2a 100644 --- a/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md +++ b/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md @@ -1,13 +1,14 @@ --- title: 'Modulino Pixels' -description: 'Get started with using the Modulino Pixels' +description: 'Get started with the Modulino Pixels using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' hero_image: "./hero-banner.png" - --- -This article will show you how to get started with the Modulino Pixels and control RGB LEDs. +In this tutorial, we will get started with the Modulino Pixels and control its RGB LEDs. + +***Note that the installation of the Modulino package is not covered in this tutorial. For details on how to install this, visit the [MicroPython - Modulino Package Installation tutorial](/micropython/modulinos/installation).*** ## Goals @@ -18,21 +19,24 @@ The goals of this tutorial are: ## Hardware & Software Needed -- [MicroPython Labs](https://lab-micropython.arduino.cc/) -- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) -- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) +For this tutorial, we will need the following hardware: - [Modulino Pixels](https://store.arduino.cc/products/plug-and-make-kit) - [Arduino Nano to QWIIC Connector Carrier]() +- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) or [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) + +We will also need the following software: +- [MicroPython Labs](https://lab-micropython.arduino.cc/) +- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) ## Connect the Modulino -Before programming it, you need to first connect your Modulino Pixels to your Arduino Nano ESP32. Follow the diagram below to connect your Modulino Pixels and Nano ESP32. +Before we start programming, we will need to connect our Modulino Pixels to our Arduino board. For this we can follow the circuit diagram below: ![Circuit Diagram]() -## Code +## Modulino Pixels Code Example -Copy the code below and run it in Arduino MicroPython labs connected to your Arduino Nano ESP32. +Copy the code below and run it in Arduino MicroPython labs, while connected to our board. ```python from modulino import ModulinoPixels, ModulinoColor From 132992af29a53bcbe8b845bf18bb60a660c3cbf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karl=20S=C3=B6derby?= <35461661+karlsoderby@users.noreply.github.com> Date: Tue, 5 Nov 2024 10:04:50 +0100 Subject: [PATCH 4/6] buzzer --- .../03.modulino-pixels/modulino-pixels.md | 4 +-- .../04.modulino-buzzer/modulino-buzzer.md | 27 ++++++++++--------- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md b/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md index fe19cb4f2a..f7b1ab1dd6 100644 --- a/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md +++ b/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md @@ -14,7 +14,7 @@ In this tutorial, we will get started with the Modulino Pixels and control its R The goals of this tutorial are: -- learn how to connect a Modulino to the Arduino Nano ESP32. +- learn how to connect a Modulino to an Arduino board. - learn how to program the Modulino Pixels. ## Hardware & Software Needed @@ -90,4 +90,4 @@ for j in range(0, 3): # Turn off all LEDs pixels.clear_all() pixels.show() -```` +``` diff --git a/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md b/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md index c70bb74d24..418c129d20 100644 --- a/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md +++ b/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md @@ -1,38 +1,41 @@ --- - title: 'Modulino Buzzer' -description: 'Get started with using the Modulino Buzzer' +description: 'Get started with the Modulino Buzzer using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' hero_image: "./hero-banner.png" - --- -This article will show you how to get started with the Modulino Buzzer, a piezo speaker. +In this tutorial, we will get started with the Modulino Buzzer, a piezo speaker that can output sound. + +***Note that the installation of the Modulino package is not covered in this tutorial. For details on how to install this, visit the [MicroPython - Modulino Package Installation tutorial](/micropython/modulinos/installation).*** ## Goals The goals of this tutorial are: -- learn how to connect a Modulino to the Arduino Nano ESP32. +- learn how to connect a Modulino to an Arduino board. - learn how to program the Modulino Buzzer. ## Hardware & Software Needed -- [MicroPython Labs](https://lab-micropython.arduino.cc/) -- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) -- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) +For this tutorial, we will need the following hardware: - [Modulino Buzzer](https://store.arduino.cc/products/plug-and-make-kit) - [Arduino Nano to QWIIC Connector Carrier]() +- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) or [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) + +We will also need the following software: +- [MicroPython Labs](https://lab-micropython.arduino.cc/) +- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) ## Connect the Modulino -Before programming it, you need to first connect your Modulino Buzzer to your Arduino Nano ESP32. Follow the diagram below to connect your Modulino Buzzer and Nano ESP32. +Before we start programming, we will need to connect our Modulino Buzzer to our Arduino board. For this we can follow the circuit diagram below: ![Circuit Diagram]() -## Code +## Modulino Pixels Code Example -Copy the code below and run it in Arduino MicroPython labs connected to your Arduino Nano ESP32. +Copy the code below and run it in Arduino MicroPython labs, while connected to our board. ```python from modulino import ModulinoBuzzer @@ -89,4 +92,4 @@ siren_melody = generate_siren(440, 880, 4000, 200, 2) for note, duration in siren_melody: buzzer.tone(note, duration, blocking=True) -```` +``` \ No newline at end of file From 1008daf5a8cc7e79ea460ee55f4add94004a0ce8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karl=20S=C3=B6derby?= <35461661+karlsoderby@users.noreply.github.com> Date: Tue, 5 Nov 2024 10:16:13 +0100 Subject: [PATCH 5/6] buzzer, buttons, knob, movement, thermo --- .../04.modulino-buzzer/modulino-buzzer.md | 2 +- .../05.modulino-buttons/modulino-buttons.md | 26 +++++++++++-------- .../06.modulino-knob/modulino-knob.md | 25 ++++++++++-------- .../modulino-thermo.md} | 25 ++++++++++-------- .../modulino-movement.md | 21 +++++++++------ 5 files changed, 57 insertions(+), 42 deletions(-) rename content/micropython/03.micropython/modulinos/{07.modulino-movement/modulino-movement.md => 07.modulino-thermo/modulino-thermo.md} (51%) rename content/micropython/03.micropython/modulinos/{08.modulino-thermo => 08.modulino-movement}/modulino-movement.md (53%) diff --git a/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md b/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md index 418c129d20..c1f48a9065 100644 --- a/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md +++ b/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md @@ -33,7 +33,7 @@ Before we start programming, we will need to connect our Modulino Buzzer to our ![Circuit Diagram]() -## Modulino Pixels Code Example +## Modulino Buzzer Code Example Copy the code below and run it in Arduino MicroPython labs, while connected to our board. diff --git a/content/micropython/03.micropython/modulinos/05.modulino-buttons/modulino-buttons.md b/content/micropython/03.micropython/modulinos/05.modulino-buttons/modulino-buttons.md index db29736201..12f75ca8a3 100644 --- a/content/micropython/03.micropython/modulinos/05.modulino-buttons/modulino-buttons.md +++ b/content/micropython/03.micropython/modulinos/05.modulino-buttons/modulino-buttons.md @@ -1,38 +1,42 @@ --- - title: 'Modulino Buttons' -description: 'Get started with using the Modulino Buttons' +description: 'Get started with the Modulino Buttons using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' hero_image: "./hero-banner.png" - --- -This article will show you how to get started with the Modulino Buttons, a three-button Modulino. +In this tutorial, we will get started with the Modulino Buttons, a three-button Modulino. + +***Note that the installation of the Modulino package is not covered in this tutorial. For details on how to install this, visit the [MicroPython - Modulino Package Installation tutorial](/micropython/modulinos/installation).*** ## Goals The goals of this tutorial are: -- learn how to connect a Modulino to the Arduino Nano ESP32. +- learn how to connect a Modulino to an Arduino board. - learn how to program the Modulino Buttons. ## Hardware & Software Needed -- [MicroPython Labs](https://lab-micropython.arduino.cc/) -- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) -- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) +For this tutorial, we will need the following hardware: - [Modulino Buttons](https://store.arduino.cc/products/plug-and-make-kit) - [Arduino Nano to QWIIC Connector Carrier]() +- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) or [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) + +We will also need the following software: +- [MicroPython Labs](https://lab-micropython.arduino.cc/) +- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) + ## Connect the Modulino -Before programming it, you need to first connect your Modulino Buttons to your Arduino Nano ESP32. Follow the diagram below to connect your Modulino Buttons and Nano ESP32. +Before we start programming, we will need to connect our Modulino Buttons to our Arduino board. For this we can follow the circuit diagram below: ![Circuit Diagram]() -## Code +## Modulino Buttons Code Example -Copy the code below and run it in Arduino MicroPython labs connected to your Arduino Nano ESP32. +Copy the code below and run it in Arduino MicroPython labs, while connected to our board. ```python from modulino import ModulinoButtons diff --git a/content/micropython/03.micropython/modulinos/06.modulino-knob/modulino-knob.md b/content/micropython/03.micropython/modulinos/06.modulino-knob/modulino-knob.md index 25d09db1fd..1d94ed434b 100644 --- a/content/micropython/03.micropython/modulinos/06.modulino-knob/modulino-knob.md +++ b/content/micropython/03.micropython/modulinos/06.modulino-knob/modulino-knob.md @@ -1,38 +1,41 @@ --- - title: 'Modulino Knob' -description: 'Get started with using the Modulino Knob' +description: 'Get started with the Modulino Knob using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' hero_image: "./hero-banner.png" - --- -This article will show you how to get started with the Modulino Knob, a rotating knob with a button. +In this tutorial, we will get started with the Modulino Knob, a rotating knob with a button. + +***Note that the installation of the Modulino package is not covered in this tutorial. For details on how to install this, visit the [MicroPython - Modulino Package Installation tutorial](/micropython/modulinos/installation).*** ## Goals The goals of this tutorial are: -- learn how to connect a Modulino to the Arduino Nano ESP32. +- learn how to connect a Modulino to an Arduino board. - learn how to program the Modulino Knob. ## Hardware & Software Needed -- [MicroPython Labs](https://lab-micropython.arduino.cc/) -- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) -- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) +For this tutorial, we will need the following hardware: - [Modulino Knob](https://store.arduino.cc/products/plug-and-make-kit) - [Arduino Nano to QWIIC Connector Carrier]() +- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) or [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) + +We will also need the following software: +- [MicroPython Labs](https://lab-micropython.arduino.cc/) +- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) ## Connect the Modulino -Before programming it, you need to first connect your Modulino Knob to your Arduino Nano ESP32. Follow the diagram below to connect your Modulino Knob and Nano ESP32. +Before we start programming, we will need to connect our Modulino Knob to our Arduino board. For this we can follow the circuit diagram below: ![Circuit Diagram]() -## Code +## Modulino Knob Code Example -Copy the code below and run it in Arduino MicroPython labs connected to your Arduino Nano ESP32. +Copy the code below and run it in Arduino MicroPython labs, while connected to our board. ```python from modulino import ModulinoKnob diff --git a/content/micropython/03.micropython/modulinos/07.modulino-movement/modulino-movement.md b/content/micropython/03.micropython/modulinos/07.modulino-thermo/modulino-thermo.md similarity index 51% rename from content/micropython/03.micropython/modulinos/07.modulino-movement/modulino-movement.md rename to content/micropython/03.micropython/modulinos/07.modulino-thermo/modulino-thermo.md index e25e5959c3..fa2a292936 100644 --- a/content/micropython/03.micropython/modulinos/07.modulino-movement/modulino-movement.md +++ b/content/micropython/03.micropython/modulinos/07.modulino-thermo/modulino-thermo.md @@ -1,38 +1,41 @@ --- - title: 'Modulino Thermo' -description: 'Get started with using the Modulino Thermo' +description: 'Get started with the Modulino Thermo using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' hero_image: "./hero-banner.png" - --- -This article will show you how to get started with the Modulino Thermo, reading surrounding temperature and humidity. +In this tutorial, we will get started with the Modulino Thermo, reading surrounding temperature and humidity. + +***Note that the installation of the Modulino package is not covered in this tutorial. For details on how to install this, visit the [MicroPython - Modulino Package Installation tutorial](/micropython/modulinos/installation).*** ## Goals The goals of this tutorial are: -- learn how to connect a Modulino to the Arduino Nano ESP32. +- learn how to connect a Modulino to an Arduino board. - learn how to program the Modulino Thermo. ## Hardware & Software Needed -- [MicroPython Labs](https://lab-micropython.arduino.cc/) -- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) -- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) +For this tutorial, we will need the following hardware: - [Modulino Thermo](https://store.arduino.cc/products/plug-and-make-kit) - [Arduino Nano to QWIIC Connector Carrier]() +- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) or [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) + +We will also need the following software: +- [MicroPython Labs](https://lab-micropython.arduino.cc/) +- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) ## Connect the Modulino -Before programming it, you need to first connect your Modulino Thermo to your Arduino Nano ESP32. Follow the diagram below to connect your Modulino Thermo and Nano ESP32. +Before we start programming, we will need to connect our Modulino Thermo to our Arduino board. For this we can follow the circuit diagram below: ![Circuit Diagram]() -## Code +## Modulino Thermo Code Example -Copy the code below and run it in Arduino MicroPython labs connected to your Arduino Nano ESP32. +Copy the code below and run it in Arduino MicroPython labs, while connected to our board. ```python from modulino import ModulinoThermo diff --git a/content/micropython/03.micropython/modulinos/08.modulino-thermo/modulino-movement.md b/content/micropython/03.micropython/modulinos/08.modulino-movement/modulino-movement.md similarity index 53% rename from content/micropython/03.micropython/modulinos/08.modulino-thermo/modulino-movement.md rename to content/micropython/03.micropython/modulinos/08.modulino-movement/modulino-movement.md index aed7251066..c93e114184 100644 --- a/content/micropython/03.micropython/modulinos/08.modulino-thermo/modulino-movement.md +++ b/content/micropython/03.micropython/modulinos/08.modulino-movement/modulino-movement.md @@ -7,32 +7,37 @@ hero_image: "./hero-banner.png" --- -This article will show you how to get started with the Modulino Movement, measuring acceleration and positioning. +In this tutorial, we will get started with the Modulino Movement, measuring acceleration and positioning. + +***Note that the installation of the Modulino package is not covered in this tutorial. For details on how to install this, visit the [MicroPython - Modulino Package Installation tutorial](/micropython/modulinos/installation).*** ## Goals The goals of this tutorial are: -- learn how to connect a Modulino to the Arduino Nano ESP32. +- learn how to connect a Modulino to an Arduino board. - learn how to program the Modulino Movement. ## Hardware & Software Needed -- [MicroPython Labs](https://lab-micropython.arduino.cc/) -- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) -- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) +For this tutorial, we will need the following hardware: - [Modulino Movement](https://store.arduino.cc/products/plug-and-make-kit) - [Arduino Nano to QWIIC Connector Carrier]() +- [Arduino Nano ESP32](https://store.arduino.cc/products/nano-esp32?queryID=undefined) or [Arduino Nano RP2040 Connect](https://store.arduino.cc/en-se/products/arduino-nano-rp2040-connect) + +We will also need the following software: +- [MicroPython Labs](https://lab-micropython.arduino.cc/) +- [Modulino MicroPython Package](https://github.com/arduino/arduino-modulino-mpy) ## Connect the Modulino -Before programming it, you need to first connect your Modulino Movement to your Arduino Nano ESP32. Follow the diagram below to connect your Modulino Movement and Nano ESP32. +Before we start programming, we will need to connect our Modulino Movement to our Arduino board. For this we can follow the circuit diagram below: ![Circuit Diagram]() -## Code +## Modulino Movement Code Example -Copy the code below and run it in Arduino MicroPython labs connected to your Arduino Nano ESP32. +Copy the code below and run it in Arduino MicroPython labs, while connected to our board. ```python from modulino import ModulinoMovement From 3eacc472b663ed0ab971d32b28aab9b9acb789d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karl=20S=C3=B6derby?= <35461661+karlsoderby@users.noreply.github.com> Date: Tue, 5 Nov 2024 10:18:27 +0100 Subject: [PATCH 6/6] update frontmatters --- .../03.micropython/modulinos/01.installation/installation.md | 4 +--- .../modulinos/02.modulino-distance/modulino-distance.md | 2 +- .../modulinos/03.modulino-pixels/modulino-pixels.md | 3 +-- .../modulinos/04.modulino-buzzer/modulino-buzzer.md | 2 +- .../modulinos/05.modulino-buttons/modulino-buttons.md | 2 +- .../modulinos/06.modulino-knob/modulino-knob.md | 2 +- .../modulinos/07.modulino-thermo/modulino-thermo.md | 2 +- .../modulinos/08.modulino-movement/modulino-movement.md | 4 +--- 8 files changed, 8 insertions(+), 13 deletions(-) diff --git a/content/micropython/03.micropython/modulinos/01.installation/installation.md b/content/micropython/03.micropython/modulinos/01.installation/installation.md index 7c8442f328..1cb5d092f3 100644 --- a/content/micropython/03.micropython/modulinos/01.installation/installation.md +++ b/content/micropython/03.micropython/modulinos/01.installation/installation.md @@ -1,10 +1,8 @@ --- - title: 'Modulino Installation' description: 'Get started with using the Modulinos' author: 'Hannes Siebeneicher, Sebastian Romero' -hero_image: "./hero-banner.png" - +tags: [MicroPython, Package Installation] --- In this tutorial, we will go through the installation process required for programming the Arduino Modulinos with MicroPython. diff --git a/content/micropython/03.micropython/modulinos/02.modulino-distance/modulino-distance.md b/content/micropython/03.micropython/modulinos/02.modulino-distance/modulino-distance.md index 703c9eac7c..ef139f29bb 100644 --- a/content/micropython/03.micropython/modulinos/02.modulino-distance/modulino-distance.md +++ b/content/micropython/03.micropython/modulinos/02.modulino-distance/modulino-distance.md @@ -2,7 +2,7 @@ title: 'Modulino Distance' description: 'Get started with the Modulino Distance using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' -hero_image: "./hero-banner.png" +tags: [MicroPython, Time of Flight, Sensors] --- In this tutorial, we will get started with the Modulino Distance, which can measure the distance to an object. diff --git a/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md b/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md index f7b1ab1dd6..a109944d60 100644 --- a/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md +++ b/content/micropython/03.micropython/modulinos/03.modulino-pixels/modulino-pixels.md @@ -1,9 +1,8 @@ --- - title: 'Modulino Pixels' description: 'Get started with the Modulino Pixels using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' -hero_image: "./hero-banner.png" +tags: [MicroPython, RGB, Pixel Strip] --- In this tutorial, we will get started with the Modulino Pixels and control its RGB LEDs. diff --git a/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md b/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md index c1f48a9065..66bac17251 100644 --- a/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md +++ b/content/micropython/03.micropython/modulinos/04.modulino-buzzer/modulino-buzzer.md @@ -2,7 +2,7 @@ title: 'Modulino Buzzer' description: 'Get started with the Modulino Buzzer using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' -hero_image: "./hero-banner.png" +tags: [MicroPython, Piezo, Speaker] --- In this tutorial, we will get started with the Modulino Buzzer, a piezo speaker that can output sound. diff --git a/content/micropython/03.micropython/modulinos/05.modulino-buttons/modulino-buttons.md b/content/micropython/03.micropython/modulinos/05.modulino-buttons/modulino-buttons.md index 12f75ca8a3..9d8f9fb48d 100644 --- a/content/micropython/03.micropython/modulinos/05.modulino-buttons/modulino-buttons.md +++ b/content/micropython/03.micropython/modulinos/05.modulino-buttons/modulino-buttons.md @@ -2,7 +2,7 @@ title: 'Modulino Buttons' description: 'Get started with the Modulino Buttons using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' -hero_image: "./hero-banner.png" +tags: [MicroPython, Pushbuttons, Digital Input] --- In this tutorial, we will get started with the Modulino Buttons, a three-button Modulino. diff --git a/content/micropython/03.micropython/modulinos/06.modulino-knob/modulino-knob.md b/content/micropython/03.micropython/modulinos/06.modulino-knob/modulino-knob.md index 1d94ed434b..1655acacad 100644 --- a/content/micropython/03.micropython/modulinos/06.modulino-knob/modulino-knob.md +++ b/content/micropython/03.micropython/modulinos/06.modulino-knob/modulino-knob.md @@ -2,7 +2,7 @@ title: 'Modulino Knob' description: 'Get started with the Modulino Knob using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' -hero_image: "./hero-banner.png" +tags: [MicroPython, Rotary Encoder] --- In this tutorial, we will get started with the Modulino Knob, a rotating knob with a button. diff --git a/content/micropython/03.micropython/modulinos/07.modulino-thermo/modulino-thermo.md b/content/micropython/03.micropython/modulinos/07.modulino-thermo/modulino-thermo.md index fa2a292936..1f9f20bc65 100644 --- a/content/micropython/03.micropython/modulinos/07.modulino-thermo/modulino-thermo.md +++ b/content/micropython/03.micropython/modulinos/07.modulino-thermo/modulino-thermo.md @@ -2,7 +2,7 @@ title: 'Modulino Thermo' description: 'Get started with the Modulino Thermo using MicroPython' author: 'Hannes Siebeneicher, Sebastian Romero' -hero_image: "./hero-banner.png" +tags: [MicroPython, Environmental Sensor] --- In this tutorial, we will get started with the Modulino Thermo, reading surrounding temperature and humidity. diff --git a/content/micropython/03.micropython/modulinos/08.modulino-movement/modulino-movement.md b/content/micropython/03.micropython/modulinos/08.modulino-movement/modulino-movement.md index c93e114184..4372d5bf44 100644 --- a/content/micropython/03.micropython/modulinos/08.modulino-movement/modulino-movement.md +++ b/content/micropython/03.micropython/modulinos/08.modulino-movement/modulino-movement.md @@ -1,10 +1,8 @@ --- - title: 'Modulino Movement' description: 'Get started with using the Modulino Movement' author: 'Hannes Siebeneicher, Sebastian Romero' -hero_image: "./hero-banner.png" - +tags: [MicroPython, Movement, IMU] --- In this tutorial, we will get started with the Modulino Movement, measuring acceleration and positioning.