Where are u making this schematic at? sorry, you have led connected to 5v rail. my leds anodes are connected to PCF8574 the cathodes are all connected to ground.
The PCF8574 is not made for supplying current to a LEDs anode. It should always be connected to the cathode and you must write LOW to that port to get light in the LED.
You should read the datasheet for this chip for more details.
This won't work. The pin of a pcf chip is not quite the same as an Arduino pin. It does not have an equivalent to OUTPUT+HIGH. Only OUTPUT+LOW and INPUT_PULLUP.
When set to 1, there will be very little current and the led will only light dimly, if at all. So you have probably not damaged the chip connecting them like that. If you want your LEDs brighter, connect the cathode to the pin and anode to 5V but now you must use a resistor.
Right now, the pin is reading 0 because your led is pulling the pin to ground.
I don't understand that part fully. OUTPUT+HIGH / OUTPUT+LOW
The led are just to visualize the state of the outputs.
If i unplug the leds from the PCF8574 i still dont see any change from PCF.read(). the output of the chip seems to be working. i can make all the leds chase themselfs.
Well i disconnected the LED's then wrote pin 0 HIGH and readback pin 0 and it still shows 0. the i tried with a 10k pullup resistor on pin 0 and still shows 0. I figured since the output is still working then most likely the pin was fully functional. I have quite a few of these chips so i was lazy about connecting the resistors. i guess i will have to wire up another one. ill probably use switching transistors to handle the current because im going to be switching relays
You will only need the transistors to drive bare relay coils directly. If so, don't forget the flyback diodes. But if using relay modules like those sold for use with Arduino, these have transistors and diodes built-in, you won't need to add any.