PictoBlox Python Troubleshooting

Description
Explore troubleshooting techniques for Python programming in PictoBlox, the graphical programming software for Quarky. While Python offers immense flexibility and power for coding, it can sometimes lead to errors or unexpected outcomes.

Is it possible to program Arduino using Python IDE?

No, the PictoBlox Python environment is only available for Quarky Board.

 

Is Quarky programmable with Python IDE?

Quarky required different libraries to run, those are only available in the PictoBlox software.

 

How to modify Quarky functions?

Sorry, the user is not allowed to make any changes in the library.

You can create your own function to make it work as per your requirements.

 

Is it possible to run the PictoBlox script in Python IDE?

Sorry, as Pictoblox is using multiple extensions and those require different libraries so running the PictoBlox script in Python IDE is not available for now.

 

What extensions are available for Python?

All the extensions are available based on AI, ML, Robotics, and IoT.

Python settings – Dependencies

By default, PictoBlox supports Python programming. If you want to add additional libraries and modules, you can use Python settings to change the dependencies. 


Here is a list of different dependencies with their descriptions. 

  • Basic

    • Built-in python modules
  • Advance
    • Built-in python modules
    • Matplotlib – Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python. It consists of several plots like bar, line, scatter, histogram, etc.
    • Pandas – Pandas is a fast, powerful, flexible, and easy-to-use library for analyzing, cleaning, exploring, and manipulating data.
    • Scikit-learn – Scikit-learn is a Machine Learning (ML) library. It provides various classification, regression, and clustering algorithms.
    • OpenCV-python – OpenCV is a library that allows you to perform image processing and computer vision tasks. It provides a wide range of features, including object detection, face recognition, and tracking.
    • NumPy – NumPy is a library used for working with arrays. It provides multidimensional array objects and tools for fast operations on arrays, including mathematical, logical, shape manipulation, sorting, discrete Fourier transforms, basic linear algebra, basic statistical operations, random simulation, and much more.
  • Machine Learning

    • All advance dependencies
    • Keras – Keras is a deep-learning library which is used for implementing neural networks.
    • SciPy – SciPy is a library used for scientific computing and technical computing. It contains modules for optimization, linear algebra, integration, interpolation, special functions, image processing, etc.
    • Tensorboard – Tensorboard provides the visualization and tooling needed for machine learning experimentation. It is used to visualize the graph and other tools to understand, debug, and optimize the model.
    • Tensorflow – Tensorflow is a library for machine learning and artificial intelligence with focus on training and inference of deep neural networks. It is used in Classification, Recognition, Perception, Discovering, Prediction, and Creation, etc. Some of the primary use cases are Sound Recognition, Image recognition, etc.

PIP Package Manager

Here you will be able to learn about PIP package manager and ways to install libraries using it. 

PIP package manager to download custom libraries in Python

For users to add extra libraries or modules as per their need that aren’t already included in PictoBlox, they can now add it through the very new PIP Package Manager feature. With the PIP Package Manager, one can install external Python libraries from the Python Package Index (PyPI) directly within the PictoBlox Python IDE.

There are two methods for library installation using the PIP Package Manager:

  • Recommended libraries – This option presents a curated list of frequently used libraries. Users can explore the suggestions and pick the libraries they wish to  install. By clicking the install button next to each library, they can start the installation process.
  • Installer – If the user wishes to have a particular library that isn’t listed among the recommended ones, they can input the library’s name directly. After entering the library’s name, clicking the install button will initialize the installation process.
    The installation progress can be monitored through the Python terminal logs. Once the installation is complete, users have the choice to update the library if a new version is available or uninstall it altogether.

Python Debugger

  • Debug actions
    • Continue
      Resume normal program/script execution (up to the next breakpoint).
    •  Step Over-
      Steps over the current line of code and takes you to the next line even if the highlighted line has method calls in it. The implementation of the methods is skipped, and you move straight to the next line of the caller method.If there are breakpoints inside the skipped methods, the debugger will stop at them.
    • Step Into
      Steps into the method to show what happens inside it. Use this option when you are not sure the method is returning a correct result.
    • Step out
      Steps out of the current method and takes you to the caller method.
    • Disable breakpoints
      Disable all breakpoints present in the program.
    • Rerun
      Rerun debugger to reflect the edited changes.
    • Stop
      Terminate the current program execution.
  • Debugger components
    Here in this section where you can find the components to debug.

    • Call stack
      By using the Call Stack window, you can view the function or method calls that are currently on the stack. The Call Stack window shows the order in which methods and functions are getting called. The call stack is a good way to examine and understand the execution flow of an app.

      Each time a method is called, a new frame is added to the top of the stack. When the execution of a method is complete, the corresponding frame is removed from the stack (in the last in, first out fashion). 

      Examining frames helps you understand why particular parameters were passed to a method and what the state of the caller was at the time of calling.

    • Variables
      The Variables window shows the list of the variables in the selected frame. The inspection of variables helps you understand why the program operates in a certain way.
    • Breakpoints

      Breakpoint can be added by clicking on the left side of the line number which results in the appearance of a red dot.

      You can view file specific breakpoints in the Breakpoints window or you can also toggle All and individual breakpoints from here.

Error Throw

If you encounter an error like this, ensure you use the functions on Sprites (Tobi, John, etc.) and not on the Stage, as Motion blocks and some Look blocks are not accessible for the Stage.

 

 

 

Table of Contents