Coder Social home page Coder Social logo

ebb_36-42's Introduction

EBB36 & 42 CAN V1.0

Hardware

  • MCU: ARM Cortex-M0 STM32F072C8T6 48MHz with CAN bus
  • Stepper Dirver: Onboard TMC2209 in UART mode, UART address: 00, Rsense: 0.11R
  • Onboard Accelerometer Sensor: ADXL345
  • Onboard Temperature IC: Max31865 Select 2 / 4 lines PT100 / PT1000 by DIP switch (no Max31865 verson have not this feature)
  • Input Voltage: DC12V-DC24V 6A
  • Logic Voltage: DC 3.3V
  • Heating Interface: Hotend (E0), maximum output current: 5A
  • Fan Interfaces: two CNC fans (FAN0, FAN1)
  • Maximum Output Current of Fan Interface: 1A, Peak Value 1.5A
  • Expansion Interfaces: EndStop, I2C, Probe, RGB, PT100/PT1000, USB interface, CAN Interface
  • Temperature Sensor Interface Optional: 1 Channel 100K NTC or PT1000(TH0), 1 Channel PT100/PT1000
  • USB Communication Interface: USB-Type-C
  • DC 5V Maximum Output Current: 1A

Firmware

  • Only supports Klipper at the present.

Pinout

  • EBB36 CAN V1.0

  • EBB42 CAN V1.0

Build Firmware Image

  1. Precompiled firmware(The source code version used is Commits on Nov 20, 2023)

  2. Build your own firmware

    1. Refer to klipper's official installation to download klipper source code to raspberry pi

    2. Building the micro-controller with the configuration shown below.

      • [*] Enable extra low-level configuration options
      • Micro-controller Architecture = STMicroelectronics STM32
      • Processor model = STM32F072
      • IF USE CanBoot
        • Bootloader offset = 8KiB bootloader
      • ELSE
        • Bootloader offset = No bootloader
      • Clock Reference = 8 MHz crystal
      • IF USE USB
        • Communication interface = USB (on PA11/PA12)
      • ElSE IF USE CAN bus
        • Communication interface = CAN bus (on PB8/PB9)
        • (1000000) CAN bus speed


    3. Once the configuration is selected, press q to exit, and "Yes" when asked to save the configuration.

    4. Run the command make

    5. The klipper.bin file will be generated in the folder home/pi/kliiper/out when the make command completed. And you can use the windows computer under the same LAN as raspberry pi to copy klipper.bin from raspberry pi to the computer with pscp command in the CMD terminal. such as pscp -C [email protected]:/home/pi/klipper/out/klipper.bin c:\klipper.bin(The terminal may prompt that The server's host key is not cached and ask Store key in cache?((y/n), Please type y to store. And then it will ask for a password, please type the default password raspberry for raspberry pi)

board.cfg files

EBB36 & 42 CAN V1.1

Hardware

  • MCU: ARM Cortex-M0+ STM32G0B1CBT6 64MHz whit FDCAN bus
  • All other parameters are the same as EBB36 & 42 CAN V1.0

Firmware

  • Only supports Klipper at the present.

Pinout

  • EBB36 CAN V1.1

  • EBB42 CAN V1.1

Build Firmware Image

  1. Precompiled firmware(The source code version used is Commits on Nov 20, 2023)

  2. Build your own firmware

    1. Refer to klipper's official installation to download klipper source code to raspberry pi

    2. Building the micro-controller with the configuration shown below.

      • [*] Enable extra low-level configuration options
      • Micro-controller Architecture = STMicroelectronics STM32
      • Processor model = STM32G0B1
      • IF USE CanBoot
        • Bootloader offset = 8KiB bootloader
      • ELSE
        • Bootloader offset = No bootloader
      • Clock Reference = 8 MHz crystal
      • IF USE USB
        • Communication interface = USB (on PA11/PA12)
      • ElSE IF USE CAN bus
        • Communication interface = CAN bus (on PB0/PB1)
        • (1000000) CAN bus speed


    3. Once the configuration is selected, press q to exit, and "Yes" when asked to save the configuration.

    4. Run the command make

    5. The klipper.bin file will be generated in the folder home/pi/kliiper/out when the make command completed. And you can use the windows computer under the same LAN as raspberry pi to copy klipper.bin from raspberry pi to the computer with pscp command in the CMD terminal. such as pscp -C [email protected]:/home/pi/klipper/out/klipper.bin c:\klipper.bin(The terminal may prompt that The server's host key is not cached and ask Store key in cache?((y/n), Please type y to store. And then it will ask for a password, please type the default password raspberry for raspberry pi)

Firmware update

Warning:

(Only for EBB 36/42 CAN V1.1)
STM32G0B1CB needs to jump to the System memory area to run bootloader (written by STMicroelectronics) when using DFU to update firmware through the Type-C port. Referring to the description in manual AN2606, The initialization process of this bootloader is shown in the following figure:

The IO of USART will be configured before going to the USB DFU mode.
After going to DFU mode, PA2 will be configured to output high level by bootloader in System memory area refer to the datasheet of STM32G0B1CB

PA2 is used for the hotend MOSFET in EBB36 & 42 CAN V1.1, The high level in the DFU mode change the hotend into heating state. Therefore, please pay attention to disconnect the main power VIN of the hotend when using the DFU of Type-C port to update the firmware, or ensure that the firmware update is completed soon and goto the normal working mode. Never keep MCU in DFU mode for a long time when the main power supply and hotend are connected.

board.cfg files

EBB36 & 42 CAN V1.2

V1.2 compared with v1.1: only the IO of hotend is changed from PA2 to PB13

board.cfg files

EBB SB2240_2209 CAN V1.0

Hardware

  • MCU: ARM Cortex-M0+ STM32G0B1CBT6 64MHz whit FDCAN bus
  • Stepper Dirver:
    • TMC2209 Version: Onboard TMC2209 in UART mode, UART address: 00, Rsense: 0.11R
    • TMC2240 Version: Onboard TMC2240 in SPI mode
  • Onboard Accelerometer Sensor: ADXL345
  • Onboard Temperature IC: Max31865 Select 2 / 4 lines PT100 / PT1000 by DIP switch
  • Input Voltage: DC12V-DC24V 9A
  • Logic Voltage: DC 3.3V
  • Heating Interface: Hotend (E0), maximum output current: 5A
  • Fan Interfaces:
    • 2 x CNC fans (FAN1, FAN2)
    • 1 x 4-wire fan (4W_FAN)
  • Maximum Output Current of Fan Interface: 1A, Peak Value 1.5A
  • Expansion Interfaces: EndStop, Bltouch, Proximity(NPN & PNP), RGB, PT100/PT1000, USB, CAN, SPI
  • Temperature Sensor Interface Optional: 1 Channel 100K NTC or PT1000(TH0), 1 Channel PT100/PT1000 (Max31865)
  • USB Communication Interface: USB-Type-C
  • DC 5V Maximum Output Current: 1A

Firmware

  • Only supports Klipper at the present.

Pinout

  • EBB SB2240 CAN V1.0

  • EBB SB2209 CAN V1.0

Build Firmware Image

  1. Precompiled firmware(The source code version used is Commits on Jan 8, 2023)

  2. Build your own firmware

    1. Refer to klipper's official installation to download klipper source code to host

    2. Building the micro-controller with the configuration shown below.

      • [*] Enable extra low-level configuration options
      • Micro-controller Architecture = STMicroelectronics STM32
      • Processor model = STM32G0B1
      • IF USE CanBoot
        • Bootloader offset = 8KiB bootloader
      • ELSE
        • Bootloader offset = No bootloader
      • Clock Reference = 8 MHz crystal
      • IF USE USB
        • Communication interface = USB (on PA11/PA12)
      • ElSE IF USE CAN bus
        • Communication interface = CAN bus (on PB0/PB1)
      • (1000000) CAN bus speed


    3. Once the configuration is selected, press q to exit, and "Yes" when asked to save the configuration.

    4. Run the command make

    5. The klipper.bin file will be generated in the folder home/pi/kliiper/out when the make command completed. And you can use the windows computer under the same LAN as host to copy klipper.bin from host to the computer with pscp command in the CMD terminal. such as pscp -C [email protected]:/home/pi/klipper/out/klipper.bin c:\klipper.bin(The terminal may prompt that The server's host key is not cached and ask Store key in cache?((y/n), Please type y to store. And then it will ask for a password, please type the default password raspberry for raspberry pi or biqu for CB1)

board.cfg files

  • sample-bigtreetech-ebb-sb-canbus-v1.0.cfg includes all the correct pinout for EBB SB2240_2209 CAN V1.0
  • TMC2209 Version: uncomment tmc2209 config and comment tmc2240 config
    [tmc2209 extruder]
    uart_pin: EBBCan: PA15
    run_current: 0.650
    stealthchop_threshold: 999999
    
    # [tmc2240 extruder]
    # cs_pin: EBBCan: PA15
    # spi_software_sclk_pin: EBBCan: PB10
    # spi_software_mosi_pin: EBBCan: PB11
    # spi_software_miso_pin: EBBCan: PB2
    # run_current: 0.650
    # stealthchop_threshold: 999999
    
  • TMC2240 Version: uncomment tmc2240 config and comment tmc2209 config
    # [tmc2209 extruder]
    # uart_pin: EBBCan: PA15
    # run_current: 0.650
    # stealthchop_threshold: 999999
    
    [tmc2240 extruder]
    cs_pin: EBBCan: PA15
    spi_software_sclk_pin: EBBCan: PB10
    spi_software_mosi_pin: EBBCan: PB11
    spi_software_miso_pin: EBBCan: PB2
    driver_TPFD: 0
    run_current: 0.650
    stealthchop_threshold: 999999
    

Note

Here’s BIGTREETECH! For Makers, by makers!

  • We appreciate all of your support to BIGTREETECH! To offer an excellent experience of creation to every makers,We’re devoted to design and produce high-quality and durable accessories!

How to contact:

If you have any technical issue,please don’t hesitate contact us:

Follow us on social media to get more news:

Purchase link:

https://www.biqu.equipment/products/bigtreetech-ebb-36-42-can-bus-for-connecting-klipper-expansion-device

ebb_36-42's People

Contributors

rowan2233 avatar lobodpl avatar jaburges avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.