DIY Phaserunner heatsink.

MrDude_1

100 kW
Joined
Aug 17, 2012
Messages
1,016
Location
Charleston, SC
So this is how I made a custom heatsink for my phaserunner controller.

for phaserunner info look here: http://www.ebikes.ca/shop/ebike-parts/controllers/c-phaserunner.html#

It all started out as a simple thought:
phaserunner%20heatsink%20plan.png


so I went on ebay and ordered a block of aluminum...
I then went over to grins website and got the phaserunner PDF:

20160725_122603.jpg


printed it out and taped it on the block:

20160605_124716.jpg


I then marked the holes with a push punch. these are awesome. you just push down, and it "clicks" and makes a mark.

20160605_124723.jpg



I then drilled the holes. perfect...
then countersink holes for the bolts. perfect.
then carefully secure everything and use a milling bit to make a flat bottom in the hole... perfect
then I went to do the next step and screwed up royally. I cut the V notch on the wrong side. UUUGGGH.

scrap the whole thing.

two months go by.

I start riding the bike to work with no heatsink. It gets hot and does thermal cutouts.
So now I really want that heatsink. Thankfully when I ordered the block of metal on ebay, it was a auction for two.
I have a newborn and a wife that works nights. I get exactly 1.5 hours to make my heatsink before she leaves for work.

Time on.

I redo the steps above to print/mark/drill the holes... I dont countersink anything. No time.

20160725_171526.jpg


I then put the table saw at a 45* angle and do a best guess for the height:
20160725_171531.jpg

20160725_171533.jpg



I then sneak it up higher and run it again. repeat until:
20160725_172123.jpg

20160725_172131(0).jpg



Ok now for the next step. I cant just cut the fins on the fence, they would be angled too much to catch air.
the bike is at a 40* angle, so I had a plan.. Make a board with a notch, and it can hold the block at the correct angle.
the plan:
20160513_150303.jpg


fail.
my table saw only does up to 45*. it cant do 50*.
I try faking it but only succede in wasting wood and time.
New plan. 45*

that works.

I run the fins through.. I quickly figured out that too thin, and they break. so I go in 1/4" increments. with the kerf, that makes roughly 1/8" fins.


20160725_184828.jpg


20160725_184832.jpg


20160725_184834.jpg


20160725_184840.jpg



very cool.

I hold it up to the bike and mark where the U-bolt will clear the shock.

20160725_184916.jpg



I very quickly (sorry no time left for pics) drill two holes for mounting. The bolts stand proud right now, so the Vnotch isnt on the frame, but it works to get me to work today. I call it success.


20160726_101307.jpg

20160726_101314.jpg

20160726_101317.jpg

20160726_101323.jpg

20160726_101325.jpg
 
Very nice. Very dangerous. Not really the right tools for the job. Glad it didn't blow up on you in the saw.

Fine tooth carbide blades cut aluminum in a table saw much better than this, but it is still dangerous. I had a block of plastic move just a little and it ruined the blade and the saw, bent the axle and threw the workpiece.

Get a friend with a mill. :)

Don't try this at home, folks.
 
Alan B said:
Very nice. Very dangerous. Not really the right tools for the job. Glad it didn't blow up on you in the saw.

Fine tooth carbide blades cut aluminum in a table saw much better than this, but it is still dangerous. I had a block of plastic move just a little and it ruined the blade and the saw, bent the axle and threw the workpiece.

Get a friend with a mill. :)

Don't try this at home, folks.


Not trying to insult you or anything.. but did you know they made tablesaw blades for aluminum?
yes. thats right. You CAN use some woodworking tools on aluminum... after all, its softer than some hardwoods. Do a google search for some more info.


Also, I have a mill. I just cant have it setup until we move.
 
Yes, I have those blades, that's what I was talking about. That is only part of the problem, the other part is the stiffness of the saw, and the clamping is very likely marginal. It is just a small vibration away from a major disaster. I was using one of those blades when my workpiece moved and ruined blade and saw. Instant destruction of everything (except me, no injury). My fault for inadequate clamping (and I knew it was dangerous), but just recognize that the cutting tooth speed is waay high for safety with this setup. Aluminum is very forgiving and allows such things, but that doesn't mean it isn't dangerous. It can grab the blade instantly quite unlike hardwood. Glad it worked out, and it made a good story. If someone else tries it they might have less luck and lose an eye or a finger. Proper metalworking tools handle this a bit more safely with more stiffness, better clamping and usually much lower cutting speeds. Just so folks reading this understand it isn't quite like sawing pine. Everyone gets to choose what they do, but it is important to give them some information about the hazards, especially when it looks easy.

