Files
m3y54m_Embedded-Engineering…/site/map.json
T

520 lines
26 KiB
JSON

{
"bands": [
{
"label": "SOFTWARE",
"areas": ["SOFTWARE"],
"clusters": {
"languages": {
"header": "Programming Languages",
"per": 2,
"topics": [
["C", "required"],
["C++", "recommended"],
["Python", "recommended"],
["Assembly", "possible"],
["Rust", "possible"]
]
},
"fundamentals": {
"header": "Programming Fundamentals",
"topics": [
["Algorithms & Data Structures", "required"],
["Design Patterns", "required"],
["State Machines", "required"],
["Memory Management", "required"]
]
},
"debugging": {
"header": "Debugging",
"topics": [
["JTAG / SWD", "required"],
["GDB", "required"],
["OpenOCD", "possible"]
]
},
"sdlc": {
"header": "SDLC Models",
"per": 2,
"topics": [
["Agile / SCRUM", "recommended"],
["V-Model", "recommended"]
]
},
"vcs": {
"header": "Version Control",
"per": 2,
"topics": [
["Git", "required"],
["SVN", "possible"]
]
},
"build": {
"header": "Build System",
"topics": [
["Compilers / GCC", "required"],
["Make / CMake", "required"],
["Bash Scripting", "recommended"],
["Docker", "possible"]
]
},
"testing": {
"header": "Testing",
"topics": [
["TDD & Unit Testing", "required"],
["CI/CD Pipelines", "recommended"],
["SIL / HIL Testing", "possible"],
["Standards & Certifications", "possible"]
]
},
"specialized": {
"caption": "Specializations",
"topics": [
["Embedded Security", "possible"],
["Embedded GUI", "possible"],
["IoT", "possible"],
["Edge AI", "possible"],
["AUTOSAR", "possible"]
]
},
"osBase": {
"topics": [
["Operating System Fundamentals", "recommended"]
]
},
"linux": {
"header": "Embedded Linux",
"per": 2,
"topics": [
["Linux Kernel", "recommended"],
["Device Drivers", "recommended"],
["U-Boot", "possible"],
["Buildroot / Yocto", "possible"],
["Threading / Parallelism", "possible"],
["IPC", "possible"],
["Qt Framework", "possible"]
]
}
}
},
{
"label": "SOFTWARE ∩ HARDWARE",
"areas": ["SOFTWARE", "HARDWARE"],
"clusters": {
"rtos": {
"header": "Real-Time OS",
"per": 2,
"topics": [
["RTOS Basics", "required"],
["FreeRTOS", "recommended"],
["Zephyr", "recommended"],
["QNX", "possible"],
["µC/OS", "possible"],
["RT-Thread", "possible"]
]
},
"mcu": {
"per": 2,
"topics": [
["GPIO", "required"],
["ADC / DAC", "required"],
["Timers / Counters", "required"],
["PWM", "required"],
["Watchdog", "required"],
["Interrupts", "required"],
["DMA", "required"],
["Clock Management", "required"],
["Power Management", "recommended"],
["Bootloader / DFU", "recommended"]
]
},
"bridge": {
"caption": "Hardware-facing software",
"topics": [
["Memory Technologies & File Systems", "recommended"],
["Hardware Simulation / Emulation", "recommended"],
["Sensors & Actuators", "possible"],
["Digital Signal Processing", "possible"],
["Control Theory", "possible"]
]
},
"basic": {
"header": "Basic",
"topics": [
["UART", "required"],
["I2C", "required"],
["SPI", "required"]
]
},
"wireless": {
"header": "Wireless",
"topics": [
["Bluetooth", "recommended"],
["Wi-Fi", "recommended"],
["LoRa", "possible"],
["Zigbee", "possible"],
["Thread", "possible"],
["Matter", "possible"],
["UWB", "possible"]
]
},
"highSpeed": {
"header": "High-Speed",
"topics": [
["Ethernet", "recommended"],
["USB", "recommended"],
["PCIe", "possible"]
]
},
"industrial": {
"header": "Industrial",
"topics": [
["Modbus", "recommended"],
["Profinet", "possible"],
["EtherCAT", "possible"]
]
},
"cellular": {
"header": "Cellular",
"topics": [
["GSM / LTE", "possible"],
["LTE-M / 5G", "possible"],
["NB-IoT", "possible"]
]
},
"network": {
"header": "Network",
"topics": [
["MQTT", "recommended"],
["CoAP", "possible"],
["TCP/IP", "possible"],
["UDP", "possible"]
]
},
"automotive": {
"header": "Automotive",
"topics": [
["CAN", "recommended"],
["LIN", "possible"],
["MOST", "possible"],
["FlexRay", "possible"]
]
},
"display": {
"header": "Display & Camera",
"per": 2,
"topics": [
["MIPI CSI-2", "possible"],
["MIPI DSI", "possible"]
]
}
}
},
{
"label": "HARDWARE",
"areas": ["HARDWARE"],
"clusters": {
"electronics": {
"header": "Electronics",
"per": 2,
"topics": [
["Basic Math & Calculus", "required"],
["Principles of Electric Circuits", "required"],
["Electronics Fundamentals", "required"],
["Digital Design", "required"],
["Computer Architecture", "required"]
]
},
"equipment": {
"header": "Using Test Equipment",
"topics": [
["Multimeter", "required"],
["Logic / Protocol Analyzer", "required"],
["Oscilloscope", "recommended"]
]
},
"prototyping": {
"header": "Prototyping Skills",
"topics": [
["Breadboarding", "recommended"],
["Hardware Design Basics", "recommended"],
["PCB Design / EMC", "recommended"],
["Soldering / Rework", "recommended"]
]
},
"fpga": {
"topics": [
["FPGA Development", "possible"]
]
}
}
},
{
"label": "SOFT SKILLS",
"areas": ["SOFT SKILLS"],
"clusters": {
"soft": {
"per": 3,
"topics": [
["Communication Skills", "required"],
["Problem-Solving Skills & Critical Thinking", "required"],
["Teamwork & Collaborative Abilities", "required"],
["Organizational & Time Management Skills", "required"],
["Being Self-Driven and Independent", "required"],
["Adaptability & Patience", "required"]
]
}
}
}
],
"links": [
["C", "Memory Management", "Pointers, the stack and the heap are managed by hand in C"],
["C++", "Memory Management", "Ownership, RAII and smart pointers decide who frees memory"],
["Rust", "Memory Management", "Ownership and borrowing replace manual memory management"],
["Python", "Memory Management", "Garbage collection; MicroPython has to fit in small RAM"],
["C", "C++", "C++ builds on C, and both are mixed in one firmware project"],
["C", "Compilers / GCC", "The toolchain that turns C code into firmware"],
["C", "Linux Kernel", "The kernel and its drivers are written in C"],
["C", "GDB", "Source-level debugging of C programs"],
["C++", "Design Patterns", "Classic object-oriented patterns are taught in C++"],
["C++", "Qt Framework", "Qt is a C++ framework"],
["Python", "Bash Scripting", "Both automate tooling, tests and build tasks"],
["Python", "SIL / HIL Testing", "Test rigs and HIL benches are often scripted in Python"],
["Python", "Edge AI", "Models are usually trained in Python before deployment"],
["Rust", "Embedded Security", "Memory safety removes a whole class of vulnerabilities"],
["Assembly", "Computer Architecture", "Instructions map directly to registers and the memory model"],
["Assembly", "Compilers / GCC", "Reading compiler output and writing startup code"],
["Assembly", "Interrupts", "Vector tables and context saving are done in assembly"],
["Algorithms & Data Structures", "Memory Management", "The data structure you pick decides memory use and allocation"],
["Algorithms & Data Structures", "Digital Signal Processing", "Filters and transforms are algorithms with tight time and memory budgets"],
["Algorithms & Data Structures", "Problem-Solving Skills & Critical Thinking", "Choosing and breaking down an approach"],
["Design Patterns", "State Machines", "The State pattern; many embedded designs are state machines"],
["State Machines", "Interrupts", "Events and interrupts drive state transitions"],
["State Machines", "RTOS Basics", "RTOS tasks are usually written as event-driven state machines"],
["State Machines", "Digital Design", "Finite-state machines are also the core of sequential logic in hardware"],
["JTAG / SWD", "OpenOCD", "OpenOCD drives JTAG/SWD debug probes"],
["JTAG / SWD", "GDB", "GDB reaches the target through a JTAG/SWD probe"],
["JTAG / SWD", "Bootloader / DFU", "Flashes the first bootloader and recovers bricked boards"],
["OpenOCD", "GDB", "OpenOCD is the GDB server for most microcontrollers"],
["GDB", "Compilers / GCC", "GDB reads the debug information the compiler emits"],
["GDB", "Problem-Solving Skills & Critical Thinking", "Debugging is structured problem solving"],
["Agile / SCRUM", "V-Model", "Two common process models; safety projects often combine them"],
["Agile / SCRUM", "CI/CD Pipelines", "Short iterations rely on automated builds and tests"],
["Agile / SCRUM", "Teamwork & Collaborative Abilities", "Scrum is built around close teamwork"],
["Agile / SCRUM", "Organizational & Time Management Skills", "Sprint planning and prioritising work"],
["V-Model", "Standards & Certifications", "Certified projects follow V-model verification"],
["V-Model", "SIL / HIL Testing", "Integration and system testing on SIL and HIL benches"],
["Git", "SVN", "Both are version control systems; Git is the common choice today"],
["Git", "CI/CD Pipelines", "Pipelines start from commits and pull requests"],
["Git", "Teamwork & Collaborative Abilities", "Branches and code review are how teams share code"],
["Communication Skills", "Teamwork & Collaborative Abilities", "Collaboration depends on clear communication"],
["Compilers / GCC", "Make / CMake", "Build systems drive the compiler and linker"],
["Make / CMake", "CI/CD Pipelines", "Pipelines run the same build commands"],
["Make / CMake", "Buildroot / Yocto", "Buildroot and Yocto are build systems for whole Linux images"],
["Bash Scripting", "CI/CD Pipelines", "Most pipeline steps are shell commands"],
["Bash Scripting", "Operating System Fundamentals", "The shell and processes are core OS concepts"],
["Docker", "CI/CD Pipelines", "Containers give pipelines a reproducible toolchain"],
["Docker", "Buildroot / Yocto", "Yocto builds are commonly run in containers"],
["TDD & Unit Testing", "CI/CD Pipelines", "Tests run automatically on every change"],
["TDD & Unit Testing", "Hardware Simulation / Emulation", "Tests run on a host against simulated hardware"],
["SIL / HIL Testing", "Hardware Simulation / Emulation", "SIL runs the firmware against simulated hardware"],
["SIL / HIL Testing", "CI/CD Pipelines", "HIL rigs can run as pipeline stages"],
["Standards & Certifications", "Embedded Security", "Security standards such as IEC 62443"],
["Standards & Certifications", "AUTOSAR", "Automotive software is developed to ISO 26262"],
["Standards & Certifications", "PCB Design / EMC", "EMC compliance testing is a certification requirement"],
["Embedded Security", "Bootloader / DFU", "Secure boot and signed firmware updates"],
["Embedded Security", "IoT", "Connected devices are exposed to attacks and need secure updates"],
["Embedded Security", "TCP/IP", "TLS runs on top of TCP/IP"],
["Embedded GUI", "Qt Framework", "Qt is a common GUI toolkit on embedded Linux"],
["Embedded GUI", "SPI", "Small displays are often driven over SPI"],
["Embedded GUI", "DMA", "DMA moves frame buffers to the display"],
["IoT", "MQTT", "A common messaging protocol for IoT devices"],
["IoT", "CoAP", "A lightweight request/response protocol for constrained devices"],
["IoT", "Wi-Fi", "A typical uplink for mains-powered devices"],
["IoT", "LoRa", "Long-range, low-power links"],
["IoT", "NB-IoT", "Cellular connectivity for low-power devices"],
["IoT", "Power Management", "Battery-powered nodes need low-power design"],
["Edge AI", "Digital Signal Processing", "Features are extracted from sensor signals before inference"],
["Edge AI", "Sensors & Actuators", "Models run on sensor data"],
["Edge AI", "Power Management", "Inference has to fit a small energy budget"],
["Edge AI", "FPGA Development", "FPGAs are used as inference accelerators"],
["AUTOSAR", "CAN", "AUTOSAR communication stacks run over CAN"],
["AUTOSAR", "Ethernet", "Automotive Ethernet is part of the AUTOSAR stack"],
["AUTOSAR", "RTOS Basics", "AUTOSAR OS is an OSEK-based real-time operating system"],
["Operating System Fundamentals", "RTOS Basics", "Scheduling, tasks and synchronisation carry over"],
["Operating System Fundamentals", "Linux Kernel", "Processes, memory and drivers as implemented in Linux"],
["Operating System Fundamentals", "Threading / Parallelism", "Threads and scheduling basics"],
["Operating System Fundamentals", "Memory Management", "Virtual memory and allocators"],
["Operating System Fundamentals", "Computer Architecture", "MMU, privilege levels and caches"],
["Linux Kernel", "Device Drivers", "Drivers are kernel modules"],
["Linux Kernel", "U-Boot", "U-Boot loads the kernel and the device tree"],
["Linux Kernel", "Buildroot / Yocto", "The kernel is configured and built as part of the image"],
["Linux Kernel", "Memory Technologies & File Systems", "Flash-friendly file systems and block layers"],
["Device Drivers", "I2C", "Linux drivers talk to devices over buses like I2C"],
["Device Drivers", "SPI", "Linux drivers talk to devices over buses like SPI"],
["Device Drivers", "GPIO", "Pins are exposed to drivers through the GPIO subsystem"],
["Device Drivers", "Interrupts", "Drivers handle device interrupts"],
["Device Drivers", "USB", "The USB stack needs host and device drivers"],
["Device Drivers", "PCIe", "PCIe devices need kernel drivers"],
["U-Boot", "Bootloader / DFU", "The same job on Linux boards: initialise hardware and load the OS"],
["U-Boot", "Buildroot / Yocto", "Both build and ship the bootloader with the image"],
["Threading / Parallelism", "IPC", "Threads and processes exchange data through IPC"],
["Threading / Parallelism", "RTOS Basics", "RTOS tasks, mutexes and priorities"],
["IPC", "RTOS Basics", "Queues and semaphores are the RTOS form of IPC"],
["RTOS Basics", "FreeRTOS", "The most common first RTOS"],
["RTOS Basics", "Zephyr", "The same scheduling, synchronisation and timing concepts"],
["RTOS Basics", "QNX", "The same scheduling, synchronisation and timing concepts"],
["RTOS Basics", "µC/OS", "The same scheduling, synchronisation and timing concepts"],
["RTOS Basics", "RT-Thread", "The same scheduling, synchronisation and timing concepts"],
["RTOS Basics", "Interrupts", "ISRs hand work over to tasks"],
["RTOS Basics", "Timers / Counters", "The tick timer and software timers"],
["FreeRTOS", "Memory Management", "FreeRTOS offers several heap allocation schemes"],
["FreeRTOS", "TCP/IP", "FreeRTOS+TCP is its TCP/IP stack"],
["Zephyr", "Bluetooth", "Zephyr ships its own Bluetooth stack"],
["Zephyr", "Thread", "Zephyr integrates OpenThread"],
["QNX", "IPC", "A microkernel built around message passing"],
["QNX", "Standards & Certifications", "Certified for safety-critical use"],
["GPIO", "Interrupts", "Pin edges raise interrupts"],
["GPIO", "PWM", "PWM is a timer-driven GPIO function"],
["GPIO", "Principles of Electric Circuits", "Pull-ups, drive strength and current limits"],
["GPIO", "Breadboarding", "The first experiment: an LED and a button on a breadboard"],
["ADC / DAC", "Sensors & Actuators", "Analog sensors are read through an ADC"],
["ADC / DAC", "DMA", "DMA moves samples without using the CPU"],
["ADC / DAC", "Digital Signal Processing", "Sampling theory and filtering"],
["ADC / DAC", "Timers / Counters", "Timers trigger conversions at a fixed rate"],
["Timers / Counters", "PWM", "PWM is generated by timer hardware"],
["Timers / Counters", "Interrupts", "Timer events raise interrupts"],
["Timers / Counters", "Clock Management", "Timer rates derive from the clock tree"],
["Timers / Counters", "Watchdog", "A watchdog is a special timer"],
["PWM", "Sensors & Actuators", "Drives motors, LEDs and servos"],
["PWM", "Control Theory", "A PID loop outputs a PWM duty cycle"],
["PWM", "Oscilloscope", "Duty cycle and frequency are checked on a scope"],
["Watchdog", "RTOS Basics", "Tasks must check in; a stuck task triggers a reset"],
["Interrupts", "Computer Architecture", "Vector table, priorities and the exception model"],
["DMA", "SPI", "High-throughput transfers without CPU load"],
["DMA", "UART", "Streaming serial data without CPU load"],
["Clock Management", "Power Management", "Clock gating and frequency scaling save power"],
["Clock Management", "UART", "Baud rates derive from the clock"],
["Clock Management", "Oscilloscope", "Checking oscillator and clock output"],
["Power Management", "Interrupts", "Wake-up sources are interrupts"],
["Power Management", "Bluetooth", "BLE is designed around duty cycling"],
["Power Management", "Hardware Design Basics", "Power supply and battery design"],
["Bootloader / DFU", "Memory Technologies & File Systems", "Firmware lives in flash and updates need safe writes"],
["Bootloader / DFU", "USB", "The USB DFU class updates firmware"],
["Memory Technologies & File Systems", "Memory Management", "RAM, flash and EEPROM sizes set the memory budget"],
["Memory Technologies & File Systems", "SPI", "SPI flash and SD cards"],
["Hardware Simulation / Emulation", "Digital Design", "Logic is verified in simulation before hardware exists"],
["Hardware Simulation / Emulation", "FPGA Development", "HDL designs are simulated before synthesis"],
["Hardware Simulation / Emulation", "Principles of Electric Circuits", "Circuits can be simulated (SPICE) before they are built"],
["Sensors & Actuators", "I2C", "Most digital sensors use I2C"],
["Sensors & Actuators", "SPI", "Faster sensors use SPI"],
["Sensors & Actuators", "Digital Signal Processing", "Raw readings are filtered and calibrated"],
["Sensors & Actuators", "Control Theory", "Closed-loop control reads sensors and drives actuators"],
["Digital Signal Processing", "Control Theory", "Filters and controllers share the same math"],
["Digital Signal Processing", "Basic Math & Calculus", "Transforms and filters are applied calculus"],
["Control Theory", "Basic Math & Calculus", "Differential equations and transfer functions"],
["UART", "Logic / Protocol Analyzer", "Inspect serial frames and baud rate"],
["UART", "USB", "USB-to-UART bridges are everywhere"],
["UART", "GSM / LTE", "Modems are controlled with AT commands over UART"],
["I2C", "Logic / Protocol Analyzer", "Decode addresses and ACK/NACK"],
["I2C", "SPI", "Both are on-board buses; learn when to choose which"],
["I2C", "Hardware Design Basics", "Pull-up sizing and bus capacitance"],
["SPI", "Logic / Protocol Analyzer", "Decode the clock, chip select and data lines"],
["Bluetooth", "Wi-Fi", "Both share the 2.4 GHz band, often on one radio chip"],
["Bluetooth", "Matter", "Matter devices are commissioned over Bluetooth LE"],
["Bluetooth", "UWB", "UWB is often paired with Bluetooth for secure ranging"],
["Wi-Fi", "TCP/IP", "Wi-Fi carries IP traffic"],
["Wi-Fi", "Matter", "Matter runs on Wi-Fi and Thread"],
["Thread", "Matter", "Matter runs on Wi-Fi and Thread"],
["Thread", "Zigbee", "Both are mesh networks on IEEE 802.15.4 radios"],
["LoRa", "NB-IoT", "Competing low-power wide-area options"],
["Ethernet", "TCP/IP", "Ethernet is the link layer under TCP/IP"],
["Ethernet", "EtherCAT", "Industrial protocols that run on Ethernet hardware"],
["Ethernet", "Profinet", "Industrial protocols that run on Ethernet hardware"],
["USB", "PCIe", "Both are high-speed serial links with host and device roles"],
["PCIe", "FPGA Development", "FPGAs often connect to hosts over PCIe"],
["Modbus", "UART", "Modbus RTU runs over serial lines such as RS-485"],
["Modbus", "TCP/IP", "Modbus TCP runs over TCP/IP"],
["EtherCAT", "FPGA Development", "EtherCAT slave controllers are often built in FPGAs"],
["GSM / LTE", "LTE-M / 5G", "The same cellular family, newer generations"],
["LTE-M / 5G", "NB-IoT", "Both are LTE-based low-power IoT standards"],
["MQTT", "TCP/IP", "MQTT runs over TCP"],
["MQTT", "CoAP", "Two IoT messaging styles: broker-based and request/response"],
["CoAP", "UDP", "CoAP runs over UDP"],
["TCP/IP", "UDP", "The two main transport protocols"],
["CAN", "LIN", "LIN is the low-cost sub-bus beneath CAN in vehicles"],
["CAN", "FlexRay", "FlexRay adds determinism and bandwidth beyond CAN"],
["CAN", "Logic / Protocol Analyzer", "Decode frames and arbitration"],
["CAN", "Oscilloscope", "Check the differential signal and bus termination"],
["MOST", "CAN", "MOST carries media in a vehicle while CAN carries control"],
["MOST", "Ethernet", "Automotive Ethernet is replacing MOST"],
["MIPI CSI-2", "MIPI DSI", "Camera and display links share the MIPI D-PHY physical layer"],
["MIPI CSI-2", "I2C", "Camera sensors are configured over a control bus such as I2C"],
["MIPI CSI-2", "Device Drivers", "Linux exposes camera sensors through V4L2 drivers"],
["MIPI CSI-2", "Edge AI", "Camera frames are the main input for on-device vision models"],
["MIPI DSI", "Device Drivers", "Linux drives DSI panels through the DRM/KMS subsystem"],
["MIPI DSI", "Embedded GUI", "The display link carries the interface the GUI renders"],
["MIPI DSI", "DMA", "Frame buffers are streamed to the display with DMA"],
["Basic Math & Calculus", "Principles of Electric Circuits", "Circuit analysis uses algebra and calculus"],
["Principles of Electric Circuits", "Electronics Fundamentals", "Components build on circuit laws"],
["Principles of Electric Circuits", "Multimeter", "Verify voltages and currents in real circuits"],
["Electronics Fundamentals", "Digital Design", "Logic gates are built from transistors"],
["Electronics Fundamentals", "Hardware Design Basics", "Choosing components and sizing circuits"],
["Electronics Fundamentals", "Oscilloscope", "Observe how signals change over time"],
["Digital Design", "Computer Architecture", "CPUs are built from digital logic"],
["Digital Design", "FPGA Development", "HDL describes digital logic"],
["Multimeter", "Breadboarding", "Continuity and voltage checks on prototypes"],
["Multimeter", "Soldering / Rework", "Checking for shorts after soldering"],
["Oscilloscope", "Logic / Protocol Analyzer", "Analog view and decoded digital view of the same signals"],
["Oscilloscope", "PCB Design / EMC", "Measuring noise and ringing"],
["Breadboarding", "Hardware Design Basics", "Prototype first, then design the board"],
["Breadboarding", "Soldering / Rework", "From breadboard to soldered prototype"],
["Hardware Design Basics", "PCB Design / EMC", "Schematics become board layout"],
["PCB Design / EMC", "Soldering / Rework", "Boards must allow assembly and repair"]
],
"groups": {
"Operating Systems": ["osBase", "linux", "rtos"],
"Microcontrollers": ["rtos", "mcu"],
"Interfaces & Protocols": ["basic", "wireless", "highSpeed", "industrial", "cellular", "network", "automotive", "display"]
},
"offMap": ["Don't Know Where to Start!", "Appendix-A: Advanced Topics"],
"readme": {
"ADC / DAC": ["ADC", "DAC"],
"Buildroot / Yocto": ["Buildroot", "Yocto"],
"TDD & Unit Testing": ["Test Driven Development (TDD)", "Unit Testing"],
"Threading / Parallelism": ["Multithreading & Parallel Processing"],
"Device Drivers": ["Linux Device Drivers"],
"Real-Time OS": ["Real-Time Operating Systems"],
"Interfaces & Protocols": ["Interfaces, Protocols & Communication Technologies"],
"Basic": ["Basic Protocols"],
"High-Speed": ["High-Speed Protocols"],
"Wireless": ["Wireless Protocols"],
"Industrial": ["Industrial Protocols"],
"Automotive": ["Automotive Protocols"],
"Display & Camera": ["Display & Camera Protocols"],
"Network": ["Network Protocols / Socket Programming"],
"TCP/IP": ["Network Protocols / Socket Programming"],
"UDP": ["Network Protocols / Socket Programming"],
"Cellular": ["Cellular Communication"],
"MQTT": ["CoAP & MQTT"],
"CoAP": ["CoAP & MQTT"],
"LTE-M / 5G": ["LTE-M & NB-IoT"],
"NB-IoT": ["LTE-M & NB-IoT"],
"Basic Math & Calculus": ["Basic Calculus"],
"SDLC Models": ["Software Development Life Cycle (SDLC) Models"],
"Version Control": ["Version Control Systems"],
"AUTOSAR": ["AUTOSAR Architecture"]
}
}