SKR-PRO-V1.2 MacOS Connection Issues

Hello! I recently purchased an MPCNC kit from V1. The kit I purchased was included the SKR Pro1.2, 5x 2209 drivers, and TFT35 E3 V3.

I have everything wired up, and I’m able to move the motors (both X, both Y, and Z) with the TFT35 E3, but I have failed every attempt at connecting my Mac computer to the SKR Pro.

Here’s a picture of the wired SKR Pro:

I’ve tried 2 different methods to connect my MacBook to the SKR Pro, but they both fail and I’m not sure where to go from here. I’d love any recommendations for additional debugging steps or perhaps different software or routes to connect my MacBook to the SKR Pro.

  1. I tried connecting my MacBook to the SKR Pro using a USB connection and Repetier host. Repetier Host looks like it can connect to the board, but all G-Code commands sit waiting and are never ran. I always see the “# commands waiting” and “Unknown printer firmware” messages displayed in the logs. I’m not sure if this is expected or not. I’ve tried 2 different USB cables and baud rates 250000 and 115200 with each, but results are always the same.

I thought for a while it was the old MacOS USB Driver issue that I saw in a few forum posts, and I installed the recommended driver. I noticed that in System Report I see the SKR Pro board listed, so I assume the USB connection is working.

Screenshot 2023-04-17 at 1.18.18 PM

Is this a Repetier Host issue? If so, what other software is recommended to use on a Mac to control my CNC?

  1. I tried connecting my MacBook to the SKR Pro through a raspberry pi running CNC.js

I boot the raspberry pi without the USB cable connected and everything boots successfully.

I can connect my MacBook to my CNC.js instance, and i’m able to see a USB port listed, but I don’t know what this is since I don’t have the USB connected.

As soon as I connect the USB connection from the SKR Pro to my Raspberry Pi, the display connected to my raspberry pi freaks out and the CNCjs webpage (and server loaded) on my MacBook crashes. I tried two cables and set the SKR Pro to both 250000 and 115200, but get the same issue.

What could possibly be causing the USB to crash my raspberry pi?

I’m happy to provide more pictures, info, or feedback if that can help troubleshoot this issue. Thanks for your help!

Wow. That is a weird one. The connection should be a regular uart connection over usb. There is no reason the usb or node.js application should be able to crash your pi. None that I can think of, anyway.

  1. Make sure you didn’t install repetier server along with host. In windows, the server holds the serial port and host can’t open it. Permissions for concurrent file access are different in mac, but I would still make sure you don’t have server installed at all.
  2. Do you have permission to open it? In Linux, I need to be in the dialout group to open the port. I think it is some holdover name from the modem era. Not sure if that is a problem in Mac or not.

Are you using my v1pi image to run cncjs? I know it is woefully out of date, but it has been tested to work.

1 Like

Yeah, and a holdout from the BSD Unix from which MacOSX is derived. Back in the days when a serial port probably meant a modem connected to a physical telephone line which could have incurred long distance charges, and even if not there would be a limited number of them and they were mostly used to batch send/receive email.

There is no reason the usb or node.js application should be able to crash your pi. None that I can think of, anyway.

I agree that it seems really strange. The only thing I can think of is if the SKR Pro is pulling power through the USB connection and there’s not enough left for the Pi… but I have the SKR Pro powered when this is happening so I don’t see why that would be happening.

Make sure you didn’t install repetier server along with host.

Good idea. I don’t think I installed Repetier Server, but I checked anyway. I couldn’t find it in any of the locations called out here.

Do you have permission to open it?

Hmmm… my user is an Admin on this computer, but thanks for thinking of it. I also connect a USB Hub to this computer all the time to have more ports and don’t have issues with that. I doubt permissions is the cause.

Are you using my v1pi image to run cncjs?

I am, yes. Specifically v0.18 without hotspot.

I think I’ll try starting with a fresh pi instance (non v1pi) to see if this reproduces. If it doesn’t, I’ll try installing CNCjs with NPM and check with that. I’ll report back when I find those things out.

1 Like

The dialout issue is specifically for uart or serial connections. In linux, they are tty devices.

