Jump to content

Making of Endorphin (photo blog)


Sasha
 Share

Recommended Posts

Would a passive heatsink prolong the life of something like a 6581 that runs very hot, or would that need something like a fan?

Passive or active, whichever keeps it at an optimal temp is all good.

Hey sasha I was thinking, you could drill some holes in the aluminium to increase the surface area a little.... Might help?

Link to comment
Share on other sites

  • Replies 168
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

When I cracked open a C64 once, it was a beige one but it had a 6581 in it, inside was a huge piece of thin metal sheet with bends in it, attached to the top half of the case, so it touched some of the ICs (like the SID).

You can try some of the fancier RAM headsinks, they have a very low height and perfect dimensions for a SID... 

ramcoolers1_small.gif

http://www.performance-pcs.com/catalog/index.php?main_page=product_info&cPath=43&products_id=635

http://www.tweakmonster.com/products/ramcoolerpage.htm

I've been deciding whether to get some or not, but I think the 40mm fan and grill on the side is enough... plus 6582s don't get as hot as 6581.

btw, did you know you can run a 6581 on 9v? I didn't test the filter, but it does make sound!

Link to comment
Share on other sites

From old c64 i scavenged there was 1 that had a heat sink attached to it with a tie-wrap.

Why dont you use this method?

I guess tie-wrap is the same as cable-tie. Right

Fixing the plate onto SID is not a problem, but this idea sounds good.  :)

I will probably put a piece of foam underneath the PCB of top SID module to press the aluminum plate against SID. I never used touch SIDs before so this is the first time that I noticed how much they actually heating. It is not that I could fry an egg on it, but still seamed considerably.

Link to comment
Share on other sites

When I cracked open a C64 once, it was a beige one but it had a 6581 in it, inside was a huge piece of thin metal sheet with bends in it, attached to the top half of the case, so it touched some of the ICs (like the SID).

That metal was not aluminum, it was steel but it is very big so I guess it takes heat well enough. Aluminum must be better especially when it cannot be big enough.

I really like those RAM heat sinks but are they good enough for SID? I suppose it not hard to find in computer stores.

btw, did you know you can run a 6581 on 9v? I didn't test the filter, but it does make sound!

I`ve got 8580

Link to comment
Share on other sites

Some off the top of my head ideas about cooling.

If you are going for a passive cooler you need to get the heat outside the case, otherwise all you're doing is preading it around inside the box. The system may take longer to get to thermal equilibrium, but once you're there it is still overheated.

The alloy strip idea may work, but attaching it to a heatsink fin on the back panel might be better.

Basically you can treat heat like a fluid or current flow. Aluminium has a batter thermal conductivity than most chip packages, but you need to encourage the flow from hot to cold - hence the term heat SINK - the thing that removes the heat to the outside world.

Remember that dark matt colours absorb/radiate better, so a black heatsink on the outside will move more heat. Drilling holes in your heatsink may increase surce area, but at the expense of cross section so reducing the flow.... better to add some small fins, a thin 'crinkle' layer on top, or mill something out of a bit of scrap alloy.

If you go the fan route, then a few tiny fans may be better than one big one. You're looking at the overall Volume of air they can shift. To cut noise you could run them at a lower speed, or make up a little thermal controller. Cold = no fan, warm = fan run at variable speed, overheat = shut down power supply to SID's but leave the fan running.

I had a funny job like this once where I had cool a controller in a moulding machine, (the way the machine had been installed meant that the ambient temperature was over 25C). I used some clear plastic panels, duct tape, a bunch on incense sticks, ("Joss Sticks") and a bright light to mess around with ducting made from plastic card, in order to get the airflow over the processor and A->D cards that were giving trouble. It's still running, though I added a thermal switch because they get lazy and don't change the air filters when they should do.

Fancy solutions might involve getting hold of some heat pipe (google it). Some fancy 'modders' PC heatsinks use it. Alloy pad on top of the chip, coupled to heat pipe coupled to radiating fins on the case back or base.

For cheap temp mesurement, Maplin do a low cost temp guage with a probe, or you can get calibrated bead thermistors which could be rigged to your test meter with a simple voltage reference. I have a cheap thermocouple meter I repaired from some scrap, and an infra red thing (maplin again), though it cost £30. http://www.maplin.co.uk/Module.aspx?ModuleNo=46033&&source=14&doy=3m5. Maplin have a few others temperature probes, but sadly all around £20. If you can't find one locally, perhaps I could airmail you one. (still haven't done the puzzle thing yet).

My favourite quick and dirty solution looks like pulling some air through the case, making sure it goes over the chips that need it. If you can get some temp measurement in, then you can look at the more exotic ideas.

Hope this helps.

Mike

Link to comment
Share on other sites

Thnx Prof for this nice informations..

I was in same trouble last month where I build my 19"-PC-Case for my new Core2Duo-Machine.I bought a  GF 7950 GTX which is passive cooled, but under high gaming I got it to 125 degrees  :o .... which is no problem the manufacturer said.

But the heat wasnt good for the rest of the components...the inner rack going to hot so I mounted a 80mm Fan to the Chip-Side of the grafix-card (not to the heatpipes ) and so I got under full gaming 70 degrees, which is ok.

I tested this Fan on the Heatpipe-Side also, but temperature was 80 degrees.

Tip : mount the Fan(s) on some rubber (between screw and case, I used an old inner tube from a bike  ;D )....it makes them more silence ;)

Regards

Link to comment
Share on other sites

Stryd was right.  :) Thank you Mike. Your reply cleared some things to me. I will see what exactly solution will be, but this is enough information/tips to consider. That IR thermometer from Maplin seams very good thing as you can measure some unreachable spots. It would be nice to have, but this is the first time I am struggling with temperature that is not cosed by virus or flew, so I`m not sure will I ever use it again. ;D Maybe when I start building next SID synthesizer in even smaller case ;) I hope I`ll never do. Thanks again Mike!

Link to comment
Share on other sites

Comrades, I`m stuck at 98%!  ::)

