Iteration 003

Iteration 003

Foreword

This page describes the details about iteration 003 of CyberPi. The outcome of each iteration is a major version of CyberPi.

Most of the iterations will upgrade the product incrementally while being compatible with the earlier versions, and therefore, your programs compiled for the earlier versions can be used in the latest version.

Understanding the information provided on this page may require some background information. If you have purchased the latest version of CyberPi or use an earlier version without questions about the function updates, you don’t have to read this page.

Version description

The outcome of iteration 003 is the first major version of CyberPi. The following table describes the versions of its hardware, firmware, and block plugin.

Launch date August 20, 2020
Hardware version CyberPi PCB V1.1

Pocket Shield PCB V1.1

Firmware version CyberPi 003 (NEW)

Pocket Shield 006 (NEW)

Block plugin version cyberpi 1.0.9 (NEW)

sprite 0.01 (NEW)

pocket 0.03 (NEW)

Firmware update

Visit mBlock on the web and update the firmware of CyberPi as prompted. If mBlock 5 doesn’t prompt you to update the firmware, your CyberPi runs with the latest firmware.

Alternatively, connect your CyberPi to the Internet through Wi-Fi, enter CyberOS, and choose Settings > Update. The system checks the current version and updates the firmware if it is not the latest version.

Iteration summary

1. Rectification and improvement

Rectified the problems found in firmware version 002 to stabilize the blocks and functions of CyberPi, and made some improvement, as described in the following:

  • Removed the tight coupling between the brush color and text settings. In the earlier version, the printing of texts changed immediately with the change of the brush color; in this version, after setting the brush color, it is applied to a text only after you program to print the text again.
  • Modified the playing of sounds in Live mode to be consistent with that in Upload mode, enabling the playing in Live mode to be interrupted by another thread.
  • Fine-tuned the mechanism of beats for the piano playing blocks, making the implementation logic consistent with that of the Music extension for sprites on mBlock 5.
  • Optimized the playing mechanism of the buzzer, eliminating the playing interruption caused by frequency change.
  • Rectified the errors that occurred when a bar chart was rotated on the screen.
  • Rectified the problems that bar charts and line charts supported only integers.
  • Improved the display of line charts, stopping it from starting at the zero-point.
  • Improved the format of tables, replacing the graduated-color style with the black-and-white style
  • Modified the execution logic the event headers in Live mode to be consistent with that in Upload mode on mBlock 5, that is, one event header corresponds to only one thread instead of multiple ones when it is triggered multiple times
  • Updated the default programs provided on CyberPi. The original programs included some politically sensitive elements and might cause copyright issues. In this version, blocks and Python code of all the default programs can be provided to users.
  • Rectified the problem that CyberPi failed to automatically connect to the Internet through the configured Wi-Fi name and password. In this version, after you set the Wi-Fi name and password for your CyberPi on mBlock 5, CyberPi attempts to connect to the Internet every time it is started.
  • Rectified the problem that CyberPi prompted you to update the firmware even when it ran with the latest firmware.
  • Modified the execution logic of the block restart CyberPi in Live mode to be consistent with that in Upload mode. In this version, after the block restart CyberPi is executed in Live mode, all the blocks under the block when CyberPi starts up are executed again.

2. New features

Added some new features to enhance the functions of CyberPi, as described in the following:

  • Setting the color of texts in a table by setting the brush color

  • Displaying texts in multiple fonts in any positions
  • Displaying to-be-printed texts in multiple fonts
  • Prompting you to set the system language when CyberPi is started for the first time
  • Providing more system languages, including Simplified Chinese (简体中文), English, Traditional Chinese (繁體中文), Japanese (日本語), Korean (한국어), Spanish (Español), Italian (taliano), French (Français), and German (Deutsch)
  • Providing the interface for obtaining the system language

  • Recognizing speeches of common countries and regions

  • Translating texts into more languages

  • Providing a new charging mechanism, enabling faster charging. In this version, when Pocket Shield and CyberPi are connected to a PC or charger and you turn Pocket Shield off, CyberPi enters the charging mode, displaying the charging state in real time.
  • Providing the block for numeric type conversion in the Operators category

  • Supporting lists in Upload mode
  • Inserting code through blocks

3. Unstable features

We have also provided some features that are not fully stabilized for teachers and students to create some basic design.

Efforts will be made to ensure the compatibility of later official versions with projects created in the earlier versions.

  • Providing the Sprites extension and APIs (supporting only the Upload mode), enabling you to create and run apps and games on CyberPi

  • Providing the Doodle extension and APIs (supporting only the Upload mode), enabling you to draw sketches similar to Python Turtle drawings on CyberPi. In addition, the sketches you draw can be set as sprites and thus used in apps or games you create.

  • Cancelling the Bluetooth connection function. Currently, mBlock 5 on the web and mBlock 5 PC client don’t support Bluetooth connection of CyberPi due to the implementation mechanism of mLink 2. We may enable this function in the future. To enable the wireless connection between CyberPi and mBlock 5, you can purchase Makeblock Bluetooth Dongle or use mBlock 5 mobile app.