❯ ls -al /dev/ttyUSB0
crw-rw---- 1 root dialout 4, 64 Apr 17 10:59 /dev/ttyUSB0

Other USB devices don’t have those permissions. But when these type show up, they are owned by root and the group is dialout. The permissions are set so the owner and group can read/write, but not everyone. I haven’t ever owned a MAC, so I am only guessing because sometimes they work the same as Linux.

That’s a good move. If you know docker, I believe there is a docker version of the cncjs install too. npm on a pi is a bit of a pain to install (at least, it used to be).

You should also be able to just connect using something like miniterm.py. The baud rate should be 250k, if it has the V1 firmware. The settings from the factory is often 115200. You might not get the echo back of what you are typing, but connecting and sending M115 should do something. If you don’t know what I am talking about, then ignore it.

Forgot to add for the dialout group, you can brute force permissions with

sudo chmod a+rw /dev/tty*

This gives read/write permissions to everyone (even guest) and will last until the device is disconnected or the system is rebooted. It is a brute force method and does have other security implications, particularly since it is all of the serial devices. If you know the port name you can mitigate some of this by specifying it.

Maybe unsure there is no congregation of dust on the SKR pro USB port or something that could short-circuit a contact on the usb port on the board.
Also try to connect with stepper drivers and the 3 display ribbons removed to test the skr board alone.

I had some issues connecting my M1 MacBook Pro to the SKR to use Lightburn. I got different performance based on whether I used a 3rd party USB-C to USB-A adapter versus an Apple adapter. I also purchased a USB-C to USB-B cable, which seems to work well (longer so the computer can be further away.) From the issues with v1pi, I suspect you are looking at something else, but I thought I’d share my hardware issue.

I routinely connect my MacBook Pro and my iPad through v1pi with no issues. I never wanted my computer near the sawdust, so I actually prefer the iPad interface. I suspect if you can get the Pi working the Mac will work as well.

This may be crazy - so I’m just throwing it out there for people smarter than me. On my SKR board I have 5 black wires next to the ribbons and your picture only shows 4. Compared to mine, it appears to be an open pin? Maybe its just a difference in revision?

IMG_1975 Small

I agree with trying to remove the display to remove one variable.

Reporting back on this issue. I am now able to get my Mac to control my MPCNC via v1pi, but still not able to connect via USB. I’m able to move forward with my setup and don’t plan on digging into the Mac → USB issue any further.

RE: v1pi - this ended up being a silly (and slightly embarrassing) issue. I was booting up my raspberry pi and SKR Pro separately and then connecting the USB after. For some reason this makes my raspberry pi freeze up. Once I changed the power cycle order it all works as expected - powering up the SKR Pro first, connecting the USB from SKR Pro to Raspberry Pi, then powering up the Raspberry Pi.

RE: Mac USB connection - I still haven’t been able to get this to work, but I’m probably going to throw in the towel on it.

I tried fiddling with permissions like @SupraGuy suggested. It didn’t change anything.

I noticed there is no dialout group at all on my computer. All of my /dev/tty* devices are either in the wheel or tty group. I added my user to both groups, but again nothing changed.

@dgkeith237 's suggestion is interesting. I didn’t think of the USB adapter, which I am using to connect USB-A to my M1 MBP. I am using an Apple brand USB-C to USB-A adapter. Keith said he got different performance, but doesn’t say which one worked for him. I assume it was the Apple brand that worked, but mine isn’t. I’m tempted to try other USB adapters, but I don’t think it’s worth spending money on those to figure this out now that the v1pi is working.

Anyway, thanks for all of the help. I’m still confused, but unblocked. :thinking::champagne:

1 Like

I have had issues with power spikes during startup. But I assume the skr takes almost none from the usb, because the jumper is set to get power from Vcc.

I have my power set up where the pi gets powered when I turn on the power strip. The skr (and the motors) get power through a dedicated 12V switch. That lets me toggle the skr power without restarting the pi.

The wheel group is for sudo access, I think. I wish we could figure out the mac issue. But you’re right about dropping it.