[{"data":1,"prerenderedAt":1533},["ShallowReactive",2],{"page-\u002Fdocs\u002Fwiring":3,"list-docs":1425},{"id":4,"title":5,"body":6,"description":1410,"extension":1411,"file":1412,"group":1413,"label":5,"meta":1414,"minutes":1415,"navigation":1416,"order":1417,"path":1418,"section":1419,"seo":1420,"slug":1421,"stem":1422,"updated":1423,"__hash__":1424},"pages\u002Fdocs\u002FWIRING.md","Wiring",{"type":7,"value":8,"toc":1395},"minimark",[9,14,23,28,32,35,60,63,74,78,88,91,95,140,402,405,425,431,445,449,467,477,609,620,626,644,647,692,696,699,774,777,811,815,821,826,841,846,957,962,971,992,998,1003,1006,1078,1081,1269,1272,1276,1314,1318,1356,1359,1363],[10,11],"img",{"alt":12,"src":13},"Wiring schematic","schematic.svg",[15,16,17,18,22],"p",{},"Regenerate both drawings with ",[19,20,21],"code",{},"python3 hardware\u002Fmake_schematic.py",".",[24,25,27],"h2",{"id":26},"coil-leads-which-is-signal-which-is-return","Coil leads: which is signal, which is return",[10,29],{"alt":30,"src":31},"Coil lead convention","coil-leads.svg",[15,33,34],{},"A coil has no polarity of its own; what matters is that all eight are wired the same way round, so they all present the same magnetic pole to the head.",[36,37,38,50],"ul",{},[39,40,41,45,46,49],"li",{},[42,43,44],"strong",{},"Inner lead"," (leaves the top face at the centre, beside the core) = ",[42,47,48],{},"signal",", from the 2.2 kΩ resistor, on the strong-colour wire of a cable pair (orange, green, blue, brown).",[39,51,52,55,56,59],{},[42,53,54],{},"Outer lead"," (leaves the outermost winding at the side) = ",[42,57,58],{},"return",", on the pale or white-striped wire of the same pair, back to the return bus.",[15,61,62],{},"The outer winding is the layer that touches fingers, scalp and neighbouring wires, so it goes on the return (ground) side. Before soldering:",[36,64,65,68,71],{},[39,66,67],{},"Scrape or burn off the enamel on the last 5 mm.",[39,69,70],{},"Check ≈ 4.2 Ω between the leads.",[39,72,73],{},"Mark the inner lead.",[24,75,77],{"id":76},"block-diagram","Block diagram",[79,80,85],"pre",{"className":81,"code":83,"language":84},[82],"language-text","                       ┌──────────────── control box ─────────────────┐\n USB power bank 5 V ──►│ 5V ─┬─ ESP32-S3 DevKitC-1 (5V pin)             │\n (never mains while    │     └─ AD5328 module 5V   (≤ 5.5 V!)           │\n  the helmet is worn)  │ GND ── common ground                           │\n                       │                                                │\n                       │ GPIO12 SCK  ───► module CLK                    │\n                       │ GPIO11 MOSI ───► module DIN                    │\n                       │ GPIO10 CS   ───► module SYNC                   │\n                       │ GPIO9       ───► module LDAC                   │\n                       │ GND         ───► module GND (header)           │\n                       │                                                │\n                       │ module AO1..AO8 ─[2.2 kΩ]×8─► RJ45 #1\u002F#2 (A)   │      cable        ┌─ headband ─┐\n                       │ RJ45 returns (B) ─► PhotoMOS ─► module GND     │═══════════════════│ 8 coils    │\n                       │                                                │  2 × 4 pairs      └────────────┘\n                       │ GPIO4 ─330 Ω─► PhotoMOS LED (+10 kΩ pull-down to GND)\n                       │ GPIO5 ◄── STOP button ── GND                   │\n                       └────────────────────────────────────────────────┘\n        Bluetooth LE ◄──► phone \u002F laptop browser (web app on GitHub Pages)\n   or   USB cable    ◄──► computer browser (Chrome or Edge, Web Serial)\n","text",[19,86,83],{"__ignoreMap":87},"",[15,89,90],{},"The diagram shows the ESP32-S3; the other chips use the pins in the table below.",[24,92,94],{"id":93},"pin-table","Pin table",[15,96,97,98,101,102,105,106,109,110,113,114,117,118,121,122,125,126,129,130,133,134,139],{},"The firmware runs on four ESP32 chips, each with its own fixed pins (firmware env in brackets). The default board is the ",[42,99,100],{},"ESP32-S3-DevKitC-1"," (N8R8\u002FN16R8, ",[19,103,104],{},"esp32s3","). A classic ",[42,107,108],{},"ESP32 DevKitC"," (",[19,111,112],{},"esp32dev","), an ",[42,115,116],{},"ESP32-C3"," board (DevKitM-1 or a \"C3 Super Mini\", ",[19,119,120],{},"esp32c3",") and an ",[42,123,124],{},"ESP32-C6"," board (DevKitC-1, ",[19,127,128],{},"esp32c6",") work the same way. Install from the web app (Helmet → Install the firmware; it recognises the chip) or with PlatformIO. For the ",[42,131,132],{},"2.8\" ESP32-32E display board"," see ",[135,136,138],"a",{"href":137},"#esp32-32e-28-display-board","its own section"," below.",[141,142,143,169],"table",{},[144,145,146],"thead",{},[147,148,149,153,156,159,161,163,166],"tr",{},[150,151,152],"th",{},"Function",[150,154,155],{},"ESP32-S3",[150,157,158],{},"ESP32 classic",[150,160,116],{},[150,162,124],{},[150,164,165],{},"Direction",[150,167,168],{},"Connects to",[170,171,172,199,224,247,270,293,314,337,358,381],"tbody",{},[147,173,174,178,181,184,187,190,193],{},[175,176,177],"td",{},"SPI clock, 20 MHz, mode 1",[175,179,180],{},"GPIO12",[175,182,183],{},"GPIO18",[175,185,186],{},"GPIO4",[175,188,189],{},"GPIO21",[175,191,192],{},"out",[175,194,195,196],{},"AD5328 module ",[42,197,198],{},"CLK",[147,200,201,204,207,210,213,216,218],{},[175,202,203],{},"SPI data",[175,205,206],{},"GPIO11",[175,208,209],{},"GPIO23",[175,211,212],{},"GPIO6",[175,214,215],{},"GPIO19",[175,217,192],{},[175,219,220,221],{},"module ",[42,222,223],{},"DIN",[147,225,226,229,232,235,238,240,242],{},[175,227,228],{},"Frame select, high between every 16-bit word",[175,230,231],{},"GPIO10",[175,233,234],{},"GPIO5",[175,236,237],{},"GPIO7",[175,239,183],{},[175,241,192],{},[175,243,220,244],{},[42,245,246],{},"SYNC",[147,248,249,252,255,258,260,263,265],{},[175,250,251],{},"Pulsed low after the 8 words: all coils change at the same instant",[175,253,254],{},"GPIO9",[175,256,257],{},"GPIO17",[175,259,234],{},[175,261,262],{},"GPIO20",[175,264,192],{},[175,266,220,267],{},[42,268,269],{},"LDAC",[147,271,272,278,280,283,285,288,290],{},[175,273,274,277],{},[42,275,276],{},"Arming switch"," (add a 10 kΩ pull-down so it stays off during boot\u002Freset)",[175,279,186],{},[175,281,282],{},"GPIO26",[175,284,231],{},[175,286,287],{},"GPIO22",[175,289,192],{},[175,291,292],{},"PhotoMOS LED via 330 Ω",[147,294,295,298,300,303,306,308,311],{},[175,296,297],{},"STOP button to GND; interrupt opens the coil return immediately",[175,299,234],{},[175,301,302],{},"GPIO27",[175,304,305],{},"GPIO3",[175,307,209],{},[175,309,310],{},"in",[175,312,313],{},"push button",[147,315,316,323,326,328,330,332,334],{},[175,317,318,319,322],{},"The board's ",[42,320,321],{},"BOOT"," button is a second STOP (it counts once held for 40 ms)",[175,324,325],{},"GPIO0",[175,327,325],{},[175,329,254],{},[175,331,254],{},[175,333,310],{},[175,335,336],{},"(on the board)",[147,338,339,342,345,348,351,353,355],{},[175,340,341],{},"Status LED: blue blink idle, steady blue app connected (Bluetooth or USB), amber session (also during sham)",[175,343,344],{},"on-board RGB (GPIO48)",[175,346,347],{},"GPIO2",[175,349,350],{},"on-board RGB (GPIO8)",[175,352,350],{},[175,354,192],{},[175,356,357],{},"–",[147,359,360,363,366,369,372,374,377],{},[175,361,362],{},"Module supply (max 5.5 V)",[175,364,365],{},"5V pin",[175,367,368],{},"5V \u002F VIN",[175,370,371],{},"5V",[175,373,371],{},[175,375,376],{},"power",[175,378,220,379],{},[42,380,371],{},[147,382,383,386,389,391,393,395,397],{},[175,384,385],{},"Common ground",[175,387,388],{},"GND",[175,390,388],{},[175,392,388],{},[175,394,388],{},[175,396,357],{},[175,398,220,399,401],{},[42,400,388],{}," (header and output terminal)",[15,403,404],{},"The pins avoid each chip's strapping pins, USB pins, UART pins and flash pins:",[36,406,407,413,419],{},[39,408,409,412],{},[42,410,411],{},"S3:"," strapping 0, 3, 45, 46; USB 19, 20; the octal flash\u002FPSRAM of N8R8\u002FN16R8 modules, 26–37.",[39,414,415,418],{},[42,416,417],{},"C3:"," strapping 2, 8, 9; USB 18, 19; UART 20, 21; flash 12–17.",[39,420,421,424],{},[42,422,423],{},"C6:"," strapping 4, 5, 8, 9, 15; USB 12, 13; UART 16, 17; flash 24–30.",[15,426,427,428,22],{},"The module's logic level is 3.3 V, so no level shifter is needed. Set the module's reference jumper to ",[42,429,430],{},"1-2 (onboard 2.5 V)",[15,432,433,436,437,440,441,444],{},[42,434,435],{},"USB:"," the web app can also control the helmet over the USB cable instead of Bluetooth: the ",[42,438,439],{},"USB"," button, Chrome or Edge on a computer. On the S3, C3 and C6 both sockets work: the chip's own USB and the one with the bridge chip. The C3 and C6 have one core, which the 2 kHz output loop shares with Bluetooth. The live status shows ",[19,442,443],{},"overruns"," if it ever falls behind.",[24,446,448],{"id":447},"esp32-32e-28-display-board","ESP32-32E 2.8\" display board",[15,450,451,452,457,458,461,462,466],{},"The \"2.8inch ESP32-32E Display\" (LCDwiki E32R28T \u002F E32N28T, often sold as a \"Cheap Yellow Display\") has a classic ESP32 (ESP32-D0WD-V3, 4 MB flash, no PSRAM). With firmware env ",[42,453,454],{},[19,455,456],{},"esp32e_lcd28"," it runs ",[42,459,460],{},"standalone",": programs from the microSD card, chosen and started on the touchscreen, no phone or computer needed (",[135,463,465],{"href":464},"\u002Fdocs\u002Fstandalone","STANDALONE.md","). Bluetooth for the web app is an optional setting.",[15,468,469,470,476],{},"Almost every pin already drives the display, touch, SD card, speaker or RGB LED (",[135,471,475],{"href":472,"rel":473,"target":474},"https:\u002F\u002Fwww.lcdwiki.com\u002F2.8inch_ESP32-32E_Display","noopener","_blank","LCDwiki pin table","). The module goes on the 4-pin SPI peripheral header and one ground wire:",[141,478,479,494],{},[144,480,481],{},[147,482,483,486,489,491],{},[150,484,485],{},"Board connector · pin",[150,487,488],{},"GPIO",[150,490,168],{},[150,492,493],{},"Notes",[170,495,496,511,525,539,553,567,581,597],{},[147,497,498,501,504,508],{},[175,499,500],{},"SPI header · IO18 (SCK)",[175,502,503],{},"18",[175,505,220,506],{},[42,507,198],{},[175,509,510],{},"shared with the microSD card",[147,512,513,516,519,523],{},[175,514,515],{},"SPI header · IO23 (MOSI)",[175,517,518],{},"23",[175,520,220,521],{},[42,522,223],{},[175,524,510],{},[147,526,527,530,533,537],{},[175,528,529],{},"SPI header · IO27 (CS)",[175,531,532],{},"27",[175,534,220,535],{},[42,536,246],{},[175,538],{},[147,540,541,544,547,550],{},[175,542,543],{},"SPI header · IO19 (MISO)",[175,545,546],{},"19",[175,548,549],{},"– (leave free)",[175,551,552],{},"the microSD card's data line; the AD5328 never sends data",[147,554,555,558,560,564],{},[175,556,557],{},"Expansion header · 3.3V",[175,559,357],{},[175,561,220,562],{},[42,563,269],{},[175,565,566],{},"no pin is left for LDAC: tied high, the firmware updates all 8 outputs at once with the AD5328's software \"single update\" word",[147,568,569,572,574,578],{},[175,570,571],{},"Expansion header · GND",[175,573,357],{},[175,575,220,576],{},[42,577,388],{},[175,579,580],{},"the SPI header has no ground pin: this wire is the common ground",[147,582,583,586,589,591],{},[175,584,585],{},"BOOT button (on the board)",[175,587,588],{},"0",[175,590,357],{},[175,592,593,596],{},[42,594,595],{},"STOP"," (as the red button on the screen; counts once held for 40 ms)",[147,598,599,602,604,607],{},[175,600,601],{},"USB-C",[175,603,357],{},[175,605,606],{},"power bank, 5 V",[175,608],{},[15,610,611,612,615,616,619],{},"This board has ",[42,613,614],{},"no arming switch"," and ",[42,617,618],{},"no external STOP button",": the coil returns go straight to the module's GND, and STOP is the on-screen button or the BOOT button. The on-screen button stops the field at once (the sequencer writes 0 V to all eight outputs within 0.5 ms); the BOOT button does so once it has been held for 40 ms, because opening the board's USB port pulses that pin.",[15,621,622,625],{},[42,623,624],{},"Power-on rule."," The AD5328 starts at code 0, which on the ±10 V module is about −10 V on every output (up to 4.5 mA per coil through the 2.2 kΩ resistors) until the firmware sets 0 V, a fraction of a second after power-on. A reset holds whatever the outputs had. So:",[36,627,628,635,641],{},[39,629,630,631,634],{},"Power the board and the module, ",[42,632,633],{},"wait for the screen",", then put the helmet on.",[39,636,637,640],{},[42,638,639],{},"Never flash, reset or plug USB into a computer with the helmet on."," Take it off first.",[39,642,643],{},"Feed board and module from the same power bank, so they lose power together.",[15,645,646],{},"Notes:",[36,648,649,655,668,677,683,689],{},[39,650,651,654],{},[42,652,653],{},"Module 5 V."," The board has no documented 5 V output. Feed the module's 5V\u002FGND terminal from the same power bank (a USB splitter or a second USB port), and connect the grounds through the expansion header GND. The board's LiPo connector cannot power the module (no 5 V).",[39,656,657,660,661,664,665,667],{},[42,658,659],{},"The board cannot detect the module"," (the AD5328 has no data-out pin). The first start after each power-on asks you to confirm it, and ",[42,662,663],{},"Settings → Module check"," tests it with a multimeter (",[135,666,465],{"href":464},").",[39,669,670,673,674,676],{},[42,671,672],{},"microSD card in the slot:"," it holds the program library (FAT32, any size; ",[135,675,465],{"href":464},"). It shares SCK\u002FMOSI\u002FMISO with the module, so the firmware reads it only while no session runs.",[39,678,679,682],{},[42,680,681],{},"The firmware keeps the board quiet:"," speaker amplifier off (IO4 high); during a session the screen stays on, dims or goes dark after 10 s (a setting). The RGB LED shows a dim status: blue blink idle, steady blue with the app connected, amber during a session.",[39,684,685,688],{},[42,686,687],{},"SPI wiring stays short"," (under about 20 cm): the bus runs at 20 MHz to the module and 10 MHz to the card. Twist each signal wire with a ground wire if it must be longer.",[39,690,691],{},"Logic is 3.3 V, which the module accepts directly, as on the other boards.",[24,693,695],{"id":694},"the-ad5328-module-ad5328模块-v12","The AD5328 module (\"AD5328模块 V1.2\")",[15,697,698],{},"What the board itself shows (silkscreen and parts, from photos of a V1.2 board):",[141,700,701,714],{},[144,702,703],{},[147,704,705,708,711],{},[150,706,707],{},"Connector",[150,709,710],{},"Order on the board",[150,712,713],{},"Use",[170,715,716,727,738,749,763],{},[147,717,718,721,724],{},[175,719,720],{},"Output terminal block (10 screws)",[175,722,723],{},"GND, AO8, AO7, AO6, AO5, AO4, AO3, AO2, AO1, GND",[175,725,726],{},"AOx → 2.2 kΩ → coil; either GND screw is the module ground",[147,728,729,732,735],{},[175,730,731],{},"Logic header H1 (6 pins)",[175,733,734],{},"5V, GND, CLK, DIN, SYNC, LDAC",[175,736,737],{},"To the ESP32 (pin table above). CLK, DIN and SYNC pass a 100 Ω resistor array (RN1) on the board",[147,739,740,743,746],{},[175,741,742],{},"Power terminal (2 screws)",[175,744,745],{},"5V, GND",[175,747,748],{},"The same 5 V as H1; use one of them, not both from different supplies",[147,750,751,754,757],{},[175,752,753],{},"Reference jumper (3 pins, \"基准源\")",[175,755,756],{},"1 = 2V5, 2 = EX, 3 = GND",[175,758,759,762],{},[42,760,761],{},"1-2: onboard 2.5 V reference (use this)."," Pin 2 alone is the external-reference input. Never bridge 2-3: it shorts the reference to ground",[147,764,765,768,771],{},[175,766,767],{},"Test pads",[175,769,770],{},"5V, 12V, −12V, VREF, GND",[175,772,773],{},"Bench checks (docs\u002FCALIBRATION.md §1)",[15,775,776],{},"Parts:",[36,778,779,785,795,801],{},[39,780,781,784],{},[42,782,783],{},"DAC:"," AD5328BRU (TSSOP-16). The date code on the one photographed is 0331 (2003): old stock or a recovered part, so run the bench test before trusting it.",[39,786,787,790,791,667],{},[42,788,789],{},"Output amplifiers:"," four SGMicro SGM8272 dual op-amps (one amplifier per channel), rated for supplies up to ±18 V (",[135,792,794],{"href":793,"rel":473,"target":474},"https:\u002F\u002Fsg-micro.com\u002Fproduct\u002FSGM8272","SGM8272",[39,796,797,800],{},[42,798,799],{},"Supply:"," an on-board DC-DC converter followed by 78L12 and 79L12 regulators makes ±12 V for the op-amps; LED1 is the power light.",[39,802,803,806,807,810],{},[42,804,805],{},"Per channel:"," 3 kΩ, 12 kΩ, 30 kΩ and 120 kΩ resistors (codes 302, 123, 303, 124), both pairs in a 1 : 4 ratio. That is a difference amplifier with a gain of 4 between the DAC output and the 2.5 V reference: ",[42,808,809],{},"V_out = ±4 · (V_DAC − 2.5 V)",". With the DAC set to 0–5 V (GAIN ×2, the firmware default), code 0x800 gives 0 V and the full range is ±10 V. Which input the DAC feeds, and so the sign, cannot be seen from the photos; the bench test shows it. Code 0 (the DAC's power-on state) gives −10 V (or +10 V) on every output, not 0 V, which is why the DevKit boards use the arming switch (the display board instead follows a power-on rule, see above).",[24,812,814],{"id":813},"one-output-channel-8","One output channel (×8)",[79,816,819],{"className":817,"code":818,"language":84},[82]," AD5328 module                control box                 cable pair           coil\n AOx  ───────────────[ R 2.2 kΩ 1% ¼W ]───────────────── wire A (strong colour) ─► INNER lead (S)\n                                                                                     │ 495 turns, 4.2 Ω, 4.1 mH\n GND  ──── PhotoMOS (AQY212EH, pins 3\u002F4) ──┬──────────── wire B (pale partner) ◄─── OUTER lead (E)\n                                           └── all 8 \"B\" wires joined here\n",[19,820,818],{"__ignoreMap":87},[15,822,823],{},[42,824,825],{},"Why the resistor is not optional.",[36,827,828,831,838],{},[39,829,830],{},"The coil is 4.2 Ω. Without the resistor, ±10 V would try to push 2.4 A through it, a dead short for the module's output op-amps and about 100× the intended field.",[39,832,833,834,837],{},"With 2.2 kΩ, current is at most 10 V \u002F 2204 Ω = ",[42,835,836],{},"4.54 mA",": about 3–6 µT at the cortex and about 100 µT at the coil face.",[39,839,840],{},"Resistor dissipation is at most 45 mW.",[15,842,843],{},[42,844,845],{},"Maximum current per pin.",[141,847,848,861],{},[144,849,850],{},[147,851,852,855,858],{},[150,853,854],{},"Pin",[150,856,857],{},"Case",[150,859,860],{},"Current",[170,862,863,877,888,902,913,924,935,946],{},[147,864,865,868,871],{},[175,866,867],{},"AO1–AO8 → 2.2 kΩ → coil",[175,869,870],{},"Full scale: ±9.995 V over 2204 Ω (resistor + coil + 2 m of cable)",[175,872,873,876],{},[42,874,875],{},"4.53 mA"," (45 mW in the resistor, 0.09 mW in the coil)",[147,878,879,882,885],{},[175,880,881],{},"AO1–AO8",[175,883,884],{},"Tolerances: resistor 1 % low, module gain or reference high (its resistors are 3-digit-code parts, probably 5 %), output ±10.5 V",[175,886,887],{},"about 4.8 mA",[147,889,890,892,895],{},[175,891,881],{},[175,893,894],{},"Fault: amplifier stuck at its rail, about ±11 V on the ±12 V supply",[175,896,897,898,901],{},"about ",[42,899,900],{},"5.0 mA, the hard ceiling"," (≈ 9.4 µT at 20 mm, 55 mW in the resistor)",[147,903,904,907,910],{},[175,905,906],{},"AO1–AO8 without the resistor",[175,908,909],{},"Never: ±10 V into 4.2 Ω",[175,911,912],{},"limited only by the op-amp's short-circuit current, about 100× the intended field",[147,914,915,918,921],{},[175,916,917],{},"All 8 outputs together",[175,919,920],{},"Same sign, full scale",[175,922,923],{},"36 mA from one ±12 V rail (78L12\u002F79L12: 100 mA)",[147,925,926,929,932],{},[175,927,928],{},"GPIO4 → 330 Ω → PhotoMOS LED",[175,930,931],{},"(3.3 V − 1.2 V) \u002F 330 Ω",[175,933,934],{},"about 6 mA: enough to switch the AQY212EH reliably, well under the ESP32's 20 mA default drive",[147,936,937,940,943],{},[175,938,939],{},"IO19 on the 2.8\" display board",[175,941,942],{},"the same LED plus the 1 kΩ pull-down (3.3 mA)",[175,944,945],{},"about 9.5 mA, still under the 20 mA default drive",[147,947,948,951,954],{},[175,949,950],{},"CLK, DIN, SYNC, LDAC, STOP",[175,952,953],{},"Logic inputs",[175,955,956],{},"microamps (STOP: about 0.07 mA through the internal pull-up when pressed)",[36,958,959],{},[39,960,961],{},"Inductance: τ = L\u002FR = 1.9 µs, so the coil behaves as a resistor at these frequencies and no flyback diode is needed.",[15,963,964,967,968,667],{},[42,965,966],{},"Why the arming switch"," (DevKit boards; the ESP32-32E display board has none and relies on its power-on rule, see ",[135,969,970],{"href":137},"above",[36,972,973,980,983,986,989],{},[39,974,975,976,979],{},"The AD5328 resets to code 0. On this ±10 V module that is almost certainly ",[42,977,978],{},"−10 V on every output"," until the firmware writes mid-scale (verify this in the bench test, docs\u002FCALIBRATION.md §1).",[39,981,982],{},"The PhotoMOS keeps the coil return open until then. It also opens instantly on the STOP button and on any reset.",[39,984,985],{},"AQY212EH: 60 V \u002F 500 mA, bidirectional, silent. It is a 4-pin DIP: pin 1 LED +, pin 2 LED −, pins 3\u002F4 the switch (pin 4 to the return bus, pin 3 to module GND).",[39,987,988],{},"A 5 V relay module also works if it has an input pull-down and is active-high. A click is fine, because the switch closes for real and for sham sessions alike.",[39,990,991],{},"Don't use the AD5328's own power-down mode as an \"off\" switch: it floats the DAC outputs into the module's op-amp stage, so the module output is undefined.",[15,993,994,997],{},[42,995,996],{},"Twisted pairs."," Each coil's go and return currents run side by side, so the cable produces no field of its own. Two network cables (Cat5e, Cat6 or Cat6A) carry 8 coils, 4 pairs each; RJ45 jacks on box and headband make the headband detachable. Keep the colour convention identical for all eight pairs (T568B: signal on pins 2\u002F6\u002F4\u002F8, return on 1\u002F3\u002F5\u002F7).",[999,1000,1002],"h3",{"id":1001},"cable-colours","Cable colours",[15,1004,1005],{},"Each pair is one strong colour twisted with a pale partner. Classic Cat5e marks the partner with white stripes (white\u002Forange …). Many Cat6\u002FCat6A cables use plain pastel colours instead, for example:",[141,1007,1008,1024],{},[144,1009,1010],{},[147,1011,1012,1015,1018,1021],{},[150,1013,1014],{},"Pair",[150,1016,1017],{},"Signal wire (coil inner lead)",[150,1019,1020],{},"Return wire (coil outer lead), Cat6A pastel",[150,1022,1023],{},"… or classic Cat5e",[170,1025,1026,1039,1052,1065],{},[147,1027,1028,1031,1033,1036],{},[175,1029,1030],{},"orange",[175,1032,1030],{},[175,1034,1035],{},"white",[175,1037,1038],{},"white\u002Forange",[147,1040,1041,1044,1046,1049],{},[175,1042,1043],{},"green",[175,1045,1043],{},[175,1047,1048],{},"light green",[175,1050,1051],{},"white\u002Fgreen",[147,1053,1054,1057,1059,1062],{},[175,1055,1056],{},"blue",[175,1058,1056],{},[175,1060,1061],{},"light blue",[175,1063,1064],{},"white\u002Fblue",[147,1066,1067,1070,1072,1075],{},[175,1068,1069],{},"brown",[175,1071,1069],{},[175,1073,1074],{},"pink (light brown)",[175,1076,1077],{},"white\u002Fbrown",[15,1079,1080],{},"Find the pairs by the twist: the two wires of a pair wind around each other all the way along the cable. If in doubt, check with a meter from end to end before soldering.",[141,1082,1083,1107],{},[144,1084,1085],{},[147,1086,1087,1090,1093,1095,1098,1101,1104],{},[150,1088,1089],{},"Channel",[150,1091,1092],{},"Cable",[150,1094,1014],{},[150,1096,1097],{},"Signal \u002F return wire (Cat6A pastel)",[150,1099,1100],{},"RJ45 pin signal \u002F return",[150,1102,1103],{},"Ring",[150,1105,1106],{},"Temporal",[170,1108,1109,1131,1152,1172,1193,1213,1232,1250],{},[147,1110,1111,1114,1117,1119,1122,1125,1128],{},[175,1112,1113],{},"CH1",[175,1115,1116],{},"#1",[175,1118,1030],{},[175,1120,1121],{},"orange \u002F white",[175,1123,1124],{},"2 \u002F 1",[175,1126,1127],{},"Fpz",[175,1129,1130],{},"FT7",[147,1132,1133,1136,1138,1140,1143,1146,1149],{},[175,1134,1135],{},"CH2",[175,1137,1116],{},[175,1139,1043],{},[175,1141,1142],{},"green \u002F light green",[175,1144,1145],{},"6 \u002F 3",[175,1147,1148],{},"F7",[175,1150,1151],{},"T7",[147,1153,1154,1157,1159,1161,1164,1167,1169],{},[175,1155,1156],{},"CH3",[175,1158,1116],{},[175,1160,1056],{},[175,1162,1163],{},"blue \u002F light blue",[175,1165,1166],{},"4 \u002F 5",[175,1168,1151],{},[175,1170,1171],{},"CP5",[147,1173,1174,1177,1179,1181,1184,1187,1190],{},[175,1175,1176],{},"CH4",[175,1178,1116],{},[175,1180,1069],{},[175,1182,1183],{},"brown \u002F pink",[175,1185,1186],{},"8 \u002F 7",[175,1188,1189],{},"P7",[175,1191,1192],{},"TP7",[147,1194,1195,1198,1201,1203,1205,1207,1210],{},[175,1196,1197],{},"CH5",[175,1199,1200],{},"#2",[175,1202,1030],{},[175,1204,1121],{},[175,1206,1124],{},[175,1208,1209],{},"Oz",[175,1211,1212],{},"FT8",[147,1214,1215,1218,1220,1222,1224,1226,1229],{},[175,1216,1217],{},"CH6",[175,1219,1200],{},[175,1221,1043],{},[175,1223,1142],{},[175,1225,1145],{},[175,1227,1228],{},"P8",[175,1230,1231],{},"T8",[147,1233,1234,1237,1239,1241,1243,1245,1247],{},[175,1235,1236],{},"CH7",[175,1238,1200],{},[175,1240,1056],{},[175,1242,1163],{},[175,1244,1166],{},[175,1246,1231],{},[175,1248,1249],{},"CP6",[147,1251,1252,1255,1257,1259,1261,1263,1266],{},[175,1253,1254],{},"CH8",[175,1256,1200],{},[175,1258,1069],{},[175,1260,1183],{},[175,1262,1186],{},[175,1264,1265],{},"F8",[175,1267,1268],{},"TP8",[15,1270,1271],{},"Cable #1 carries CH1–CH4 and cable #2 CH5–CH8. In the temporal layouts and the God Helmet \u002F Shakti cross, CH1–4 are on the left and CH5–8 on the right, so run cable #1 to the left side of the band and cable #2 to the right.",[999,1273,1275],{"id":1274},"cat6a-notes","Cat6A notes",[36,1277,1278,1284,1290,1296,1302,1308],{},[39,1279,1280,1283],{},[42,1281,1282],{},"Never split a coil across two pairs."," If a coil's return comes back on a wire of another pair, its current loop opens up: the cable then makes its own field and couples into the neighbouring channels.",[39,1285,1286,1289],{},[42,1287,1288],{},"Solid 23 AWG conductors."," Cat6A wires are solid copper, about 0.07 Ω per metre: nothing next to the 2.2 kΩ resistor, so cable length does not change the field. Solid wire suits punch-down keystone jacks or soldering. RJ45 plugs must be rated for 23 AWG solid wire (Cat6A plugs); Cat5e plugs usually do not take it.",[39,1291,1292,1295],{},[42,1293,1294],{},"Solid wire breaks when it flexes at one spot."," Clamp the cable to the band and to the box (cable tie, clip or a dab of hot glue) so head movement bends the jacket, not the wires at the solder joints. From the clamp to each coil, use short stranded leads.",[39,1297,1298,1301],{},[42,1299,1300],{},"Ends."," Cut off the plastic cross (the pair separator) at the end and untwist each pair no more than about 1 cm.",[39,1303,1304,1307],{},[42,1305,1306],{},"Shielded Cat6A"," (foil or braid under the jacket: F\u002FUTP, S\u002FFTP): connect the shield to GND at the box end only and leave it open at the headband. Unshielded Cat6A (U\u002FUTP) needs nothing extra.",[39,1309,1310,1313],{},[42,1311,1312],{},"Stiffness."," Cat6A is thicker and stiffer than Cat5e. Run it down the back of the head, or change to a thin stranded cable at a junction on the band.",[24,1315,1317],{"id":1316},"power-budget","Power budget",[141,1319,1320,1330],{},[144,1321,1322],{},[147,1323,1324,1327],{},[150,1325,1326],{},"Load",[150,1328,1329],{},"Current at 5 V",[170,1331,1332,1340,1348],{},[147,1333,1334,1337],{},[175,1335,1336],{},"ESP32-S3 with Bluetooth LE",[175,1338,1339],{},"60–150 mA",[147,1341,1342,1345],{},[175,1343,1344],{},"AD5328 module incl. its ±12 V converter",[175,1346,1347],{},"~50–150 mA",[147,1349,1350,1353],{},[175,1351,1352],{},"8 coils at full scale (36 mA from the ±12 V rails)",[175,1354,1355],{},"~100 mA",[15,1357,1358],{},"A 5 V \u002F 2 A power bank is plenty. Some banks switch off at low load; if yours does, use one with an \"always on\" \u002F low-current mode.",[24,1360,1362],{"id":1361},"assembly-checklist","Assembly checklist",[1364,1365,1366,1373,1376,1379,1382,1385,1388],"ol",{},[39,1367,1368,1369,1372],{},"Bench-test the module ",[42,1370,1371],{},"without"," coils (docs\u002FCALIBRATION.md §1).",[39,1374,1375],{},"Solder the 8 resistors on perfboard between the module's terminal block and the RJ45 jacks.",[39,1377,1378],{},"Wire the PhotoMOS in the common return. Check with a meter that the return is open when the ESP32 is unpowered.",[39,1380,1381],{},"Fit the STOP button where you can reach it blind (on the cable or a hand-held puck).",[39,1383,1384],{},"Prepare the coils (docs\u002FPLACEMENT.md) and mark each inner (signal) lead.",[39,1386,1387],{},"Power up and run the \"slow rotation test\" (Helmet tab). Measure ~2.2 V across each resistor per mA, one channel at a time, in CCW order.",[39,1389,1390,1391,1394],{},"Polarity: run the DC test on each coil with a compass in front of it. All coils must show the ",[42,1392,1393],{},"same"," pole toward the head.",{"title":87,"searchDepth":1396,"depth":1396,"links":1397},3,[1398,1400,1401,1402,1403,1404,1408,1409],{"id":26,"depth":1399,"text":27},2,{"id":76,"depth":1399,"text":77},{"id":93,"depth":1399,"text":94},{"id":447,"depth":1399,"text":448},{"id":694,"depth":1399,"text":695},{"id":813,"depth":1399,"text":814,"children":1405},[1406,1407],{"id":1001,"depth":1396,"text":1002},{"id":1274,"depth":1396,"text":1275},{"id":1316,"depth":1399,"text":1317},{"id":1361,"depth":1399,"text":1362},"Schematic, coil leads, pin tables for each supported board, the arming switch and cable pair mapping.","md","docs\u002FWIRING.md","Build it",{},15,true,8,"\u002Fdocs\u002Fwiring","docs",{"title":5,"description":87},"wiring","docs\u002FWIRING",null,"FOc_c3x5MpkPYY7CboLARUZcrQ-V8vDyTL4sIUuBFPA",[1426,1436,1444,1451,1452,1461,1467,1476,1485,1493,1501,1510,1517,1525],{"path":1427,"title":1428,"description":1429,"section":1419,"slug":1430,"label":1431,"group":1432,"order":1433,"minutes":1434,"updated":1423,"file":1435},"\u002Fdocs\u002Foverview","God Helmet: 8-coil weak-field headset (ESP32 + AD5328 + web app over Bluetooth or USB)","What the project is, what is in the repository, quick start and current status.","overview","Overview","Start here",5,7,"README.md",{"path":1437,"title":1438,"description":1439,"section":1419,"slug":1440,"label":1438,"group":1432,"order":1441,"minutes":1442,"updated":1423,"file":1443},"\u002Fdocs\u002Fsafety","Safety","Who must not use the helmet, the rules for every session, and the safeguards built into the firmware.","safety",6,29,"docs\u002FSAFETY.md",{"path":1445,"title":1446,"description":1447,"section":1419,"slug":1448,"label":1449,"group":1413,"order":1434,"minutes":1399,"updated":1423,"file":1450},"\u002Fdocs\u002Fparts","Bill of materials","Every part of the helmet with quantities and notes.","parts","Parts list","hardware\u002FBOM.md",{"path":1418,"title":5,"description":1410,"section":1419,"slug":1421,"label":5,"group":1413,"order":1417,"minutes":1415,"updated":1423,"file":1412},{"path":1453,"title":1454,"description":1455,"section":1419,"slug":1456,"label":1457,"group":1413,"order":1458,"minutes":1459,"updated":1423,"file":1460},"\u002Fdocs\u002Fcalibration","Bench test and calibration","Bench test of the module, wiring checks, and measuring µT per mA with a phone.","calibration","Calibration",9,4,"docs\u002FCALIBRATION.md",{"path":464,"title":1462,"description":1463,"section":1419,"slug":460,"label":1464,"group":1413,"order":1465,"minutes":1434,"updated":1423,"file":1466},"Standalone display board","Running the helmet from the 2.8\" display board without phone or computer: flashing, the SD-card program pack, clock and screens.","Touchscreen board",10,"docs\u002FSTANDALONE.md",{"path":1468,"title":1469,"description":1470,"section":1419,"slug":1471,"label":1469,"group":1472,"order":1473,"minutes":1474,"updated":1423,"file":1475},"\u002Fdocs\u002Fplacement","Coil placement","The 10-10 system, finding sites with a tape measure, the standard and program-specific layouts, depth and field per target.","placement","Use it",11,42,"docs\u002FPLACEMENT.md",{"path":1477,"title":1478,"description":1479,"section":1419,"slug":1480,"label":1481,"group":1472,"order":1482,"minutes":1483,"updated":1423,"file":1484},"\u002Fdocs\u002Fexperiments","Testing it honestly: blinded sessions and psi trials","Blinded real and sham sessions, remote-viewing and telepathy protocols, and the statistics behind the results table.","experiments","Experiments",12,33,"docs\u002FEXPERIMENTS.md",{"path":1486,"title":1487,"description":1488,"section":1419,"slug":1489,"label":1490,"group":1472,"order":1491,"minutes":1434,"updated":1423,"file":1492},"\u002Fdocs\u002Fguides","Guided sessions (\"Guides\")","The guided-session format, the audio engine and how guides arm the helmet.","guides","Guided sessions",13,"docs\u002FGUIDES.md",{"path":1494,"title":1495,"description":1496,"section":1419,"slug":1497,"label":1495,"group":1472,"order":1498,"minutes":1499,"updated":1423,"file":1500},"\u002Fdocs\u002Fquestionnaires","Questionnaires","The questionnaires used in guides, their sources, licences and scoring.","questionnaires",14,20,"docs\u002FQUESTIONNAIRES.md",{"path":1502,"title":1503,"description":1504,"section":1419,"slug":1505,"label":1506,"group":1507,"order":1415,"minutes":1508,"updated":1423,"file":1509},"\u002Fdocs\u002Fsignals","Signals: what the coils play and where it comes from","What the coils play: coil physics and exposure limits, the Persinger-lab signals rebuilt from primary sources, vendor signal families and clinical timings.","signals","Signals","Reference",44,"docs\u002FSIGNALS.md",{"path":1511,"title":1512,"description":1513,"section":1419,"slug":1514,"label":1512,"group":1507,"order":1515,"minutes":1417,"updated":1423,"file":1516},"\u002Fdocs\u002Fpreset-format","Program file format","The program file format, every signal and coil mode, the pulse-table generators and the preset checker.","preset-format",16,"docs\u002FPRESET_FORMAT.md",{"path":1518,"title":1519,"description":1520,"section":1419,"slug":1521,"label":1522,"group":1507,"order":1523,"minutes":1459,"updated":1423,"file":1524},"\u002Fdocs\u002Fbrain-view","Brain view: how the field map is made","How the field map on the brain is computed, how accurate it is, and the data and licences behind it.","brain-view","Brain view",17,"docs\u002FBRAIN_VIEW.md",{"path":1526,"title":1527,"description":1528,"section":1419,"slug":1529,"label":1530,"group":1507,"order":1531,"minutes":1473,"updated":1423,"file":1532},"\u002Fdocs\u002Fprotocol","Bluetooth LE and USB protocol","The Bluetooth service, packet framing, the USB line protocol, every operation, session JSON and the trial commitment.","protocol","Device protocol",18,"docs\u002FBLE_PROTOCOL.md",1794317839966]