General Discussion



General discussion of the Wi-Fi Bot - Part 1 module.


Hey guys, I immediately made a mistake and soldered on the first piece of electronics unevenly. It was really dumb because if I hadnt paused the video right away thinking I know how to do it, the instructor would have warned me about this specifically.

Any tips on how to best de-solder or adjust the pin - without murdering it or the board? It’s only a few millimeters off the board on one side, on of the long black pieces.

I feel like to do that I’d need about 8 soldering irons and 9 hands to correct my mistake but maybe there is another way??


Definitely. All is not lost! I think this deserves a callout in the instructions so that hopefully others eager to make don’t find themselves in the same situation.

Here’s how I would go about fixing this - place the board on a table top, upside down (with the pins sticking up). Use a soldering iron and a solder sucker to remove as much solder from the uneven header as you can (that step isn’t necessary but may make the next step easier). Then go, pin by pin, holding the soldering iron in your dominant hand and against the pin and pad. With your other hand (or a helper’s hand), apply a small amount of force to push the board into the table. It will take a while to get it with this pin by pin approach, but it should be do-able. I’ll set up a camera and shoot a short video example of me demonstrating this later today.

Worst case (depending on how uneven the header is), the pins are bendable so just bending the header/pins could be a workaround here.


Hey David,

thanks a lot for the detailed reply. I already tried wick to remove the solder, but it’s my first time using wick and I haven’t quite figured out how to make the material work. I’ll keep trying with my solder sucker as well and, following your tips, I will probably figure it out eventually. Unfortunately, my local electronic shop, although huge, only has these header pins with really short metal ends. Otherwise I would have gone ballistic already and just clipped the thing to pieces and removed the ends/pins individually. (I guess if you have spare parts, that’s a really good solution).

I am sad that after looking forward to this for so long, I f***k up the very first step with hours of extra effort just to correct it. It’s my own fault though, I just had to pause the videos seconds later and I would have gotten the warning (I also could have thought of it myself, obviously ;P).

I guess sometimes tutorials go really fast, so out of habit I wanted to pause in-time to complete the step before the next starts and I miss something…

EDIT: It’s only like 1,5mm uneven on one end, the other touches the board…so if I just can’t correct it, would it still work/fit together with the other board?


If it’s only 1.5mm, you might be able to make it work without bothering with the soldering iron. Here’s the video I mentioned I would record. I edited the video down for time, but it took me about 6 minutes total to adjust this header (including a couple minutes trying to find my solder sucker - :blush:)

Hopefully that gives you an idea of how to go about fixing the misaligned header.

Make sure to resolder all of the pins/joints after you’ve re-seated the header to ensure a good electrical connection. I forgot to do that in the video.


Hey David,

your video was extremely helpful, just watching up close what you do. It really improved how I use the solder sucker in general and I finally managed to get the header pretty even :))

Thanks a lot!


This is what these projects are for. No one starts perfect and no one ever becomes perfect. But we make mistakes and learn, and with time we get better. :relaxed:


Can someone tell me what am i doing wrong, i am trying to make the robot go forward for a second, stop wait a second turn right but in the below code, it ignores the turn right command just goes forward stops goes forward, if i just put the turn right command by itself it turns right in circles, not sure why its ignoring it if it has a different step in front of it. I am new to coding, have no experiance at all trying to learn, sorry if its a dumb error, which i am sure it is.


No need to ever apologize for learning, that’s what this community is for :slight_smile:

The problem you’re having is that the code in the loop function (everything between the {}'s) loops over and over again indefinitely. The robot is performing the turn, but only for as long as the goRight() function takes to execute. It then immediately starts the loop again by going forward again (probably before you ever even see the robot start to the turn). You need to add another delay() after the goRight() function call to tell the robot how long to goRight for.

Try modifying it to look like this code:

// Loop (code betwen {}'s repeats over and over again)
void loop() {
    // Make the robot go Forward.
    // Wait for one second
    // Make the robot stop
    // Wait for one second
    // Turn the robot right
    // Set the amount of time for the robot to turn right for
    // based on how much you want the robot to turn
    // Make the robot stop
    // Wait for one second

A simpler exercise to help understand the loop function works and how the robot code works the way it is configured in this example code would be starting with the Arduino blink example and modifying it so that the LED blinks faster, slower, and then making the LED blink out a pattern.

Because of your question, I am going to add a section to the tutorial about this. So thanks! I think this is a very useful example for beginners.

General Discussion


Thank You for that, i was under the impression that the goRight() command pulls the parameters from the parameters that were set above the loop start, “//Turn robot right for turntime” commands, so i modified the turn speed and turntime settings in the code., Your suggestion works and now its going in a square, just had to up the delay of turning right to 360 so it turns right for long enough.

Thank You.


#When Attaching Motors
I had to cut out a little of the chassis when attaching the motor mounts. Because the nut on the bolt for the motor would not the hooks of the motor mount could not penetrate all the way though the chassis so they could slide back into place.


Hey guys

I started today and after attaching most parts now 1 wire on each motor has come off along with the copper part!! So I’m a unsure how to reattach the copper, should I resolder somehow?

Do I need new motors?



@Alexg42 is any of the copper part left? If so, that happened to me and I was able to re-solder to make a connection. After that I used hot glue so it didn’t wiggle around afterward.

If the whole copper part fell off, then I’m not sure, sorry :frowning:


Looks like 1 has no copper left, 1doesnt. Damn!

Just tried making a new connection and there’s no way to, there’s not enough copper I can attach to


Probably need a new motor, but you could just buy a motor, if you could identify it. It pulls out of the gearbox. They are just a couple of bucks on Ebay or Amazon. Thimble might give you one also.


Cheers! Got a new one on its way, found what looks like the exact same one that comes packaged too


You need 2 people. Use some needle nose pliers to pull (i.e. tug on the black connector) as you de-solder as shown in the video above.

1 guy tugs and jiggles with pliers as you de-solder and move down the line.


Just pinch the wood with your fingers tightly as you slide - it’s slightly better solution than cutting the already flimsy wood piece.


they didn’t do a good job showing how to prevent ripping off the copper flap of the motor. I’ve ripped mine off in other projects, so…

What you want to do is run the wires through the transparent lip right next to the copper, that will prevent you from accidentally ripping it off. They didn’t do that in the video though.

Also, you can hot glue the wire to the motor



Hey everyone,

This is my first post and I’m just trying to get caught up. I’ve successfully completed the first part of the wifi robot and there is something that I was curious about with regards to the arduino sketch that we created:

// Function to write out pwm values
void writePwms ( int left, int right) {
analogWrite (pwms[0], left);
analogWrite (pwms[1], right);

I get the basic idea of this section of code, but there is something that I’m struggling with. I’ve never done any hardware programming before, so that’s probably why this isn’t obvious to me. But in this function (not sure if they are called functions in arduion sketch) this function is called by all of the motor functions (forward, right, left, etc) and transfers integer values into the function parameters (left and right). But the part I’m unfamiliar with, is where the funciton then uses those values to ‘analogWrite’ to pins 0 and 1. Is this because values need to be stored in the pins? Should I think of this as being stored into memory? Sorry if this question seems dense…something isnt’ clicking in my brain.