Answers.Body: <p>I use a Mindstorms NXT brick and an Android smartphone for my remote controlled tank. The downside is that the NXT motors are slower than the regular Power Functions motors, and connecting PF motors to the NXT brick requires additional components.</p>
  
  <p>Personally, I am satisfied with NXT motors and don't bother kludging PF motors. (Yet.)</p>
  
  <p>Here is a modular truck design as an example: <a href="http://www.nxtprograms.com/MTV/index.html">http://www.nxtprograms.com/MTV/index.html</a><br>
  I use this app for my remote control: <a href="https://market.android.com/details?id=org.jfedor.nxtremotecontrol">https://market.android.com/details?id=org.jfedor.nxtremotecontrol</a></p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-26T08:06:31.797Z
Answers.LastActivityDate: 2011-10-26T08:06:31.797Z
Answers.UserDisplayName: Atilla Filiz
Answers.Body: <p>Personally I would go with Arduino (on the car) and an Android phone as the controller (via bluetooth). There's plenty of reference on the web about mixing the two.</p>
  
  <p>The main problem is interfacing with non Lego parts (motors, PCB, ...).  Luckily, you can find Lego adapter parts in many Robot/Electronic sites. For example at Pololu:
  <a href="http://www.pololu.com/search?query=lego&amp;x=0&amp;y=0" rel="noreferrer">http://www.pololu.com/search?query=lego&amp;x=0&amp;y=0</a></p>
  
  <p><strong>Edit 1</strong> (Howto)
  <em>Android bluetooth communication</em>:  There's the <a href="http://developer.android.com/guide/topics/wireless/bluetooth.html" rel="noreferrer">main page</a> and the <a href="http://developer.android.com/resources/samples/BluetoothChat/index.html" rel="noreferrer">sample</a> (I started from that one and modified it). You can also use the 'Sena Bterm' app to send and receive characters (no programming necessary but very basic).</p>
  
  <p><em>Arduino bluetooth communication</em>: This is the most simple part.  All you need is a <a href="http://www.sparkfun.com/products/10269" rel="noreferrer">bluetooth breakout board</a> and connect it to the Arduino <a href="http://img528.imageshack.us/img528/1318/arduinouno11.jpg" rel="noreferrer">like so</a>.  Using the board is as simple as any normal Serial communication ex: </p>
  
  <pre><code>void setup()
  {
    Serial.begin(115200);
  }
  
  int inByte = 0;
  
  void loop()
  {
    if (Serial.available() &gt; 0) 
    {
      inByte = Serial.read();
  
      if(inByte == '1'){
         Serial.println("test1");
      } else {
         Serial.println("test2");
      }
    }
  }
  </code></pre>
  
  <p>This code reads the incoming bytes and write 'test1' or 'test2' in return. </p>
  
  <p><em>Hardware</em>: this is the coolest part because you get to do what ever you want.  I <a href="http://phillipecantin.blogspot.com/2011/01/arduino-lego.html" rel="noreferrer">personal use</a> a lot of Lego Technics and sometime modified them to interface with foreign parts.  Search the web and you'll find cool Lego-compatible stuff like this <a href="http://www.robotstorehk.com/lego/images/servocage.jpg" rel="noreferrer">servo joint</a>, this <a href="http://www.robokits.co.nz/KHT001" rel="noreferrer">servo bracket</a> or this <a href="http://www.robotshop.com/ca/productinfo.aspx?pc=RB-Nex-24&amp;lang=en-US" rel="noreferrer">wheel</a>.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-25T22:05:51.593Z
Answers.Text: You have the most interesting answer ATM, but do you know any good tutorials which could help me with the planning of such a project?
Answers.UserDisplayName: Coyote
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-26T10:44:56.483Z
Answers.Text: I've added more details in 'Edit 1'
Answers.UserDisplayName: pcantin
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-26T12:19:03.427Z
Answers.Text: Thank you! I have never heard of Arduino. After checking out the main website it seems to be a solution I would enjoy a lot. I will probably start with the LEGO Power Functions and as soon as I get one of the Arduino boards I'll start playing with that.
Answers.UserDisplayName: Coyote
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-26T12:23:38.413Z
Answers.Text: Cool. When you get there, if you have any questions I'll be there
Answers.UserDisplayName: pcantin
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-25T20:26:37.640Z
Answers.LastActivityDate: 2011-11-08T14:04:25.320Z
Answers.LastEditDate: 2011-11-08T14:04:25.320Z
Answers.UserDisplayName: pcantin
Answers.Body: <p>LEGO have produced an <a href="http://shop.lego.com/en-US/LEGO-Power-Functions-IR-Speed-Remote-Control-8879" rel="noreferrer">IR Speed Remote Control unit</a> as part of their current "Power Functions" range.</p>
  
  <p>This offers:</p>
  
  <ul>
  <li>Features 4 RC channels, 2 stop button and 2 direction control switches!</li>
  <li>Use the jog wheels to control your motor speed!</li>
  </ul>
  
  <p><img src="https://i.sstatic.net/5ABu8.jpg" alt="IR Speed Remote Control"></p>
  
  <p>You will also need the <a href="http://shop.lego.com/en-GB/LEGO-Power-Functions-IR-Receiver-8884" rel="noreferrer">receivers</a> as well.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-07-27T09:08:01.683Z
Answers.Text: This controller is now scheduled to be retired soon.
Answers.UserDisplayName: Mołot
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-25T21:48:04.483Z
Answers.LastActivityDate: 2011-10-25T21:48:04.483Z
Answers.UserDisplayName: Zhaph - Ben Duguid
Answers.Body: <p>The <a href="http://www.brickset.com/detail/?Set=9398-1">9398-1: 4x4 Crawler</a> is an interesting candidate with the new servo motor. It comes in 2H2012.
  There are <a href="http://technicbricks.blogspot.hu/2012/05/more-images-on-2h2012-lego-technic-sets.html">more pictures on TechnicBricks</a>.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2012-06-09T13:38:34.827Z
Answers.LastActivityDate: 2012-06-09T16:43:50.330Z
Answers.LastEditDate: 2012-06-09T16:43:50.330Z
Answers.UserDisplayName: palacsint
Answers.Body: <p>The MindStorms NXT controller can work over bluetooth:</p>
  
  <p><a href="http://mindstorms.lego.com/">http://mindstorms.lego.com/</a></p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-26T14:09:59.483Z
Answers.Text: Bonus points for using your android phone accelerometer to determine the vehicle direction. Super fun to do, and the effect on people is great.
Answers.UserDisplayName: Joubarc
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-25T20:27:42.713Z
Answers.LastActivityDate: 2011-10-25T20:27:42.713Z
Answers.UserDisplayName: jcollie
Answers.Body: <p>I saw an official Lego remote control car at the Lego Store once and I should have gotten it that day because I haven't seen it again. </p>
  
  <p>That said, with Mindstorms and a bluetooth enabled phone it should be possible to build one one your own. </p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-11-08T17:25:17.817Z
