scottalford75 / Remora

Remora is a free, opensource LinuxCNC component and Programmable Realtime Unit (PRU) firmware to allow LPC176x and STM32F4 micro-controller controller boards to be used in conjunction with a Raspberry Pi to implement a LinuxCNC based CNC controller.
125 stars 31 forks source link

SKR E3 Turbo support #59

Open zmrdko opened 9 months ago

zmrdko commented 9 months ago

Hi Scott, would it be possible to add support for SKR E3 Turbo with little effort? It has the same LPC1769 as SKR 1.4 Turbo. Im just not sure if it would be possible to wire it to rasberry pi:

https://teamgloomy.github.io/skr_E3T_pins.html

There is no EXP2 connector and I did not find pin 1.31.

cakeslob commented 9 months ago

1.31 is the reset pin, if you need to change it, you just need to adjust your config.txt and change the reset pin number. it looks like the other pins are there, 0.15-0.18 so it should be fine

zmrdko commented 9 months ago

Thanks for quick reply @cakeslob! I changed the config.txt acording to pinout for E3 Turbo, but now I'm getting error:

Testing connection to TMC driver...failed!
Likely cause: no power
  Fix the problem and reset board.

full log:

## Entering SETUP state
1. Reading json configuration file
Mounting the filesystem... OK
Opening "/fs/config.txt"... OK
Json config file lenght = 4527

Closing "/fs/config.txt"... 
2. Setting up DMA and threads

3. Parsing json configuration file
Config deserialisation - Deserialization succeeded

4. Config threads
Creating thread 40000
Creating thread 1000
Creating thread 57600

5. Loading modules

Servo thread object
Reset pin
Make Reset Pin at pin 0.19

Creating a std module
Creating Pin @
  portNumber = 0
  pin = 19

Base thread object
X - Joint 0 step generator

Creating a std module
Creating Pin @
  portNumber = 1
  pin = 0
Creating Pin @
  portNumber = 1
  pin = 4
Creating Pin @
  portNumber = 1
  pin = 8

On load - run once module
Make TMC2209
X - Joint 0 TMC driver

Creating a std module
Creating Pin @
  portNumber = 1
  pin = 1

Starting the COMMS thread
Registering interrupt for interrupt number = 3
    power on Timer 2
    timer set MCR
    timer set PR
    timer set PRO
    timer start
Testing connection to TMC driver...failed!
Likely cause: no power
  Fix the problem and reset board.

Stopping the COMMS thread
    timer stop

Base thread object
Y - Joint 1 step generator

Creating a std module
Creating Pin @
  portNumber = 1
  pin = 9
Creating Pin @
  portNumber = 1
  pin = 14
Creating Pin @
  portNumber = 1
  pin = 15

On load - run once module
Make TMC2209
Y - Joint 1 TMC driver

Creating a std module
Creating Pin @
  portNumber = 1
  pin = 10

Starting the COMMS thread
Registering interrupt for interrupt number = 3
    power on Timer 2
    timer set MCR
    timer set PR
    timer set PRO
    timer start
Testing connection to TMC driver...failed!
Likely cause: no power
  Fix the problem and reset board.

Stopping the COMMS thread
    timer stop

Base thread object
Z - Joint 2 step generator

Creating a std module
Creating Pin @
  portNumber = 1
  pin = 16
Creating Pin @
  portNumber = 4
  pin = 29
Creating Pin @
  portNumber = 4
  pin = 28

On load - run once module
Make TMC2209
Z - Joint 2 TMC driver

Creating a std module
Creating Pin @
  portNumber = 1
  pin = 17

Starting the COMMS thread
Registering interrupt for interrupt number = 3
    power on Timer 2
    timer set MCR
    timer set PR
    timer set PRO
    timer start
Testing connection to TMC driver...failed!
Likely cause: no power
  Fix the problem and reset board.

Stopping the COMMS thread
    timer stop

Base thread object
E0 - Joint 3 step generator

Creating a std module
Creating Pin @
  portNumber = 0
  pin = 4
Creating Pin @
  portNumber = 2
  pin = 6
Creating Pin @
  portNumber = 2
  pin = 7

On load - run once module
Make TMC2209
E0 - Joint 3 TMC driver

Creating a std module
Creating Pin @
  portNumber = 0
  pin = 5

Starting the COMMS thread
Registering interrupt for interrupt number = 3
    power on Timer 2
    timer set MCR
    timer set PR
    timer set PRO
    timer start
Testing connection to TMC driver...failed!
Likely cause: no power
  Fix the problem and reset board.

Stopping the COMMS thread
    timer stop

Base thread object
E1 - Joint 4 step generator

Creating a std module
Creating Pin @
  portNumber = 0
  pin = 21
Creating Pin @
  portNumber = 2
  pin = 11
Creating Pin @
  portNumber = 2
  pin = 12

On load - run once module
Make TMC2209
E1 - Joint 4 TMC driver

Creating a std module
Creating Pin @
  portNumber = 0
  pin = 22

Starting the COMMS thread
Registering interrupt for interrupt number = 3
    power on Timer 2
    timer set MCR
    timer set PR
    timer set PRO
    timer start
Testing connection to TMC driver...failed!
Likely cause: no power
  Fix the problem and reset board.

Stopping the COMMS thread
    timer stop

board is powered from external 24V power source, Raspberry Pi4 has its own USB-C power source.

cakeslob commented 9 months ago

Hey, sorry I must have missed this post, do you have it working now? It looks like your 2209's are not communicating with remora, but I am not an expert with the LPC or TMC drivers