Table of Contents

refresh data

Dabble refresh data

Description

Refresh data block is a stack block available in Dabble extension for evive and other Arduino boards. This block refreshes the data sent to the hardware device from Dabble app.

Use refresh data when you are using loops to get refreshed values for all the parameters from the Dabble App.

evive Notes Icon
Note: This block is available in both Upload mode and Stage mode.

Example

dabble sensor terminal example

Example

Learn how to build a high-performance, wireless control system for your robot using Quarky and PictoBlox’s Dabble extension. In this project, you will learn how to interface a digital gamepad to command your robot's movement in all directions.

Introduction 

Have you ever wanted to build your own remote-controlled robot — just like the autonomous robots used in warehouses, disaster zones, and space exploration? In this exciting STEM and robotics project, we will program the Quarky robot to be fully controlled by a gamepad controller using PictoBlox’s Block Coding mode. No complex wiring, no advanced programming experience needed — just drag, drop, and drive!

Using the Quarky Expansion Board and PictoBlox’s Dabble extension, we will write a block-coded script that makes Quarky move forward, backward, left, and right; control individual motors; and stop safely — all from the buttons on a gamepad. This is your first step into the world of AI-powered robotics and human-machine interaction!

Prerequisites

Step 1

  • Quarky robot
  • Quarky Expansion Board 
  • Dabble app in your mobile
  • A stable Bluetooth or USB connection between PictoBlox and Quarky
  • Laptop

Step 2: 

  • Click the Add Extension button (the purple icon at the bottom left of the screen). Search for Dabble and Quarky expansion board”and add it to your project. 
  • This project only runs in Upload mode only; make sure you are in Upload mode.

Step 3

  • Click on the Board tab on the top navigation bar and select Quarky.
  • Now, click on connect and choose Bluetooth.

  • Your Quarky has a unique code mentioned on it. Select your Quarky from the list and click on Connect.
  • Quarky plays a confirmation sound on connecting. 
  • Voila! Your Quarky is now connected to PictoBlox! 

 

Remove the Tobi sprite.

How It Works

The script runs inside a forever loop that continuously checks which gamepad button is currently being pressed. Based on the button detected, a specific movement command is sent to the Quarky robot. This is called real-time polling — a technique used in robotics, game development, and AI systems to read and react to input states every few milliseconds.

Block-by-Block Guide

Initialization (When Quarky Starts Up)

Add the ‘When Quarky starts up’ block from the Quarky palette. The script begins with the ‘When Quarky starts up’ block from the Quarky palette trigger block. This is the entry point of the entire programme. Everything that follows runs automatically when Quarky is switched on and the script is started in PictoBlox.

Add the ‘Initialise Quarky Expansion Board’ block, which sets up communication between PictoBlox and the physical Quarky Expansion Board, enabling motor control, sensor reading, and gamepad input.

Add the ‘Forever’ block from the Control Palette. It wraps the entire control logic in an infinite loop so that Quarky continuously checks for gamepad inputs and reacts without any delay or gap.

Add the ‘Refresh Data’ block from the Dabble extension. Updates all sensor and controller data at the start of each loop cycle, ensuring Quarky is always responding to the most current gamepad state.

Move Forward (Up Button)

  1. The first conditional checks whether the Up button on the gamepad is pressed. If true, Quarky moves forward at full speed. 
  2. Add an ‘if-else’ block from the control palette.
  3. Add the ‘is up pressed on gamepad?’ block from the Dabble extension inside the If block. 
  4. Add the go forward at 100% speed’ block from the Quarky Expansion Board Extension, drives both of Quarky’s motors in the forward direction at maximum power. You can reduce the percentage for slower, more precise movement.

Move Backward (Down Button)

  1. The second conditional checks whether the down button on the gamepad is pressed. If true, Quarky moves Backward at full speed. 
  2. Add an ‘if-else’ block from the control palette inside the previous if-else block.
  3. Add the ‘is up pressed on gamepad?’ block from the Dabble extension inside the If block. Change the dropdown to down.
  4. When the backward button is pressed, Quarky reverses direction and moves backward. Add go reverse at 100% speed’ block, reverses both motors simultaneously, moving Quarky away from an obstacle or back to a starting position.

Turn Left (Left Button)

  1. The third conditional checks whether the left button on the gamepad is pressed. If true, Quarky moves left at full speed. 
  2. Add an ‘if-else’ block from the control palette inside the previous if-else block.
  3. Add the ‘is left pressed on gamepad?’ block from the Dabble extension inside the If block. Change the dropdown to Left.
  4. When the Down button is pressed, Quarky reverses direction and moves backward. Add the go left at 100% speed’ block, commands Quarky to execute a left turn. In differential drive robots like Quarky, turning is achieved by running one motor faster or in reverse relative to the other.