Answers.Text: @Coyote I wish I had links! But since the NXT 2.0 supports bluetooth it should be possible to control it from a phone and I'm sure I've seen that (though it was probably too laggy).
Answers.UserDisplayName: tooshel
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-25T20:28:01.180Z
Answers.Text: Mindstorms and bluetooth? Do you have any links?
Answers.UserDisplayName: Coyote
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2011-10-25T20:27:19.937Z
Answers.LastActivityDate: 2011-10-25T20:27:19.937Z
Answers.UserDisplayName: tooshel
Answers.Body: <p>I would not recommend Power Functions if you are just getting started, as that system is being retired. It sounds like Technic Control+ should meet your needs. A set like the <a href="https://rebrickable.com/sets/42124-1/off-road-buggy/" rel="nofollow noreferrer">Off-road Buggy (42124)</a> might be a good place to start:</p>
  <p><a href="https://i.sstatic.net/N9nr4.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/N9nr4.png" alt="Off-road buggy" /></a></p>
  <p>That set provides two motors and a Bluetooth hub for forward, reverse, and steering controls from your smartphone. You can create customized controls for nearly any setup in a MOC using the Powered Up app.</p>
  <p>Physical remotes are a more complicated story. There have been a few train sets that use <a href="https://rebrickable.com/parts/28739/control-unit-powered-up/" rel="nofollow noreferrer">physical remotes (28739)</a> for the Powered Up products:</p>
  <p><a href="https://i.sstatic.net/0rrMI.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/0rrMI.png" alt="28739" /></a></p>
  <p>The remotes are <a href="https://www.lego.com/en-us/product/remote-control-88010" rel="nofollow noreferrer">sold separately</a>, but are not very flexible out of the box. They can pair with hubs that control Technic motors, but they simply provide on/off control and can't be easily used for speed control or a return-to-center servo like you'd likely want for steering. However, sets like the Batmobile work alright with a physical remote, thanks to the skid steering.</p>
  <p><a href="https://i.sstatic.net/zk9E1.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/zk9E1.png" alt="Batmobile 76112" /></a></p>
  <p>If you're a technical individual, it is possible to upload custom code to Powered Up hubs using <a href="https://pybricks.com/about/" rel="nofollow noreferrer">Pybricks</a> or similar software. This is commonly used to create autonomous robots, but it can also be used to customize the interface between the hubs and a physical controller.</p>
  <p>Here's a <a href="https://github.com/Tcm0/PybricksRemoteLayouts" rel="nofollow noreferrer">Github repository</a> that includes code demonstrating how to program hubs to work nicely with the physical remote for certain sets. For example, here's the code needed to get the Off-road Buggy to work well:</p>
  <pre><code>from pybricks.pupdevices import *
  from pybricks.parameters import *
  from pybricks.tools import wait
  
  steering = Motor(Port.B)
  driving = Motor(Port.D)
  remoteControl = Remote()
  
  #steering calibration sequence
  steering.run_until_stalled(500)
  steering.reset_angle(0)
  steering.run_until_stalled(-500)
  maxAngle = steering.angle()
  steering.run_target(500, (maxAngle/2)+10)
  steering.reset_angle(0)
  
  #main loop
  while True:
      #update pressed buttons information
      pressed = remoteControl.buttons.pressed()
  
      #commands to drive forwards or backwards
      if Button.LEFT_PLUS in pressed:
          driving.dc(100)
      elif Button.LEFT_MINUS in pressed:
          driving.dc(-100)
      else: 
          driving.brake()
  
      #commands to steer
      if Button.RIGHT_PLUS in pressed:
          steering.run_target(1200, (maxAngle/2)-5, Stop.HOLD,False)
      elif Button.RIGHT_MINUS in pressed:
          steering.run_target(1200, -((maxAngle/2)-5), Stop.HOLD,False)
      else:
          steering.run_target(1200, 0, Stop.HOLD, False)
  
      wait(100)
  </code></pre>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-07-28T16:09:09.063Z
Answers.LastActivityDate: 2023-05-09T23:02:13.617Z
Answers.LastEditDate: 2023-05-09T23:02:13.617Z
Answers.UserDisplayName: jncraton
Answers.Body: <p>One possible replacement for the soon to be retiring Power Functions remote is the one included in <a href="https://www.lego.com/en-gb/product/remote-controlled-stunt-racer-42095" rel="nofollow noreferrer">Remote Controlled Stunt Racer</a>, however this remote appears to be more limited, only offering 2 &quot;forward/reverse&quot; channels (one of which could be configured to control a steering column), rather than the 4 channels offered by the original.</p>
  <p>This is <a href="https://www.lego.com/en-gb/product/lego-power-functions-ir-remote-control-8885" rel="nofollow noreferrer">also available separately</a>.</p>
  <p><a href="https://i.sstatic.net/gWpK1.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/gWpK1.png" alt="New 2 channel remote control" /></a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-07-27T11:37:22.137Z
Answers.LastActivityDate: 2021-07-27T11:37:22.137Z
Answers.UserDisplayName: Zhaph - Ben Duguid
Body: <p>I would like to build a remote controlled car. And if someone already has a good solution for that I would be glad to try it.</p>
  
  <p>It's been a while since I had the time and material to build some LEGO creations. And now I am willing to start anew.</p>
  
  <p>Last time I toyed with LEGO there were electric engines and such, but all I had was remote controlled with a cable and the functions were very basic. I am looking for a more advanced and wireless solution.</p>
  
  <p>I am aware of the <a href="http://powerfunctions.lego.com/" rel="noreferrer">Power Functions</a>. But I have no experience with these. Would these be a good start? What are the other options?</p>
  
  <hr>
  
  <p><strong>Edit</strong>: <a href="http://mindstorms.lego.com/" rel="noreferrer">Mindstorms</a> as suggested in a few answers could be the solution, but I am not sure it will be practical yet...</p>
  
  <p>It seems there was an official line of <a href="http://lego.wikia.com/wiki/8366_Supersonic_RC" rel="noreferrer">LEGO RC cars</a> at some point. I was thinking about something more like it. <img src="https://i.sstatic.net/TOiNL.jpg" alt="Existing LEGO RC car"><img src="https://i.sstatic.net/gnsYZ.jpg" alt="8675 Outdoor Challenger"></p>
  
  <p>Although I'd like to avoid cutting and gluing 3rd party components I don't mind hacking a few parts together to get something really cool.</p>
  
  <p>As suggested by @pcantin there are adapters I could buy to interface LEGO with 3rd party engines etc... I will look into it. But I would appreciate some better pointers in this regard.</p>
  
  <hr>
  
  <p><strong>Edit</strong> I am already aware of the <a href="http://powerfunctions.lego.com/" rel="noreferrer">Power Functions</a> IR remote control It's a good solution to start with (now), but I was looking for something more advanced.</p>
  
  <p>I have never heard of <a href="http://www.arduino.cc/" rel="noreferrer">Arduino</a> before, but as a developer I am absolutely thrilled by this solution. I won't have the time to test it now. But it could become the answer I was looking for. </p>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2011-10-29T15:51:01.007Z
