Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added Docs/img/pcb1.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Docs/img/pcb2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Docs/img/pcb3.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Docs/img/pcb4.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Docs/img/pcbway.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
63 changes: 63 additions & 0 deletions Docs/pcbway.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# PCB Sponsorship & Manufacturing

The prototype PCBs for **PowerControlHub** were kindly supported by [PCBWay](https://www.pcbway.com).

From initial upload through to delivery, the process was smooth and well handled. The engineering review helped catch potential manufacturing issues early, and communication throughout was clear and responsive.

The boards arrived well packaged and the overall build quality is excellent — clean silkscreen, solid solder mask, and consistent alignment across all layers. Assembly was completed accurately, with components correctly placed and ready for bring-up and testing.

This support has made it possible to move quickly from design to real-world validation, which is a significant step forward for the project.

---

## Prototype Boards

![PowerControlHub PCB](/Docs/img/pcb4.jpg)
![PowerControlHub PCB](/Docs/img/pcb3.jpg)
![PowerControlHub PCB](/Docs/img/pcb2.jpg)
![PowerControlHub PCB](/Docs/img/pcb1.jpg)

---

## What’s Next

These boards will be used for real-world testing, including:

- Relay control under load (12V devices: lighting, radio, horn, etc.)
- ESP32 integration and communication
- Sensor inputs and external component support
- Thermal behaviour inside an enclosed fuse box environment

Updates and findings will be added here as testing progresses.

---

## Hardware Design

The current design is based around an **8-relay configuration**, with full KiCad source files available in the repository:

If you're interested in adapting the design:

> A **4-relay variant** could be a useful smaller/cheaper option — if you’d like to design one, feel free to fork the project or submit a PR.

---

## Enclosure (Work in Progress)

A custom **3D-printed enclosure** is currently being developed to house the board and associated components.

- Designed for real-world installation (e.g. marine / vehicle use)
- Integrated mounting and cable management
- Thermal considerations (including airflow / fan support)

Preview images and STL files will be added soon.

---

## Acknowledgement

PCB prototyping and assembly support for this project was provided by [PCBWay](https://www.pcbway.com), enabling rapid iteration from concept to physical hardware.

---

*If you're working on your own hardware project and need PCB fabrication or assembly, PCBWay is well worth considering: https://www.pcbway.com*
12 changes: 6 additions & 6 deletions PowerControlHub.sln
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 18
VisualStudioVersion = 18.3.11206.111
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SymLinks", "SymLinks", "{6BEDDF33-F479-4FE4-B2E7-CD5DA6C98DA1}"
ProjectSection(SolutionItems) = preProject
..\SymLinks\SymLinkDefinitionsSmartFuseBox.txt = ..\SymLinks\SymLinkDefinitionsSmartFuseBox.txt
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{B2F18220-A117-4398-ABED-D0C31F1F5844}"
ProjectSection(SolutionItems) = preProject
..\Docs\BluetoothBle.md = ..\Docs\BluetoothBle.md
Expand All @@ -17,7 +12,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{B2F18220-A
..\LICENSE = ..\LICENSE
..\Docs\Local.md = ..\Docs\Local.md
..\Docs\MessageBus.md = ..\Docs\MessageBus.md
..\README.md = ..\README.md
Docs\pcbway.md = Docs\pcbway.md
..\Docs\RestApi.md = ..\Docs\RestApi.md
..\Docs\ScheduleEvents.md = ..\Docs\ScheduleEvents.md
..\Docs\Sensors.md = ..\Docs\Sensors.md
Expand Down Expand Up @@ -45,6 +40,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PowerControlHub", "PowerCon
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PowerControlHubSync", "PowerControlHubSync\src\PowerControlHubSync.csproj", "{31F2CD6A-B9E7-9FD4-3808-399C52A59619}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{BE620726-06BF-40F2-9AFC-50D6B6BAB1E5}"
ProjectSection(SolutionItems) = preProject
README.md = README.md
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down
6 changes: 2 additions & 4 deletions PowerControlHub/PowerControlHub.vcxproj

Large diffs are not rendered by default.

19 changes: 14 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# PowerControlHub
# PowerControlHub
PowerControlHub is an Arduino-based 12V power distribution and control system for marine and off-grid applications. It provides configurable fused relay switching, multi-protocol sensor telemetry, WiFi/BLE/MQTT connectivity, and a companion touchscreen control panel — all managed through a unified serial command protocol and EEPROM-persisted configuration.

**PowerControlHub** is an Arduino-based 12V power distribution and control system for marine and off-grid applications. It provides configurable fused relay switching, multi-protocol sensor telemetry, WiFi/BLE/MQTT connectivity, and a companion touchscreen control panel — all managed through a unified serial command protocol and EEPROM-persisted configuration.

> Current firmware version: **0.9.0** — see [`FirmwareVersion.h`](PowerControlHub/FirmwareVersion.h).
> Current firmware version: **0.9.1.x** — see [`FirmwareVersion.h`](PowerControlHub/FirmwareVersion.h).

---

## Table of Contents

- [Overview](#overview)
- [Prototype PCBs](#prototype-pcbs)
- [Key Features](#key-features)
- [Architecture](#architecture)
- [Board Support](#board-support)
Expand All @@ -20,7 +20,8 @@
- [Documentation](#documentation)
- [License](#license)

---



## Overview

Expand All @@ -36,6 +37,14 @@ Commands are grouped by prefix (`F`, `C`, `R`, `H`, `W`, `S`, `M`, `N`, `E`, `T`

---

## Prototype PCBs

<a href="Docs/pcbway.md"><img src="Docs/img/pcbway.jpg" width="180" align="right" alt="Prototype PCBs for PowerControlHub were supported by PCBWay" /></a>
Prototype PCBs for **PowerControlHub** were supported by [PCBWay](https://www.pcbway.com), enabling rapid iteration from design to real-world testing.

See the [PCB Sponsorship & Manufacturing](Docs/pcbway.md) page for photos, build details, and ongoing testing.

---
## Key Features

### Relay Control
Expand Down
Loading