This saw wasn't equipped with aluminum cutting rated blades. That appears to be a plywood blade. The aluminum cutting blades I've used left a mirror finish on the aluminum, and were silent doing so, while wood blades like this one scream and leave a very poor finish.

Slick idea for a heatsink, if you make up a batch I'm sure they'll sell. I would probably even buy one. Perhaps Justin will consider having something made up.

Thanks, and take Care,
 
Sometimes I envy people who are great with their hands.

Sometimes I think being great with your hands means you never learn how to jury rig.

I've been planning on getting one of these for $5:

images


Drilling the right holes in it, polishing it to get a good mating surface, the tiniest amount of silver heat transfer paste, bolting it together, then zip tie it to the bike so that the fins face forward, and the Phaserunner mates with the bike.

Advantages?

1. It costs $5 - or in my case, free, since I have a few of those lying around.
2. It'll take 10 minutes.
3. It doesn't involve the use of dangerous cutting tools
4. It will be far more efficient - look at the surface area available of the two different designs - and it will face the wind moving forward, increasing cooling.
5. It would weigh a fair bit less.
6. Mounting position would protect the expensive Phaserunner from impact with small rocks and minor bumps, and hit the cheap heatsink instead.

There's a saying that "When all you have is a hammer, everything looks like a nail". I never really learned any handy skills, but I find when you don't have a hammer, you learn to figure out what can work as one.
 
I think it's great what you're doing, and I appreciate your posting the pics here. Another alternative is to buy two blocks (as you did), then get a hole-saw that is a hair smaller in diameter than the frame tube you plan to mount it to. I realize a V-notch attaches to any tubing diameter, and is self-centering, but...my instinct is to hone the round half-circle groove to match the tube diameter that it will be mounted to. When done, you can sell the other half to recoup the cost of the materials

Drill four corner holes and bolt the two pieces together

Drill a long pilot hole from both ends towards the center (will require long bits from McMaster Carr).

Drill hole-saw from both ends towards the center

Separate the two blocks

Put coarse sandpaper on the aluminum bike tube, hone channel to smooth roundness

Add thick aluminum foil and/or thermal paste to make up the thickness of the sandpaper that was used.
 
Alan B. My reply came off harser than I intended... I just get irritated how everytime I show aluminum cut online someone always brings up how I shouldnt do it. lol. I rechecked the blade, you're correct that its not the blade that was supposed to be in the saw. Like my first post said, I was in a hurry and forgot that I even changed the blade. That explains why I couldnt cut the thinner fins I planned too.. As far as the noise, I already lost half my hearing in one ear from motorsports, so I wear plugs and muffs with the table saw anyway. Didnt notice the diff. For the record I also wear safety goggles,and the block was clamped to a piece of 2x4 that I cut to hold it on the guide rails. I should have been clearer about the clamping.

Everyone. If you put a block of aluminum on the saw and just try to push it forward.. and ignore the noise... it may cut.. but it could kick back and hurt you. It can bind the saw. (the aluminum expands quicker than the saw blade, and it gets hot while cutting. you can really jam it if you cut partway and it gets too hot.) it can pull the sharp carbide teeth off the saw and fly into your eye/arm/face. If the metal is not clamped to something that is in the guide, AND if you're pushing the block with your fingers, you are doing it wrong.
I learned about cutting metal safely on table saws from helping out around a metal shop. They chop chunks all the time. Make sure you learn how they do it before you try it.

ok that said.... moving on. lol.

Sunder:
There are a couple problems with those heatsinks. I already tried them.
First problem is the phaserunner itself. You use the most power pulling away from a stop. That is also when there is the smallest amount of air. The reason I started using big chunks of aluminum, is that it can draw all the heat away and absorb it... then before it really warms up you're moving with airflow again. With the thinner baseplate of those heatsinks, they overheat after multiple starts at my power levels. This may not be a problem for you, depending on how you're using it.

The second problem with putting that heatsink on is drilling the fins. You need atleast a drill press (if you dont mind bent fins) or a mill (ideal).. remember the bolts have to go down through the fins. the bolt heads need someplace to sit.
If you have to do this with a hand drill, I would use a hacksaw and slot across the fins where you need the bolts to come through. its not ideal, but by cutting the fins first, you wont bend and tear them up as bad.

The final problem is your mounting idea. While its nice to have the fins forward and I know the idea is to protect the phaserunner, you would have to have the phaserunner on the bike tube, with some kind of mounting to the bike. this means any hit to the fins would still bash the controller on the tube... And figuring out the mounting is trickier.
Personally I dont worry about it bashing since its next to the chain ring. If I hit something hard enough to touch the controller, Im also bashing my chainring. Since this isnt a log hopping bike (the motor alone is like 16lbs in the rear wheel!) I dont worry about it. the pedals give it some side protection if the bike falls over, and its close enough to the wheels that its unlikely to be hit.
I dont know how you use your bike though. If you're really worried about it because you go offroad, I would mount the phaserunner to the seat tube. That solves the problem and lets you have the seat and the downtube as a second tube for your mounting options.

attached is a pic of the goped with its phaserunner heatsink. you can see the fins bent from the mill bit in the drill press (far from ideal, but I cannot use my mill until I move)
20160728_072718.jpg

heres the topside.. its just JB welded in place since I have no place to TIG right now and I am not setup to MIG aluminum. It never moved
 
MrDude_1 said:
Sunder:
There are a couple problems with those heatsinks. I already tried them.
First problem is the phaserunner itself. You use the most power pulling away from a stop. That is also when there is the smallest amount of air. The reason I started using big chunks of aluminum, is that it can draw all the heat away and absorb it... then before it really warms up you're moving with airflow again. With the thinner baseplate of those heatsinks, they overheat after multiple starts at my power levels. This may not be a problem for you, depending on how you're using it.
Ah yes... heavier load on direct drive motors designed for higher speeds - forgot how peaky those amps get. I'm 72kg, pedal on start and have been using exclusively geared motors. I also have the phaserunner to ease in over 1000ms, so the only time I get heat issues is long hills at full throttle.

MrDude_1 said:
The second problem with putting that heatsink on is drilling the fins.

To be honest, I've never had a problem with that. I just put it in a vice and drill with a hand drill. The ones I've used, the fins aren't quite as fine as in the photo, but an M3 bolt with a screw head had no problems fitting. A hex head might have.

MrDude_1 said:
The final problem is your mounting idea. While its nice to have the fins forward and I know the idea is to protect the phaserunner,
If an accident was going to crush the fins and damage the phaserunner behind it, I'd be more worried about my own health than my kit. as I said, it would only be against loose stones - more cosmetic than functionally damaging.
 
you sound good to go then... take pics so we can see too! :mrgreen:
 
spinningmagnets said:
With the thinner baseplate of those heatsinks, they overheat after multiple starts at my power levels

If you don't mind me asking, what are your max amps?

the phaserunner is set as high as the BACdoor software will let me. I forget what it is. I see 65+a peaks on the CA but they are brief. WOT from a stop. at full speed it sustains between 40 and 58 constant depending on wind, slight uphill/downhill (so slight, you cant see it or tell when walking) however I go with traffic, so usually not flat out once I catch a car.
wattage is between 5000-ish at peaks but constant load is 1800 to 3800.. again depending on conditions. I do whatever to maintain with traffic on a 35mph roads during rush hour, so its between 25mph for a slow car or traffic, to 45.

I run 16s lipo, with fully charged at 66.2v. Fresh battery charge before each ride. total commute is only 3 miles, but I have a useable range of about 20 miles at the mostly WOT I ride... battery has 20ah of advertised size, but since I dont fully charge (4.15) or fully discharge (sag at 3.5 will cut off completely) its closer to 18ah...
So a 6 mile ride into downtown at WOT the whole way, 6miles around town at slower speeds, then the return 6 mile ride home is 100% doable without any pedaling. Im slower on the way home, but not annoyingly so.
I do opportunity charge when I can at 575w constant wattage. I charge at 575w at work as well, but have a 1C charger at home. (capable of 1.7c, but I dont have it set that high)


ok, all that said.. before I get cutouts and rollbacks from heat.
Now I have not had a single one, even with multiple WOT starts at full voltage (although that does get it warm)
 