Comments.Text: Here's one I made last year. (http://phillipecantin.blogspot.com/2011/10/lego-rc-car.html)
Comments.UserDisplayName: pcantin
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2011-11-08T14:04:46.520Z
Comments.Text: @pcantin I like the form factor! very efficient!
Comments.UserDisplayName: Coyote
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2011-10-25T22:16:43.830Z
Comments.Text: Some inspiration on YouTube: [LEGO technic car with Power functions](https://www.youtube.com/watch?v=Rir3Qy1jEHI). Hats off to this chap!
Comments.UserDisplayName: Umber Ferrule
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2011-10-26T10:35:40.687Z
Comments.Text: This is probably my favourite all lego rc car - http://www.youtube.com/watch?v=jHWDSnWk2jU
Comments.UserDisplayName: Cameron MacFarland
Tags: <technic><remote-control><power-functions><mindstorms><3rd-party>
Title: What are the best options for building a LEGO RC car?
UserDisplayName: Coyote
ThreadText: # What are the best options for building a LEGO RC car?
  
  (Asked by: username_0 on 2011-10-25)
  
  I would like to build a remote controlled car. And if someone already has a good solution for that I would be glad to try it.
  
  It's been a while since I had the time and material to build some LEGO creations. And now I am willing to start anew.
  
  Last time I toyed with LEGO there were electric engines and such, but all I had was remote controlled with a cable and the functions were very basic. I am looking for a more advanced and wireless solution.
  
  I am aware of the [Power Functions](http://powerfunctions.lego.com/). But I have no experience with these. Would these be a good start? What are the other options?
  
  ---
  
  **Edit**: [Mindstorms](http://mindstorms.lego.com/) as suggested in a few answers could be the solution, but I am not sure it will be practical yet...
  
  It seems there was an official line of [LEGO RC cars](http://lego.wikia.com/wiki/8366_Supersonic_RC) at some point. I was thinking about something more like it. ![Existing LEGO RC car](https://i.sstatic.net/TOiNL.jpg)![8675 Outdoor Challenger](https://i.sstatic.net/gnsYZ.jpg)
  
  Although I'd like to avoid cutting and gluing 3rd party components I don't mind hacking a few parts together to get something really cool.
  
  As suggested by @pcantin there are adapters I could buy to interface LEGO with 3rd party engines etc... I will look into it. But I would appreciate some better pointers in this regard.
  
  ---
  
  **Edit** I am already aware of the [Power Functions](http://powerfunctions.lego.com/) IR remote control It's a good solution to start with (now), but I was looking for something more advanced.
  
  I have never heard of [Arduino](http://www.arduino.cc/) before, but as a developer I am absolutely thrilled by this solution. I won't have the time to test it now. But it could become the answer I was looking for.
  
  **Tags:** technic, remote-control, power-functions, mindstorms, 3rd-party
  > **Comments:**
  > **username_2**: Some inspiration on YouTube: [LEGO technic car with Power functions](https://www.youtube.com/watch?v=Rir3Qy1jEHI). Hats off to this chap!  
  > **username_3**: This is probably my favourite all lego rc car - http://www.youtube.com/watch?v=jHWDSnWk2jU  
  > **username_1**: Here's one I made last year. (http://phillipecantin.blogspot.com/2011/10/lego-rc-car.html)  
  > **username_0**: @pcantin I like the form factor! very efficient!  
  
  ---
  
  ## 8 answers
  
  ### Answer by username_4 on 2011-10-26. Score: 15
  
  I use a Mindstorms NXT brick and an Android smartphone for my remote controlled tank. The downside is that the NXT motors are slower than the regular Power Functions motors, and connecting PF motors to the NXT brick requires additional components.
  
  Personally, I am satisfied with NXT motors and don't bother kludging PF motors. (Yet.)
  
  Here is a modular truck design as an example: <http://www.nxtprograms.com/MTV/index.html>  
  I use this app for my remote control: <https://market.android.com/details?id=org.jfedor.nxtremotecontrol>
  
  
  ---
  
  ### Answer by username_1 on 2011-10-25. Score: 15
  
  Personally I would go with Arduino (on the car) and an Android phone as the controller (via bluetooth). There's plenty of reference on the web about mixing the two.
  The main problem is interfacing with non Lego parts (motors, PCB, ...).  Luckily, you can find Lego adapter parts in many Robot/Electronic sites. For example at Pololu:
  http://www.pololu.com/search?query=lego&x=0&y=0
  Edit 1 (Howto)
  Android bluetooth communication:  There's the main page and the sample (I started from that one and modified it). You can also use the 'Sena Bterm' app to send and receive characters (no programming necessary but very basic).
  Arduino bluetooth communication: This is the most simple part.  All you need is a bluetooth breakout board and connect it to the Arduino like so.  Using the board is as simple as any normal Serial communication ex: 
  void setup()
  {
    Serial.begin(115200);
  }
  
  int inByte = 0;
  
  void loop()
  {
    if (Serial.available() > 0) 
    {
      inByte = Serial.read();
  
      if(inByte == '1'){
         Serial.println("test1");
      } else {
         Serial.println("test2");
      }
    }
  }
  
  This code reads the incoming bytes and write 'test1' or 'test2' in return. 
  Hardware: this is the coolest part because you get to do what ever you want.  I personal use a lot of Lego Technics and sometime modified them to interface with foreign parts.  Search the web and you'll find cool Lego-compatible stuff like this servo joint, this servo bracket or this wheel.
  
  > **Comments:**
  > **username_0**: You have the most interesting answer ATM, but do you know any good tutorials which could help me with the planning of such a project?  
  > **username_1**: I've added more details in 'Edit 1'  
  > **username_0**: Thank you! I have never heard of Arduino. After checking out the main website it seems to be a solution I would enjoy a lot. I will probably start with the LEGO Power Functions and as soon as I get one of the Arduino boards I'll start playing with that.  
  > **username_1**: Cool. When you get there, if you have any questions I'll be there  
  
  ---
  
  ### Answer by username_5 on 2011-10-25. Score: 11
  
  LEGO have produced an [IR Speed Remote Control unit](http://shop.lego.com/en-US/LEGO-Power-Functions-IR-Speed-Remote-Control-8879) as part of their current "Power Functions" range.
  
  This offers:
  
  * Features 4 RC channels, 2 stop button and 2 direction control switches!
  * Use the jog wheels to control your motor speed!
  
  ![IR Speed Remote Control](https://i.sstatic.net/5ABu8.jpg)
  
  You will also need the [receivers](http://shop.lego.com/en-GB/LEGO-Power-Functions-IR-Receiver-8884) as well.
  
  > **Comments:**
  > **username_6**: This controller is now scheduled to be retired soon.  
  
  ---
  
  ### Answer by username_7 on 2012-06-09. Score: 8
  
  The [9398-1: 4x4 Crawler](http://www.brickset.com/detail/?Set=9398-1) is an interesting candidate with the new servo motor. It comes in 2H2012.
  There are [more pictures on TechnicBricks](http://technicbricks.blogspot.hu/2012/05/more-images-on-2h2012-lego-technic-sets.html).
  
  
  ---
  
  ### Answer by username_8 on 2011-10-25. Score: 8
  
  The MindStorms NXT controller can work over bluetooth:
  
  <http://mindstorms.lego.com/>
  
  > **Comments:**
  > **username_9**: Bonus points for using your android phone accelerometer to determine the vehicle direction. Super fun to do, and the effect on people is great.  
  
  ---
  
  ### Answer by username_10 on 2011-10-25. Score: 5
  
  I saw an official Lego remote control car at the Lego Store once and I should have gotten it that day because I haven't seen it again.
  
  That said, with Mindstorms and a bluetooth enabled phone it should be possible to build one one your own.
  
  > **Comments:**
  > **username_0**: Mindstorms and bluetooth? Do you have any links?  
  > **username_10**: @Coyote I wish I had links! But since the NXT 2.0 supports bluetooth it should be possible to control it from a phone and I'm sure I've seen that (though it was probably too laggy).  
  
  ---
  
  ### Answer by username_11 on 2021-07-28. Score: 3
  
  I would not recommend Power Functions if you are just getting started, as that system is being retired. It sounds like Technic Control+ should meet your needs. A set like the Off-road Buggy (42124) might be a good place to start:
  
  That set provides two motors and a Bluetooth hub for forward, reverse, and steering controls from your smartphone. You can create customized controls for nearly any setup in a MOC using the Powered Up app.
  Physical remotes are a more complicated story. There have been a few train sets that use physical remotes (28739) for the Powered Up products:
  
  The remotes are sold separately, but are not very flexible out of the box. They can pair with hubs that control Technic motors, but they simply provide on/off control and can't be easily used for speed control or a return-to-center servo like you'd likely want for steering. However, sets like the Batmobile work alright with a physical remote, thanks to the skid steering.
  
  If you're a technical individual, it is possible to upload custom code to Powered Up hubs using Pybricks or similar software. This is commonly used to create autonomous robots, but it can also be used to customize the interface between the hubs and a physical controller.
  Here's a Github repository that includes code demonstrating how to program hubs to work nicely with the physical remote for certain sets. For example, here's the code needed to get the Off-road Buggy to work well:
  from pybricks.pupdevices import *
  from pybricks.parameters import *
  from pybricks.tools import wait
  
  steering = Motor(Port.B)
  driving = Motor(Port.D)
  remoteControl = Remote()
  
  #steering calibration sequence
  steering.run_until_stalled(500)
  steering.reset_angle(0)
  steering.run_until_stalled(-500)
  maxAngle = steering.angle()
  steering.run_target(500, (maxAngle/2)+10)
  steering.reset_angle(0)
  
  #main loop
  while True:
      #update pressed buttons information
      pressed = remoteControl.buttons.pressed()
  
      #commands to drive forwards or backwards
      if Button.LEFT_PLUS in pressed:
          driving.dc(100)
      elif Button.LEFT_MINUS in pressed:
          driving.dc(-100)
      else: 
          driving.brake()
  
      #commands to steer
      if Button.RIGHT_PLUS in pressed:
          steering.run_target(1200, (maxAngle/2)-5, Stop.HOLD,False)
      elif Button.RIGHT_MINUS in pressed:
          steering.run_target(1200, -((maxAngle/2)-5), Stop.HOLD,False)
      else:
          steering.run_target(1200, 0, Stop.HOLD, False)
  
      wait(100)
  
  
  ---
  
  ### Answer by username_5 on 2021-07-27. Score: 2
  
  One possible replacement for the soon to be retiring Power Functions remote is the one included in [Remote Controlled Stunt Racer](https://www.lego.com/en-gb/product/remote-controlled-stunt-racer-42095), however this remote appears to be more limited, only offering 2 "forward/reverse" channels (one of which could be configured to control a steering column), rather than the 4 channels offered by the original.
  
  This is [also available separately](https://www.lego.com/en-gb/product/lego-power-functions-ir-remote-control-8885).
  
  [![New 2 channel remote control](https://i.sstatic.net/gWpK1.png)](https://i.sstatic.net/gWpK1.png)
  
  
  ---
  
  