Powered Up vs Power Function Motors

The new Crocodile Train (LEGO set 10277) is incredibly popular… but it does not use the traditional train motor. Instead, it uses the LEGO Large, or “L”, motor. There are two variations of this motor, one for Power Functions (88003) and one for PoweredUp! (88013). The new PoweredUp! motor also includes feedback. The design of the cab is very tight and just barely fits a PoweredUp! hub (88009) and PoweredUp! “L” motor; in fact, the hub keeps the gear pressed snuggly in place on the “L” motor.

There are a few different WEB sites which discuss how one can use an older Power Functions motor, which is approximately 1/3 of the cost of a PoweredUp! motor with a PoweredUp! hub. Essentially, the hub desires to know what type of motor is connected so it knows how to behave; a train motor, for example, just wants to run continuously and does not care about how many rotations have occurred in one direction or the other. One can use a computer SATA cable to make an interface from the PoweredUp! hub to any power functions motor, telling the hub that it is a “train motor”… or to run continuously.

The are a few tricks:
1. You must remove the pin adjacent to the L notch on the male cable so that you go from 7 conductors to 6. Note, though for a SATA cable, pins 1, 4, and 7 are all common as a ground (see Figure 1). When you remove this conductor, that leaves only pins 4 and 7 in common. With the wiring of a SATA cable, you will find there are eight conductors (or at least there were in the cable I cut apart). I twisted all four together and soldered them in place. This essentially makes connects the ground (PoweredUp! pin 3 / SATA pin 4) to ID2 (PoweredUp! pin 6 / SATA pin 7).
2. In doing this, now you are left with four reasonably well insulated wires from the SATA cable.
3. The 3.3V Vcc (PoweredUp! pin 4 / SATA pin 5) is connected and soldered to ID1 (PoweredUp! pin 5 / SATA pin 6).
4. M1 (PoweredUp! pin 1 / SATA pin 2) was soldered to C1 of the Power Functions cable; one of the two centre wires.
5. M2 (PoweredUp! pin 2 / SATA pin 3) was soldered to C2 of the Power Functions cable; the other one of the two centre wires.

Now the PoweredUp! hub “thinks” that a PoweredUp! train motor is connected and will allow the motor to run continuously. The downside is that the iPhone / Android app is written such that for most of the trains, it will assume, correctly, that a traditional PoweredUp! train motor is connected and therefore will work as it should. However, for the Crocodile Train when using the app, it is expecting the PoweredUp! “L” motor and therefore does not recognize a train motor nor the PowerFunctions interface cable. The easy fix to this is to use one of the other trains within the app to control your Crocodile Train and it will work properly. The upside is that now the Bluetooth PoweredUp! controller (88010) also works!

A. Philohome – The Powered Up Connector
B. Eurobricks – Powered UP to Power Functions Adapter
C. Brick Stack Exchange – Are there Powered Up compatible connectors available?
D. Philohome – Power Functions
E. Electronics Stack Exchange –SATA Cable Ground Loop

PoweredUp! Cable from SATA Cable with Test Leads
SATA Cable Pins (from Electronics Stack Exchange)

Two further items:
a. A much better way to make this able would be to use LEGO’s proprietary PoweredUp! connector. You can purchase one reasonably economically by purchasing the PoweredUp! LED lights (88005). The SATA cable does not fit in with out holding it in place. This will make it fit much nicer.
b. A light is always nice. You could use Vcc (PoweredUp! pin 4) and GND ((PoweredUp! pin 3), along with a white LED (3.2Vf) or yellow LED (2.0Vf) and resistor to limit the current to ~5mA. Using Ohm’s Law, the resistor value for a white LED would be approximately 200 ohms and for yellow 330 ohms. Note that a 5mm (T 1 3/4) fits nicely in a technic pin hole.

Update 2020/08/08:
Here is a link on YouTube on how to “squeeze” a PowerFunctions motor into the Crocodile Train.