Skip to main content

Troubleshooting

Troubleshooting is not always necessary, but sometimes, we have to dig in to ensure the quality and reliability of our applications. AppBlocks is exceptional at avoiding common roadblocks often found in traditional development, yet sometimes, we must resort to more in-depth debugging. This guide is a starting point for anyone and everyone who needs a little push towards a production-ready app.

Introduction

AppBlocks excels at preventing mistakes before you even run an application. The user interface across the editor is designed to prevent errors and suggest ideas every step of the way. These hints are incredibly useful, so you might not need to reference this page often.

With the above in mind, we are engineers, and we love our tools, so read on to learn more about troubleshooting in AppBlocks.

In this article, we'll go over the following concepts:

Debugger

Besides visual inspection and analysis of each flow, creators can also use AppBlocks' built-in debugger! We highly recommend using it. The debugger is handy for actually 'seeing' what happens in every step of your program. If you’ve debugged software before, you’ll feel right at home.

Debugging features in AppBlocks, including buttons for restarting, continue, pause, step into, stop, add/remove breakpoint, a debug console, and more.

Breakpoints

To really make use of the debugger, you have to set a breakpoint on some block in the application. The following image shows a block's states when using breakpoints to debug your program. From left to right:

  • No breakpoint set.
  • Breakpoint set but not reached yet.
  • Program is paused at this breakpoint.
The three states that an AppBlocks building block can have with regards to debugging.

When the application stops due to a breakpoint, you can view the 'current state' of your program's variables in the left panel.

Changelog

Assuming an earlier version of your application was functional, you can check the changelog to single out the problematic modification(s).

The bottom panel within the AppBlocks Editor. The panel shows options to configure an ESP32 baud rate and a changelog, including timestamps, change type, feature change, and change data.

Debug Console

The debug console shows debug messages printed by the connected device.

  • For Tibbo devices, it works out of the box, and no additional setup is required.
  • For other devices, you'll need to manually set the 'Debug Print Output' under the Features > General menu.
The General menu under the Features tab in the AppBlocks Editor. A box is highlighting the location of the Debug Print Output option.

Hardware

For hardware in general, check your wiring, sensors, actuators, etc. Make sure that all the sensors are working correctly.

Tibbo Hardware

AppBlocks provides additional support and validation for Tibbo TPS hardware; The hardware view does not allow incorrect placement of Tibbits and warns when a less-than-optimal setup is used.

For example, placing a power Tibbit (e.g., #10, #33) in a socket that doesn't enable its full functionality will display a warning.

Zoom-in of warning shown when a power Tibbit is plugged into a partial functionality socket. The warning contains the message: 'You will not have control of the shutdown line, power supply will always be enabled'.

You can only place #01 Tibbits on serial-ready sockets.

Zoom-in of TPS sockets being highlighted when a serial communications Tibbit is about to be placed. The compatible slots are highlighted in light green.

You also get multiple warnings when using a Tibbit that requires a 15V power supply. In this case, the #13 is used.

Error messages displayed when an additional Power Tibbit is required. Toast notifications on the bottom read 'Not enough power for +15/-15V. Add a Tibbit #12.' The warning box color in the top right corner is changed to red.

These checks ensure your hardware configuration is safe and functional, before you even run your application.

Advanced

Most users won't need to dive into the generated source code—but it's always there in case you need it.

Export Code

More advanced users can also download and read the code by themselves, as another way to 'visualize' the problem at hand.

Location of the share/export code and configuration buttons in AppBlocks Editor.

Code Viewer

Instead of exporting and viewing your code in a full-blown editor, you can also view the generated code from AppBlocks.

Modal containing AppBlocks generated code.

The code can be viewed from either the Share/Export section of the top-right dropdown or the bottom panel of the editor.

Contact Us

Many of these 'friendly reminders' are present throughout AppBlocks; you may run into them at some point. If you are ever unsure about what a warning or error may mean, you can contact us through the following channels:

  1. Feedback Portal
  2. Social media: LinkedIn, X (Twitter), Discord
  3. Email