# How a lithium-ion battery stores and releases power

> A process map exported from forks.world (https://forks.world). Author: Brian. Source: https://forks.world/p/cmv21nosb000wl206ado6dh2u
> It describes who does what, in what order, and with which technology. Read the plain-language sections first; the JSON at the end is the exact, complete data.

## Summary

- 14 steps across 2 layers
- Technology / systems: Charger, Anode (graphite), Cathode (lithium oxide), Your device

## Pain points

Where this process hurts, worst first:

- **Deep drains and heat wear out the layers, and capacity drops** (How a lithium-ion battery stores and releases power; painful): Batteries lose capacity every cycle

## How to read this file

- A process is made of **layers**. The main layer is the top level; any step of kind `subprocess` opens a detail layer with its own lanes and steps.
- **Lanes** are either persona (people/roles) or technology (systems). Each step belongs to one lane; `using` lists tools a person uses for that step.
- Step kinds: `start`, `task`, `decision` (its arrows carry the answer as a label), `subprocess`, `end`.

## How a lithium-ion battery stores and releases power

Lanes:
- Charger: technology / system (id `charger`)
- Anode (graphite): technology / system (id `anode`)
- Cathode (lithium oxide): technology / system (id `cathode`)
- Your device: technology / system (id `device`)

Steps, in the order they run:

1. **You plug the charger in** [start; Charger; id `y1`]
   - then Voltage pushes electrons through the outside wire to the anode
2. **Voltage pushes electrons through the outside wire to the anode** [task; Charger; id `y2`]
   - then Lithium ions leave the cathode and travel through the liquid to the anode
3. **Lithium ions leave the cathode and travel through the liquid to the anode** [subprocess; Cathode (lithium oxide); id `y3`], opens the detail layer "Why fast charging heats the battery"
   - then Ions tuck between the graphite layers: the battery is full
4. **Ions tuck between the graphite layers: the battery is full** [task; Anode (graphite); id `y4`]
   - then You unplug and use the device
5. **You unplug and use the device** [task; Your device; id `y5`]
   - then Ions want to move back, so electrons flow out through the device
6. **Ions want to move back, so electrons flow out through the device** [task; Anode (graphite); id `y6`]
   - then The device runs on those electrons
7. **The device runs on those electrons** [task; Your device; id `y7`]
   - then Ions settle back in the cathode: the battery is empty
8. **Ions settle back in the cathode: the battery is empty** [task; Cathode (lithium oxide); id `y8`]
   - then Is it recharged before it is fully drained and kept cool?
9. **Is it recharged before it is fully drained and kept cool?** [decision; Your device; id `y9`]
   - if "Yes" go to The battery lasts for years; if "No" go to Deep drains and heat wear out the layers, and capacity drops
10. **The battery lasts for years** [task; Anode (graphite); id `y10`]
   - then You plug the charger in
11. **Deep drains and heat wear out the layers, and capacity drops** [task; Anode (graphite); id `y11`] ⚠ PAIN POINT (painful): Batteries lose capacity every cycle
   - then You plug the charger in

```mermaid
flowchart LR
  subgraph l_charger["Charger"]
    n_y1(["You plug the charger in"])
    n_y2["Voltage pushes electrons through the outside wire to the anode"]
  end
  subgraph l_anode["Anode (graphite)"]
    n_y4["Ions tuck between the graphite layers: the battery is full"]
    n_y6["Ions want to move back, so electrons flow out through the device"]
    n_y10["The battery lasts for years"]
    n_y11["Deep drains and heat wear out the layers, and capacity drops"]
  end
  subgraph l_cathode["Cathode (lithium oxide)"]
    n_y3[["Lithium ions leave the cathode and travel through the liquid to the anode"]]
    n_y8["Ions settle back in the cathode: the battery is empty"]
  end
  subgraph l_device["Your device"]
    n_y5["You unplug and use the device"]
    n_y7["The device runs on those electrons"]
    n_y9{"Is it recharged before it is fully drained and kept cool?"}
  end
  n_y1 --> n_y2
  n_y2 --> n_y3
  n_y3 --> n_y4
  n_y4 --> n_y5
  n_y5 --> n_y6
  n_y6 --> n_y7
  n_y7 --> n_y8
  n_y8 --> n_y9
  n_y9 -->|"Yes"| n_y10
  n_y9 -->|"No"| n_y11
  n_y10 --> n_y1
  n_y11 --> n_y1
```

### Why fast charging heats the battery (detail of step "Lithium ions leave the cathode and travel through the liquid to the anode")

Lanes:
- Charger: technology / system (id `charger`)
- Anode (graphite): technology / system (id `anode`)

Steps, in the order they run:

1. **More current pushes ions faster** [start; Charger; id `f1`]
   - then Ions crowd at the surface of the graphite
2. **Ions crowd at the surface of the graphite** [task; Anode (graphite); id `f2`]
   - then Extra heat is released and can damage the layers
3. **Extra heat is released and can damage the layers** [end; Anode (graphite); id `f3`]

```mermaid
flowchart LR
  subgraph l_charger["Charger"]
    n_f1(["More current pushes ions faster"])
  end
  subgraph l_anode["Anode (graphite)"]
    n_f2["Ions crowd at the surface of the graphite"]
    n_f3(["Extra heat is released and can damage the layers"])
  end
  n_f1 --> n_f2
  n_f2 --> n_f3
```

## Full data (JSON)

```json
{
  "title": "How a lithium-ion battery stores and releases power",
  "maps": {
    "m_root": {
      "id": "m_root",
      "lanes": [
        {
          "id": "charger",
          "name": "Charger",
          "type": "system"
        },
        {
          "id": "anode",
          "name": "Anode (graphite)",
          "type": "system"
        },
        {
          "id": "cathode",
          "name": "Cathode (lithium oxide)",
          "type": "system"
        },
        {
          "id": "device",
          "name": "Your device",
          "type": "system"
        }
      ],
      "steps": [
        {
          "id": "y1",
          "kind": "start",
          "lane": "charger",
          "next": [
            {
              "to": "y2"
            }
          ],
          "uses": [],
          "label": "You plug the charger in"
        },
        {
          "id": "y2",
          "kind": "task",
          "lane": "charger",
          "next": [
            {
              "to": "y3"
            }
          ],
          "uses": [],
          "label": "Voltage pushes electrons through the outside wire to the anode"
        },
        {
          "id": "y3",
          "kind": "subprocess",
          "lane": "cathode",
          "next": [
            {
              "to": "y4"
            }
          ],
          "uses": [],
          "child": "m_charge",
          "label": "Lithium ions leave the cathode and travel through the liquid to the anode"
        },
        {
          "id": "y4",
          "kind": "task",
          "lane": "anode",
          "next": [
            {
              "to": "y5"
            }
          ],
          "uses": [],
          "label": "Ions tuck between the graphite layers: the battery is full"
        },
        {
          "id": "y5",
          "kind": "task",
          "lane": "device",
          "next": [
            {
              "to": "y6"
            }
          ],
          "uses": [],
          "label": "You unplug and use the device"
        },
        {
          "id": "y6",
          "kind": "task",
          "lane": "anode",
          "next": [
            {
              "to": "y7"
            }
          ],
          "uses": [],
          "label": "Ions want to move back, so electrons flow out through the device"
        },
        {
          "id": "y7",
          "kind": "task",
          "lane": "device",
          "next": [
            {
              "to": "y8"
            }
          ],
          "uses": [],
          "label": "The device runs on those electrons"
        },
        {
          "id": "y8",
          "kind": "task",
          "lane": "cathode",
          "next": [
            {
              "to": "y9"
            }
          ],
          "uses": [],
          "label": "Ions settle back in the cathode: the battery is empty"
        },
        {
          "id": "y9",
          "kind": "decision",
          "lane": "device",
          "next": [
            {
              "to": "y10",
              "label": "Yes"
            },
            {
              "to": "y11",
              "label": "No"
            }
          ],
          "uses": [],
          "label": "Is it recharged before it is fully drained and kept cool?"
        },
        {
          "id": "y10",
          "kind": "task",
          "lane": "anode",
          "next": [
            {
              "to": "y1"
            }
          ],
          "uses": [],
          "label": "The battery lasts for years"
        },
        {
          "id": "y11",
          "kind": "task",
          "lane": "anode",
          "next": [
            {
              "to": "y1"
            }
          ],
          "pain": {
            "note": "Batteries lose capacity every cycle",
            "level": 2
          },
          "uses": [],
          "label": "Deep drains and heat wear out the layers, and capacity drops"
        }
      ],
      "title": "How a lithium-ion battery stores and releases power",
      "parent": null
    },
    "m_charge": {
      "id": "m_charge",
      "lanes": [
        {
          "id": "charger",
          "name": "Charger",
          "type": "system"
        },
        {
          "id": "anode",
          "name": "Anode (graphite)",
          "type": "system"
        }
      ],
      "steps": [
        {
          "id": "f1",
          "kind": "start",
          "lane": "charger",
          "next": [
            {
              "to": "f2"
            }
          ],
          "uses": [],
          "label": "More current pushes ions faster"
        },
        {
          "id": "f2",
          "kind": "task",
          "lane": "anode",
          "next": [
            {
              "to": "f3"
            }
          ],
          "uses": [],
          "label": "Ions crowd at the surface of the graphite"
        },
        {
          "id": "f3",
          "kind": "end",
          "lane": "anode",
          "next": [],
          "uses": [],
          "label": "Extra heat is released and can damage the layers"
        }
      ],
      "title": "Why fast charging heats the battery",
      "parent": {
        "map": "m_root",
        "step": "y3"
      }
    }
  }
}
```