Everything not working as it should.

All modules individually tested before mounting to the sub-panel and they was working OK, but not together.

I have done following:

TAKE 1

1. burned bootstrap 1.9d

2. uploaded MIOS 1.9d

3. uploaded "setup_8580.asm" aplication with changed (and recompiled) #define DEFAULT_DEVICE_ID 0x00 for each of 3 slaves (0x00, 0x01, 0x02, 0x03) . Everything else left as it was.

When Testing (link enabled) sounds are comming fom all SIDs but:

1. I can select patch and tweak parameters only on core module.

2. When I select the other SID, I cannot select patch nor tweak the parameters! (link enabled, CC disabled)

3. When activate both "Link and CC" buttons, I can tweak the parameters of all slave SIDs but still cannot load the patch into them.

Its is strange as "CC" button should enable CC to be sent out (which is happening) and, as far as I know, they shouldn`t affect slave SIDs at all.

Selecting multiple SIDs have no affection on the coresponding SID, only CC and link buttons made them read encoder tweaking.

...something is definitely wrong about addressing!

------------------------------------------

TAKE 2

I also tried to fix problem by doing following:

1. erased PICs

2. burned "bootstrap 1.9d"

3. uploaded "MIOS 1.9d"

4. uploaded unchanged "setup_8580.asm" to all PICs

5. changed ID with "change_id_v1_9c" application (I just uploaded precompiled files from device_id_00.hex to device_id_03.hex)

The problem was:

Only core working, slaves ignore "link" and "CC" buttons and stays silent.

After this problems I decided to repeat "TAKE 1"  as it is at least half-working setup. Again exactly same problem or same mistake. I really done my best several times and dont have a clue what is the problem.

NOTE

I`ve done uploading on each PIC using master module.

This sinth is 98% finished and I`m stacked!  :-\

Please, give me some advice.

     

Link to comment
Share on other sites

You should not need to change DEFAULT_DEVICE_ID.

When AUTO_DEVICE_ID = 1 (the default) then the firmware uses the MIOS device ID (ID burned into PIC with bootloader) to determine the SID device ID, so MIOS device ID 0x00 will be the master, 0x01-0x03 will be the slaves. There's no reason to change how this works, just burn ID 0x00-0x03 to your four PICs and upload the exact same "setup_8580.hex" file to all four PICs.

Forget about "CC" button, this is irrelevant, in V1 this will only enable sending out parameter changes to the MIDI Out (i.e. to let you record them), and this is different to the master PIC sending parameters to slave PICs via MIDI.

"TAKE 1" appears as if all PICs have the same SID device ID, so when you enable "CC", you are sending out CCs for device 0x00 and the other PICs are receiving them, but patch changes are not working because the master is sending out patches for devices 0x01, 0x02 and 0x03 and the slave PICs are all 0x00 and ignore them.

"TAKE 2" suggests you uploaded "change_id" app after MB-SID app, this will replace MB-SID app so you would need to upload MB-SID app again afterwards. If you're using MIOS Studio, this will also help you validate each PIC has different MIOS device IDs and so will auto-configure themselves to be master or slaves.

Link to comment
Share on other sites

I don't think I explained enough what I think the problem is...

In "TAKE 1", you probably burned each PIC with MIOS device ID 0x00, recompiled the setup_8580.asm with different DEFAULT_DEVICE_ID, but left AUTO_DEVICE_ID = 1, this meant DEFAULT_DEVICE_ID was ignored, and each PIC autoconfigured SID device from MIOS device ID, so all PICs were masters! Enabling "Link" meant all incoming MIDI messages were sent to the other PICs, and since they all were probably on the same MIDI channel, they all played the default patch on incoming note events, and when "CC" was enabled, you had some control over the other PICs, but patch loading is done via special SysEx messages with the SID device ID in the message, and the other PICs were ignoring them because they were all SID device ID = 0x00.

Once each PIC has its own unique MIOS device ID (0x00-0x03), you should be able to upload the same setup_8580.hex (with AUTO_DEVICE_ID = 1) and everything should work. The fact that you got some sound out of the slave SIDs and could control some parameters means it's not a hardware problem at all, you've got your master PIC's Tx connected to all three slave PIC's Rx, and they're receiving it fine.

Link to comment
Share on other sites

Wilba, thanks alot. I will do this as you explained as soon as I get home. One mistake that I realized now is when I changed ID with change_id application, I didnt upload the SID application again as I didnt receive proper upload request so I thought I cannot do that at all after I change ID and SID application must be already in it, but I was wrong... :-[

Link to comment
Share on other sites

I could`t wait to get back home to grab my SID again... and after some brick-digging I fixed the problem, and everything worked perfectly! I feel great relief finally when everything works OK  :D

