hardware:3d_druck:47_-_zeropointmodule_von_pkelectronics
Differences
This shows you the differences between two versions of the page.
hardware:3d_druck:47_-_zeropointmodule_von_pkelectronics [2023/10/17 08:27] – removed - external edit (Unknown date) 127.0.0.1 | hardware:3d_druck:47_-_zeropointmodule_von_pkelectronics [2023/10/20 09:25] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== ZeroPointModule von pkelectronics ====== | ||
+ | |||
+ | ===== YouTube Video #47 ===== | ||
+ | {{youtube> | ||
+ | |||
+ | \\ | ||
+ | ===== Nutzerkreis ===== | ||
+ | Grundsätzlich kann das ZPM überall da eingesetzt werden, wo CAN mit einem Raspberry zusammen benötigt wird. Bei den Druckern passt es besonders gut in die kleinen High-End DIY Drucker wie den Voron V0, aber natürlich auch in den Micro oder den Salad Fork. Generell kann man sagen eignet sich das ZPM überall da, wo der Platz eher knapp ist und ein Fullsize Raspberry + CAN Adapter + 5V Netzteil nur schwer unter zubekommen ist. | ||
+ | ===== Shop ===== | ||
+ | https:// | ||
+ | |||
+ | ===== Eigenschaften ===== | ||
+ | * 5V 5A/3A DCDC converter powering the Pi and added peripherals | ||
+ | * MCP2515 CAN-Bus Controller and corresponding transceiver | ||
+ | * Two hardware PWM channels with low-side mosfet switches | ||
+ | * SPI, Uart and I2C connections broken out to dedicated connectors | ||
+ | * Two connectors for 4-pin PWM Fans (5V/24V selectable) | ||
+ | * low profile form-factor possible | ||
+ | * eeprom based autoconfiguration of IOs and kernel modules | ||
+ | |||
+ | ===== Grundinstallation ===== | ||
+ | * Den Raspberry Pi Zero auf dem ZeroPointModul aufstecken (auf korrekte Einbaulage achten !) \\ {{: | ||
+ | * 24V Spannungsversorgung am Board anschließen \\ {{: | ||
+ | * SD-Karte vorbereiten | ||
+ | * Installation über [[klipper_faq: | ||
+ | * Installation über [[klipper_faq: | ||
+ | * SD-Karte in den Raspberry Pi einstecken und Spannungsversorgung einschalten | ||
+ | * per SSH einloggen und Updates / Tools installieren \\ '' | ||
+ | * ungenutzte Dienste entfernen \\ '' | ||
+ | |||
+ | ===== Betrieb mit UART ===== | ||
+ | * Serielle Schnittstelle aktivieren \\ '' | ||
+ | * -> 3 Interface Options | ||
+ | * -> I6 Serial Port | ||
+ | * Would you like a login shell to be accessible over serial? -> No | ||
+ | * Would you like the serial port hardware to be enabled? -> Yes | ||
+ | * Bluetooth abschalten \\ '' | ||
+ | * unter '' | ||
+ | * '' | ||
+ | * Firmware mit Serial als Communication interface \\ '' | ||
+ | * Seriellen Port in Linux finden \\ '' | ||
+ | * Kommunikation Testen \\ '' | ||
+ | * Seriellen Port in printer.cfg eintragen | ||
+ | |||
+ | ===== Betrieb mit USB ===== | ||
+ | * die Firmware mit USB Support kompilieren \\ {{: | ||
+ | * USB Port verbinden | ||
+ | * USB-Micro auf USB-A Adapter | ||
+ | * USB-Hub für Raspberry Pi Zero | ||
+ | * Seriellen Port in Linux finden \\ '' | ||
+ | * Kommunikation Testen \\ '' | ||
+ | * Seriellen Port in printer.cfg eintragen | ||
+ | ===== Betrieb mit CAN ===== | ||
+ | * Die Firmware mit CAN Support und korrekter Geschwindigkeit compilieren und flashen \\ {{: | ||
+ | * Buskoppler prüfen \\ '' | ||
+ | * CAN erstmal down \\ <code bash> | ||
+ | pi@TestPi:~ $ ip a | ||
+ | 2: can0: < | ||
+ | link/can | ||
+ | </ | ||
+ | * Interface UP \\ '' | ||
+ | * '' | ||
+ | auto can0 | ||
+ | iface can0 can static | ||
+ | bitrate 500000 | ||
+ | up ifconfig $IFACE txqueuelen 128 | ||
+ | </ | ||
+ | * <code bash> | ||
+ | pi@TestPi:~ $ ~/ | ||
+ | Found canbus_uuid=5b5a812a7283, | ||
+ | Total 1 uuids found | ||
+ | </ | ||
+ | * CAN UUID in der '' | ||
+ | [mcu] | ||
+ | restart_method | ||
+ | canbus_uuid | ||
+ | </ | ||
+ | * Kommunikation Testen \\ '' | ||
+ | ===== Extra Hardware über RPi nutzen ===== | ||
+ | * Hardware PWM einrichten \\ https:// | ||
+ | * Problem Neopixel -> Timinig Problem \\ https:// | ||
+ | * Problem ADXL345 \\ https:// | ||
+ | |||
+ | ==== Raspberry PI MCU ==== | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | [*] Enable extra low-level configuration options | ||
+ | Micro-controller Architecture (Linux process) | ||
+ | () GPIO pins to set at micro-controller startup | ||
+ | </ | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | ==== Pin / GPIO Übersicht ==== | ||
+ | ^ PIN ^ Funktion | ||
+ | | GPIO2 / SDA | Generel IO / I2C | J1 | | ||
+ | | GPIO3 / SCL | Generel IO / I2C | J1 | | ||
+ | | GPIO4 | Generel IO | J8 | | ||
+ | | GPIO5 | Generel IO | J5 | | ||
+ | | GPIO6 | Generel IO | J6 | | ||
+ | | GPIO7 | NC | - | | ||
+ | | GPIO12 / PWM0 | Generel IO / PWM | J3 / J6 | | ||
+ | | GPIO13 / PWM1 | Generel IO / PWM | J3 / J5 | | ||
+ | | GPIO14 / TXD0 | UART | J1 | | ||
+ | | GPIO15 / RXD0 | UART | J1 | | ||
+ | | GPIO16 | ||
+ | | GPIO17 | ||
+ | | GPIO18 / SPI1_CS0 | ||
+ | | GPIO19 / SPI1_MISO | ||
+ | | GPIO20 / SPI1_MOSI | ||
+ | | GPIO21 / SPI1_SCLK | ||
+ | | GPIO22 | ||
+ | | GPIO23 | ||
+ | | GPIO26 | ||
+ | | GPIO27 | ||
+ | |||
+ | ==== Beispiel Konfig ==== | ||
+ | <code | ZeroPoint.cfg> | ||
+ | [mcu RPi] | ||
+ | serial : / | ||
+ | |||
+ | [fan_generic RPiFan_0] | ||
+ | pin : RPi: | ||
+ | max_power | ||
+ | cycle_time | ||
+ | hardware_pwm | ||
+ | kick_start_time : 0.100 | ||
+ | |||
+ | [fan_generic RPiFan_1] | ||
+ | pin : RPi:gpio13 | ||
+ | max_power | ||
+ | cycle_time | ||
+ | hardware_pwm | ||
+ | kick_start_time : 0.100 | ||
+ | |||
+ | [output_pin RPi_GPIO_4] | ||
+ | pin : RPi:gpio4 | ||
+ | |||
+ | [output_pin RPi_GPIO_5] | ||
+ | pin : RPi:gpio5 | ||
+ | |||
+ | [output_pin RPi_GPIO_6] | ||
+ | pin : RPi:gpio6 | ||
+ | |||
+ | [output_pin RPi_GPIO_16_LED] | ||
+ | pin : RPi:gpio16 | ||
+ | |||
+ | [output_pin RPi_GPIO_17] | ||
+ | pin : RPi:gpio17 | ||
+ | |||
+ | [output_pin RPi_GPIO_22] | ||
+ | pin : RPi:gpio22 | ||
+ | |||
+ | [output_pin RPi_GPIO_23] | ||
+ | pin : RPi:gpio23 | ||
+ | |||
+ | [output_pin RPi_GPIO_26_LED] | ||
+ | pin : RPi:gpio26 | ||
+ | |||
+ | [output_pin RPi_GPIO_27] | ||
+ | pin : RPi:gpio27 | ||
+ | |||
+ | [temperature_sensor BME_280] | ||
+ | sensor_type | ||
+ | i2c_address | ||
+ | i2c_mcu | ||
+ | i2c_bus | ||
+ | |||
+ | [gcode_macro QUERY_BME280] | ||
+ | gcode: | ||
+ | {% set sensor = printer[" | ||
+ | {action_respond_info( | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | sensor.temperature, | ||
+ | sensor.pressure, | ||
+ | sensor.humidity))} | ||
+ | </ | ||
+ | |||
+ | ===== Einbauvarianten ===== | ||
+ | * Stefan Dej (meteyou) - Voron V0 \\ {{: | ||
+ | |||
+ | ===== Probleme ===== | ||
+ | * sehr kleine Beschriftung auf dem Board | ||
+ | * SPI Port vom Zero nicht nutzbar (TBD) | ||
+ | * Schrauben übereinander -> Fuckelig :-) | ||
+ | |||
+ | ===== Links ===== | ||
+ | * ZeroPointModule auf Github \\ https:// | ||
+ | * Schaltplan \\ https:// | ||
+ | * Pascal Wistinghausen - IB-Wistinghausen \\ https:// | ||