Friday, July 19, 2013

Using smartphone as a tire toe angle gauge - E-Revo VXL

Here is one quick tip for the RC Cars crowd.
I don't like "eyeballing" things that can be easily measured. For example, the tire's toe angle on many RC cars is often adjusted by drivers just by looking at the tires from the top and estimating the angle - hardly a precise method.
Nowadays, almost everyone is sporting some type of a smartphone and every smartphone has built-in an accelerometer and/or gyroscope sensors. There is a galore of apps using these sensors to turn the smartphones into "spirit levels"and as added bonus, they can be calibrated for relative measurements as well (automatically subtracting the angle measured during the calibration process from the current reading). Just to name a few such apps (all Android OS btw) - Smart Tools, Spirit Level Plus, Precision Bubble Level, Gravitometer, etc...

Step 1 - Place the E-Revo VXL on the corner of the table, laying the car body only on the battery compartment door (bottom tires hanging free in the air). Calibration of the software is done on the flat work surface or even better - placing the phone onto the top battery compartment door - exactly parallel with the length of the car. This is the axis that needs to be calibrated - the other (perpendicular) axis is not important for toe angle adjustment and it is OK to be angled (Revo's battery door is angled in such way). The back of the phone should be laying flat over the surface of the door and the phone should be pressed and held firmly when calibrating it. The picture shows almost zeroed X axis - this is the axis running with the car's length.

Step 2 - Place the phone on top of the wheel (even better if you have only a rim with no tire installed), managing phone's orientation strictly parallel to the length of the car and read / adjust the tire toe angle. (in this case - axis X reads 3.1 degrees toe-in a little too much).

Step 3 - After adjusting the desired toe angle, take off the toe push rod on the adjusted side and use it to adjust the length of the other toe push rod. 

That's all - no need for an expensive specialized gauge.

Tuesday, July 16, 2013

Spektrum Telemetry on E-Revo VXL

My 3 year old son tends to over-steer and over-throttle his E-Revo (he has somewhat fuzzy understanding of the word "gentle" :) so to make the vehicle more kid-friendly I needed an "Exponential control" (Expo) feature and Dual-Rates - something  not available on the cheap stock Traxxas remote control. Naturally, I turned to Spektrum and their DX3S surface radio in particular. The kit came with telemetry capable SR3300T receiver and sensors - such nice functionality should not go to waste.
The SR3300T has inputs for a temperature sensor, a RPM sensor and a LAP sensor. The voltage sensor is internal to the receiver (more on this later...)

 Installing the temperature sensor is a very straight-forward process. I just attached the sensor to the under side of the motor housing using self-adhesive Kapton tape (high-temperature silicone based adhesive).
The RPM sensor install turned out to be a bit more involved. The stock spur gear cover has a mount for RPM sensor but Traxxas telemetry is using magnetic sensor - a small magnet is placed in the spur gear and the sensor on the cover picks up the magnet's rotation. Spektrum, on the other hand is using optical (infra-red) sensor. IMHO this is a more universal solution - a reflective or non-reflective sticker (depending on the situation) can be placed on almost every spinning part and it will not cause off-balance issue like the heavy magnet will.
This picture shows the optical sensor mounted on the spur-gear cover. I drilled a small hole for the opto-couple and secured the little sensor PCB inside the magnetic sensor bed, using the screws provided by Spektrum. A word of caution - the clearance between the inside wall of the spur-gear cover and the spur gear is very small - I had to shorten the screws so they are now flush with the inside wall and don't catch on the spur gear.

This is the outside of the spur-gear cover. The PCB is mounted with two screws inside the "bed" designed for the Traxxas magnetic sensor. I sealed the Spektrum RPM sensor board with black UV resistant silicone sealant for water/dust-proofing and mechanical protection. In addition, by keeping the sensor in the dark, I eliminate the chance for "confusion" in bright sun light. There is very little clearance on the outside of the spur-gear cover too. One should be careful to place the PCB close to the cover and not put too much sealant on the back so when the cover is installed in place, it doesn't get pressed on by the radio receiver box.

The RPM sensor uses either reflective stickers (placed on non-reflective surface) or non-reflective stickers if the rotating object is reflective (bare metal). The spur-gear surface is not smooth and I wasn't sure how well the sticker will adhere. Instead of using the provided stickers, I made my own reflectors.
I used a thin aluminum sheet (roof flashing), which I polished with polishing compound to a mirror surface and covered the polished side with transparent Scotch(tm) tape for weather protection. Then I cut a few "pizza slice" pieces - different sizes to fit on the 3 different spur gears I might use. I epoxy glued the metal slice to the spur gear as shown on the picture. To minimize any potential balancing issues caused by the added eccentric weight, I selected a spot opposite of the magnet's cavity to glue the reflector and filled the cavity with a mixture of epoxy and metal shavings - approximately the same weight of my mirror + glue combo used (I used very precise micro-gram scale). This is probably not needed at all and it is just me, obsessing with accuracy. The spur gear is small enough and light enough that balancing is not a concern - Traxxas certainly didn't provide a way to balance the much heavier magnet in their setup.

The Spektrum DX3S has a nice calibration feature which allows for the RPM reading to be converted and displayed on-screen as an actual speed (either Km/h or MPH are options besides just the raw spur gear RPM count). Maybe I am nitpicking here, but why you have to input the Roll Radius calibration in inches even when using km/h readout - centimeters is the logical unit to be used.
Speaking of Spektrum shortcomings - why on Earth there is no external voltage sensor input? The voltage reported by the Telemetry module is the internal receiver / servo voltage and not the actual battery pack voltage. On electric models, the ESC supplies power to the receiver and it is usually 6v regulated. Only explanation is that it probably never occurred to the designer that the receiver might be used with electric models too.
Too bad that Spektrum never thought of this! I'd take battery pack telemetry reading on any day instead of the stupid LAP timer. What good is lap time for if you don't know that you should be preserving power just to finish?
A possible work-around is to power only the servos from the regulated ESC and have the receiver powered directly by the battery pack. The price to pay is when the setup is used with 3S or 4S LiPo packs or dual NiMH packs connected in series  -  such solution needs a proper preset voltage drop circuit at the input as the receiver can not handle more than 9.6V. Going that route, one needs to mentally add the amount of the voltage drop to the displayed value to get an actual reading.
I might try to open up the receiver and see if I can hack into the internal voltage sense input. Then I can re-purpose the useless LAP sensor connector as a external voltage sensor. Not sure if it is possible - wish I could find the schematics. If successful, I'll eliminate extra wiring and connectors to separate receiver and servo power and can have just a couple of voltage sensor pigtails for different power sources.

All of the Telemetry sensor wires were tucked in the receiver box and in the space under the motor, making for a pretty clean look.

Monday, July 15, 2013

Installing lights on Traxxas E-Revo VXL

My son really wanted his RC car to have lights "just like on the real cars". The Spektrum SR3300T receiver is a 3 channel receiver and the AUX channel can be used to control lights - so why not? Turning the head and tail lights by flipping the AUX switch on the remote control was an extra feature, I thought would be pretty cool. 
Our design goal was : 2 high-intensity white head lights, 2 red (light red / deep orange) position (tail) lights, 1 red/blue flashing ("dash mounted, "police strobe mode" light) - all switched remotely. 2 dual-step intensity, combined break lights / position lights (deep red color, bright - break, dim - tail) - switched on/off at the model, automatic break signal detection and intensity control.
Parts used: rc-lights.com kits - RCL5004E, RCL5090 and miscellaneous connectors, wires, resistors

Front View - head lights - high-intensity cool-white LEDs in chrome "reflector" fixtures providing great level of illumination. The flashing blue/red  strobe light is seen just behind the windshield. This light improves the model's visibility during the twilight hours.

 I made two elongated holes in the Lexan body (using Unibit drill bit) in order to properly align the head lights - parallel to the body, almost level (very slightly tilted forward for maximum illumination of the road ahead of the vehicle). Adjustments were made based on the current suspension settings.

 The head lights wiring harness. The chrome reflector fixtures were glued at the specific angle / position in the elongated openings using hot melt glue. It was a bit tricky to keep them properly oriented while the glue cools down.

 Rear light bar - the black plastic plate with the 6 holes came off the Spektrum DX3S packaging (used to secure the remote control to the cardboard retail box with wire ties. It is the perfect size for the tail light bar. All I need to do is to enlarge 4 of the holes  to accommodate the black plastic bezels and to drill two more mounting holes. The bar is secured to the Revo's wing mount with 3 zip-ties for easy installation/removal.

The outside two LEDs are the dual-intensity, deep red color, tail / brake lights. The inside two LEDs are a second set of tail lights - slightly different red color (deep orange). The LEDs are wired in parallel (on the back side) in two separate pairs and all connections are water-proofed using black UV resistant silicone sealant.

This picture shows the water-proof receiver box with the Spektrum SR3300T receiver mounted, the Y-split wire harness for the dual-servo steering, EBS (electronic break-detection switch) connected in-line with the THR (Throttle) signal going to the ESC (EBS is the clear heat-shrink covered  unit at the top). Pictured also is the RPS (Remote Power Switch) connected between the LED controller and the AUX output of the receiver. It got really tight in the small receiver box but I was able to fit everything inside.

This is my DIY "LED Controller". The RCL5004E comes with a "LED Controller" but it is too bulky and the connector placement didn't work for me. It is not water-resistant too. What they actually call a "LED Controller" in this case is nothing more than a combo of two "power strips" with built-in current limiting resistors.
 I made my own "LED Controller" except I used a single connector, soldered the current-limiting resistors on one side and covered it with silicone and heat-shrink tubing for water-proofing. The wire lead from EBS+RPS plugs in the center of the power strip - left side is RPS controlled for head lights, tail lights and emergency light, the right side is EBS controlled for the dual-intensity brake/tail lights. It could have been even smaller but I left a couple of positions for future expansion and for extra configuration flexibility provided direct power outputs (in case the current limiting takes place at (or near) the LEDs and it is part of the wire harness. In addition, I incorporated two different sets of current limiting resistors with different values per channel - 82 Ohms and 150 Ohms as options for different current (brightness) levels.

The "LED Controller" is positioned between the receiver box and the heatsink of the motor and it is held in place with Velcro. The wire harness for the rear light bar is place in a braided polyamide sleeve. Visible, just in front of the motor between the two servos  is the "emergency light" LED  - it is a special high-intensity dual color (red-blue) fast flashing LED and it is directly plugged in one of the current limited ports of the LED power distributor (on the RPS controlled side).
My goal was to have the wiring look neat - probably this is as good as it will get.

One reason I was trying to avoid the "wire-salad" look is because sometimes, we drive the car with a clear Lexan body that shows off the beautiful vehicle internals (no headlights on the unpainted body).

This is how the complete model looks like. We went with the dark blue/bright yellow color scheme for an improved visibility. The windows were masked as well as the most of the car body, leaving exposed only the areas to be painted blue. Then the yellow paint was applied. All of the painting is done on the under side to protect it from scratches during roll-overs and crashes.