Using PCF8574 for on/off control

Hi, I bought a Kincony KC868-A16, with the goal of controlling a dozen 1~5Watt 12V LED’s (on/off). I saw the board uses PCF8574 for IO expansion, and with the usermod Multi Relay, I can control a few outputs. But it’s only the 4 outputs at a time of 1 of the PCF8574 (there are 2 of them wired to 16 MOSFETs/output channels.
First of all, I would like to address both PCF8574 chips and use all 8 outputs of them, but the UI only let’s me enter 1 I2C address, and only select 4 pins to assign to “relays”.
Second, I read in the docs (and tested) the separate API to switch/toggle the PCF8574’s outputs, but I actually need them to be driven by artnet, so is there some way to drive them as “LED” in the configuration?
What kind of changes would be needed, can this be done via configuration, or does it require additional coding?

You can compile sources and increase relay count to 8 and that should work OOB.

However if you need two PCF8574 chips (for 16 outputs) you’ll need to modify the code yourself.
When extending the usermod with PCF8574 support I considered multiple chips but the implementation was too complex to be viable.

Yo may be better of by using one of the newer chips (S2 or S3 or C3) and utilise the abundance of GPIO pins on them.

To achieve your goals with the Kincony KC868-A16 and effectively use both PCF8574 chips for controlling your LEDs via Art-Net, you’ll need to delve into some configuration and possibly coding. Here’s a breakdown of your options:

1. Using Both PCF8574 Chips:

  • The Kincony board typically allows for only one I2C address in the UI, but you can modify the firmware to recognize both addresses.
  • You would need to access the firmware where the I2C addresses are defined. If you’re comfortable with coding, look for the section where the PCF8574 is initialized, and add logic to initialize both devices.
  • You might need to create an additional set of functions to handle the outputs for the second PCF8574.

2. Configuring the API for Art-Net:

  • To control the outputs via Art-Net, you will have to ensure that the API supports addressing multiple outputs correctly.
  • Depending on how the Art-Net is implemented in the Kincony firmware, you may need to adapt the existing functions or create new ones that allow you to send commands to the PCF8574 outputs.

3. Using the LEDs in Configuration:

  • The standard configuration may only allow you to set up a limited number of relays. If you want to control all 16 outputs as LEDs:
    • You could modify the part of the firmware that processes the Art-Net commands to map the inputs from Art-Net to both PCF8574 devices.
    • This might involve creating a mapping that lets Art-Net control all 16 outputs instead of just the 4 available through the UI.

4. Implementation Steps:

  • Review Documentation: Look closely at any available documentation for the Kincony firmware, especially regarding I2C and Art-Net implementations.
  • Access the Firmware: If the firmware is open-source or accessible, consider downloading it to make the necessary modifications.
  • Add Code for Second PCF8574: Create functions for addressing the second PCF8574 and manage output states based on Art-Net commands.
  • Testing: After modifications, thoroughly test to ensure both PCF8574 chips respond correctly to Art-Net commands.

Summary:

While the configuration options may be limited out of the box, with some coding, you can extend the functionality to use both PCF8574 chips effectively and control all your LEDs via Art-Net. If you’re not comfortable with coding, you might also consider reaching out to the community for the Kincony or related forums for any existing solutions or additional support.

Hi,

Thanks for the detailed reply. I have already looked into the code earlier this week. I did not really get where the support for a new output type would need to go. I think you need to extend a “Bus”, but not sure, I found at first glance no other “usermods” to add additional led types (or busses if I got that part right). But I have only dipped into the documentation so far, TBH.

Kincony is open source, I think the default firmware is based on Tasmota, and they have esphome samples too, but both those firmwares seem not to have the right artnet support (iirc, one is artnet output only, and the other only for RGB pixel maps, and very experimental).

Coding, I’m not very familiar with c++, but it should be fine.

I will come back here if I got more questions.

Kind regards

Jack is a spam bot. ignore whatever they say and avoid their links.