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

Cybersecurity: Radio Tilt Control

Curriculum

  • 1 Section
  • 37 Lessons
  • Lifetime
Expand all sectionsCollapse all sections
  • Cybersecurity: Radio Tilt Control
    37
    • 1.1
      Measure Accelerometer Tilt
    • 1.2
      Test Tilts
    • 1.3
      A Bit About Acceleration
    • 1.4
      Inside the micro:bit Accelerometer
    • 1.5
      How the Script Works
    • 1.6
      Try This: Take X and Y Rotation Samples
    • 1.7
      Your Turn: Combine Tilt and Rotation
    • 1.8
      Measure Rotation Angles
    • 1.9
      Measuring Rotation Angles
    • 1.10
      How Measuring Rotation Angles Works
    • 1.11
      Did You Know? Trigonometry and Rotation Angles
    • 1.12
      Measure How Far from Vertical or Level
    • 1.13
      How It Works
    • 1.14
      Z-Axis: Which Way Is Up?
    • 1.15
      How it Works: Z axis
    • 1.16
      Did You Know? This Way Up
    • 1.17
      Try This: Get Familiar Z-Axis Angle Measurements
    • 1.18
      Your Turn: All Together Now
    • 1.19
      Display Tilt Direction
    • 1.20
      Try This: Negative Hour Values
    • 1.21
      Your Turn: Display Tilt Direction
    • 1.22
      Tilt Radio Tests
    • 1.23
      Radio-Transmit Tilt
    • 1.24
      Radio-Receive Tilt
    • 1.25
      How the Tilt Radio Tests Work
    • 1.26
      Tilt Control Forward and Backward
    • 1.27
      Rapid Radio-Transmit Tilt Data
    • 1.28
      Rapid Radio-Receive Tilt Plus Forward/Backward Control
    • 1.29
      Adding a Stop Range
    • 1.30
      Transmitter Displays Stop Range
    • 1.31
      Receiver Full Tilt Control and Stop Range
    • 1.32
      Add Left/Right Tilt Control
    • 1.33
      Update the Receiver cyber:bot Script
    • 1.34
      How the Receiver Works
    • 1.35
      Radio Tilt Controlled cyber:bot App
    • 1.36
      Radio Tilt Controlled cyber:bot Code
    • 1.37
      Radio Tilt Controller Code

Rapid Radio-Transmit Tilt Data

To make the tilt controlled robot responsive, it’s important to speed up the while True loop’s repeat rate.  The changes are simple, just remove print statements and reduce sleep(500) to sleep(50).  This will help prevent delays between tilting the controller and the cyber:bot’s response.  Without the print statements, plan to use the LED displays to verify radio communication between the tilt controller and the cyber:bot.

Example script: radio_tilt_transmit_rapid

  • Make sure you are working in the browser with the micro:bit Python Editor that is connected to the radio tilt controller micro:bit.
  • Set the project name to radio_tilt_transmit_rapid. 
  • Enter the script into the editor.
  • If you are in a classroom, adjust the channel= in the script to your assigned channel.
  • Click Save, and then click Send to micro:bit.  
  • Verify that the tilt direction pointer on the transmitter micro:bit module’s 5×5 LED matrix display updates more rapidly in response to a tilt direction change.
# radio_tilt_transmit_rapid

from microbit import *
import math
import radio

radio.on()
radio.config(channel=7, queue=1, length=64)

sleep(1000)

while True:
    x = accelerometer.get_x()
    y = accelerometer.get_y()
    
    angle = round( math.degrees( math.atan2(y, x) ) )
    needle = ( angle + 90 + 15 ) // 30

    display.show(Image.ALL_CLOCKS[needle])
    
    dictionary = { }
    dictionary['x'] = x
    dictionary['y'] = y
    dictionary['needle'] = needle

    packet = str(dictionary)
    radio.send(packet)

    sleep(50)

How radio_tilt_transmit_rapid Works

The radio_tilt_transmit_rapid script is almost identical to radio_tilt_transmit_test from the previous activity.  The only differences are that the print statements were removed and the sleep(500) at the end of the loop was changed to sleep(50) to make it more responsive.

Why not just completely remove the sleep call?  Probably the most important reason is to not flood the airwaves with unnecessary radio activity.  The sleep(50) call reduces the radio transmissions to around 20 times per second.  The difference between letting the micro:bit transmit as fast as it can and repeating with a 50 ms pause will not be noticeable as you tilt the micro:bit to make the cyber:bot move.

 


Printer-friendly version
Tilt Control Forward and Backward
Prev
Rapid Radio-Receive Tilt Plus Forward/Backward Control
Next

DISCUSSION FORUMS | PARALLAX INC. STORE

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

© 2026 Parallax Learn • Built with GeneratePress