I should note, I bought the phaserunner because I built a goped with an 80-100 motor. I was having hall issues, and the phaserunner runs sensorless and 3000w.... perfect match for it.
unfortunately the goped made too much power for the stock chain, it wore too much commuting. I made a belt drive, but it was hard to keep the belt tracking straight... eventually I got tired of messing with it, clicked the classifieds and someone posted an old 5303 hub motor up.

so I took the goped apart, grabed a V2100 from wally world, and stuffed it all on that.
I wouldnt choose the phaserunner as the first choice, since im maxxing it out...but, I already have it... and its so nice... I just cant go back to the speed-throttle and hum of cheaper controllers, and the larger BAC controllers are not packaged this well.
 
MrDude_1 said:
So this is how I made a custom heatsink for my phaserunner controller.

Hey, just wanted to congratulate you on a pretty sweet job of a DIY heatink build, having cut my share of aluminum stock on a table saw I know that's doable but no small feat.

Anyways I had mentioned quite some time ago that we would be doing thermal rollback tests on the Phaserunner controllers inside the wind tunnel to quantify how long it takes for them to overheat at full phase current with and without extra heatsinks, and also determining what the resulting continuous phase current is like, and we finally got around to that this summer.

HeatsinkForWindTunnel.jpg

I'll have the full test details and results in the main Phaserunner thread, but the quick summary is that with a heatsink as shown here at 30-40kph ebike speeds, the continuous phase current capability is about 70 amps, while if you just have the bare phaserunner strapped to a tube then it's more like 50 amps.

When we ran the controllers with 80 amps of phase current, they would take 2 minutes to go from room temp to thermal rollback on the bare controller, and more like 4-5 minutes with the extra heatsink. I actually was expecting the bolt on heatsink to make a more substantial difference than this in the time to reach thermal rollback, but results are results! Anyways I'm glad to hear that this has completely eliminated thermal rollback on your own setup. It's good to see firsthand that the phaserunner so modified copes will with setups that are in the 2-4kW continuous power range.
 
It is surprising that such a large heatsink in a good airflow made only that much difference, but the i squared term in the heating is hard to improve, even a doubling in effective heat flow only results in a 40% improvement in current.

I went for a simpler PhaseRunner heatsink for the dual PhaseRunner 2WD Bonanza, at least to start with:

-Tg6LTu-0TRDuBq9WiRU3YnEDy1v6aajSzp_rFPn_Y4UE_vYtIxnc9wovc4NSO_FVJM_hsUNojrpK1FBr4g0wmRhQ5jznGA-qoR8PDR8eMIMPD8KDJgOzi8YOh5u4zALi6y95AjZUVpVG6E9BkGmtO4AapZtY4Yh-1KGrAC63IsozdqtZX4u8u0DShhgb95kvB55pQxaZ2X83psrHVCPb8MCpztgRbqNufNM5hTc170i6TXMjezsLPohooAnFZxeCunmCFICjB4S6nimkMslNW0J0LfBGA27wU58fwaIami69krX7vurEzz0hogB3iVpRPdUOkTF0yX7e1oZynWzvmCPdz2b52rUvWWG0YPTLispznRzOdcBXY9-wW8vph3ARcWSP9b5Wk5dpYpxZ3ykerVFh4PpdtWNkWYJ7uuskyJba-W-vWQamn6Icb0PnUu8oUHL_KYBfjTKC1Ca0jgBohvdBDxVv1k_SUdshPNDFaSGCPCOPSLcEL99YLAf_Qe9o0oRCJbPcs2Pc5KmrnjsdDl6G-hOlLVZVcqoKniCx3rA-GuGR5gDTkZrOk73uLJKcjy52T_b68rRStIxsHRWbYwjsIgDfI0xSo0Kaq3HuE4BIDDwZQ=w821-h474-no


The long central 1" by 1/8" bar bolts to both PhaseRunners and supports them and the battery bag, the two heatsinks, 8" by 1" by 1/8", one on each side, mount to the other sides of the dual PhaseRunners. Not sure how much it will help, but it is hard to do a lot more in the constrained space. They also provide some protection for the controllers. Since there are two controllers the current through each one is about half and the dissipation may only be a quarter of a single controller setup.

