There have been several posts about connecting 12V proximity sensors with built in pull-up to break out boards (BOB). Those solutions usually involve adding a couple of discrete components for each input leaving the user with the problem of how to mount them. This device provides the necessary circuitry on a ready made board.
There are a number of sources for a quad level shifter board based on the BSS138 MOSFET. They are made for Arduinos and similar systems but should work well for interfacing BOB inputs to higher voltage systems.
The low voltage side (LV) can work with the 5V logic levels common to CNC equipment. The high voltage side (HV)can accept up to 24V. Actually the BSS138 is rated for 50V max but we should allow a wide margin of safety.
This device works with active low logic inputs. The BOB inputs may not be setup with a pull down resistor.
The BSS138 level shifter is bi-directional. A low level signal on either side is transfered to the other. I am suggesting this device be used for input to a BOB but it could be used in limited cases for output. The problem is that the high side output current may not exceed the BOB's output current. You would have to research the allowable BOB output current and ensure it's greater than the load by a reasonable margin.
Connect the BOB's 5V and ground to the LV and GND terminals. Terminals LV1 to LV4 connect to your BOB board IO.
Connect the high voltage side power to HV and ground to GND. NOTE: this device does not isolate the grounds like an opto board. Terminals HV1 to HV4 will accept signals from NPN prox switches. It's OK if they have their own pull-up to their power supply voltage. You can also use limit switches to ground as the BSS138 board has its own pull-up resistors. While switches and open collector outputs do work directly connected to the BOB this could be useful where you have a mix of input types and want to protect again accidental connection to a high voltage input.
https://www.sparkfun.com/products/12009