Skip to content
Particle Photon-based IoT power supply
C++ HTML C
Branch: Hardware_Devel…
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ina129Spark @ d1e8ae0
.gitignore
.gitmodules
Calibration.cpp
Calibration.h
CurrentMonitor.cpp
CurrentMonitor.h
README.md
VoltageMonitor.cpp
VoltageMonitor.h
adc_calibration_battery.xlsx
dac_calibration.xlsx
ina129Spark.cpp
ina129Spark.h
index.htm
main.h
main.ino

README.md

JCPower

JCPower is a wifi-connected, battery-powered power supply that supports variable voltage (1-20V), and current limiting (0-1A). This repository contains all source code, including tuning values - one JCPower was fully assembled and calibrated, so that the DAC/ADC values were accurate.

Hardware

Circuit schematic, board, and component list is available on the (CircuitMaker page)[https://workspace.circuitmaker.com/Projects/Details/Jason-Cihelka-2/JCPOWER]

JCPOWER Board

The Particle Photon board was chosen as the control board due to its builtin ADC/DACs, processing power, and ease of connection/sharing of data over Wifi.

Software

Board Firmware

Main firmware codebase can be found in the main.ino file. The only way to set current/voltage values is by sending a command through the Particle Cloud. This is done through the web (html) software.

The TI INA219 digital current monitor chip was selected to provide high-precision current measurements over I2C. Interface with this device was achived through this GitHub library. Note typo - library is called ina129Spark but it is actually for the ina219 device

Software

A simple web page was built in HTML to allow the user to send voltage and current commands, as well as monitor device readings and battery level. No styling was applied to the page for simplicity, it just has the base functionality to control the board.

JCPower Site

You can’t perform that action at this time.