The thinner aluminum cuts like butter with a high tooth count carbide aluminum/plastic rated sawblade, but you still have to be very careful of any movement of the part being cut.
 
justin_le said:
MrDude_1 said:
So this is how I made a custom heatsink for my phaserunner controller.

Hey, just wanted to congratulate you on a pretty sweet job of a DIY heatink build, having cut my share of aluminum stock on a table saw I know that's doable but no small feat.
Thanks, it means a lot to hear that from you. :mrgreen:

justin_le said:
Anyways I had mentioned quite some time ago that we would be doing thermal rollback tests on the Phaserunner controllers inside the wind tunnel to quantify how long it takes for them to overheat at full phase current with and without extra heatsinks, and also determining what the resulting continuous phase current is like, and we finally got around to that this summer.



I'll have the full test details and results in the main Phaserunner thread, but the quick summary is that with a heatsink as shown here at 30-40kph ebike speeds, the continuous phase current capability is about 70 amps, while if you just have the bare phaserunner strapped to a tube then it's more like 50 amps.

When we ran the controllers with 80 amps of phase current, they would take 2 minutes to go from room temp to thermal rollback on the bare controller, and more like 4-5 minutes with the extra heatsink. I actually was expecting the bolt on heatsink to make a more substantial difference than this in the time to reach thermal rollback, but results are results! Anyways I'm glad to hear that this has completely eliminated thermal rollback on your own setup. It's good to see firsthand that the phaserunner so modified copes will with setups that are in the 2-4kW continuous power range.

This makes complete sense to me.. since I had it "warmed up" from rolling down the road, pulling away from a stop I am well over that 50a mark... and it cuts out on me. With the heatsink it stays cooler from the start, and then it can take the full amperage starting off again. I'll go checkout the main thread now.
 
I actually was expecting the bolt-on heatsink to make a more substantial difference than this in the time to reach thermal rollback, but results are results!

These are AWEsome results! Heatsinks have no moving parts, they never "wear out", and they are completely water-proof in a monsoon. Not all frames are aluminum, but alloy is the growing frame material of common bicycles. This opens up the option of the frame becoming an additional heat-sink.

Most peak amps are very temporary if accelerating from a stop on city streets. The highest sustained amps seem to be the large hubmotored ebikers on off-road frames. Mid-drives used in all applications experience lower sustained amp-use, and street ebikes of all configurations typically use a short peak, followed by a cruise phase (in the flow of traffic at a stable speed), which allows everything to cool down to just being warm.

The people who are new to ebikes that I am talking to...they don't like wiring clutter, and putting a controller inside a battery bag holds the heat in. I've pondered ducting and computer fans to flow air across a bagged controller, but...this is the real best solution. Fully potted controller, shedding heat to fins or the frame.

edit: I wrote this to the thread readers, I was not schooling Justin, He already knows more than I will ever know about this...
 
Nice DIY heat sink and nice bike! I have the same one :)

Need to upgrade that shock next and the crankset weighs like 10 pounds so it needs to go!

what is the controller max volt and amps? neat little thing
 
skeetab5780 said:
Nice DIY heat sink and nice bike! I have the same one :)

Need to upgrade that shock next and the crankset weighs like 10 pounds so it needs to go!

what is the controller max volt and amps? neat little thing

The cranks cant weigh that much.. they're plastic! :lol:
The bike is slowly having everything replaced on it... The steering stem kept coming loose.. so I replaced that. The shifters sucked and I ended up borking the derailleur.. so now I have it swapped to single speed. Im slowly rebuilding the whole bike. lol

The controller can take 100v max... I personally run it at 16s lipo, so I peak at 66v and stop just under 58v. Thats enough voltage to get me to just over 40mph and sustain it right up until the last bit of the battery where I max at 39mph.
If you want more info on the controller, check out this thread: https://endless-sphere.com/forums/viewtopic.php?p=1034905#p1034905
 
front forks,crank and stem weigh a ton they are all steel. Controller is cool! I want to try one one.
 
I have two frames right now and they are both aluminum. By coincidence, they both have the same diameter of seat tube. The outside-diameter (OD) is 32.4mm with the paint still on. I plan to make a heat sink that bolts to the seat-tube. With the paint removed, 32mm (approx.) is 1.26-inches, and I am certain I can find a 1-1/4 inch hole-saw to try out my plan.

I was looking for aluminum flat bar that was 3-inches across, and maybe 2 inches thick. My local supplier had 1.50 square stock in hand, so I will go with that. I'll post pics as soon as I can.
 
More pics to come. The plan it to mount it to the aluminum seat-tube on the frame. I assume the mass of this heat sink is enough it wouldn't matter if it was bonded to an aluminum frame, but it couldn't hurt, right?

Phaserunner1.jpg

Phaserunner2.jpg

Just a side-note, the threads to the holes on the underside of the stock baseplate are 4mm X 0.70, not easy to find at the corner hardware store. I noticed the 5mm bolts are easier to find. If you are ordering mounting bolts from the internet, it wouldn't be an issue because you can get whatever you want.

The "button head" bolts use a smaller hex wrench than the cylindrical bolt-head 4mm's. I bought some button heads immediately because that was what my closest hardware store had...and then I recently found a larger store that had the cylindrical-headed 4mm bolts in stainless steel. The new ones use a 3mm hex-wrench, and the button-heads use 2.5mm
 
spinningmagnets said:
More pics to come. The plan it to mount it to the aluminum seat-tube on the frame. I assume the mass of this heat sink is enough it wouldn't matter if it was bonded to an aluminum frame, but it couldn't hurt, right?

Wow, that is quite the hunk of aluminum Spinningmagnets!

I am really curious to know in practice how long this much heat capacity allows your PR to run at the full max phase currents without thermal rollback. We found in our wind tunnel tests that even a fully finned heatsink would still roll back to ~70 phase amps after a couple minutes, but my hunch is that you could probably be at full 96A for more like 10+ minutes when you have that much metal to absorb it. Let me know if you've had a chance to push it hard yet at sustained high phase amperages like you deal with doing a mountain climb or similar.

Just a side-note, the threads to the holes on the underside of the stock baseplate are 4mm X 0.70, not easy to find at the corner hardware store.

Yeah, we were actually trying hard to fit an M5 thread for mounting but the tolerances across the board were a little too tight unless we expanded some other dimensions which we didn't want to do. However, for people in the US who can't easily access metric hardware, you could probably drill and retap the hole to the #10-32 thread size without issue. It might poke through a bit on the sideways through hole for zap straps but that wouldn't matter:
PhaserunnerHeatsinkHole.jpg
 
Justin, and all Phaserunner Owners.

First .. is the base of the Phaserunner made of Aluminium ?

If not, then the next version , V 2.0 or V 3.0 etc, should be made of aluminium ,

Then ... Get your self a Peltier Plate Thermoelectric Cooler Heat Sink Module

Then ... get the heatsink paste, and your own custom heat sink,

the Peltier Thermoelectric Module usually runs on 12 volt, ( some can run on 8.5 volts ) so you will need to get a DC-DC converter from your battery pack to power the Peltier Plate.
Or
You can make a simple 12 volt battery ( or lower voltage. 1,2 volt by X number of AA cells ) from rechargable AA cells and use that since a bike ride will be short enough to power the Peltier Plate.

Here is a link to a cooler that uses a Peltier Plate, ( they are used in the inexpensive , car thermal electric coolers you find a wal-mart, etc. in case you have an old one sitting around not being used. ).
https://www.walmart.com/ip/24413781?wmlspartner=wlpa&adid=22222222227018876582&wl0=&wl1=g&wl2=c&wl3=40970296112&wl4=pla-78913483712&wl5=9032145&wl6=&wl7=&wl8=&wl9=pla&wl10=8175035&wl11=online&wl12=24413781&wl13=&veh=sem


Here is a link to buy just the Peltier Module ...

http://www.shop.customthermoelectric.com/07111-5L30-25CJ-Thermoelectric-Peltier-Module-07111-5L30-25CJ.htm;jsessionid=C744CE7B6AB9F846A0A92A4A5B27A1EE.p3plqscsfapp006?gclid=COTl38Prp9ECFdm6wAodS7ACWw

Or one with a fan here ...
https://chicagodist.com/products/peltier-thermo-electric-cooler-module-heatsink-assembly-12v-5a?utm_medium=cpc&utm_source=googlepla&variant=17813588868&gclid=COCjheHtp9ECFQeOaQodLo4AIQ

Justin , I think you will find better results doing this.
 
Back
Top