Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

297 total results found

Module 1 - Introduction to Digital Circuit

Fundamentals Digital Systems (DSD/FDS)

Module 2 - Boolean Algebra & Basic Logic Gates

Fundamentals Digital Systems (DSD/FDS)

Module 3 - Karnaugh Map

Fundamentals Digital Systems (DSD/FDS)

By the end of this module, you will be able to: Understand the purpose of a Karnaugh Map (K-Map) as a visual tool for simplifying digital logic.Correctly create a K-Map for functions with 2, 3, or 4 input variables.Translate a Boolean function or a truth tabl...

Module 4 - Complex Logic Gates

Fundamentals Digital Systems (DSD/FDS)

A complex logic gate is a digital circuit component that performs a logical function built from a combination of basic logic gates like AND, OR, and NOT. The most commonly used complex gates are NAND (Not-AND), NOR (Not-OR), XOR (Exclusive-OR), and XNOR (Exclu...

Module 5 - Decoder & Encoder

Fundamentals Digital Systems (DSD/FDS)

Module 6 - Multiplexer & Demultiplexer

Fundamentals Digital Systems (DSD/FDS)

Understand how Multiplexer and Demultiplexer works.

Module 7 - Arithmetic Circuit

Fundamentals Digital Systems (DSD/FDS)

Module 8 - Flip-Flop & Latch

Fundamentals Digital Systems (DSD/FDS)

Module 9 - Register & Counter

Fundamentals Digital Systems (DSD/FDS)

Module 2 - Dataflow Style

Digital Sistem Design (PSD/DSG)

Module 2 - Task Management

Internet of Things

Module 2 : Functions in C

Alprog - Elektro KKI

Learning Objectives: Understand the concept and importance of functions in C programmingDeclare and define functions with proper syntaxUse function parameters and return values effectivelyApply different parameter passing mechanisms (pass by value)Understand ...

Module 6 - Tree

Algorithm Programming

Module 9 - Advanced Graph

Algorithm Programming

Module 3 - Behavioural Style

Digital Sistem Design (PSD/DSG)

A behavioral style in VHDL describes a digital system by specifying its functionality using high-level algorithms and sequential statements without detailing the underlying hardware structure.

Module 8 : OOP (SOLID, Encapsulation, Abstraction)

Alprog - Elektro KKI

By the end of this module, students will be able to: - Understand the fundamental concepts of Object-Oriented Programming (OOP) - Transition from procedural C programming to OOP in C++ - Implement classes and objects in C++ - Apply encapsulation principles...

Module 3 - Memory Management & Queue

Internet of Things

By WN

Module 3 : Array (Static)

Alprog - Elektro KKI

By the end of this module, students will be able to: - Understand the fundamental differences between Python lists and C arrays - Declare and initialize static arrays with appropriate data types - Access and manipulate array elements using indexing - Imple...

Module 4 - Testbench

Digital Sistem Design (PSD/DSG)

Module 4 - Merge Sort and Quick Sort

Algorithm Programming

5.8 Advanced Project: A Multi-Sensor Data Logger

Internet of Things Module 5 - Software Timer

In this chapter, we will build a complete data logging application that utilizes all the core concepts we have learned: hardware interrupts for precise data acquisition, queues for safe data transfer, multiple tasks with different priorities for processing and...

PlatformIO Guide

Internet of Things

About PlatformIO is a versatile, open-source ecosystem designed for embedded development, providing a unified platform for building, managing, and debugging firmware across a wide range of microcontroller architectures. Integrated with popular IDEs like VSCode...

4.1 Learning Objectives

Internet of Things Module 4 - Deadlock & Synchronization

After completing this module, students are expected to be able to: Understand the importance of synchronization in multi-tasking systems and the risks of race conditions. Recognize and implement basic synchronization mechanisms: Mutexes and Semaphores in Free...

4.2 Introduction: The Problem of Shared Resource Access

Internet of Things Module 4 - Deadlock & Synchronization

In multi-tasking systems, multiple tasks often need to access the same resource simultaneously, such as a global variable, a sensor interface, or a data structure. If this access is not managed properly, it can lead to data corruption, inconsistencies, or unex...

4.3 Synchronization Mechanisms in FreeRTOS

Internet of Things Module 4 - Deadlock & Synchronization

FreeRTOS provides several synchronization primitives, the most common of which are Mutexes and Semaphores. Both are built upon a basic data structure called a queue. Mutex (Mutual Exclusion) A mutex can be thought of as a "key" to a resource. A task that wan...

4.4 Common Problems in Synchronization

Internet of Things Module 4 - Deadlock & Synchronization

Deadlock A deadlock is a situation where two or more tasks are blocked forever, each waiting for a resource that is held by another task in the cycle. Example Deadlock Scenario: Task A successfully locks Mutex 1. Task B successfully locks Mutex 2. Task A no...

4.5 Prevention and Handling Strategies

Internet of Things Module 4 - Deadlock & Synchronization

Overcoming Deadlock Since detecting and recovering from a deadlock in an embedded system is very difficult, the best approach is prevention. This is done by breaking one of the four Coffman conditions. Break Circular Wait: Enforce a strict lock ordering for...

7.1 Introduction: The IoT Communication Stack

Internet of Things Module 7 - MQTT, HTTP, WIFI

For an IoT device to be useful, it needs to communicate. This communication happens in layers, much like a conversation. You need to have connectivity, then you need a common language to request things (web communication), and sometimes a specialized shorthand...

7.2 Local Network Connectivity with Wi-Fi

Internet of Things Module 7 - MQTT, HTTP, WIFI

Wi-Fi is a technology based on the IEEE 802.11 standards that enables wireless data exchange. The ESP32 supports common standards like 802.11b, 802.11g, and 802.11n, operating in the 2.4 GHz frequency band. ESP32 Wi-Fi Modes Station Mode (STA): The ESP32 acts...

7.3 Web Communication with HTTP/HTTPS

Internet of Things Module 7 - MQTT, HTTP, WIFI

HTTP HTTP (Hypertext Transfer Protocol) is the foundation of data communication on the World Wide Web. It operates on a request-response model. Client (ESP32): The client make a request to the server for a resource, like a webpage or data. Server (A Web Serve...

7.4 Efficient IoT Messaging with MQTT

Internet of Things Module 7 - MQTT, HTTP, WIFI

MQTT (Message Queuing Telemetry Transport) is a lightweight messaging protocol designed for constrained devices and unreliable networks, making it perfect for IoT. Instead of the request-response model, MQTT uses a publish/subscribe (pub/sub) model. MQTT Compo...

10.1 Introduction

Internet of Things Module 10 - Mesh

Module 10: Mesh Author: YP Learning Objectives After completing this module, students are expected to be able to: Explain the concept, advantages, and basic architecture of IoT mesh networks. Implement a simple mesh network using ESP32 with the painlessMesh l...

10.3 Example Code

Internet of Things Module 10 - Mesh

10.3.1 Root Node #include <Arduino.h> #include <painlessMesh.h> #include <WiFi.h> // --- Konfigurasi Jaringan --- #define MESH_PREFIX "jaringan_mesh_saya" // HARUS SAMA dengan semua node #define MESH_PASSWORD "password_mesh" // HARUS SAMA dengan se...

10.2 What is Mesh?

Internet of Things Module 10 - Mesh

10.2.1 What is a Mesh Network? A mesh network is a topology where each device (node) is interconnected, creating multiple paths for data. Unlike traditional networks that rely on a single central point (such as a router), a mesh network is decentralized. How ...

1.1 Learning Objectives

Internet of Things Module 1 - Introduction to SMP with RTOS

After completing this module, students are expected to be able to: Understand the difference between a General-Purpose Operating System (GPOS) and a Real-Time Operating System (RTOS) Understand the differences and benefits of Multi-Threading on a Microcontrol...

1.2 Introduction to RTOS

Internet of Things Module 1 - Introduction to SMP with RTOS

GPOS The types of OS we often use (Windows, Linux, Mac, Android, iOS) can be classified as GPOS, which, as the name suggests, are designed for general purposes and typically utilize a GUI or CLI as the human interaction interface. GPOS systems are designed to ...

1.3 Microcontroller Architecture

Internet of Things Module 1 - Introduction to SMP with RTOS

Besides the differences in the type of OS used, there are also differences in the microcontrollers used. In this IoT lab, the ESP-32 microcontroller is used, which differs from the Arduino Uno used in the Embedded Systems lab. Look at the table below for a com...

1.4 FreeRTOS

Internet of Things Module 1 - Introduction to SMP with RTOS

So what is FreeRTOS? [4] FreeRTOS is one of the most widely used RTOS implementations in the world of embedded systems and IoT. As its name implies, FreeRTOS is open-source and free to use. Based on the previous explanation of RTOS, FreeRTOS acts as a lightwei...

1.5 Additional References

Internet of Things Module 1 - Introduction to SMP with RTOS

What Is a Real-Time Operating System (RTOS)? – DigiKey Maker.io Real-Time Operating System (RTOS): Components, Types, Examples – Guru99 RTOS Fundamentals – FreeRTOS Official Documentation

1. Introduction: From Python to C

Alprog - Elektro KKI Module 1 : Introduction to C

1.1 Key Differences Overview Aspect Python C Compilation Interpreted Compiled Type System Dynamic typing Static typing Memory Management Automatic Manual Syntax Style Indentation-based Brace-based Performance Slower execution Faster execution ...