Posts

Showing posts from 2026
NR-V2X Mode 2 in ns-3 In 5G NR-V2X, vehicles communicate directly using sidelink. Two modes exist: Mode 1: gNB schedules sidelink resources. Mode 2: UEs autonomously select sidelink resources (no gNB needed). Mode 2 is especially important for vehicular networks (IoV), where cars must exchange safety messages without relying on infrastructure. In ns-3, the NrHelper class is used to: Create UE devices with sidelink PHY/MAC layers. Attach them to Bandwidth Parts (BWPs) and spectrum channels. Configure sidelink attributes such as: SidelinkMode = 2 (autonomous) SidelinkPeriod (resource pool periodicity) SidelinkSubchannelSize (RB grouping)
Understanding ns-3 Headers When writing ns-3 simulation scripts, we include different modules using #include . Each header unlocks a set of features: core-module.h Provides the simulation engine: Simulator , Time , logging, and configuration system. network-module.h Defines basic networking primitives: Node , NetDevice , Packet , and Channel . mobility-module.h Lets you assign positions and movement patterns to nodes using mobility models (e.g., constant position, random walk). internet-module.h Implements the Internet stack: IPv4/IPv6, TCP, UDP, and routing protocols. This is needed if you want to run applications over IP. nr-module.h The 5G New Radio (NR) module. Provides helpers, PHY/MAC models, Bandwidth Parts (BWPs), and propagation models for simulating 5G networks. Together, these headers give you the building blocks to create complex scenarios — from basic node placement to full 5G IoV simulations.
Why C++23 is a Game Changer: std::expected Modern C++ is moving away from clunky, slow error handling. In C++23 , we finally have a way to return either a value or an error without the overhead of try-catch blocks. #include <expected> #include <string> // C++23 way to handle potential failures std::expected< int , std::string> divide ( int a, int b) { if (b == 0 ) return std:: unexpected ( "Cannot divide by zero!" ); return a / b; } The 3 Major Advantages Zero Exceptions: No more "crashing" the program or using slow try-catch logic. Type Safety: The compiler forces you to acknowledge the possibility of an error before you can access the result. Better Performance: It is significantly faster than traditional exception handling, making it ideal for high-performance systems and Arduino/Embedded development. ...
Why SSH is Better Than HTTPS for GitHub – Complete Setup Guide Why SSH is Better Than HTTPS for GitHub – A Complete Developer Guide If you have ever seen this error while pushing to GitHub: remote: Invalid username or token. Password authentication is not supported for Git operations. then this article is for you. GitHub no longer supports password authentication for HTTPS pushes. Developers must now use either a Personal Access Token (PAT) or SSH. In this guide, I will explain why SSH is the better long-term solution and how to set it up properly. HTTPS vs SSH – What’s the Difference? Using HTTPS Requires username and password (or token) Tokens can expire Login prompts appear frequently Can cause authentication errors Using SSH No password required after setup Secure key-based authe...
Image
How to Remove a Comma in PowerPoint Without Affecting Colors While preparing an event slide, I noticed a small formatting issue: there was an unnecessary comma after February . Instead of redesigning the entire banner, I fixed it directly in PowerPoint — without affecting the original colors. 🔹 Before (With Comma) Notice the comma after February . 🔹 After (Comma Removed) The comma has been removed while maintaining the exact same font style, size, and color. 💡 Method Used (PowerPoint Trick) Select the text box. Carefully delete the comma. If spacing shifts, adjust character spacing slightly. Ensure font color and formatting remain unchanged. This simple adjustment keeps your design professional and clean, especially for official academic or event slides. Tip: Small punctuation details can make a big difference in formal presentations.
Image
Euclidean Distance in NR-V2X Mode 2 In wireless networks like NR-V2X Mode 2 (New Radio Vehicle-to-Everything, sidelink mode where vehicles autonomously select resources), measuring the distance between vehicles or signals is critical for efficient communication. One common metric is the Euclidean distance . What is Euclidean Distance? Euclidean distance is the "straight-line" distance between two points in space. Mathematically, for two points P1(x1, y1) and P2(x2, y2) in 2D space, it is: d = √((x2 - x1)² + (y2 - y1)²) In 3D, or higher dimensions, you just add more squared differences for each coordinate. Why is it Useful in NR-V2X Mode 2? Resource Selection: Vehicles in Mode 2 autonomously pick radio resources. Knowing the Euclidean distance between vehicles helps avoid interference, because distant vehicles can reuse the same resources without collision. Collision Avoidance: Signals from nearby vehicles are more likely to collide. By ...
Image
Understanding Maximum Network Resources In wireless networks and communication systems, devices like smartphones, smart vehicles, or IoT sensors need resources to communicate effectively. These resources are the "tools" the network provides so data can flow smoothly. Bandwidth: Think of bandwidth as the width of a highway. A wider highway can allow more cars (data) to travel simultaneously. Higher bandwidth means more data can be sent at the same time. Data Rate: This is how fast the data moves across the network, like the speed of a car on the highway. Higher data rates mean information reaches the destination faster. Maximum Resource Allocation: Every network has limits. The maximum amount of resources refers to the upper limit the network can give a device at a time, such as the largest chunk of bandwidth or the fastest data rate it can handle. When planning networks or designing algorithms like Deep Q-Networks (DQN) for smart v...
Image
Understanding Video & App Performance Metrics Evaluating user experience goes beyond just network speed. Key metrics include PSNR , video freeze duration , and application-level throughput . These metrics together help us understand the Quality of Experience (QoE) . Figure: Network throughput affects PSNR (video quality) and video freeze duration, both contributing to QoE. 1. Peak Signal-to-Noise Ratio (PSNR) PSNR measures the quality of video or images after transmission. Higher PSNR means clearer, sharper video; lower PSNR leads to blurry or noisy playback. 2. Video Freeze Duration Video freeze duration is the total time a video pauses or stalls during playback. Long freezes cause frustration, even if the rest of the video plays smoothly. 3. Application-Level Throughput This measures the data successfully delivered to the application per unit time . High throughput ensures smooth playback; low throughpu...
Image
Understanding QoE, QoS, and Network Throughput In networking, several metrics determine how well a network performs and how satisfied users feel. Three key metrics are: Quality of Experience (QoE): Measures the user’s satisfaction with the service. Subjective and user-centric. Quality of Service (QoS): Measures network performance parameters like latency, jitter, and packet loss. Network-centric and technical. Network Throughput: Measures the amount of data transmitted per unit time . Network capacity-focused. Figure: Visualization of QoE (user satisfaction), QoS (network performance), and Throughput (data rate capacity). Quick Examples: QoE: How smooth a video call feels to the user. QoS: Ensuring low latency and minimal packet loss during a VoIP call. Throughput: Measuring 50 Mbps download speed on Wi-Fi. Analogy for Easy Learning: Think of a water system: Throughput → size of the pipe (how much water can flow) QoS → reg...
Image
Understanding Coalition vs Non-Cooperative Games in Networks In multi-agent systems like vehicular networks, agents (vehicles, nodes, etc.) make strategic decisions. Game theory helps us model these interactions. Two key types are Coalition (Cooperative) Games and Non-Cooperative Games . Coalition (Cooperative) Games Players cooperate and form coalitions to maximize joint benefits. Goal: Maximize total payoff together. Binding: Agreements enforceable among coalition members. Example: Vehicles share spectrum to reduce interference. Benefit: Better overall network efficiency and fairness. Non-Cooperative Games Players act independently , trying to maximize their own utility. Goal: Each player maximizes individual payoff. Binding: No enforceable agreements. Example: Vehicles choose channels individually; may cause congestion. Analysis: Look for Nash Equilibrium , where...
Image
Federated Learning (FL) for DQN: Learning Together Without Sharing Data Imagine hundreds of smart vehicles on the road, each trying to decide the best action : which channel to use, how much power to transmit, or when to handover to a new base station. Each vehicle runs its own Deep Q-Network (DQN) . Here, think of each vehicle as a “cell” deploying its own DQN agent to continuously learn optimal communication and resource allocation policies over time. But here’s the challenge: collecting all raw experience data from every vehicle centrally is impractical — it’s too much data and privacy matters. Why Federated Learning? Federated Learning trains the model locally on each vehicle and periodically shares only the model updates to form a global model without exchanging raw user data . This ensures privacy, reduces bandwidth usage, and still allows learning from everyone’s experience. How It Works (Step by Step) Local Learning: Each vehicle (cell) trains its DQN on ...
Image
Q-Learning, Deep Q-Networks (DQN), and Their Role in NR-V2X 1. What Is Q‑Learning? (Simple) Imagine a robot navigating a maze. At each position ( state ), it can take an action (move up/down/left/right). Some actions give rewards (like +10 for reaching the goal), others give penalties. The robot doesn’t know the best path at first — it must learn by trying actions and observing rewards. Q-Learning helps the robot learn the value of taking each action in each state, stored in a Q-table: Q(s,a) – the robot’s current estimate: “If I’m in state s and take action a , how good is it long-term?” Q*(s,a) – the optimal total reward: “If I take action a in state s and then act optimally forever after, how much total reward could I get?” Over many trials, Q(s,a) updates to approach Q*(s,a), helping the robot learn the best action in each situation. Figure 1: Robot navigating a maze, showing states, actions, and rewards — the intuition behind Q(s,a) and Q*(s,...
Image
Types of Cellular Base Stations: Macro, Pico, and Femto Macro base stations, pico base stations, and femto base stations are all types of cellular network infrastructure. They differ in coverage area , transmit power , and deployment scenarios . Together, they form a heterogeneous network (HetNet) to provide comprehensive wireless coverage and capacity. Characteristic Macro Pico Femto Coverage Radius Several km Up to 200 m Up to 10 m Transmit Power High (10–40W) Low (250 mW–2W) Very low (≤100 mW) Deployment Location Outdoor towers, rooftops Indoor/outdoor hotspots Indoor homes/offices Operator Involvement Operator-managed Operator-managed User-installed Primary Purpose Wide-area coverage Enhance capacity / fill gaps Enhance indoor signal Figure 1: Illustration showing Macro, Pico, and Femto Base Stations in a h...
Image
Key Concepts in Modern Cellular Networks: Dynamic Load Balancing, Mobility Management, and Received Signal Strength Modern cellular networks rely on sophisticated techniques to maintain high performance and user satisfaction. Three critical concepts are Dynamic Load Balancing , Mobility Management , and Received Signal Strength (RSS) . 1. Dynamic Load Balancing Dynamic Load Balancing is a technique used to distribute network traffic efficiently across multiple base stations. When one base station becomes congested due to high user demand, traffic can be shifted to neighboring base stations with lower load. This ensures: Consistent data rates for users Reduced latency and packet loss Efficient utilization of network resources Dynamic load balancing is especially important in dense urban areas, high-speed trains, or stadiums, where user density can vary rapidly. 2. Mobility Management Mobility Management refers to techniques that allow users to maintain continuo...
Image
Understanding the Difference Between Latency, Data Rate, and Throughput in Modern Networks In modern cellular and wireless networks, terms like latency , data rate , and throughput are often used interchangeably, but they describe different aspects of network performance. Understanding these distinctions is essential for designing and optimizing networks for 5G, IoT, and other advanced applications. Metric Definition Unit / Measure Importance Latency The time it takes for a packet of data to travel from source to destination. Milliseconds (ms) Critical for real-time applications like gaming, AR/VR, and autonomous systems. Data Rate The theoretical maximum speed at which data can be transmitted over a network channel. Bits per second (bps), Mbps, Gbps Determines how fast large files or streams can be sent/received. Throughput The actual rate at which data successfully travels across the net...
Image
Why We Need a Lower User-to-Base-Station (User-to-BS) Ratio in Modern Cellular Networks As mobile data demand continues to surge in 5G and future wireless networks, maintaining a lower user-to-base-station (User-to-BS) ratio is essential for delivering reliable, high-speed connectivity. User-to-BS Ratio (U/B): Number of users per base station. BS-to-User Ratio (B/U): Number of base stations per user. Low U/B → High B/U → Fewer users per base station, more base stations available per user, leading to better network performance. Figure 1: Comparison between high User-to-BS ratio (congested network) and low User-to-BS ratio / high BS-to-User ratio (optimized network performance). When too many users share a single base station, congestion increases significantly, leading to reduced data rates, higher latency, and degraded Quality of Service (QoS). Reduced data rates Higher latency Packet loss and instability Degraded Qual...
Image
Step-by-Step Guide: Installing and Testing ns-3.45 with LTE (LENA) and 5G-LENA (NR) This tutorial explains how to install ns-3.45 on Ubuntu, verify the installation, and test both LTE (LENA) and 5G-LENA (NR) modules. The guide is suitable for students, researchers, and beginners in network simulation. 1️⃣ Install Required Dependencies sudo apt update sudo apt install g++ cmake ninja-build git \ libsqlite3-dev libboost-all-dev \ libgtk-3-dev python3-dev These packages are required for building ns-3 and enabling LTE/NR modules. 2️⃣ Download ns-3.45 (Official Release) cd ~/Downloads wget https://www.nsnam.org/releases/ns-allinone-3.45.tar.bz2 tar -xjf ns-allinone-3.45.tar.bz2 cd ns-3.45 3️⃣ Configure ns-3 ./ns3 configure --enable-examples --enable-tests If configuration succeeds, you should see: -- Configuring done -- Generating done -- Build files have been written to: .../cmake-cache 4️⃣ Build ns-3 ./ns3 build Successful build confirms that cor...
How to Upload an Android App to Google Play (Step-by-Step Guide for Beginners) Publishing an Android app on the Google Play Store can look complicated at first, but once the workflow is understood, the process becomes straightforward. This guide explains the essential steps required to upload an app and send it for review. Step 1: Prepare Your App Bundle (AAB) Before uploading, ensure the project is ready: Update versionCode (must always increase for every new release) Update versionName (user-visible version) Build a Signed App Bundle (.aab) using: Build → Generate Signed Bundle/APK → Android App Bundle Step 2: Configure Required Permissions If the app uses ads (Google Mobile Ads SDK), ensure the following permission is included in AndroidManifest.xml : <uses-permission android:name="com.google.android.gms.permission.AD_ID"/> Without this permission, Google Play may block the release if Advertising ID usage is declared. Step ...
Explanation of Key Innovation Terms Term Meaning Simple Example Cohort A group of people who participate in a program or activity together. Students admitted into a training program in the same year. Prototype An early or trial version of a product created to test an idea. A demo mobile app before final release. Patent A legal protection that gives the inventor exclusive rights to an invention. A registered invention that others cannot copy. Prototype Developed Indicates that a functional or test version of an idea has been created. A working model of a smart device. Prototype Patented Shows that the invention behind the prototype has been legally protected. A patented smart device prototype. Key Takeaway Cohort refers to people. Prototype refers to an early product. Patent refers to legal protection. Prototype developed means it exist...
Difference Between Copyright and Trademark Copyright and trademark are both forms of intellectual property protection, but they protect different things and serve different purposes. Aspect Copyright Trademark What it protects Original creative works Brand identity Examples Books, blogs, music, videos, photos, software Brand name, logo, slogan, symbol Main purpose Protects the creator’s expression Protects consumers from brand confusion When protection starts Automatically when the work is created When the mark is used in business Registration Optional but recommended Optional but stronger with registration Duration Life of the author + several years Can last forever if renewed Simple Explanation Copyright protects what you create . Trademark protects how your business is identified .
Image
FU2200A Smart Meter – Teaching Q&A FU2200A Smart Meter – Teaching Q&A Q1: What is the FU2200A smart meter? The FU2200A is a digital multifunction power meter that measures: Voltage, current, and power factor Active and reactive power Harmonics and other power quality metrics It also has Ethernet and RS485 interfaces for connection to SCADA systems, IoT platforms, or energy management systems. 💡 Teaching tip: Think of it as a "smart detective" for electricity — it not only counts usage but also tracks power health and quality. Q2: How is FU2200A different from typical smart meters in Nigeria? While most Nigerian smart meters focus on basic prepaid/postpaid billing, FU2200A adds: Detailed power quality monitoring Historical data logging Connectivity for IoT or smart grid integration Q3: Does the FU2200A have built-in IoT sensors? No. FU2200A does not include embedded IoT sensors like Wi-Fi or NB-IoT modules. Ho...
Smart Metering with Modbus RTU, Wireless Access, and Blockchain – Q&A Guide Smart Metering with Modbus RTU, Wireless Access, and Blockchain This post explains a practical smart metering architecture using Modbus RTU , Arduino-based controllers , wireless access points , and a blockchain backend . It is written in a Q&A format to support both learning and interview preparation. Q1. What problem does this system aim to solve? The system enables reliable, scalable, and tamper-resistant smart metering. It collects energy consumption data from smart meters and securely stores verified records using a blockchain-based backend. Q2. What role does Modbus RTU play in the system? Modbus RTU is used for local communication between the smart meter and the embedded controller. It allows efficient and deterministic reading of meter values over an RS485 link. Q3. Which device implements Modbus RTU? An Arduino...
Image
Are Blockchain-Based Smart Metering Systems Already Available? With the growing interest in smart grids, Internet of Things (IoT), and energy transparency, many researchers have explored the use of blockchain technology in smart metering . This article explains what already exists in the literature and where new solutions can still contribute. Q1: Are there existing blockchain-based smart metering systems? Yes. Several studies have proposed blockchain-enabled smart metering architectures to improve billing transparency, data integrity, and privacy protection . Existing research can be grouped into three main areas: Secure smart meter data logging and billing: Blockchain can be used to aggregate meter readings securely and enable dynamic billing while preventing data tampering and fraud [1]. IoT–blockchain smart energy monitoring: Research integrates smart meters, IoT communication, and blockchain to enable scalable and real-time monitoring of energy systems [2]. ...
Can Learning Java Help You Become an Embedded Engineer? A Practical Guide As technologies such as the Internet of Things (IoT), smart infrastructure, and edge computing continue to evolve, many students and researchers ask an important question: Can improving my Java development skills help me become an embedded engineer? The short answer is yes—but with some important clarifications . Java alone is not enough for embedded engineering, but it can play a valuable role when combined with other key skills. Understanding Embedded Engineering Embedded engineering focuses on building systems where hardware and software work closely together. Examples include smart meters, IoT sensors, robotics, and industrial controllers. In most real-world projects, embedded engineers work with: Microcontrollers such as Arduino, ESP32, or STM32 Sensors and actuators Communication protocols like UART, SPI, and I2C Low-level programming, usually in C or C++ These skills are essential be...
Traditional Energy Meters vs Smart Meters Traditional Energy Meters vs Smart Meters Electricity metering plays a critical role in monitoring, billing, and managing power consumption. Traditional energy meters were primarily designed for basic usage measurement and manual billing. With advancements in communication and embedded systems, smart meters have become an important component of modern power grids. Unlike traditional meters, smart meters can communicate and process data automatically. This enables real-time and high-resolution monitoring of electricity consumption, as well as advanced services such as efficient appliance control and demand-side management [1] . Key Differences at a Glance Feature Traditional Energy Meter Smart Energy Meter ...
How Vehicles Can Act Like Mobile Batteries for the Power Grid How Vehicles Can Act Like Mobile Batteries for the Power Grid 🚗⚡ When we think about cars, we usually think about transportation — getting from one place to another. But modern vehicles, especially electric vehicles (EVs) , are starting to play a much bigger role in our energy system. In fact, vehicles can now act like mobile batteries that help support the power grid. Let’s break this down in a simple and easy way. What Does “Vehicle as a Mobile Energy Storage” Mean? Electric vehicles come with large built-in batteries. Most of the time, these batteries are only used to power the car. However, cars are parked for most of the day, which means a lot of stored energy goes unused. With modern energy technology, vehicles can: Charge electricity from the power grid ...
Image
Stabilizers, Photonics, and Machine Learning in Quantum Communication An intuitive guide for students and early researchers 1. What Are Stabilizers in Quantum Computing? In quantum systems, qubits are extremely sensitive to noise and errors caused by decoherence, imperfect gates, and environmental disturbances. Stabilizers are mathematical operators used to describe and monitor quantum states without directly measuring (and collapsing) them. A stabilizer is an operator that leaves a quantum state unchanged. If a quantum state is an eigenstate of a stabilizer operator with eigenvalue +1, the state is said to be stabilized by that operator. In simple terms: stabilizers act like consistency checks that tell us whether a quantum state has been disturbed by errors. 2. Stabilizer Codes (Quantum Error Correction) Stabilizer codes are a class of quantum error-correcting codes built using ...
How to Link a BibTeX (.bib) File to a LaTeX Main Document A simple guide for students and researchers using IEEE LaTeX 1. What Is a .bib File? A .bib file is a BibTeX bibliography database that stores references (articles, books, conference papers) in a structured format. LaTeX automatically pulls citations from this file into the main document. 2. Project Folder Structure Ensure your LaTeX project files are organized as follows: main.tex references.bib figures/ The main.tex file is your primary document, while references.bib contains all bibliography entries. 3. Adding the Bibliography to main.tex Insert the following lines near the end of your main.tex file, just before \end{document} . \bibliographystyle{IEEEtran} \bibliography{references} Note: Do not include the .bib extension in the filename. 4. Citing References in the Text Use the citation key defi...