Thank you Wilba once again. Enjoy you wonderful piece of work. All respect!!!

Link to comment
Share on other sites

Thank you both. I `AM having fun... big time!

I`ll post some more pictures when there be something new. For now here is the Endorphin by Night.

483060397_95f97fb0e5.jpg

After some playing with it I didn`t like how bright LEDs are. They are normal brightness, diffuse LEDs. It is nice to look at it from distance but not so nice to have it in front of your face, so I decided to add some extra resistors to equalize brightness of matrix (less bright - don`t hurt ayes) and rest of the LEDs. I will experiment tonight to see how close I can get.

Link to comment
Share on other sites

Software PWM doesn't work as well as you'd think... I expected the LEDs on my SID to be dimmer with all LEDs in a matrix (so 1/8th duty cycle, 1ms "on" time) but they were still far too bright, and then reducing the duty cycle further made them flicker before they got dim enough. You'd need a much faster refresh to avoid that, not possible with MIOS for LEDs on the DOUT chain.

Link to comment
Share on other sites

Too bad but Wilba is right.  I just found what TK said about LED dimming:

It wouldn't cost much performance (and wouldn't consume too much memory) if only one or two LEDs are dimmed, but for 50 LEDs I see no chance to integrated this into the MBLC application - the CPU load is already very high, especially when the host application sends a lot of MIDI events at the same time. An additional PWM handler for so much LEDs would provoke MIDI buffer overruns.

Link to comment
Share on other sites

However, for my MB-SEQ, I'm interested in hooking up the LCD backlight to the PWM output of the PIC (that's what is used in MB-SID to clock the SIDs)... that's got an awesome refresh rate, 10-bit resolution on the duty cycle, and runs in the background so no CPU load! (Sorry, slightly off-topic, what is it with this thread and hijacking?  ;D)

Link to comment
Share on other sites

new idea:

as all the LEDs share a common ground, you could use a transistor and a NE555 for (fast) PWM.

Know what I mean?

The output of the 555 goes to the transistor and switches all the LEDs to ground.

Link to comment
Share on other sites

Why not run an LM317 off the unregulated supply, and supply all the LED's from this? Since you can control the LM317 with a simple pot to ground, a dimmer knob os possible. Or a simple switched resistor bank run from a DOUT, whch finally could be software assigned.

Just a thought

Mike

Link to comment
Share on other sites

Thank you guys for suggestions but I wasn`t detailed enough. Problem is the all LEDs share common ground with buttons otherwise would be easy to dim it.  :-\ But i don`t believe this is going to be difficult to done by adding one more resistor at each out. I already prepared small PCB for resistors and headers.

However, for my MB-SEQ, I'm interested in hooking up the LCD backlight to the PWM output of the PIC (that's what is used in MB-SID to clock the SIDs)... that's got an awesome refresh rate, 10-bit resolution on the duty cycle, and runs in the background so no CPU load! (Sorry, slightly off-topic, what is it with this thread and hijacking?  Grin)

Trivial... I love the idea. Have you try it already? NP for off-topic, it is always happening here and there unintentionally.  ;)

NEWS:

I`ve got one more floor finished, well almost... I need 24LC256 x 7 to complete it. New floor is piece of acrylic cut by HAND this time!  ;D which is actually hanging platform for LTC and Bank Stick module. These days I will fill the rest of IC sockets. That is it for now.

stick.jpg

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share


×
×
  • Create New...