Prototype Version 5 Wins Gold at Regional Science Fair!

Following the end of the construction of the fifth prototype electric skateboard, I decided to enter my project into the Greater Vancouver Regional Science Fair. The experience was absolutely astonishing! Not only did I meet hard-working, dedicated students and their innovative projects, but I also met experts in the field of engineering, who offered creative criticism. And all of this couldn’t be possible without the committed judges and voulenteers, who took time out of their daily lives to set up and monitor this event. Way to go!

In order to make my project more scientific, I decided to run an experimental trial to see how the gear ratio effects the power consumption on the fourth prototype of the electric skateboard. I did this with several gear ratios and weights, and I used the results to improve the skateboard, by choosing the best gear ratio for my weight. I also determined the speed at which the skateboard has the maximum range, which turned out to be 19km at 9km/h. This is just an estimate; I still need to test that.

Bluetooth Logging System:


I also decided to run an experimental trial on the maximum current and power consumption under different loads. Both of these trials were recorded with a custom-made, Bluetooth Logging Module that I designed, programmed and built. It uses a GPS to track location and velocity, a hall effect current sensor (for current), and the standard voltage divider/reference diode for voltage detection. More on the module in a further post.

Introducing Prototype Version 5:


Prototype version 5 is the best, most complex prototype I have built so far. I had to learn how to work with carbon-fiber for this board, as I wanted to reduce the weight of the board even further. The deck has a foam-core, and I used wooden supports around the trucks. There were a couple of differences with the gear drive as well; I 3D printed two PLA spacers so that they could more easily hold the gear in place. Additionally, I used a 25 tooth gear that I modified. It used the least amount of power out of all the gear ratios tested.

The electronics side was a bit different as well. The largest change was the addition of a lithium-ion BMS board. I found one on eBay for about $15 for the 6 cell configuration I was using. The major advantage: safe and fast balance charging. I can charge from dead to full in under 60 minutes! I also picked up an inexpensive 24v power supply, which I modified to become a constant current/constant voltage source through the “33R Mod”. More on that in a later post.


These were some of the major changes that I changed from the fourth prototype skateboard. Currently, I am working on alternative methods of controlling the board; everything from Wii-Nunchucks to Bluetooth Low Energy and Gamepad Controllers.

The development of this board, as well as the write-up and experiments that I did helped me win gold at the Greater Vancouver Regional Science Fair! I also recieved an award from the Canadian Institute of Energy, and I will be travelling to Montreal for the nationals in mid-May!

Read more

A cheap, functioning GPS


I have to admit, I was quite sceptical this would all work. Firstly, the GPS chip that I am using has minimal documentation and the pinout is only available from a previously mentioned blog post.

Secondly, the antenna I used is actually a bluetooth antenna from a 2009 Mac Mini. It works alright, getting a fix in under several minutes which then wanders at a speed of about 0.5km/h. The accuracy is good too, better than I expected; two or three meters while indoors.

Here is a gallery showing the connections with the case:

Only 4 pins were used in my project. Ground, VCC, TX, and RX. Ground went to ground, VCC to 3.3v (I didn’t want to risk even trying to hook it up to 5v), TX to pin 2, RX to pin 3 (although most GPS units are hooked up with the TX and RX pins reversed). Here is the pin layout.

The hard part was trying to figure out how to hook it up using the software. The Arduino Uno can only receive and send through one serial connection. This meant that if I was to hook up the GPS, that I would not be able to see the output on my laptop. This problem was overcome by using the SoftwareSerial.h library, which is included with versions of Arduino 1.0 and up.

The first thing I had to do software wise was install the TinyGps library. This was hard to do as the creator’s website was iffy at the time. I ended up downloading it from github and renaming it to get rid of the dash and numbers before putting it into my library folder. Thanks to Mikal Hart for his galvanizing effort!

I used one of the examples (test_with_gps_device) with a few crucial changes:

/* This sample code demonstrates the normal use of a TinyGPS object.
It requires the use of SoftwareSerial, and assumes that you have a
4800-baud serial GPS device hooked up on pins 4(rx) and 3(tx).

TinyGPS gps;
SoftwareSerial ss(2, 3);

As you can see, the pins 2 and 3 are defined to be used with the software serial. And in the void loop():




Basically these two lines are the ones that had me scratching my head for a bit. The first serial begin opens a port between the computer and the Arduino. If you hit Ctrl+Shift+M you will need to select the 4800 baud rate. The second line opens up a software serial port with a 9600 baud rate to the GPS, (which is what the GPS uses).


If your project does not work, don’t fret. I had lots of trouble getting this darn chip to work. If you see Chars from RX this is good. That means that any moment you should get a fix. If you see Chars and Checksum fail, this is bad. Maybe you’ve got the wrong baud rate for the card. If you don’t get any Chars at all, that means the chip isn’t connected or the antenna is causing the chip to fail (a short circuit would cause that).

I also tried out a dipole antenna with no luck. It worked (near instant fix), but the position kept moving 300+ meters per second. Not recommended.

Read more

HDTV antenna project


Do you constantly use services like Netflix? Are you tired of boring advertisements that take up to much time? My parents were, so I built them an HDTV antenna! This antenna can pick up news channels (such as CBC and CTV) and from my current location picks up about 15 HD channels.

Keep in mind that this antenna needs an HDTV tuner which is standard on most new TVs but is lacking in some older ones. If your TV does not have an HDTV tuner then you can get an external one from a dollar store, The Source, ect.



  • 1 x 3 or 2 x 3 lumber (20″ min)
  • 12 to 14 gauge galvanized wire (other wires will do)
  • Shrink tubing (for your wire)
  • #8 5/8″ metal screws (10)
  • 3/16″ fender washers (10)
  • 300 to 75 Ohm TV Antenna Coaxial Balun

The balun is the most important piece, it is converts the balanced signal of the antenna to an unbalanced signal that is usable by the TV. They are available online for about 4$.


Drilling Holes:

I marked out these points on the lumber and drilled pilot holes that were slightly smaller than my screws. The offset from the sides for each hole was equal to 1/2″.



I had to measure and cut the 14 gauge wire to several different lengths for this project; here is what I decided to cut them to.

Item Length Quantity
Bunny Ears 16″ 8
Main wires 21″ 2

These measurements worked out nicely and produced a good result. I also used the shrink tubing on the ends of the bunny ears so they turned out duller, but that did not work, so it just made the antenna look a bit more cool.


Bending and finishing:

I bent all 8 of the bunny ears in half and set them aside. Then I proceeded with bending the main wires which turned out to be a bit more tricky. The best way I found to do this was to screw a washer into each hole but leave a bit of space in between. Then I would bend the wires like in the picture above. I slipped the heat shrink around the places the wires intersected and secured it with the use of a lighter.

To install the bunny ears I simply loosened each screw again, slipped the bunny ear in under the washer and screwed it back into place. It also helps to spread the bunny ears out but not so much that they touch.


The balun:

One of the last things was install the balun. The balun had no polarity so it did not matter how I installed it. I also decided to wrap mine in electrical tape since it was wobbly.


Testing it out:

The initial tests were great. I ran the air search function on my TV and got around 5 channels. After some fidgeting I found that the best place for the antenna was a couple of feet away near the fridge. In all I’d say this project was a success. The only thing I would do differently next time is maybe make the length of the plank a bit longer to compensate for the width of the bunny ears.

As always, comments are appreciated!

Read more