
New thing ctrl hardware
swindonmakers/new-thing-controller
Hardware and software for new wifi connected Thing controller

An open-source experiment in carbon removal based on the electrochemical pH swing of seawater.
Synthwave is an open-source printed circuit board by alexose, from the alexose/synthwave repository on GitHub, published under the CERN-OHL-P-2.0 licence. It is a 2-layer board of 57.1 × 102.9 mm with 70 parts on 63 nets, routed with 490 tracks and 3 vias.
It is built around the L7805 and TIP120. Its parts include 20 resistors, 10 diodes, 10 transistors, 10 connectors and 3 ICs.
An open-source experiment in carbon removal based on the electrochemical pH swing of seawater.
Developed by Alex Ose with input from many wonderful collaborators via the OpenAir Collective.
Synthwave demonstrates the removal of CO2 from seawater using a technique developed by the Alan Hatton lab at MIT using a 3D printed shell and common, off-the-shelf components. With a materials list under $300, Synthwave is designed to be an entry point for anyone looking to learn more about ocean-based carbon capture.
It is designed to be fully hackable, with an emphasis on approachability. Our goal is to bring ocean-based electrochemical capture to a wider audience!
The hardware is based around cheap 12V devices (that can easily be sourced from Amazon or eBay) controlled by a common ESP32 microcontroller. The full list of materials can be found here.
Each of the above parts are mounted onto a 3D printed frame that can be found in the /model directory of this repo.
Because it is designed to sit on top of a standard 5-gallon bucket, printing this frame requires a large-format printer
with a build area of at least 320x320mm.
There are several parts:
Please refer to the README.md inside of the /model directory for pointers on how to print and assemble the device.
As this is an electrochemistry project, it requires electrodes. While the exact formulation of these are under active development, I would be happy to send you a working set of electrodes for free. Please get in touch with me directly in order to arrange this.
Should you choose to develop your own electrodes, please consult this thread in the OpenAir forums for more information.
The software that controls this system is designed to be as readable as possible. It uses Arduino-compatible code to connect to a local WiFi network and expose a simple API. This API accepts various parameters that allow a client to toggle each individual pump, solenoid, and/or electrode set.
This allows us to control the system entirely from a web browser, which allows easy fine-tuning of process variables without the need to continuously re-flash the ESP32 server.
Should you need to re-flash the ESP32, this can be accomplished via the /update endpoint. The software uses the ElegantOTA library to allow for simple, over-the-air reflashing as to not require a physical connection to the device.
Our current estimates show that Synthwave removes about of 0.076g of CO2 per run cycle[1]. Assuming a cycle time of five minutes, an unlimited source of seawater, and non-degrading electrodes, it should be able to remove 22g of CO2 per day.
There are many, many variables that will affect this final number: The quality of the electrodes, the concentration of CO2 in the seawater, the cycle frequency, and the efficiency of our electrochemical reaction.
Above all else, Synthwave aims to put our assumptions to the test, and help inform our next phase of research.
[1]: The original paper cites 0.0543 mmol of CO2 removed per cycle, with water volumes of about 30mL. Scaling this up to 1L gives us 1.7404 mmol, or 0.0766 grams of CO2.
Synthwave is designed to be a simple demonstration of a specific carbon capture technique. In order to achieve commercial viability, virtually all aspects of this technique will need to be improved.
The main need is to improve the quality of our electrodes. This will likely involve better coating techniques to avoid degredation and fouling, as well as more accurate measurements, CV charts, etc.
With improved electrodes, the next step would be to improve the throughput of the device to handle much more seawater. This could be achieved by increasing the size of the system, designing a more efficient cell (ideally a flow cell), or perhaps building multiple machines to work in parallel with one another.
We hope that by publishing this work under the CERN license, future hackers and collaborators will share their learnings. It is only by the overwhelming success of carbon capture do we hope to maintain a livable climate. By investing your time and energy in projects like this one, we may uncover key techniques that make gigaton-scale carbon capture viable.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 20 | 1k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R1, R2, R3, R4, R5, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20 +4 |
| 10 | 1N5400 | Diode_THT:D_DO-34_SOD68_P10.16mm_Horizontal | D1, D2, D3, D4, D5, D6, D7, D8, D9, D10 |
| 10 | GND | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | PUMP1, PUMP2, REL1, REL2, VAC1, VAC2, VALVE1, VALVE2, VALVE3, VALVE4 |
| 10 | TIP120 | Package_TO_SOT_THT:TO-220-3_Vertical | Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, Q10 |
| 4 | MountingHole | MountingHole:MountingHole_2.2mm_M2 | H1, H2, H3, H4 |
| 1 | ADC1 | Connector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_Vertical | J3 |
| 1 | ADC2 | Connector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_Vertical | J4 |
| 1 | ADC3 | Connector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_Vertical | J5 |
| 1 | ADC4 | Connector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_Vertical | J6 |
| 1 | Barrel_Jack_Switch | Connector_BarrelJack:BarrelJack_Horizontal | J1 |
| 1 | E1 | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | E2 |
| 1 | GPIO26 | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | J9 |
| 1 | GPIO39 | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | J10 |
| 1 | Heltec_HTIT-WB32v3 | Custom Footprints:Heltec_HTIT-WB32 | U1 |
| 1 | L7805 | Package_TO_SOT_THT:TO-220-3_Vertical | U3 |
| 1 | L9110 | Package_DIP:DIP-8_W7.62mm | U2 |
| 1 | LOGO | Untitled | G*** |
| 1 | MINI-360 | Custom Footprints:MINI-360 | P1 |
| 1 | NetTie_2 | NetTie:NetTie-2_THT_Pad1.0mm | NT1 |
| 1 | RX | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | J8 |
| 1 | TX | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | J7 |
It measures 57.1 × 102.9 mm and has 2 copper layers, 1.6 mm thick.
70 parts, built around the L7805 and TIP120. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the alexose/synthwave repository on GitHub, at the commit this page was made from: the board is pcb/Synthwave.kicad_pcb and its schematic pcb/Synthwave.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the CERN-OHL-P-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

swindonmakers/new-thing-controller
Hardware and software for new wifi connected Thing controller


robsonsmartins/usbflashprog
A memory device programmer (Flash/EPROM/E2PROM) board and software, connected to PC by USB port.

dcpedit/mission-control
Modern replacement PCB for the IBM Model M 122

RudgeLab/FluoPi
Code and teaching materials for UC/BackyardBrains raspberry pi "macro" scope.

jones139/catocam
Uses a custom trained YoloV8 model on a Raspberry Pi to Detect Cats in CCTV images and Unleash a Cat Deterrent

dcpedit/taptap
TapTap is a solenoid breakout board for those who are interested in adding a solenoid to their existing project. All you need are the following components, and an extra data pin on your microcontroller.
