gcc “Multiple definition”, “first defined here” errors

Options for Code Generation Conventions

-fcommon
In C code, this option controls the placement of global variables defined without an initializer, known as tentative definitions in the C standard. Tentative definitions are distinct from declarations of a variable with the extern keyword, which do not allocate storage.

The default is -fno-common, which specifies that the compiler places uninitialized global variables in the BSS section of the object file. This inhibits the merging of tentative definitions by the linker so you get a multiple-definition error if the same variable is accidentally defined in more than one compilation unit.

The -fcommon places uninitialized global variables in a common block. This allows the linker to resolve all tentative definitions of the same variable in different compilation units to the same object, or to a non-tentative definition. This behavior is inconsistent with C++, and on many targets implies a speed and code size penalty on global variable references. It is mainly useful to enable legacy code to link without errors.

Debugging QThread in Python

  • PySide6
  • PyQt6

PyCharm

PyCharm not stopping/showing PySide6 threads!!!, 07.02.2021
Debugger fails to start with “module ‘numpy.core’ has no attribute ‘numerictypes’ ” error if PyQT compatibility is set to “PySide2” or Auto, 30.09.2021

vscode

Support pyside6 (without frame-eval mode) #709
QT5 Threads not captured in the debugger via VSCode #428
when use QThread Debug PyQt app, breakpoint not work,while wing IDE can debug #176
Breakpoints not working with QThread/PySide2 #304
QThread debugging regression after version 1.1.0 #526

Blaues Licht (Blue Protect, Blaulichtfilter)

Zeiss

Wie schädlich ist blaues Licht für die Augen? – Fakten, die Sie interessieren werden
Wie gefährlich blaues Licht für das menschliches Auge wirklich ist – Der Dualismus des blauen Lichts
Die zwei Seiten des blauen Lichts – Wie viel blaues Licht brauchen wir, und wann bzw. wie müssen wir uns davor schützen?
DuraVision BlueProtect von ZEISS – Blaulichtschutz für Ihre Augen

Rest

BLAULICHTFILTER (BLUE-PROTECT-SYSTEM)

Segger J-Link RTT – Real Time Transfer

J-Link RTT – Real Time Transfer
wiki.segger.com: RTT

C:\Program Files\SEGGER\JLink\Samples\RTT\SEGGER_RTT_V754d.zip

platformio

Segger RTT Library: printf debugging on Arduinos with arm processors
koendv/RTT Stream

lib_deps =  
	koendv/RTT Stream

platformio.ini

Monitor options

Forum

Segger RTT with Bluepill
ARM Semihosting

ST-link

github.com/phryniszak/strtt, Segger RTT console using ST-link
Converting ST-LINK On-Board Into a J-Link

Tutorials

SEGGER J-Link Realtime Transfer – Fast Debug protocol
Where is my RTT control block?
nRF52840: SEGGER_RTT Gives You the Debug Output You Wished Arduino Had!

Forum

STM32: Alternativen zu Semihosting

Elektronik Spannungs-, Strom- und Leistungssensor

  • common mode voltage (CMV)

Distrelec

4226 – INA260 Spannungs-, Strom- und Leistungssensor, Adafruit
904 – High Side-DC-Stromschalter INA219, Adafruit
935 – Breakout-Board MCP4725, Adafruit (DAC)

TI

TI Current/voltage/power monitors
INA3221, 26V, triple channel, 13-bit, i2c output current/voltage monitor w/alerts
LM5056A, 3 to 80V, 12-bit, pmbus output current/voltage/power/temperature monitor
INA199, 26V, bi-directional current sense amplifier
INA169, 2.7 to 60V, 440kHz Variable gain current sense amplifier
INA219, 26V, 12-bit, i2c output current/voltage/power monitor

Microchip

HV7802, High Side Current Monitor

Analog

LTC2946, Wide Range I2C Power, Charge and Energy Monitor
LT2940, Power and Current Monitor
LTC2992, Dual Wide Range Power Monitor
ADE7755, Energy Metering IC with Pulse Output
Current Monitoring with High Common Mode Voltages
CN0218, 500 V Common-Mode Voltage Current Monitor
AD8212, High Voltage Current Shunt Monitor

Maxim

UNDERSTANDING COMMON-MODE SIGNALS
SIMPLE HIGH-VOLTAGE SUPPLY FEATURES SINGLE IC AND SMALL SIZE

Beckhoff

Gleichtaktspannung und Bezugsmasse (bezogen auf Differenzeingänge)

Community

INA169: Interfacing INA169 with raspberry pi
Raise input for a voltage monitor IC
Every time I connect ADE measuring chip , it blows up

Tutorials

Bald Engineer – Low side vs. High side transistor switch
ROHM – High Side and Low Side Switches
INA219 Strom- und Leistungssensormodul
INA226 Strom- und Leistungssensor
ACS712 Stromsensor
ACS712 Current Sensor Working and Applications
Single-phase Energy Metering Circuit Applied in Food System Based on ADE7755 Chip
Design of electric energy metering circuit using ADE7755 intelligent watt hour meter

Gleichtaktsignal
Common-mode signal