USB-C Controller

I’m looking to order the Journeyman in the near future, and would love if all the cables and the controller had an option for USB-C, instead of just the one found on the display. Seems like it would be simple to implement, and keep the controller hardware from going obsolete so quickly. I haven’t used USB-A in about ten years, and just think it’s a little odd that all the cabling is still so old. I know once it’s all hooked up it will be less noticeable, but as a tech nerd who like things neat and organized (drag chain please!) and up to date, just seems like a simple fix. I tried looking for USB-C controllers to just supply my own, but I can’t find ANYTHING, but maybe i’m looking in all the wrong places. Thoughts?

1 Like

Yep. That’s not an option and not likely to be an option. The controller is a Buildbotics open source project (with proprietary modifications). The hardware is designed to be inexpensive and uses components like the monitor that are low cost generic commodities.

If USB-A is that big of a deal you may actually not find it even in machines costing 3 or 4 times as much. Industrial hardware is generally behind the curve on lots of tech. Not sure what industry you’re in that you haven’t seen USB-A in 10 years considering the move to USB-C is only about 4 tears old (2017) in terms of common use in the PC industry. Heck, it wasn’t even invented until 2014 (technical description of the connector - physical implementations lagged substantially).

I haven’t found the USB-A connector to be an issue. The cables needed are easy to find and cheap. I haven’t unplugged them since I set it up 3 months ago.

Best of luck in your search for a CNC with connectors that meet your technical currency standards.

4 Likes

Hey Frank,

Then it is likely that you haven’t bought or used a Desktop Computer in the last ten years. Even with USB 3.x, the USB-A socket is still the standard for host side (and the USB-B socket for the device side).

The Onefinity Controller, which is based on Buildbotics Controller, contains a Raspberry Pi 3, wich is a single-board desktop computer.

USB-C ports are found on Android smartphones and tablets, and increasingly on small laptops, but there only in addition to USB-A sockets. Also USB-C is not a USB standard, but a Connector standard. It is designed to serve for many purposes, of which USB is only one. It was developed to meet the demands of smartphone manufacturers to have a connector that is very small, rotation-symmetrical and serves for multiple technologies in one connector (like e.g. USB, DisplayPort, MHL, Thunderbolt, HDMI or VirtualLink).

So a CNC Controller Manufacturer may ask: For what would I need that? Is it worth the cost?

The USB host adapter that is built into the Raspberry Pi 3 is the Microchip LAN7500. If you want to replace this host adapter by one that supports USB-C ports, it is the question how to attach it to the system.

The problem is, on Raspberry Pis up to model 3, the USB host adapter and other peripheral devices are not attached to the CPU directly, but over a peripheral controller, and even this peripheral controller is not connected directly to the ARM Cortex-A53 CPU, but to the VideoCore IV. Therefore peripheral devices are relatively slow:

Raspi_Broadcom_mtk_IG__50pct

Schematic structure of the Raspberry Pi

Contrary to what one might expect, it is not the ARM CPU that leads the Raspis, but the VideoCore multimedia processor - and that is also the limiting factor.

Source: Überreife Himbeere - Wie es mit dem Raspberry Pi weitergeht - Heise c’t 8/2016 S. 148

It’s only with Rasperry Pi 4 that USB and Ethernet host adapters are connected directly to the CPU over PCIe, allowing for USB 3.0 including USB On-The-Go and Gigabit Ethernet.

As you see, it’s not that simple. And if you ask, why not switch to Raspberry Pi 4 then? I think the answer of the manufacturer of Onefinity CNC or of Buildbotics.com Controller would be: “This is a CNC controller. What do you expect from a CNC controller?” The files that you want to upload to this CNC controller using a USB flash drive or over WiFi or Ethernet are G-code files in plain ASCII. That are small files, interface speed practically does no matter at all, so USB 2.0, WiFi 802.11 b/g/n (with up to 72.2 Mbps) and Fast Ethernet (100 Mbps) are fast enough. And a CNC Controller is no smartphone. There are no problems of space on the back panel. The designer of a CNC Controller would always use hardware that just fits the needs of such a device in order to calculate final price of its product. And even if the Raspberry Pi 3 inside the CNC Controller is replaced one day by Raspberry Pi 4: It has not USB-C sockets either. Except for the power supply, but this socket is not accessible from the outside of the CNC Controller.

2 Likes

PS: And welcome to the forum! :slight_smile:

I think it’s nice that it’s not all RS-232 :wink: From my experience with computer/PC equipment, the small contacts in the USB-C connector wear out quickly. Fortunately, the USB Forum chose that the spring-loaded contacts are in the cable and not in the device, so you just need to replace the cable. In contrast, in its Lighting connector, Apple made the mistake of putting the spring loaded contacts in the phone and not the cable; I had to replace the connector in my phone recently to fix the flakey connection and it was a real pain. In any case, USB-A is a much bigger and more robust connector and IMO more suited to an industrial / machinery environment. It’s so ubiquitous and pervasive that I don’t see it going away in what’s left of my lifetime.

2 Likes

Wow this forum has some really competent geeks, and I say that with admiration. I haven’t heard techno speak like that since star trek TNG. I think i am in the right forum for sure.

3 Likes