element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Arduino Projects
  • Products
  • Arduino
  • Arduino Projects
  • More
  • Cancel
Arduino Projects
Blog Spark Analyzer | IoT-enabled USB-C Adjustable PSU (WiFi + BLE)
  • Blog
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Arduino Projects to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: elektrothing
  • Date Created: 10 Dec 2023 10:53 PM Date Created
  • Views 844 views
  • Likes 2 likes
  • Comments 4 comments
  • bluetooth
  • pcb
  • arduino_projects
  • iot
  • electronics
  • power
  • arduino
Related
Recommended

Spark Analyzer | IoT-enabled USB-C Adjustable PSU (WiFi + BLE)

elektrothing
elektrothing
10 Dec 2023

Hey element14 community,

I'm here to introduce an exciting project that I've been working on: the Spark Analyzer. This isn't just another power supply unit; it's an IoT-enabled device that's hopefuly going to change how we interact with USB-C power sources. It's also on CrowdSupply image https://www.crowdsupply.com/elektrothing/spark-analyzer

What's the Spark Analyzer All About?

The Spark Analyzer is an ESP32-powered, Internet of Things (IoT) enabled USB Type-C adjustable power supply unit (PSU). This compact, versatile device allows you to power and monitor USB-C devices with ease, making it simple yet useful tool for developers, makers, and electronics hobbyists. You can check out my Instagram for more posts related to the testing - e.g. the App control, driving a 100W load, etc. https://www.instagram.com/elektrothing/

Key Features:

IoT Connectivity: With its IoT capabilities, the Spark Analyzer can be controlled remotely, offering you unparalleled convenience in managing your power needs.
Adjustable Power Supply: It enables precise control over voltage and setting current limits, ensuring that your USB-C devices receive the exact power they require.
Ease of Use: Designed with simplicity in mind, the Spark Analyzer is perfect for both beginners and seasoned professionals. With App support for iOS and Android as well as full support with the ESP SDK and Arduino.

Excited to hear your thoughts and get any feedback.

imageimageimageimage

  • Sign in to reply
  • shabaz
    shabaz over 1 year ago in reply to shabaz

    Self-answering! I found the GitHub repo for it (or some similarish variant) here: https://github.com/tooyipjee/Spark-Analyzer/tree/master 

    Plain language explanation of the board (because I found the description difficult to follow), based on examining the circuit diagram at that GitHub page:

    Simply speaking, the board has a USB-C input, and screw terminal outputs.

    The USB-C end is a "PD sink", i.e. it can connect to any typical wall USB-C charger and then negotiate 5/9/12/15/20V. Note: not all USB-C chargers will provide all five options, some skip 12V for instance.

    The negotiated output is present on the screw terminals for projects to use, i.e. the board acts like a power supply set to one of those five voltages.

    To measure output current, there is a chip called CC6904SO-10A, and the analog result from that is connected to the ESP32's internal ADC.

    Other than that, there is a 3.3V power supply to operate the ESP32 chip, but is also brought out on a pin header.

    The ESP32 has WiFi, so that things can be controlled and/or monitored, remotely.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • shabaz
    shabaz over 1 year ago in reply to elektrothing

    I see; some diagrams would help, with typical example use cases, so people can quickly see how they might put this device to use.

    I think I now understand; it connects to a USB-C PD-capable phone charger, and outputs 5-20V on the screw terminals.

    I had originally mistakenly thought the screw terminals were inputs, and the USB-C connector was the output for powering USB-C devices.

    Would it not be good to separate the power measurement capability? What if a project requires 3.3V (which is a very common scenario) or say 3.7-4.2V, or even 1.5V? By combining the USB-PD and the power measurement capability, it makes it less flexible. One option could be to have a switch to redirect the output to receive power from another set of screw terminals so an external power supply set to 1.5V or 3.3V or whatever could also be connected. That would expand the usefulness. Otherwise, some other way to set an arbitrary voltage (100mV steps would be more than adequate) from about 1V upwards. Without that, it's quite a restrictive power supply if only 5/9/12/15/20V can be set.

    Also, could you explain this sentence?

    "Adjustable Power Supply: It enables precise control over voltage and setting current limits, ensuring that your USB-C devices receive the exact power they require."

    How can USB-C devices receive power from this board, if the output is on the two screw terminals? It's pretty confusing.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • elektrothing
    elektrothing over 1 year ago in reply to shabaz

    Hi thanks for your feedback.

    It does have power measurement and it is on the output, measured directly using a current sensor so you know what the device is providing exactly.

    You can checkout my Hacakday post too, https://hackaday.io/project/194007-spark-analyzer-iot-enabled-usb-c-adjustable-psu.

    Also the device you shown is a power meter, my device will actually control the voltage that you are getting from the USB-C PD hostRelaxed

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • shabaz
    shabaz over 1 year ago

    Hi,

    I think most engineers (certainly including me) don't do Instagram, so that might not be the best way for people to discover how to use it.

    I used a USB-C power measuring device today (just a cheap one with a built-in LCD screen), so I was curious to read this blog post, however I don't think it would have worked for my scenario. I measured power consumption while using the USB-C device, i.e. power was measured in-between the USB host and the USB device, and I could do that because the measurement device had a USB-C socket and a plug. That seems to be a missing capability on your board; maybe it would be worth adding such a feature (if possible).

    The device I used could not log the data (I think it can chart it for a minute or so on the tiny in-built display, but I don't use that charting feature often) so that was a disadvantage, however on the plus side it had a fast responding display.

    This was the one I used; I don't have an opinion one way or another about it, except that it works for basic needs (I didn't spend more because I didn't know what I needed). I can't say if it is accurate or not, but still is quite a useful device, 

    image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube