Forum / Guestbook

Luberth Sun 21 Apr 2019 at 7:27:22
3D Printer Marlin add i2c io port Expander

3D Printer Marlin add i2c io port Expander
3D printer i2c QuickButtons?
3D printer i2c SpeedButtons? SpeedKeys? FastButtons? FastKeys?
is it possible to add
PCF8574 i2c iic twi 8 bit IO Expander?
MCP23017 i2c iic twi 16 input/output port expander/expansion?
CJMCU-8575 PCF8575 16-Bit Bidirectioneel IIC I2C TWI En SMBus I / O Expander Expansion Board Voor Arduino
MAX7321 I2C Port Expander with 8 Open-Drain I/Os - Maxim

so that in my opinion kan add on a easy way a filament detect switch
or easy way to add a pause button
or other quick keys?
part cooling fan speed +/-
hotend temp +/-
speed +/-
flow +/-
only connect a few wires to SCL SDA +5vdc and (-,0vdc,ground,mass) or whatever they call it
and have 8 or 16 free i/o

do not know if its possible is there space for it
Sketch uses 115614 bytes (91%) of program storage space. Maximum is 126976 bytes.

or connect an arduino via ?? and use that for messages to printer to do above keypresses

marlin is on github
but i see no forum link
ask a question on marlin github is not the place i think

filament detect Anet A6 Filament detect Anet A8
i have not dived into it
i now nothing about this
a microswitch on filament to detect out off filament
i see some do it with octoprint pause
i would like to use an i/o from anet mainboard itself
is there any i/o free usable?
3d printer i2c io expander / 3d printer ic2 io expansion iic twi twowire
if not is it possible to add an i2c i/o expander? to scl sda
if i2c port expander is possible you have loads of free i/o
MCP23017 i2c 16 input/output port expander???
PCF8574 I2C 8 bit IO Expander???

i do not know yet
but a out off filament switch detector would be nice

Filament Run-Out Sensor on Your 3d-Printer

Anet A8 / Marlin FW Filament Runout Sensor

MORE PINS PLEASE! PCF8574 Arduino Pin Extender (Easy)

PCF8574 GPIO Extender - With Arduino
#include "Arduino.h"
#include "PCF8574.h"
PCF8574(uint8_t address);
pcf8574.pinMode(P0, OUTPUT);
pcf8574.pinMode(P1, INPUT);
PCF8574.digitalWrite(P1, HIGH); or PCF8574.digitalWrite(P1, LOW);
PCF8574::DigitalInput di = PCF8574.digitalReadAll();
Serial.print(di.p0); Serial.print(" - ");
Serial.print(di.p1); Serial.print(" - ");
Serial.print(di.p2); Serial.print(" - ");
If you want read a single input you can use the "digitalRead(Pin_Number)" function:
int p1 = PCF8574.digitalRead(P1); // reads pin P1

to use interrupts
you must initialize the pin and the function to call when PCF8574 raises an interrupt,
once done you can use the interrupt routine in your program.

// Function interrupt
void keyPressedOnPCF8574();
// Set i2c HEX address
PCF8574 pcf8574(0x20, ARDUINO_UNO_INTERRUPT_PIN, keyPressedOnPCF8574);

End of Message, Thanks For Viewing! ☺
Tip: if your watching on your phone or tablet ⁝ add / save to homescreen and you get a nice icon its Free!
Tip: on your computer or laptop do not forget to bookmark this page its Free!
BookMark ShortCut Keys press ctrl+d on your keyboard



Reply to this Message

Did you like this Page id=285 ?

NO:         YES:


Design a Bit like ForumOne 4.0 WayBack 1999 ©
Always Read the Small print?! - -


thanks for your support
Thank You!

Co2 FootPrint WebServer

                         My Cheap Chinese Friend Ali     
Copyright Luberth Dijkman 2018 ... 2019

GoodBye Galaxy!