-
Notifications
You must be signed in to change notification settings - Fork 4
Home
Welcome to the ProductivityBlocks Wiki!
Here you will find documentation for the ProductivityBlocks tool, and for the blocks found in the program. Each block has a page with a description and a summary of the block's usage. Use the navigation pane on the right to find the information you need. Below is a quick introduction to the software.
ProductivityBlocks is a graphical block programming tool that writes c++ code to the Arduino editor.

Each block represents a piece of a program that will run on Arduino CPUs.
To create a program, use the tabs on the left side of the application to select a block category:

Then click and drag the desired block into the main canvas:

Blocks snap into place when dragged close enough to a connector with the right shape.
Once a block program has been created, click the 'Verify' button to check the generated c++ code:

When the program is ready, use the 'Upload' button to push the program to a connected Arduino board.
There are a few special blocks called Program Blocks that represent an entire program:
Loop

Program

P1 Program

After placing one of these blocks on the main canvas, the rest of the program can be created by snapping other blocks onto its connectors. Blocks that are not attached to them will not generate any text.
Note that block programs must only have one of these special blocks in the main canvas, otherwise it will not be able to 'verify' or 'upload'.
There are four different kinds of blocks:
- Program: Contains the c++ program to be loaded onto an Arduino board (as described above).

- Command: A process to be done in the program.

- Function: A process that returns a value to be used in the program.

- Data: Variables and constants.


There are 5 different basic data types in ProductivityBlocks. Each type has a variable block and a constant block to go with it. For more information on variables and constants, see the Variables & Constants page.
- When selecting the 'verify' or 'upload' buttons, ProductivityBlocks will write text to the active tab in the Arduino IDE.
- When using multiple instances of the Arduino IDE (having multiple windows open), please note that each window may have a separate instance of ProductivityBlocks running with it. Take note of this when you open ProductivityBlocks for each Arduino IDE window so that you can keep track of this pairing.
Useful Links: