Skip to main content

impedance checking

Impedance checking is a critical process for ensuring high-quality EEG data acquisition. This document explains how impedance checking works, its importance, and how to perform it using the Systems Engine.

what is electrode impedance?

Impedance refers to the resistance to the flow of alternating current between the electrode and the scalp. In EEG recordings, lower electrode impedance generally results in better signal quality by:

  • Reducing electrical noise
  • Improving signal-to-noise ratio
  • Minimizing artifacts
  • Ensuring consistent signal detection

Impedance is measured in ohms (Ω) or kilohms (kΩ).

why check impedance?

Regular impedance checking is essential for:

  1. Ensuring good contact: Verifying that electrodes are properly connected to the scalp
  2. Maintaining signal quality: Identifying electrodes with poor contact before recording
  3. Troubleshooting: Diagnosing issues when data quality is suboptimal
  4. Validating preparation: Confirming that skin preparation and electrode application were effective
  5. Consistency: Establishing comparable recording conditions across sessions and subjects

impedance checking process

The Instinct headset includes built-in hardware for measuring electrode impedance without requiring additional equipment. The process involves:

  1. Applying a very small alternating current to each electrode
  2. Measuring the resulting voltage
  3. Calculating the impedance using Ohm's Law
  4. Presenting the results to the user

impedance thresholds

Different applications may require different impedance thresholds:

LevelImpedance RangeSuitability
Excellent< 5 kΩResearch-grade recordings, sensitive applications
Good5-10 kΩMost clinical and research applications
Acceptable10-20 kΩGeneral use, less critical applications
Poor20-50 kΩMay be usable but not ideal
Very Poor> 50 kΩNot recommended, likely to produce noisy data

The Systems Engine provides visual feedback about impedance levels using a color-coded system:

  • Green: Excellent to Good (< 10 kΩ)
  • Yellow: Acceptable (10-20 kΩ)
  • Orange: Poor (20-50 kΩ)
  • Red: Very Poor (> 50 kΩ)

starting impedance check

To start an impedance check using the Systems Engine API:

POST /electrodes/impedance/start

Example request:

{
"continuous": true,
"channels": [
"Fp1",
"Fp2",
"F7",
"F3",
"Fz",
"F4",
"F8",
"C3",
"Cz",
"C4",
"P3",
"Pz",
"P4",
"O1",
"O2"
],
"testSignal": {
"frequency": 10,
"amplitude": 0.5
},
"updateInterval": 1000
}

Parameters:

  • continuous: Whether to continuously update impedance values (true) or perform a single measurement (false)
  • channels: Specific channels to check, or all channels if omitted
  • testSignal: Configuration for the test signal used to measure impedance
  • updateInterval: Milliseconds between updates (for continuous mode)

Example response:

{
"success": true,
"status": "running",
"sessionId": "imp-check-123456",
"mode": "continuous"
}

getting impedance values

To retrieve the current impedance values:

GET /electrodes/impedance

Example response:

{
"timestamp": 1620000000000,
"values": {
"Fp1": 12.3,
"Fp2": 8.7,
"F7": 15.2,
"F3": 7.8,
"Fz": 6.5,
"F4": 9.1,
"F8": 14.8,
"C3": 10.2,
"Cz": 5.6,
"C4": 8.9,
"P3": 11.3,
"Pz": 7.2,
"P4": 9.7,
"O1": 13.5,
"O2": 12.8
},
"status": "running",
"sessionId": "imp-check-123456"
}

In this response, the impedance values are reported in kilohms (kΩ).

real-time impedance updates

For real-time updates, you can use the WebSocket interface:

ws://localhost:42069/electrodes/impedance/live

The WebSocket connection delivers impedance updates in real-time:

{
"timestamp": 1620000001000,
"values": {
"Fp1": 11.9,
"Fp2": 8.5,
"...": "..."
}
}

stopping impedance check

To stop an active impedance check:

POST /electrodes/impedance/stop

Example response:

{
"success": true,
"status": "stopped",
"sessionId": "imp-check-123456"
}

improving electrode impedance

If impedance values are higher than desired, several strategies can improve electrode-scalp contact:

  1. Reapply electrode gel: Apply additional conductive gel to the electrode
  2. Reposition the electrode: Ensure the electrode is properly seated on the scalp
  3. Adjust electrode pressure: Use the motor control feature to optimize pressure
  4. Prepare skin surface: Gently abrade the skin under the electrode to remove dead skin cells
  5. Clean the electrode: Ensure the electrode surface is clean and free of debris

The Systems Engine can assist with some of these processes:

POST /electrodes/adjust

Example request:

{
"electrodes": ["Fp1", "F7"],
"action": "optimize",
"target": {
"impedance": 10.0
}
}

impedance check with motor control

The Instinct headset provides motorized electrode positioning that can be used during impedance checking to automatically optimize contact:

POST /electrodes/impedance/optimize

Example request:

{
"channels": ["Fp1", "Fp2", "F7", "F3", "Fz", "F4", "F8"],
"targetImpedance": 10.0,
"maxAttempts": 3,
"strategy": "gentle"
}

Parameters:

  • channels: Specific channels to optimize, or all channels if omitted
  • targetImpedance: The impedance value to aim for (in kΩ)
  • maxAttempts: Maximum number of adjustment cycles per electrode
  • strategy: Approach to optimization (e.g., "gentle", "aggressive")

impedance mapping

The Systems Engine can generate a visual map of impedance values:

GET /electrodes/impedance/map

Parameters:

  • format: Image format (e.g., "png", "svg")
  • colorScheme: Coloring scheme for the map

The response will be an image file showing the electrode positions on a head model, color-coded by impedance values.

impedance history

To track impedance changes over time:

GET /electrodes/impedance/history

Parameters:

  • sessionId: Specific impedance check session
  • timeRange: Period to include (e.g., "1h", "24h")
  • channels: Specific channels to include

Example response:

{
"channels": ["Fp1", "Fp2", "..."],
"timeline": [
{
"timestamp": 1620000000000,
"values": {
"Fp1": 15.2,
"Fp2": 12.3,
"...": "..."
}
},
{
"timestamp": 1620000060000,
"values": {
"Fp1": 12.8,
"Fp2": 9.7,
"...": "..."
}
},
"..."
]
}

factors affecting impedance

Several factors can influence electrode impedance:

  1. Electrode type: Different electrode materials have different impedance characteristics
  2. Conductive medium: The type and amount of gel or saline solution
  3. Skin preparation: How well the skin was prepared before electrode placement
  4. Pressure: The amount of pressure applying the electrode to the scalp
  5. Time: Impedance may change over time due to gel drying or skin adaptation
  6. Hair: Hair thickness and oil content can affect electrode contact
  7. Environmental factors: Temperature and humidity can affect skin conductivity

impedance check limitations

Impedance checking has some important limitations to be aware of:

  1. Not a perfect predictor: Low impedance doesn't guarantee high-quality signals
  2. Momentary measurement: Impedance can change during recording
  3. Reference dependency: Measurements are relative to the reference electrode
  4. Cannot detect all issues: Some signal problems aren't related to impedance

impedance checking workflow

The typical workflow for impedance checking with the Instinct headset:

  1. Initiate Impedance Check

    Start the impedance checking mode:

    curl -X POST http://localhost:42069/electrodes/impedance/start
  2. Retrieve Impedance Values

    Get the current impedance readings:

    curl -X GET http://localhost:42069/electrodes/impedance
  3. Adjust Electrodes

    Based on the impedance feedback, adjust any electrodes showing high impedance values.

  4. Re-check Impedance

    Repeat the impedance check to confirm improvements:

    curl -X GET http://localhost:42069/electrodes/impedance
  5. Stop Impedance Check

    Once satisfied with the electrode contact quality, stop the impedance checking mode:

    curl -X POST http://localhost:42069/electrodes/impedance/stop
  6. Begin EEG Streaming

    Start your EEG streaming session:

    curl -X POST http://localhost:42069/stream/start

best practices

For optimal impedance readings and electrode contact:

general guidelines

  1. Check before streaming: Always perform impedance checks before starting EEG streaming sessions
  2. Re-check during long sessions: For sessions lasting more than 30 minutes, periodically check impedance
  3. Address poor contacts: Don't ignore electrodes with poor contact quality; either fix them or note in your experimental protocol
  4. Use consistent thresholds: Establish standard impedance thresholds for your specific application

dry electrodes

  1. Ensure proper pressure: Dry electrodes require good pressure against the scalp
  2. Clean contact surfaces: Regularly clean the electrode surfaces
  3. Remove oils from skin: Wipe the scalp with alcohol prep pads before placing electrodes
  4. Allow settling time: Dry electrodes may need 1-2 minutes to stabilize impedance readings

wet electrodes

  1. Use fresh gel: Conductive gel can dry out over time
  2. Avoid gel bridges: Prevent gel from creating connections between adjacent electrodes
  3. Prep the skin: Gently exfoliate the skin with specialized prep gel
  4. Check for bubbles: Ensure no air bubbles are trapped between the electrode and skin

For Research-Grade Recordings

  1. Target 5 kΩ or lower: For highest quality data
  2. Standardize preparation: Use consistent preparation procedures
  3. Document impedance values: Record impedance readings as part of experimental metadata
  4. Monitor changes: Track impedance changes over the course of recording sessions

troubleshooting

common issues

IssuePossible CausesSolutions
Consistently high impedance on specific electrodeDamaged electrode, poor positioning, insufficient contactCheck electrode for damage, reposition, add additional gel or pressure
All electrodes showing high impedanceSystem calibration issue, reference electrode problemRestart impedance check, check reference electrode connection
Fluctuating impedance valuesMovement artifacts, loose electrode, drying gelStabilize electrode, reapply gel, ask subject to remain still
"Impedance check failed" errorHardware communication issue, firmware problemRestart headset, check connections, update firmware

advanced troubleshooting

  • Strange patterns: If certain groups of electrodes show unusual patterns (e.g., all frontal electrodes), check for systemic issues in that region of the cap
  • Sudden changes: Sudden dramatic changes in impedance may indicate a loose connection or technical issue rather than actual impedance changes
  • Cross-talk: Very low impedance readings across multiple channels could indicate "bridging" (gel creating unwanted connections between electrodes)

next steps