Building the Mouse Junior Cruiser

The thing about these kits is that the manual assumes you already know what you're doing. It skips over steps that aren't intuitive to someone who's spent years soldering and wiring. I've built three of them now, and each one taught me something new about how not to waste time. Start by laying out all the components on a clean, flat surface. The board tends to get lost in the packaging foam. Once everything is out, check the screw count. You'll get six M2x6mm screws, four M2x4mm screws, and two rubber feet pads that don't go where you'd expect them to. I learned this the hard way on my second build when I had one screw left over and no idea where it belonged.

Mouse Junior Cruiser Assembly Instructions

The first step most people mess up is the motor orientation. The two DC gear motors need to be mounted with the shafts facing outward, but the PCB doesn't make this obvious from the top side. You have to flip the board over and look at the motor mounts. The longer pins go through first, then you secure them with the nuts. Tighten them until they're snug, but do not over-tighten. The plastic threads in the motor mounts will strip if you go too hard. I've done this twice now. It took me ten minutes per motor to tap out the stripped threads with a matching M2 tap before I could reassemble properly. Next comes the wheel attachment. These kits use those cheap plastic C-wheels that have a tiny set screw. The set screw needs to be tightened against the flat side of the motor shaft. If your motor shaft is round instead of D-shaped, you'll need to file a flat spot or use a different wheel. Most units come with D-shaft motors, but the tolerances are loose enough that you can rotate the shaft inside the motor housing slightly. Mark the position with a marker before you tighten the set screw so you know exactly where it contacts. The LiPo battery connection is the next critical point. This board uses a JST-PH 2.0 connector. The red wire goes to the positive pad and the black wire goes to negative. Do not reverse this. The board has a reverse polarity protection diode, which will save it from being destroyed, but it will also drop about 0.5 volts and may not provide enough power for the motors to run properly under load. I found this out when my cruiser would only move slowly and the battery was reading 7.2 volts instead of the expected 7.4. Swapping to a direct wire connection with a fuse in line fixed the voltage drop issue entirely.

For the encoder installation, you'll be mounting two small magnetic encoders on the motor shafts. The sensor needs to be positioned approximately 1mm from the magnet face. Too close and the magnetic field saturates the sensor, giving you erratic readings. Too far and the signal drops below the threshold. I used a piece of paper as a spacer during initial setup, then measured it afterward. The paper was about 0.8mm thick, which worked fine for my units. Your mileage may vary depending on the magnet strength in the batch you received. Soldering the jumper wires to the encoder headers requires a steady hand. The pads are small and the traces are thin. If you apply the iron for more than three seconds on a single pad, you risk lifting the copper. I use a temperature-controlled iron set to 320 degrees Celsius with a fine tip, and I tin the tip before making each joint. Pre-tinning the wire strand by dragging it through molten solder also helps. This cuts the risk of cold joints significantly. Once everything is mechanically assembled and wired, test the motors individually before closing the chassis. Connect the battery and apply 5 volts to each motor terminal briefly. One should rotate clockwise and the other counterclockwise when viewed from the wheel side. If both rotate the same direction, swap the wiring on one of the motors. The firmware expects opposite rotation for forward motion because of how the wheels are mounted on opposite sides of the chassis.

Get the Full Details

PC mouse PNG image
PC mouse PNG image

The final assembly involves snapping the top plate onto the bottom plate. There are four standoffs that align with the screw holes. Insert the M2x6mm screws through the top plate and into the standoffs. The M2x4mm screws secure the bottom plate to the standoffs from underneath. Again, snugged is sufficient. Force will crack the plastic. One issue I've noticed with later batches of this kit is that the caster wheel sometimes arrives with a bent axle. It wobbles visibly when you spin it by hand. This causes the cruiser to drift to one side even with perfectly calibrated motors. The workaround is to gently bend the axle back into alignment using needle-nose pliers, then apply a small drop of threadlocker to prevent it from loosening during operation. I also add a washer between the caster housing and the plate to reduce play, which improves straight-line tracking noticeably. The coding side is where most people hit a wall if they haven't worked with PWM control before. The board uses PWM on pins 9 and 10 for motor speed control, with digital pins 4 and 5 handling direction. The basic speed range is 0 to 255, but anything below 40 usually won't overcome the static friction in the gearboxes. You'll get jerky movement or the motors will just stall. I found that setting a minimum PWM value of 45 and using a linear mapping function gives much smoother low-speed behavior than a raw analogWrite call.

If you're planning to use this for line following or object avoidance, you'll want to calibrate the encoder counts per revolution. The manual says 12 ticks per revolution, but my units averaged between 11.6 and 12.4 depending on the batch. Writing a short calibration routine that counts ticks over ten full rotations and dividing gives you a more accurate value for your specific motors. This matters more than you might think when you're doing precise distance measurements.