Turn Right (Right Button)

  1. The forth conditional checks whether the right button on the gamepad is pressed. If true, Quarky moves left at full speed. 
  2. Add an ‘if-else’ block from the control palette inside the previous if-else block.
  3. Add the ‘is right pressed on gamepad?’ block from the Dabble extension inside the If block. Change the dropdown to Left.
  4. When the Down button is pressed, Quarky reverses direction and moves backward. Add the go right at 100% speed’ block, executes a right turn. Combined with the left turn command, this gives Quarky full rotational control — essential for navigating tight spaces and corridors.

Control Motor 1 Backward (Square Button)

  1. The next conditional checks whether the square button on the gamepad is pressed. If true, the Square button provides individual motor control — a more advanced movement option that allows fine-tuned directional adjustments beyond standard forward/backward/turn commands.
  2. Add an ‘if-else’ block from the control palette inside the previous if-else block.
  3. Add the ‘is up pressed on gamepad?’ block from the Dabble extension inside the If block. Change the dropdown to Square.
  4. Add the run motor 1 backward with 100% speed’ block; it directly controls Motor 1 on the Quarky Expansion Board independently. Individual motor control is used in advanced robotics for tank-style turning, articulated arm movement, and multi-axis control systems. 

Control Motor 2 Backward (Circle Button)

  1. Similarly, the Circle button controls Motor 2 independently, enabling asymmetric movement for complex tasks.
  2. Add an ‘if-else’ block from the control palette inside the previous if-else block.
  3. Add the ‘is up pressed on gamepad?’ block from the Dabble extension inside the If block. Change the dropdown to Circle.
  4. Add the run motor 2 backward with 100% speed, controls the second motor independently. Running Motor 1 and Motor 2 at different speeds or in different directions is the key technique behind differential drive steering, the same method used in NASA Mars rovers and autonomous delivery robots.

Stop the Robot (No Button Pressed)

Add ‘stop robot’ block, sends a stop signal to all motors, bringing Quarky to a complete halt. In AI-controlled robots, having a reliable stop condition prevents runaway behaviour and is a core requirement of safe autonomous systems design.

Output

Conclusion

Congratulations! You have successfully programmed the Quarky robot to respond to gamepad input using PictoBlox Block Coding. In this project, you:

  •       Initialized Quarky and its Expansion Board for hardware communication
  •       Built a real-time control loop using the Forever block
  •       Mapped 6 gamepad buttons to 6 distinct robot movement commands
  •       Implemented individual motor control for advanced directional movement
  •       Added a safe stop condition to ensure the robot halts when no input is detected

These skills — real-time input polling, conditional logic, motor control, and fail-safe design — are the exact same building blocks used by robotics engineers and AI developers around the world. You are not just playing with a robot; you are learning the language of machines!

Read More
Learn to control Mars Rover using Dabble App on your device with customized functions for specialized circular motions.

Introduction

In this activity, we will control the Mars Rover according to our needs using the Dabble application on our own Devices.

We will first understand how to operate Dabble and how to modify our code according to the requirements. The following image is the front page of the Dabble Application.

Select the Gamepad option from the Home Screen and we will then use the same gamepad to control our Mars Rover.

Code

The following blocks represent the different functions that are created to control the Mars Rover for different types of motions. We will use the arrow buttons to control the basic movements.( Forward, Backward, Left, Right )

We will create our custom functions for specialized Circular motions of Mars Rover. We will use the Cross, Square, Circle, and Triangle buttons to control the Circular motions of Mars Rover.

Note: You will have to add the extensions of Mars Rover and also of Dabble to access the blocks.

The main code will be quite simple consisting of nested if-else loops to determine the action when a specific button is pressed on the Dabble Application.

You will have to connect the Quarky with the Dabble Application on your device. Make sure Bluetooth is enabled on the device before connecting. Connect the Rover to the Dabble application after uploading the code. You will be able to connect by clicking on the plug option in the Dabble Application as seen below. Select that plug option and you will find your Quarky device. Connect by clicking on the respective Quarky.

Important Notes

  1. The code will only run by uploading the code by connecting the rover with the help of a C-Type Cable to the Laptop.
  2. You will be able to upload the Python Code by selecting the Upload option beside the Stage option.
  3. There may be a case where you will have to upload the firmware first and then upload the code to the Rover. You will be able to upload the firmware in Quarky with the help of the following steps:
    1. Select the Quarky Palette from the Block Section.
    2. Select the Settings button on top of the palette.
    3. In the settings dialog box, scroll down, and select the Upload Firmware option. This will help you to reset the Quarky if any previous code was uploaded or not.
  4. After the Firmware is uploaded, click on the “Upload Code” option to upload the code.
  5. You will have to add the block “When Quarky Starts Up” rather than the conventional “When Green Flag is Clicked” for the code to run.

Output

Forward-Backward Motions:

Right-Left Motions:

Circular Left Motion:

Circular Right Motion:

Read More
Learn to control Mecanum Gripper Robot using Dabble App on your device with customized functions for different motions and activities.

Introduction

In this activity, we will control the Mecanum Gripper according to our needs using the Dabble application on our own Devices.

We will first understand how to operate Dabble and how to modify our code according to the requirements. The following image is the front page of the Dabble Application.

Select the Gamepad option from the Home Screen and we will then use the same gamepad to control our Mecanum Gripper.

Code

The following blocks represent the different functions that are created to control the Mecanum Gripper for different types of motions. We will use the arrow buttons to control the basic movements.( Forward, Backward, Lateral Left, Lateral Right ). We will use custom functions to control the gripper actions. We will use the Triangle button to close the gripper arms and the Circle button to open the gripper arms. We will use the Cross button to rotate to the right direction and we will use the Square button to rotate to the left direction. We can use the Select button to stop the Mecanum whenever possible.

Note: You can always customize each and every function and button, and make your own activities easily. You will have to add the extensions of Mecanum and also of Dabble to access the blocks. To access the basic extensions required, make sure to select the Board as Quarky first.

Initialization

Main Code

You will have to connect the Quarky with the Dabble Application on your device. Make sure Bluetooth is enabled on the device before connecting. Connect the Mecanum to the Dabble application after uploading the code. You will be able to connect by clicking on the plug option in the Dabble Application as seen below. Select that plug option and you will find your Quarky device. Connect by clicking on the respective Quarky.

Important Notes

  1. The code will only run by uploading the code by connecting the Mecanum with the help of a C-Type Cable to the Laptop.
  2. You will be able to upload the Python Code by selecting the Upload option beside the Stage option.
  3. There may be a case where you will have to upload the firmware first and then upload the code to the Mecanum. You will be able to upload the firmware in Quarky with the help of the following steps:
    1. Select the Quarky Palette from the Block Section.
    2. Select the Settings button on top of the palette.
    3. In the settings dialog box, scroll down, and select the Upload Firmware option. This will help you to reset the Quarky if any previous code was uploaded or not.
  4. After the Firmware is uploaded, click on the “Upload Code” option to upload the code.
  5. You will have to add the block “When Quarky Starts Up” rather than the conventional “When Green Flag is Clicked” for the code to run.

Output

Forward-Backward Motion:

Circular Right-Left Motion:

Lateral Right-Left Motion:

Gripper Mechanism:

Read More
Learn to control Mecanum Pick and Place Robot using Dabble App on your device with customized functions for different motions and activities.

Introduction

In this activity, we will control the Mecanum Pick and Place according to our needs using the Dabble application on our own Devices.

We will first understand how to operate Dabble and how to modify our code according to the requirements. The following image is the front page of the Dabble Application.

Select the Gamepad option from the Home Screen and we will then use the same gamepad to control our Mecanum Pick and Place.

Code

The following blocks represent the different functions that are created to control the Mecanum Pick and Place for different types of motions. We will use the arrow buttons to control the basic movements.( Forward, Backward, Lateral Left, Lateral Right ). We will use custom functions to control the Pick and Place actions. We will use the Triangle button to pick with the help of arms and the Circle button to initiate the placing action (dropping down the object). We will use the Cross button to rotate to the right direction and we will use the Square button to rotate to the left direction. We can use the Select button to stop the Mecanum whenever possible.

Note: You can always customize each and every function and button, and make your own activities easily. You will have to add the extensions of Mecanum and also of Dabble to access the blocks. To access the basic extensions required, make sure to select the Board as Quarky first.

Initialization

Main Code

You will have to connect the Quarky with the Dabble Application on your device. Make sure Bluetooth is enabled on the device before connecting. Connect the Mecanum to the Dabble application after uploading the code. You will be able to connect by clicking on the plug option in the Dabble Application as seen below. Select that plug option and you will find your Quarky device. Connect by clicking on the respective Quarky.

Important Notes

  1. The code will only run by uploading the code by connecting the Mecanum with the help of a C-Type Cable to the Laptop.
  2. You will be able to upload the Python Code by selecting the Upload option beside the Stage option.
  3. There may be a case where you will have to upload the firmware first and then upload the code to the Mecanum. You will be able to upload the firmware in Quarky with the help of the following steps:
    1. Select the Quarky Palette from the Block Section.
    2. Select the Settings button on top of the palette.
    3. In the settings dialog box, scroll down, and select the Upload Firmware option. This will help you to reset the Quarky if any previous code was uploaded or not.
  4. After the Firmware is uploaded, click on the “Upload Code” option to upload the code.
  5. You will have to add the block “When Quarky Starts Up” rather than the conventional “When Green Flag is Clicked” for the code to run.

Output

Forward-Backward Motion:

Circular Right-Left Motion:

Lateral Right-Left Motion:

Pick and Place Mechanism with Dabble:

Read More
All articles loaded
No more articles to load