Difference between revisions of "Glossary"

From Miscellany
 
(116 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
''Also see [https://en.wikipedia.org/wiki/List_of_computing_and_IT_abbreviations this list on Wikipedia]''
 +
 
=A=
 
=A=
 
:* ADC
 
:* ADC
Line 6: Line 8:
 
:* AIoT
 
:* AIoT
 
:** AI + Internet of Things (IoT)
 
:** AI + Internet of Things (IoT)
 +
:* ALU
 +
:** Arithmatic Logic Unit
 +
:*** along with control units, and memory caches, they allow GPUs to do larger amounts of mathematical operations than CPUs
 
:* [https://en.wikipedia.org/wiki/ARM_architecture_family ARM]
 
:* [https://en.wikipedia.org/wiki/ARM_architecture_family ARM]
 
:** Advanced RISC Machine
 
:** Advanced RISC Machine
 +
:* [https://support.apple.com/guide/mac-help/get-notifications-mchl2fb1258f/mac ANCS]
 +
:** Apple Notification Center Service
 +
:*** a proprietary service for Apple devices
 +
:* [https://en.wikipedia.org/wiki/API API]
 +
:** application programming interface
 +
:** a way for two or more computer programs to communicate with each other.
 +
:* ASIC
 +
:** Application-specific integrated circuit
 +
:* ASR
 +
:** Automatic Speech Recognition
 +
 +
=B=
 +
:* BLE
 +
:** Bluetooth Low Power
  
 
=C=
 
=C=
 +
:* [http://www.practicalcryptography.com/miscellaneous/machine-learning/tutorial-cepstrum-and-lpccs/ Cepstrum]
 +
:** a sequence of numbers that characterize a frame of speech, in an ML or cryptography context
 +
:* CL
 +
:** Continuous Learning
 +
:*** a subfield of [[#A|AI]] & [[#M|ML]] that enables online, serverless adaptation
 +
:* [https://en.wikipedia.org/wiki/Convolutional_neural_network CNN]
 +
:** In the context of [[#A|AI]], CNN is an acronym for Convolutional Neural Network, a class of artificial neural network, most commonly used to analyze visual imagery.
 +
:* CPU
 +
:** Computing Processing Unit
 +
:* CQL
 +
:** Conservative Q-Learning (an AI concept)
 +
:*** Q-Learning is an [[#R|RL]] technique that allows RL models to learn an execution strategy by figuring out a Q-function (Q comes from Quality) that it learns as it interacts with the environment. See [https://medium.com/p/680450c472c this article].
 
:* CS
 
:* CS
 
:** Chip Select connection
 
:** Chip Select connection
Line 16: Line 47:
 
:* DAC
 
:* DAC
 
:** Digital-to-Analog Converter
 
:** Digital-to-Analog Converter
 +
:* [https://en.wikipedia.org/wiki/Directed_acyclic_graph DAG]
 +
:** Directed Acyclic Graph
 +
:*** a directed graph with no directed cycles
 +
:*** It consists of vertices and edges (also called arcs), with each edge directed from one vertex to another, such that following those directions will never form a closed loop.
 +
:::::  [[File:Tred-G.svg|Tred-G|150px]]
 
:* DAP
 
:* DAP
 
:** Debug Access Point
 
:** Debug Access Point
 
:* [https://daplink.io/ DAPLink]
 
:* [https://daplink.io/ DAPLink]
 
:** Arm Mbed DAPLink is an open-source software project that enables programming and debugging application software on running on Arm Cortex CPUs. Commonly referred to as interface firmware, DAPLink runs on a secondary MCU that is attached to the SWD or JTAG port of the application MCU. This configuration is found on nearly all development boards. It creates a bridge between your development computer and the CPU debug access port. DAPLink enables developers with drag-and-drop programming, a serial port and CMSIS-DAP based debugging.
 
:** Arm Mbed DAPLink is an open-source software project that enables programming and debugging application software on running on Arm Cortex CPUs. Commonly referred to as interface firmware, DAPLink runs on a secondary MCU that is attached to the SWD or JTAG port of the application MCU. This configuration is found on nearly all development boards. It creates a bridge between your development computer and the CPU debug access port. DAPLink enables developers with drag-and-drop programming, a serial port and CMSIS-DAP based debugging.
 +
:* DCT
 +
:** Discrete Cosine Transform
 +
:* [https://en.wikipedia.org/wiki/Dual_in-line_package DIP]
 +
:** Dual In-line Package
 +
:*** an electronic component package
 +
:* DL
 +
:** Deep Learning
 +
:*** a subfield of [[#A|AI]]
 +
:* [https://en.wikipedia.org/wiki/DLNA DLNA]
 +
:** Digital Living Network Alliance (DLNA)
 +
:*** a set of interoperability standards for sharing home digital media among multimedia devices. It allows users to share or stream stored media files to various certified devices on the same network like PCs, smartphones, TV sets, game consoles, stereo systems, and NASs.
 +
:* DNN
 +
:** Dense Neural Network
 +
:*** a concept used in [[#M|ML (Machine Learning)]]
 +
:* [https://en.wikipedia.org/wiki/Digital_signal_processor DSP]
 +
:** Digital Signal Processor
 +
:***  a specialized microprocessor chip
 +
:* [https://en.wikipedia.org/wiki/Docker_(software) Docker]
 +
:**  a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers.
 +
:* [https://en.wikipedia.org/wiki/Dual-tone_multi-frequency_signaling DTMF]
 +
:** Dual Tone Multiple Frequency
 +
:*** "...the voice-frequency band over telephone lines between telephone equipment and other communications devices and switching centers." -- Wikipedia
 
:* duty cycle ratio
 
:* duty cycle ratio
 
:** Because power is only applied [to digital devices] when the duty cycle is on, the average power delivered to the device is the duty cycle ratio multiplied by the "on" time.
 
:** Because power is only applied [to digital devices] when the duty cycle is on, the average power delivered to the device is the duty cycle ratio multiplied by the "on" time.
 +
 +
=E=
 +
:* [https://www.ibm.com/cloud/what-is-edge-computing Edge computing]
 +
:** Edge computing is a distributed computing framework that brings applications closer to data sources such as IoT devices or local edge servers.
 +
:* [https://en.wikipedia.org/wiki/MultiMediaCard#eMMC eMMC]
 +
:** Embedded MultiMedia Card
 +
:*** a solid-state storage device, IC package for use in circuit boards as an embedded non-volatile memory system.
 +
:* [https://en.wikipedia.org/wiki/Electrostatic_discharge ESD]
 +
:** Electro-Static Discharge
  
 
=F=
 
=F=
 +
:*[https://en.wikipedia.org/wiki/Fast_Fourier_transform FFT]
 +
:** Fast Fourier Transform
 +
:*** an algorithm that computes the discrete Fourier transform of a sequence
 
:* FIFO
 
:* FIFO
 
:** First In/First Out
 
:** First In/First Out
 +
:* FPU
 +
:** Floating-Point Unit, essentially a math co-processor
  
 
=G=
 
=G=
 +
:* [https://developers.google.com/machine-learning/gan GANs]
 +
:** Generative Adversarial Networks
 +
:*** generative models: they create new data instances that resemble training data
 
:* GPIO
 
:* GPIO
 
:** General Purpose Input-Output
 
:** General Purpose Input-Output
 +
:* GPU
 +
:* Graphical Processing Unit
 +
 +
=H=
 +
:* HAR
 +
:** Human Activity Recognition
 +
:*** a Machine Learning process
  
 
=I=
 
=I=
 
:* [https://en.wikipedia.org/wiki/I%C2%B2C I²C]
 
:* [https://en.wikipedia.org/wiki/I%C2%B2C I²C]
:** Inter-Integrated Circuit
+
:** Inter-Integrated Circuit, a Phillips-trademarked name
 +
:*** also see TWI
 
:*** a hardware communications protocol
 
:*** a hardware communications protocol
 +
:* IC
 +
:** Integrated Circuit
 +
:*** a.k.a., "chip"
 
:* [https://en.wikipedia.org/wiki/Integrated_development_environment IDE]
 
:* [https://en.wikipedia.org/wiki/Integrated_development_environment IDE]
 
:** Integrated Development Environment
 
:** Integrated Development Environment
 +
:* [https://en.wikipedia.org/wiki/Inertial_measurement_unit IMU]
 +
:** Inertial Measurement Unit
 +
:* INO file
 +
:** Arduino (IDE) file format extension
 +
:* IoT
 +
:** Internet of Things
 
:* IRQ
 
:* IRQ
 
:** Interrupt Request
 
:** Interrupt Request
 +
 +
=J=
 +
:* [https://www.w3schools.com/whatis/whatis_json.asp JSON]
 +
:** a language-independent data format
 +
 +
=K=
 +
:* [https://keras.io keras]
 +
:** a Python API (framework) for humans designed for implementing machine learning (deep learning)
 +
 +
=L=
 +
:* [https://www.geeksforgeeks.com/understanding-of-lstm-networks LSTM]
 +
:** Long-Short Term Memory
 +
:*** a type of Machine (or Deep) Learning model or network
  
 
=M=
 
=M=
 +
:* [https://csa-iot.org/all-solutions/matter/ Matter ''connectivity standard'']
 +
:** In the context of computer standards, Matter is "an open-source connectivity standard for smart home and Internet of things devices, that promises to make smart devices work with each other regardless of which company manufactures them, that smart home devices will continue to be usable on your home network even when no connection to the internet is available, and that communications with smart home devices are secure." --[https://en.wikipedia.org/wiki/Matter_(standard) Wikipedia]
 +
:* [https://en.wikipedia.org/wiki/Mel-frequency_cepstrum MFCC]
 +
:** [http://practicalcryptography.com/miscellaneous/machine-learning/guide-mel-frequency-cepstral-coefficients-mfccs/ Mel Frequency Capstral Coefficient]
 +
:*** In sound processing, the mel-frequency cepstrum (MFC) is a representation of the short-term power spectrum of a sound, based on a linear cosine transform of a log power spectrum on a nonlinear mel scale of frequency. Mel-frequency cepstral coefficients (MFCCs) are coefficients that collectively make up an MFC.[1] They are derived from a type of cepstral representation of the audio clip (a nonlinear "spectrum-of-a-spectrum").
 
:* [https://en.wikipedia.org/wiki/Microcontroller MCU]
 
:* [https://en.wikipedia.org/wiki/Microcontroller MCU]
 
:** MicroController Unit
 
:** MicroController Unit
 +
:* [https://en.wikipedia.org/wiki/Mel_scale Mel Scale]
 +
:** a perceptual scale of pitches judged by listeners to be equal in distance from one another. The reference point between this scale and normal frequency measurement is defined by assigning a perceptual pitch of 1000 mels to a 1000 Hz tone, 40 dB above the listener's threshold.
 
:* [https://www.techtarget.com/iotagenda/definition/microcontroller microcontroller]
 
:* [https://www.techtarget.com/iotagenda/definition/microcontroller microcontroller]
 
:** a compact integrated circuit designed to govern a specific operation in an embedded system. A typical microcontroller includes a processor, memory and input/output (I/O) peripherals on a single chip.
 
:** a compact integrated circuit designed to govern a specific operation in an embedded system. A typical microcontroller includes a processor, memory and input/output (I/O) peripherals on a single chip.
Line 48: Line 160:
 
:** Master In/Slave Out
 
:** Master In/Slave Out
 
:** a data transmission connection protocol
 
:** a data transmission connection protocol
 +
:* ML
 +
:** Machine Learning
 +
:*** also see [[#T|TinyML]], [[#A|AI]], and [[#D|Deep Learning]]
 +
:* [https://en.wikipedia.org/wiki/Multilayer_perceptron MLP]
 +
:** MultiLayer Perceptron
 +
:*** a fully connected class of feedforward artificial neural network (ANN). The term MLP is used ambiguously, sometimes loosely to mean any feedforward ANN, sometimes strictly to refer to networks composed of multiple layers of perceptrons (with threshold activation)
 +
:* [https://medium.com/analytics-vidhya/machine-learning-paradigms-4152d896e081 Machine Learning Paradigms]
 +
:** the ways machines learn, whether supervised, unsupervised, semi-supervised or reinforcement learning, among others
 +
:*** examples of MLPs include [https://en.wikipedia.org/w/index.php?go=Go&search=machine+learning+paradigm some listed in these search results on Wikipedia]
 
:* MOSI
 
:* MOSI
 
:** Master Out/Slave In
 
:** Master Out/Slave In
Line 58: Line 179:
 
:* microfs
 
:* microfs
 
:** tool that uses the USB serial connection for working with the filesystem in MicroPython
 
:** tool that uses the USB serial connection for working with the filesystem in MicroPython
 +
 +
=N=
 +
:* NAS
 +
:** Network Accessible Storage
 +
:*** good for file portability across Operating Systems
 +
:* NLP
 +
:** Natural Language Processing
 +
:* [https://en.wikipedia.org/wiki/Node-RED Node-RED]
 +
:** a flow-based, low-code development tool for visual programming developed originally by IBM for wiring together hardware devices, APIs and online services as part of the Internet of Things.
 +
:** Node-RED provides a web browser-based flow editor, which can be used to create JavaScript functions. Elements of applications can be saved or shared for re-use. The runtime is built on Node.js. The flows created in Node-RED are stored using JSON. Since version 0.14, MQTT nodes can make properly configured TLS connections.
 +
:* [https://en.wikipedia.org/wiki/NodeMCU NodeMCU]
 +
:** a low-cost [[#O|open source]] [[#I|IoT]] platform, for [[ESP32_%26_ESP8266|ESP8266 & ESP32]] from [https://www.espressif.com Espressif]
 +
:*** Strictly speaking, the term "NodeMCU" refers to the firmware rather than the associated development kits.
 +
:* NPU
 +
:** Network Processing Unit
  
 
=O=
 
=O=
 +
:* ODL
 +
:** On Device Learning
 +
:*** a technique used in [[#T|TinyML]]
 +
:* ODM
 +
:** [https://www.seeedstudio.com/fusion-odm-service.html?sku=110061361 Original Design Manufacturing]
 +
:*** A fabrication service for developers
 +
:* [https://onnx.ai/ ONNX]
 +
:** Open Neural Network Exchange
 +
:*** open standard for machine learning interoperability
 +
:*** ONNX is an open format built to represent machine learning models
 
:* open drain
 
:* open drain
 
:** means the communications signal is pulled high by default, and devices change the signal by pulling low
 
:** means the communications signal is pulled high by default, and devices change the signal by pulling low
 +
:* [https://en.wikipedia.org/wiki/Open_source open source]
 +
:** source code that is made freely available for possible modification and redistribution.
 +
:*** Products include permission to use the source code, design documents, or content of the product.
  
 
=P=
 
=P=
 +
:* [https://ai.googleblog.com/2022/04/pathways-language-model-palm-scaling-to.html PaLM architecture]
 +
:** Pathways Language Model
 +
:*** in the context of AI & ML, a 540-billion parameter, dense decoder-only Transformer model trained with the Pathways system
 
:* PDM
 
:* PDM
 
:** Pulse Density Modulation
 
:** Pulse Density Modulation
 
:*** a method of representing an analog signal with binary (on/off) data
 
:*** a method of representing an analog signal with binary (on/off) data
 +
:* [https://en.wikipedia.org/wiki/Passive_infrared_sensor PIR]
 +
:** Passive InfraRed sensor
 +
:* [https://en.wikipedia.org/wiki/Programmable_logic_controller PLC]
 +
:** A PLC is an industrial microprocessor-based controller with programmable memory used to store program instructions and various functions.
 +
:* PSRAM
 +
:** Pseudo-Static Read-Only Memory
 +
:***  "A random-access memory whose internal structure is a dynamic memory with refresh control signals generated internally, in the standby mode, so that it can mimic the function of a static memory." ''from https://www.jedec.org/''
 
:* PWM
 
:* PWM
 
:** Pulse Width Modulation
 
:** Pulse Width Modulation
Line 74: Line 233:
 
:* QoS
 
:* QoS
 
:** Quality of Service
 
:** Quality of Service
 +
:* [https://en.wikipedia.org/wiki/Serial_Peripheral_Interface#Related_terms QSPI]
 +
:** Queued Serial Peripheral Interface
 +
:*** a type of SPI controller that uses a data queue to transfer data across the SPI bus
  
 
=R=
 
=R=
 +
:* [https://circuitdigest.com/article/relay-working-types-operation-applications Relay]
 +
:** A Relay is an electromechanical device that can be used to make or break an electrical connection.
 +
:*** It consists of a flexible moving mechanical part which can be controlled electronically through an electromagnet. Basically, a relay is just like a mechanical switch but you can control it with an electronic signal instead of manually turning it on or off.
 
:* REPL
 
:* REPL
 
:** Read, Evaluate, Print,Loop
 
:** Read, Evaluate, Print,Loop
 
:*** This is the three-chevron prompt (>>>) in Python and MicroPython where you type commands interactively.
 
:*** This is the three-chevron prompt (>>>) in Python and MicroPython where you type commands interactively.
 +
:*** a simple, interactive programming environment that takes single user inputs (i.e., single expressions), evaluates them, and returns the result to the user
 +
:* RL
 +
:** In the context of AI, RL is the acronym for Reinforcement Learning. It is based on trial-and-error learning.
 +
:* [https://github.com/lucidrains/PaLM-rlhf-pytorch RLHF]
 +
:** Reinforcement Learning with Human Feedback
 +
:*** implemented on [[#P|PaLM architecture]], an open-source implementation of AI like ChatGPT, but more generalized
 +
:* [https://colab.research.google.com/github/keras-team/keras-io/blob/master/guides/ipynb/working_with_rnns.ipynb RNN]
 +
:** Recurrent Neural Network
 +
:*** a class of neural networks that is powerful for modeling sequence data such as time series or natural language
 +
:* RTC
 +
:** Real Time Clock
 
:* RX
 
:* RX
 
:** Receive, or Receiving Port
 
:** Receive, or Receiving Port
Line 87: Line 263:
 
:* SCL
 
:* SCL
 
:** Clock signal used by I²C protocol
 
:** Clock signal used by I²C protocol
 +
:* SCK
 +
:** Serial Clock
 
:* SCLK
 
:* SCLK
 
:** Serial CLocK
 
:** Serial CLocK
 
:* SDA
 
:* SDA
 
:** Data signal used by I²C protocol
 
:** Data signal used by I²C protocol
 +
:* [https://en.wikipedia.org/wiki/Surface-mount_technology SMD]
 +
:** Surface Mount Device
 +
:*** an electronic component package
 +
:* [https://en.wikipedia.org/wiki/Switched-mode_power_supply SMPS]
 +
:** Switched-Mode Power Supply
 +
:*** an electronic power supply that incorporates a switching regulator to convert electrical power efficiently.
 +
:* [https://en.wikipedia.org/wiki/Spectrogram Spectrogram]
 +
:** a visual representation of the spectrum of frequencies of a signal as it varies with time.
 
:* SPI
 
:* SPI
 
:** Serial Peripheral Interface
 
:** Serial Peripheral Interface
 +
:* [https://en.wikipedia.org/wiki/STM32 STM32]
 +
:** a family of 32-bit microcontroller integrated circuits by [https://www.st.com/ STMicroelectronics]
  
 
=T=
 
=T=
 +
:* [https://en.wikipedia.org/wiki/TensorFlow TensorFlow]
 +
:** a free, open-source Python-based software library for machine learning and artificial intelligence
 +
:** It has a particular focus on training and inference of deep neural networks.
 +
:* [https://www.tensorflow.org/lite TensorFlow Lite]
 +
:** <q>a mobile library for deploying [machine learning] models on mobile, microcontrollers and other edge devices.</q>
 +
:* [https://en.wikipedia.org/wiki/Tensor_Processing_Unit Cloud TPU]
 +
:** Tensor Processing Unit in the cloud (i.e., in a remote data center)
 +
:** A TPU is an AI accelerator application-specific integrated circuit (ASIC) developed by Google for neural network machine learning, using Google's TensorFlow software.
 +
:* [https://en.wikipedia.org/wiki/TensorFlow#TensorFlow_Lite Tensorflow Lite Micro]
 +
:** Tensorflow Lite for Microcontrollers
 +
:* TinyML
 +
:** Tiny Machine Learning
 +
:*** Embedded ML designed for use on small devices, such as MCUs
 +
:* TFLM
 +
:** TensorFlow Lite for Microcontrollers
 +
:* [https://en.wikipedia.org/wiki/Volatile_organic_compound#Indoor_VOCs tVOCs]
 +
:** total VOCs
 +
:*** VOCs, or "Volatile Organic Compounds" include some that are commonly found indoors. These are described as "total VOCs" or "tVOCs", which under some circumstances can be as high as five times the outdoor concentrations.
 +
:* TWI
 +
:** Two-Wire Interface
 +
:*** an open-source description of the I&sup2;C protocol
 
:* TX
 
:* TX
 
:** Transmit, or Transmitting Port
 
:** Transmit, or Transmitting Port
Line 101: Line 310:
 
:* UART
 
:* UART
 
:** Universal Asynchronous Receiver/Transmitter
 
:** Universal Asynchronous Receiver/Transmitter
 +
:* UPnP
 +
:** Universal Plug 'n' Play
 +
:*** Deprecated as a security risk, but if properly configured is very useful
 
:* USB
 
:* USB
 
:** Universal Serial Bus
 
:** Universal Serial Bus
 +
 +
=V=
 +
:* [https://www.tensorflow.org/tutorials/generative/cvae VAE]
 +
:** Variational Autoencoder
 +
:*** a probabilistic take on the autoencoder, a model which takes high dimensional input data and compresses it into a smaller representation
  
 
=W=
 
=W=
Line 108: Line 325:
 
:* WebREPL
 
:* WebREPL
 
:** Browser-based REPL used to communicate with ESP8266/ESP32 boards via local Wifi
 
:** Browser-based REPL used to communicate with ESP8266/ESP32 boards via local Wifi
 +
 +
=X=
 +
:* [https://wiki.st.com/stm32mcu/wiki/AI:X-CUBE-AI_documentation X-Cube-AI]
 +
:** <q>X-CUBE-AI is an STM32Cube Expansion Package, which is part of the STM32Cube.AI ecosystem. It extends STM32CubeMX capabilities with automatic conversion of pretrained artificial intelligence algorithms, including neural network and classical machine learning models. It integrates also a generated optimized library into the user's project.</q>
 +
 +
=Y=
 +
:* [https://en.wikipedia.org/wiki/YAML YAML]
 +
:** Yet Another Markup Language
 +
:** a human-readable data serialization language. It is commonly used for configuration files and in applications where data is being stored or transmitted.

Latest revision as of 15:12, 27 February 2024

Also see this list on Wikipedia

A

  • ADC
    • Analog-to-Digital Converter
  • AI
    • Artificial Intelligence
  • AIoT
    • AI + Internet of Things (IoT)
  • ALU
    • Arithmatic Logic Unit
      • along with control units, and memory caches, they allow GPUs to do larger amounts of mathematical operations than CPUs
  • ARM
    • Advanced RISC Machine
  • ANCS
    • Apple Notification Center Service
      • a proprietary service for Apple devices
  • API
    • application programming interface
    • a way for two or more computer programs to communicate with each other.
  • ASIC
    • Application-specific integrated circuit
  • ASR
    • Automatic Speech Recognition

B

  • BLE
    • Bluetooth Low Power

C

  • Cepstrum
    • a sequence of numbers that characterize a frame of speech, in an ML or cryptography context
  • CL
    • Continuous Learning
      • a subfield of AI & ML that enables online, serverless adaptation
  • CNN
    • In the context of AI, CNN is an acronym for Convolutional Neural Network, a class of artificial neural network, most commonly used to analyze visual imagery.
  • CPU
    • Computing Processing Unit
  • CQL
    • Conservative Q-Learning (an AI concept)
      • Q-Learning is an RL technique that allows RL models to learn an execution strategy by figuring out a Q-function (Q comes from Quality) that it learns as it interacts with the environment. See this article.
  • CS
    • Chip Select connection

D

  • DAC
    • Digital-to-Analog Converter
  • DAG
    • Directed Acyclic Graph
      • a directed graph with no directed cycles
      • It consists of vertices and edges (also called arcs), with each edge directed from one vertex to another, such that following those directions will never form a closed loop.
Tred-G
  • DAP
    • Debug Access Point
  • DAPLink
    • Arm Mbed DAPLink is an open-source software project that enables programming and debugging application software on running on Arm Cortex CPUs. Commonly referred to as interface firmware, DAPLink runs on a secondary MCU that is attached to the SWD or JTAG port of the application MCU. This configuration is found on nearly all development boards. It creates a bridge between your development computer and the CPU debug access port. DAPLink enables developers with drag-and-drop programming, a serial port and CMSIS-DAP based debugging.
  • DCT
    • Discrete Cosine Transform
  • DIP
    • Dual In-line Package
      • an electronic component package
  • DL
    • Deep Learning
      • a subfield of AI
  • DLNA
    • Digital Living Network Alliance (DLNA)
      • a set of interoperability standards for sharing home digital media among multimedia devices. It allows users to share or stream stored media files to various certified devices on the same network like PCs, smartphones, TV sets, game consoles, stereo systems, and NASs.
  • DNN
  • DSP
    • Digital Signal Processor
      • a specialized microprocessor chip
  • Docker
    • a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers.
  • DTMF
    • Dual Tone Multiple Frequency
      • "...the voice-frequency band over telephone lines between telephone equipment and other communications devices and switching centers." -- Wikipedia
  • duty cycle ratio
    • Because power is only applied [to digital devices] when the duty cycle is on, the average power delivered to the device is the duty cycle ratio multiplied by the "on" time.

E

  • Edge computing
    • Edge computing is a distributed computing framework that brings applications closer to data sources such as IoT devices or local edge servers.
  • eMMC
    • Embedded MultiMedia Card
      • a solid-state storage device, IC package for use in circuit boards as an embedded non-volatile memory system.
  • ESD
    • Electro-Static Discharge

F

  • FFT
    • Fast Fourier Transform
      • an algorithm that computes the discrete Fourier transform of a sequence
  • FIFO
    • First In/First Out
  • FPU
    • Floating-Point Unit, essentially a math co-processor

G

  • GANs
    • Generative Adversarial Networks
      • generative models: they create new data instances that resemble training data
  • GPIO
    • General Purpose Input-Output
  • GPU
  • Graphical Processing Unit

H

  • HAR
    • Human Activity Recognition
      • a Machine Learning process

I

  • I²C
    • Inter-Integrated Circuit, a Phillips-trademarked name
      • also see TWI
      • a hardware communications protocol
  • IC
    • Integrated Circuit
      • a.k.a., "chip"
  • IDE
    • Integrated Development Environment
  • IMU
    • Inertial Measurement Unit
  • INO file
    • Arduino (IDE) file format extension
  • IoT
    • Internet of Things
  • IRQ
    • Interrupt Request

J

  • JSON
    • a language-independent data format

K

  • keras
    • a Python API (framework) for humans designed for implementing machine learning (deep learning)

L

  • LSTM
    • Long-Short Term Memory
      • a type of Machine (or Deep) Learning model or network

M

  • Matter connectivity standard
    • In the context of computer standards, Matter is "an open-source connectivity standard for smart home and Internet of things devices, that promises to make smart devices work with each other regardless of which company manufactures them, that smart home devices will continue to be usable on your home network even when no connection to the internet is available, and that communications with smart home devices are secure." --Wikipedia
  • MFCC
    • Mel Frequency Capstral Coefficient
      • In sound processing, the mel-frequency cepstrum (MFC) is a representation of the short-term power spectrum of a sound, based on a linear cosine transform of a log power spectrum on a nonlinear mel scale of frequency. Mel-frequency cepstral coefficients (MFCCs) are coefficients that collectively make up an MFC.[1] They are derived from a type of cepstral representation of the audio clip (a nonlinear "spectrum-of-a-spectrum").
  • MCU
    • MicroController Unit
  • Mel Scale
    • a perceptual scale of pitches judged by listeners to be equal in distance from one another. The reference point between this scale and normal frequency measurement is defined by assigning a perceptual pitch of 1000 mels to a 1000 Hz tone, 40 dB above the listener's threshold.
  • microcontroller
    • a compact integrated circuit designed to govern a specific operation in an embedded system. A typical microcontroller includes a processor, memory and input/output (I/O) peripherals on a single chip.
  • MISO
    • Master In/Slave Out
    • a data transmission connection protocol
  • ML
  • MLP
    • MultiLayer Perceptron
      • a fully connected class of feedforward artificial neural network (ANN). The term MLP is used ambiguously, sometimes loosely to mean any feedforward ANN, sometimes strictly to refer to networks composed of multiple layers of perceptrons (with threshold activation)
  • Machine Learning Paradigms
  • MOSI
    • Master Out/Slave In
      • a data transmission connection protocol
  • Mosquitto
    • a cross-platform, open-source MQTT broker (central server)
  • MQTT
    • Message Queue Telemetry Transport
      • a lightweight publish/subscribe messaging protocol, useful for IoT projects
  • microfs
    • tool that uses the USB serial connection for working with the filesystem in MicroPython

N

  • NAS
    • Network Accessible Storage
      • good for file portability across Operating Systems
  • NLP
    • Natural Language Processing
  • Node-RED
    • a flow-based, low-code development tool for visual programming developed originally by IBM for wiring together hardware devices, APIs and online services as part of the Internet of Things.
    • Node-RED provides a web browser-based flow editor, which can be used to create JavaScript functions. Elements of applications can be saved or shared for re-use. The runtime is built on Node.js. The flows created in Node-RED are stored using JSON. Since version 0.14, MQTT nodes can make properly configured TLS connections.
  • NodeMCU
  • NPU
    • Network Processing Unit

O

  • ODL
    • On Device Learning
  • ODM
  • ONNX
    • Open Neural Network Exchange
      • open standard for machine learning interoperability
      • ONNX is an open format built to represent machine learning models
  • open drain
    • means the communications signal is pulled high by default, and devices change the signal by pulling low
  • open source
    • source code that is made freely available for possible modification and redistribution.
      • Products include permission to use the source code, design documents, or content of the product.

P

  • PaLM architecture
    • Pathways Language Model
      • in the context of AI & ML, a 540-billion parameter, dense decoder-only Transformer model trained with the Pathways system
  • PDM
    • Pulse Density Modulation
      • a method of representing an analog signal with binary (on/off) data
  • PIR
    • Passive InfraRed sensor
  • PLC
    • A PLC is an industrial microprocessor-based controller with programmable memory used to store program instructions and various functions.
  • PSRAM
    • Pseudo-Static Read-Only Memory
      • "A random-access memory whose internal structure is a dynamic memory with refresh control signals generated internally, in the standby mode, so that it can mimic the function of a static memory." from https://www.jedec.org/
  • PWM
    • Pulse Width Modulation
      • another method of representing an analog signal, to control the average power delivered, e.g. using a potentiometer

Q

  • QoS
    • Quality of Service
  • QSPI
    • Queued Serial Peripheral Interface
      • a type of SPI controller that uses a data queue to transfer data across the SPI bus

R

  • Relay
    • A Relay is an electromechanical device that can be used to make or break an electrical connection.
      • It consists of a flexible moving mechanical part which can be controlled electronically through an electromagnet. Basically, a relay is just like a mechanical switch but you can control it with an electronic signal instead of manually turning it on or off.
  • REPL
    • Read, Evaluate, Print,Loop
      • This is the three-chevron prompt (>>>) in Python and MicroPython where you type commands interactively.
      • a simple, interactive programming environment that takes single user inputs (i.e., single expressions), evaluates them, and returns the result to the user
  • RL
    • In the context of AI, RL is the acronym for Reinforcement Learning. It is based on trial-and-error learning.
  • RLHF
    • Reinforcement Learning with Human Feedback
      • implemented on PaLM architecture, an open-source implementation of AI like ChatGPT, but more generalized
  • RNN
    • Recurrent Neural Network
      • a class of neural networks that is powerful for modeling sequence data such as time series or natural language
  • RTC
    • Real Time Clock
  • RX
    • Receive, or Receiving Port

S

  • SBC
  • SCL
    • Clock signal used by I²C protocol
  • SCK
    • Serial Clock
  • SCLK
    • Serial CLocK
  • SDA
    • Data signal used by I²C protocol
  • SMD
    • Surface Mount Device
      • an electronic component package
  • SMPS
    • Switched-Mode Power Supply
      • an electronic power supply that incorporates a switching regulator to convert electrical power efficiently.
  • Spectrogram
    • a visual representation of the spectrum of frequencies of a signal as it varies with time.
  • SPI
    • Serial Peripheral Interface
  • STM32

T

  • TensorFlow
    • a free, open-source Python-based software library for machine learning and artificial intelligence
    • It has a particular focus on training and inference of deep neural networks.
  • TensorFlow Lite
    • a mobile library for deploying [machine learning] models on mobile, microcontrollers and other edge devices.
  • Cloud TPU
    • Tensor Processing Unit in the cloud (i.e., in a remote data center)
    • A TPU is an AI accelerator application-specific integrated circuit (ASIC) developed by Google for neural network machine learning, using Google's TensorFlow software.
  • Tensorflow Lite Micro
    • Tensorflow Lite for Microcontrollers
  • TinyML
    • Tiny Machine Learning
      • Embedded ML designed for use on small devices, such as MCUs
  • TFLM
    • TensorFlow Lite for Microcontrollers
  • tVOCs
    • total VOCs
      • VOCs, or "Volatile Organic Compounds" include some that are commonly found indoors. These are described as "total VOCs" or "tVOCs", which under some circumstances can be as high as five times the outdoor concentrations.
  • TWI
    • Two-Wire Interface
      • an open-source description of the I²C protocol
  • TX
    • Transmit, or Transmitting Port

U

  • UART
    • Universal Asynchronous Receiver/Transmitter
  • UPnP
    • Universal Plug 'n' Play
      • Deprecated as a security risk, but if properly configured is very useful
  • USB
    • Universal Serial Bus

V

  • VAE
    • Variational Autoencoder
      • a probabilistic take on the autoencoder, a model which takes high dimensional input data and compresses it into a smaller representation

W

  • WebREPL
    • Browser-based REPL used to communicate with ESP8266/ESP32 boards via local Wifi

X

  • X-Cube-AI
    • X-CUBE-AI is an STM32Cube Expansion Package, which is part of the STM32Cube.AI ecosystem. It extends STM32CubeMX capabilities with automatic conversion of pretrained artificial intelligence algorithms, including neural network and classical machine learning models. It integrates also a generated optimized library into the user's project.

Y

  • YAML
    • Yet Another Markup Language
    • a human-readable data serialization language. It is commonly used for configuration files and in applications where data is being stored or transmitted.