Skip to content
Parallax Learn

Parallax Learn

  • Welcome
  • Tutorials
        • Tutorial Series head tag

          Tutorial Series
        • Tutorial Series

          The special, classroom-ready series pages are organized collections of tutorials for our most popular hardware and/or languages. The tutorials for each topic are conveniently accessible from a single page, shown in the order it is recommended that they be completed.
        • Robotics Series Head tag

          Robotics Series
        • Robotics Series

          • Artificial Intelligence
          • Cybersecurity: Radio Data tutorialCybersecurity
          • cyber:bot + Python
          • cyber:bot + MakeCode
          • Boe-Bot Tutorial SeriesBoe-Bot
          • Arduino Shield-Bot
          • ActivityBot with C TutorialsActivityBot + C
          • ActivityBot with BlocklyProp Tutorial SeriesActivityBot + BlocklyProp
          • Scribbler 3 Tutorial SeriesScribbler 3
        • Electronics & Programming Series Head tag

          Electronics & Programming Series
          • BS2 Board of Education Tutorial SeriesBS2 Board of Education
          • Propeller C-Language BasicsPropeller C Basics
          • FLiP Try-It Kit C Tutorial SeriesFLiP Try-It Kit + C
          • FLiP Try-It Kit BlocklyProp TutorialsFLiP Try-It Kit + BlocklyProp
          • Badge WX Tutorial SeriesBadge WX
          • Propeller BlocklyProp Basics and ProjectsPropeller BlocklyProp Basics
          • View All Tutorial Series »
        • Browse Tutorials
        • Browse Tutorials

          Individual tutorials sorted by robot or kit, and language.
        • By Robot or Kit
          • ActivityBot
          • SumoBot WX
          • Boe-Bot
          • Shield-Bot
          • cyber:bot
          • Badge WX
          • ELEV-8
          • ARLO
        • By Language
        • By Language

          • Propeller C
          • Arduino
          • BlocklyProp
          • PBASIC
          • Python
          • MakeCode
          • View All Tutorials »
  • Educators
  • Reference
  • Downloads
  • Home
  • All Courses
  • Getting Started with BlocklyProp for the S3

Getting Started with BlocklyProp for the S3

Using Reset as Part of a Program

You may have already used the reset button to scroll through the pre-programmed demos your S3 came with, but did you know that you can use the reset button in your personal BlocklyProp programs?

As you learned in the previous lesson, the blue reset button is actively monitored by your S3. When you press it, the S3 not only knows that it has been pressed, but it also counts and tracks the number of times you press the button in succession. Using this information, it will then display that count with the indicator LEDs and can even carry out certain commands in your code.

Reset Button & S3 Demo Programs

The reset button is used to select between the 8 pre-programmed Demonstration programs for the S3. It may be one of the first features you use. The Scribbler 3 Start-Up Guide shows you that the number of times the reset button is pressed is counted and lets you select which of the 8 default Demo programs runs on your robot. 

The code temporarily saves a count of the number of times the button is pressed as the S3 is reset. It gives visual feedback for the number of presses with the S3’s indicator LEDs (see the LED tutorial in “Lights and Sounds” for more information) in the following manner:

This feature can be defined in BlocklyProp so that the programmer may run programs or make program selections.
 

Pressing On

Take a look at this simple BlocklyProp code below:

The four blocks used are:

  • The blue if…do block from the CONTROL category.
  • The green button reset block from the SENSORS > BUTTON category.
  • The purple compare values block from the MATH category.
  • The purple number value block from the MATH category.

The code breaks down as follows: “if” the reset button is pressed once (during the last reset), the program will “do” whatever code is inserted in the keyed bracket. This code is not complete because there is nothing for it to “do” as it is shown. By inserting a program or command into the bracketed space, you create a way to execute it with the press of the reset button.

You can modify or enhance the code by changing the value of the number value block, so that some other number of button presses is required. You can copy the whole code multiple times and use it to execute different functions based on the number of button presses (from 1 up to 8 choices). This is how the default 8-demonstration program that came pre-programmed on your S3 works.

Remember that the S3 will track the number of presses, giving you feedback with the LEDs as described above, because those instructions are part of your robot’s core program.

This code can be added to the code of any of the examples that follow in the Learn S3 tutorials. As you experiment with new programs, challenge yourself to utilize the tools you’ve learned such as this one. You may be surprised at what you are capable of creating without the aid of step-by-step instructions like these. Or, you can run the code shown in each example exactly as it’s shown, tucking this information away for later use. As the programmer of your S3 robot, you are in charge!


Did You Know?

Button-press monitoring code is hidden in a lot of electronic gadgets that you use regularly. This sort of code allows users to make intuitive choices about what a device will do. Though we use such a feature regularly in our everyday lives (anything electronic with buttons probably uses it), we are often unaware or blind to its presence because it is so common.


Try This!

  • Add a single reset button press start-up to your “Hello World!” program.

Keep in mind that when you run the program the Terminal will open, but the Hello World! message will not be sent until you press the reset button.

Your Turn!

  • As you proceed with these tutorials, find a way to add this code to the new code you learn. It may be most useful when you need to test, run, or re-run code multiple times.
  • Add a second if…do button press block set with a different value. For example, you could do something like “press the reset button once – message Hello World!, press the reset button twice – light an LED.”

Special thanks to Parallax friend Whit Stodghill for his assistance in writing, editing, and testing material for these S3 tutorials.


Printer-friendly version
A Bit More on Program and Block Controls
Prev
S3 BlocklyProp Tips and Tricks
Next

DISCUSSION FORUMS | PARALLAX INC. STORE

About | Terms of Use | Feedback: learn@parallax.com | Copyright©Parallax Inc. 2024

© 2025 Parallax Learn • Built with GeneratePress