Artificial Intelligence (AI) | Hardware - Vision Recognition KitsMore Details- Hardware kits that contain built-in AI functions such as face recognition, object recognition, vision line tracking, color recognition, object classification, etc.
- With camera.
- Can be connected to microcontroller such as Arduino, Raspberry Pi, or micro:bit through UART / I2C port.
- Support machine learning and data training without using complex algorithms.
- Support block-based programming.
| Elementary | None |
Artificial Intelligence (AI) | Hardware - Vision Recognition KitsMore Details- Hardware kits that equip with microcontroller board/embedded processor, e.g. Raspberry Pi.
- With camera and other programming controllable peripherals, e.g. button, LEDs, GPIO pins, etc.
- Can deploy and run pre-trained machine learning models locally for cognitive functions such as recognising objects / faces and capturing texts to perform analysis.
- Support common programing languages such as Python.
- Can be configured via web browsers, mobile app, SSH, etc.
| Moderate | None |
Artificial Intelligence (AI) | Hardware - Voice Recognition KitsMore Details- Hardware kits that equip with microcontroller board/embedded processor, e.g. Raspberry Pi.
- With microphone, audio speaker, and other programming controllable peripherals, e.g. button, LEDs, GPIO pins, etc.
- Can run pre-trained machine learning models locally for cognitive functions, such as translation of speech into texts and taking voice commands.
- Support common programing languages, e.g. Python.
- Can be configured via web browsers, mobile app, SSH, etc.
| Moderate | None |
Artificial Intelligence (AI) | Hardware - Microcontroller for machine learningMore Details- Designed to support running machine learning models.
- Can run multiple neural networks in parallel for applications like image classification, object detection, segmentation, and speech processing.
- Support machine learning platforms e.g. Tensorflow, PyTorch, Caffe/Caffe2, etc.
| Advanced | AI or text-based coding experience. |
Artificial Intelligence (AI) | Hardware - AI hardware acceleratorMore Details- Specialised hardware accelerator designed for hardware acceleration for machine learning model training (e.g. neutral network) e.g. GPU.
| Advanced | AI or text-based coding experience. |
Artificial Intelligence (AI) / Robotics Coding | Hardware - Educational Programmable RobotMore Details- An educational programmable robot such as car, drone, humanoid robot, quadruped robot, etc.
- Support AI chip and sensors such as vision sensor, microphone, speaker, etc to give AI functions such as vision recognition, voice recognition, AIoT, etc.
- Aim to educate students to build new projects to solve daily life problems by applying the knowledge they learnt, such as applying AIoT knowledge to build a smart home and applying face recognition knowledge to build an automatic door opening device, etc.
- Support deploying trained machine learning models from the cloud to the robot.
- Support block-based and text-based coding.
| Moderate | May require text-based programming experience. |
Artificial Intelligence (AI) | Software / Cloud Services - Vision ToolsMore Details- Cloud service to support computer vision API for detecting, categorising and labelling objects (e.g. animals, building, cars, etc.) or analysing videos.
- Support REST APIs or SDKs for development of applications that analyse image data by trained machine learning models.
| Moderate | None |
Artificial Intelligence (AI) | Software / Cloud Services - Speech and Text ToolsMore Details- Cloud service to support speech API.
- Support REST APIs or SDKs for development of applications that performs conversation of speech-to-text, text-to-speech, speech-translation and textual analysis functions.
- Support multi-language (e.g. English, Mandarin, Cantonese, French, German, Spanish, etc.) and text tools (e.g. English, Simplified and Traditional Chinese, French, German, Spanish, etc.).
| Moderate | None |
Artificial Intelligence (AI) | Hardware - Speech-enabled Smart Voice Assistant DeviceMore Details- Smart Assistant devices can be an inspiring tool for students to learn the inner working of smart assistants like Siri, Alexa and Google Assistant.
- Learn the basics of Natural Language Processing and Machine Learning.
- Understand the operation of text-to-speech and speech-to-text.
- Support to be controlled through speech commands.
- Support coding with external API to control IoT devices such as light switches and home appliances.
- Support programming using Natural Language Processing technology to enable the assistant to understand colloquial expressions in Cantonese and English.
- Software for students to learn how to design conversational model using intents, entities and scenes.
| Elementary | None |
Artificial Intelligence (AI) | Software / Cloud Services - Chatbots ToolsMore Details- Tools in the form of online platforms or client SDKs for users to create intelligent chatbots with pre-trained machine learning models or customised machine learning models.
- Learn the basics of Natural Language Processing and Machine Learning.
- Understand the operation of text-to-speech and speech-to-text.
- Support online functions to speak, listen, interpret, interact with users in a conversational way in different channels such as apps, websites, etc.
- Tools that enable the students to create conversational models and workflows in graphical interfaces.
- Tools that enable the students to connect the Chatbot with external services or devices.
| Moderate | None |
Artificial Intelligence (AI) | Software / Cloud Services - Natural Language Processing PlatformsMore Details- Cloud services to support various NLP tasks such as Topic Detection, Spell Checking, Machine Translation, Sentiment Analysis and Intent Classifications.
- Support REST APIs or SDKs for development of applications that enables understanding of natural languages.
- Support graphical interface to view, analyse and modify the training data for the machine learning models.
| Advanced | Basic NLP understanding. |
Artificial Intelligence (AI) | Cloud Services - Machine Learning PlatformsMore Details- Online platforms that provide cloud-based development environments for students to develop, train, test, deploy, manage, and track machine learning models by visual drag-and-drop environment.
- Support programming languages such as Python, R, Swift, etc.
| Advanced | Text-based coding experience. |
Big Data | Software / Cloud Services - Data Storage & Analytics ToolsMore Details- Tools in the form of software or online platform that support data ingestion, data by connecting data sources of wide variety of structured and unstructured data, data cleansing, data transformation, data discovery.
- May support machine learning-driven automated data transformation scripts.
- Support running in different ways such as client software running on desktop OS (e.g. Windows, MacOS, etc.), mobile apps, or online service on websites.
- Support NoSQL Databases, such as key-value stores, document databases, column-family databases and graph databases.
| Moderate | None |
Big Data | Software / Cloud Services - Data Visualisation ToolsMore Details- Tools in the form of software or online platform that support data visualisation.
- Support interactive visualisation of statistical profile metrics, interactive dashboards, tables, charts and graphics, etc.
- The tools may run in different ways such as client software running on desktop OS (e.g. Windows, MacOS, etc.), mobile apps, or online service on websites.
| Moderate | None |
Cloud Computing | Software - HypervisorMore Details- Hypervisor can be used to create a scalable, resilient and highly available virtualised environment such that multiple instances of a variety of operating systems.
- Support running Linux, Windows, and MacOS on a single physical x86 machine.
- Allows students to learn setting up of cloud servers and to try virtualisation related tools such as security configuration, data migration, image version control, etc. for virtual machines.
| Moderate | High-End PC / Servers are required. |
Cloud Computing | Cloud Services - Cloud Storage ServicesMore Details- Support elastic cloud data storage for users to store files or data (such as web based media like video, images, audio) on a platform that can be accessible from the Internet.
- Depending on individual providers, supported access methods such as Internet "folder"" or ""drive"" via HTTP or file system, synchronisation or backup with devices via corresponding applications or mobile App, block storage access via iSCSI, RESTful API or proprietary interfaces.
- May support additional features such as online editing, file versioning, encryption. The charge is usually based on data volume per month or per year.
- Some cloud storage providers offer free plan.
" | Elementary | None |
Cloud Computing | Cloud Services - Database-as-a-ServiceMore Details- Support online database services that typically run on a cloud computing platform like on-premises database.
- Support connections to the database instances by using standard DBMS API interface (such as ODBC, JDBC), RESTful API interface (such as OData, ORDS).
- Support specific library of various programming languages (e.g. Python, PHP, Node.js, etc.) to cloud servers with public IP addresses or proxy.
- Support web-based consoles for users to self-provision and configure the database.
| Moderate | None |
Cloud Computing | Cloud Services - Virtual Machines (Infrastructure-as-a-Service)More Details- Support online virtual machines running on public cloud.
- Support self-provisioning for customised virtual machines of different computing capabilities (e.g. number of vCPU, memory size, storage size, etc.).
- Support different operating system e.g. Windows, Linux, etc.
| Moderate | None |
Cloud Computing | Cloud Services - Version Control RepositoryMore Details- Provide the central place where developers store, share, test and collaborate on web projects.
- Used for track changes and manage different versions of projects as they change over time.
- Manage projects by individual or with a team, quickly identify changes made, especially if issues arise within the code.
- May support additional features, such as issue tracking, import and export, documentation and wikis. The charge is usually based on data volume per project or per user, or private repositories, backups needed.
- Most of cloud service providers offer free plan with limited storage and features.
| Elementary | None |
Coding / Algorithm | Software - Educational Coding SoftwareMore Details- Software that offers learning tools for students to learn coding including block-based coding (e.g. MakeCode in Minecraft, Scratch, etc.).
- Support text-based coding languages e.g. Swift Playgrounds, Java, Javascript, etc.
| Elementary | None |
Cyber Security | Software - Network Protocol AnalysersMore Details- Support functions to capture and analyse network traffic, through deep packet inspection of different layer protocols (e.g. TCP, UDP, etc.).
- Support browsing the captured network data via a GUI or a command line interface.
- Some analysers (e.g. Wireshark, Tcpdump, etc.) can be run on different OS (e.g. Linux, MacOS, Windows, etc.).
| Moderate | None |
Drone Coding | Hardware - Drone KitsMore Details- Drones can be a good and inspiring tool for students to learn computational thinking, coding, and analytical thinking.
- The drones kits consist of various drone components such as propeller, motor, frame, etc. that can be assembled by students for learning the fundamental knowledge about drones including the structures, flying mechanism and how they work with drone coding.
- Suitable kits should support coding (e.g. Scratch, Swift playground, Snap, Python, Blockly, etc.) for custom flight pattern.
| Elementary | None |
Drone Coding | Hardware - Programmable DronesMore Details- Support to be remotely controlled through coding.
- Support connection through Wi-Fi.
- Support Coding with block-based (e.g. Scratch, Swift playground, etc.) or text-based coding languages (e.g. Javascript, Python, etc.) to control the drone.
- Some drones models are with flight controllers while some require mobile devices such as smartphones or tablets with app to control the drones.
| Moderate | None |
Drone Coding | Software - Drone Coding SoftwareMore Details- Software for students to design custom flight patterns and/or to develop applications.
- Support coding (e.g. Javascript, Python, etc.) for drone flight controllers to control drones.
- Depending on individual software, the software can be run in different forms such as mobile apps, desktop applications, etc.
| Moderate | None |
Digital Game Design and Development | Hardware - Graphic Cards / External GPUsMore Details- Support high quality graphics, 3D animation and video display for digital game development.
- Support graphics processor and VRAM to deliver high quality graphic experiences and compatible I/O connections internally (such as PCI Express) and externally (such as Thunderbolt 3, USB Type C, etc.).
- Support APIs (e.g. Open Graphics Library (OpenGL), DirectX, Vulkan, etc.) in PC / laptops for rendering graphics.
| Moderate | None |
Digital Game Design and Development | Software - Game Engines for DevelopmentMore Details- Support development tools including integrated development environment with support of coding languages (e.g. C#, Javascript, Python, C++, etc.), graphic editor, animation tools, APIs, etc.
- Support features to create digital games, including three-dimensional, two-dimensional, virtual reality, and augmented reality games, as well as simulations, animations and other game experiences.
- Support different platforms (e.g. PC (Windows, MacOS), headset, game consoles, mobile devices (e.g. iOS, Android), etc.).
| Moderate | None |
IoT Coding | Hardware - Educational MicrocontrollersMore Details- Support coding (e.g. Scratch, Python, etc.) on different operating systems (e.g. Windows, MacOS, etc.).
- Normally consists of sensors, buttons, display, connectivity (e.g. Bluetooth, USB), etc.
- May be used as remote sensing nodes, smart home devices or other parts of an IoT network.
| Elementary | None |
IoT Coding / Robotics Coding | Hardware - IoT Hardware KitsMore Details- Support a range of input sensors such as temperature sensors, humidity sensors, pressure sensors, light sensors, proximity sensors, RFID readers, etc.
- Support various output devices such as LEDs, small OLED screens, speakers, motors, servos, etc. that can be combined with the microcontrollers to make IoT devices.
| Elementary | None |
IoT Coding | Software / Cloud Services - Integrated Development Environments (IDEs) for Microcontrollers CodingMore Details- Support transfer of coded programs (e.g. C++, Python, etc.) to compatible microcontrollers.
- Students can write code by such tools for the microcontrollers to perform functions such as controlling, sensing and communication among devices.
| Elementary | None |
IoT Coding | Software / Cloud Services - Management and Analytic Tools for IoT DevicesMore Details- Support different IoT functions such as monitoring physical IoT devices, making connections between multiple IoT devices, data streaming.
- Support real-time analytics functions to collect, filter, transform.
Support the use of APIs and coding languages (e.g. SQL, Javascript, C#, etc.), etc. to drill into unstructured data from IoT devices.
| Moderate | None |
Mobile App Development | Hardware - Mobile DevicesMore Details- Devices including smartphones, tablet computers, etc. that are used to develop, test and run mobile apps.
| Elementary | None |
Mobile App Development | Software / Cloud Services - Integrated Development Environments (IDEs) for App DevelopmentMore Details- Support tools including frameworks, app simulators, etc. to write, test and build apps for different operating systems (e.g. iOS, Android).
- Support text editors for text-based coding (e.g. Xcode, Android Studio, etc.).
- Support graphical user interface with drag-and-drop features for block-based coding (e.g. App Inventor, Thunkable, etc.).
| Moderate | None |
Robotics Building / Coding | Hardware - Modularisable Programmable RobotMore Details- Educational robot that can be modularised. Students will be able to disassemble the robot and learn about each component of the robot, and understand the relationship among the components.
- Can be utilised in project-based learning, help students learn about project management and daily problem solving.
- Support cloud data storage.
- Support text-based programming languages like Python, Swift, C++, etc.
| Moderate | None |
Robotics Coding | Hardware - Preassembled Programmable Robots with Different FunctionsMore Details- Different types of preassembled programmable robots which can be coded to perform various functions such as simple movement, image analysis, voice dialogue, etc.
- Examples of this type of robots include dancing robots, underwater robots, conversational robots and acrobatic wheeled robot.
- Supported platforms for development may include mobile apps, specific desktop applications, etc., depending on the robots design.
| Moderate | None |
Robotics Coding | Hardware - Programmable Robot KitsMore Details- Support robot components such as bricks, wheels, motors, sensors, mechanical arms, processing unit on board, etc.
- Allow students to assemble a robot.
- Support coding on the assembled robot to design some tasks (e.g. following lines to grab, hold and move objects by robotic arms, etc.).
- Support block-based coding (e.g. Makeblock App and mBlock Blockly) or text-based coding (e.g. Python editor in mBlock).
| Moderate | None |
Robotics Coding | Hardware - Quadruped robotMore Details- Allow students to program the quadruped robot to perform various functions such as different walking gaits and movement in all directions
- Allow students to add various development platforms or sensors to enrich the perception functions for various performances such as ultrasonic sensor, image recognition module, infrared sensor, etc.
- Support various sensors and modules to give AI function such as vision recognition
- Equipped with servo motor on each leg and with 3 joints allowing the robot to have 12 degrees of movement
- Equipped with 32-bit microcontroller and support graphical programming, Python programming
| Moderate | None |
Robotics Coding | Hardware - Robotic armsMore Details- Allow students to program the robotic arm to perform any desired task such as drawing, gripping, rotating, etc.
- Equipped with camera for object recognition
- Support block-based coding and text-based coding.
| Moderate | None |
Robotics Coding | Hardware - Robotic carsMore Details- Allow student to program reassembled robotic car which can be programmed to perform various functions such as tag tracking, obstacle avoidance and object recognition.
- Support various sensors and modules to program functions such as scene recognition.
- Support block-based and text-based coding.
| Moderate | None |
Virtual Reality (VR) / Augmented Reality (AR) | Hardware - 360 Degree CamerasMore Details- Cameras having a field of view that covers approximately the entire sphere or at least a full circle in the horizontal plane.
- The photos and videos captured can be used to create 3D VR scenes / games / animations.
| Moderate | None |
Virtual Reality (VR) / Augmented Reality (AR) | Hardware - Advanced VR / MR Head-mounted Display Devices with ControllersMore Details- Head-mounted devices (HMD) with controllers that can display high resolution quality of computer-generated panoramic images and data with low latency.
- Some support providing MR experiences which present an overlay of digital content that interacts with objects in the real world to users.
- Some support providing built-in hands tracking, interactions and gesture sensor module.
- Support wired or wireless connection to a PC fully standalone with built-in computing power.
| Moderate | None |
Virtual Reality (VR) / Augmented Reality (AR) | Hardware - Elementary VR Headsets (Slide-on Head-mounted Display)More Details- An elementary VR headset consists of a holder that a smartphone is inserted into it for displaying VR scenes.
- It is assembled by using simple and low cost components such as cardboards, plastic, etc.
- Some of the headsets contain simple components for input and require additional controllers for advanced interaction.
- It is suitable for designing and implementing simple VR applications.
- Smartphone is required.
| Elementary | None |
Virtual Reality (VR) / Augmented Reality (AR) | Hardware - Hologram DevicesMore Details- The projection system can either be embedded or mounted to the wall/floor.
- Require a dark room with enough space.
- Project up to roughly 1 meter from the surface.
- Come with software that allows users to make 3D holograms of small, real world objects such as historical artefacts, as well as convert and upload 3D models, laser scans, point cloud models, and polygon models from most formats.
| Advanced | None |
Virtual Reality (VR) / Augmented Reality (AR) | Hardware / Software - Projectors, Motion Capture Devices and Associated Software for Virtual Reality CAVE SystemMore Details- Devices which create an immersive virtual reality environment, with a perception of being physically present in a non-physical world, where projectors are directed to between three and six of the walls of a room-sized cube.
- Motion capture devices are used to record user's physical movements to interact with the environment.
| Advanced | None |
Virtual Reality (VR) / Augmented Reality (AR) | Software - Cross-platform Development Engine for Creating AR AppsMore Details- Support creating AR apps including applications and games that overlays computer-generated content on top of the real world.
- The app can be deployed across platforms (e.g. iOS, Android, etc.) and devices (e.g. smartphones, tablet computers, etc.).
- Mobile devices are required.
| Moderate | None |
Virtual Reality (VR) / Augmented Reality (AR) | Software - Cross-platform Development Engine for Creating VR Scenes / Games / AnimationsMore Details- Support creating 3D VR scenes / games / animations which can be operated in different kinds of devices such as elementary VR headsets, advanced VR/MR head-mounted display, etc.
- Support coding editor and 3D modelling editor.
- Mobile devices are required.
| Moderate | Require knowledge of computer graphics design and 3D modelling. |
Web Development | Software - Integrated Development Environments (IDEs) for Web DevelopmentMore Details- Support comprehensive facilities for web development including source code editor, build tools, deployment tools, debuggers, etc.
- Support different coding languages (e.g. .NET, Python, C++, etc.).
| Moderate | None |
Web Development | Cloud Service - Web Hosting ServiceMore Details- Provide online web hosting services.
- Support functions of web server including data storage, Internet connectivity, domain name hosting, etc.
- Allow students to make their websites accessible via the World Wide Web.
| Elementary | None |
Others - Three Dimensional (3D) Modelling | Hardware - Laser CuttersMore Details- Used for 3D modelling maker workshops.
- Support cutting or engraving different materials by following a pattern under software control.
- Such workshops can produce complementary products for building an IT prototype.
| Elementary | None |
Others - Three Dimensional (3D) Modelling | Hardware - 3D PrintersMore Details- Used for 3D modelling maker workshops.
- Support creating three-dimensional objects by joining or solidifying different kinds of materials under computer control.
- Such workshops can produce complementary products for building an IT prototype.
- 3D printing filament is required.
| Elementary | None |
Others - Three Dimensional (3D) Modelling | Software - 3D ScannersMore Details- Used for 3D modelling maker workshops.
- Support scanning real-world objects or environments to collect data on their shape and possibly its appearance.
- Support constructing digital 3D models from the collected data, which is otherwise difficult to be built with 3D modelling software.
- Such workshops can produce complementary products for building an IT prototype.
| Elementary | None |
Others - Three Dimensional (3D) Modelling | Software - 3D CAD SoftwareMore Details- Used for 3D modelling maker workshops.
- Support creating and designing 3D models which can be processed by 3D printers to create three-dimensional objects.
- Such workshops can produce complementary products for building an IT prototype.
| Elementary | None |