Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
sithael
Nov 11, 2004
I'm a Sad Panda too!

mtwieg posted:

In the interest of giving this thread another jolt, I'm considering giving another series of lessons/tutorials. If you didn't catch my first one on switching power supplies, it starts on page 12 and goes until page 15. As far as subjects go, I have a few ideas:

1. Resonance oscillators (would be pretty technical)
2. Signal filters, effects (like stuff you'd use in audio to make effects and stuff. Somewhat technical)
3. Transistor circuits, like amplifiers and voltage regulators. Tons of possibilities. Not very math intensive, but a little "deep")
4. Eagle Cad tutorial for people wanting to make their own custom printed circuit boards. Not technical really.
5. Something microcontroller related. My experience is with AVRs, which are pretty user friendly. It would be pretty technical.

If anyone has any other ideas, shout out. I'll decide which on to do based on indicated interest from you guys.


The effects or resonance one would be good. The effects one could gain some ML interest too, as there's people asking about effects a lot there. Musicians should know what's going on in those little boxes!

Adbot
ADBOT LOVES YOU

ante
Apr 9, 2005

SUNSHINE AND RAINBOWS
Ok, what are these called, and where can I get/make a custom one?

Click here for the full 1024x768 image.


Is it just another form of ribbon cable?


I need to use one in a project I'm tinkering around with that I'll post up here when(if) I finish.

ante fucked around with this message at 01:18 on Sep 9, 2008

w_hat
Jul 8, 2003

mtwieg posted:


5. Something microcontroller related. My experience is with AVRs, which are pretty user friendly. It would be pretty technical.


AVRs dude, they're awesome and I'd love to get more in-depth than the Arduino.

ANIME AKBAR
Jan 25, 2007

afu~
I should also mention I program in straight assembly (I said it would be technical)

w_hat
Jul 8, 2003

mtwieg posted:

I should also mention I program in straight assembly (I said it would be technical)

Oh god just kidding.

hobbesmaster
Jan 28, 2008

w_hat posted:

Oh god just kidding.

AVR assembly is about as friendly as it comes. Its about as readable as C is. Note, thats microcontroller C, so you're using jibberish* looking register names all over the place to set up hardware features and so on.

*until you've written a few programs for the MCU, then the register names some how start making sense.

(that is excluding using a c std library, like the amazing ones available free as in speech for AVRs)

hobbesmaster fucked around with this message at 02:51 on Sep 9, 2008

RegonaldPointdexter
Mar 13, 2006

Hey guys what's going on?

ante posted:

Ok, what are these called, and where can I get/make a custom one?

Click here for the full 1024x768 image.


Those are called FFC (Flat Flex Cable). They are really hard to get in small quantities. If you're a hobbyist, forget about getting a custom one.

I needed to replace a broken FFC in a barcode scanner some time ago and got it from some guy who was selling them on eBay.

Nerobro
Nov 4, 2005

Rider now with 100% more titanium!

mtwieg posted:

I should also mention I program in straight assembly (I said it would be technical)

ASM seems the most sane way to program PICs. :-) I can actually read it...

I'd love the transistor writeup. If you can find the time.

HiroshigeStations
Aug 4, 2007

Nerobro posted:

ASM seems the most sane way to program PICs. :-) I can actually read it...

FLOWCODE is pretty good, you can write code as a flowchart. Writing code for a SMART battery calibrator was very quick.
You can compile to C and to the HEX, ready to program onto your PIC.

(nuts, no WAFFLEIMAGES...)

Only registered members can see post attachments!

HiroshigeStations fucked around with this message at 17:46 on Sep 9, 2008

hobbesmaster
Jan 28, 2008

HiroshigeStations posted:

FLOWCODE is pretty good, you can write code as a flowchart. Writing code for a SMART battery calibrator was very quick.
You can compile to C and to the HEX, ready to program onto your PIC.

(nuts, no WAFFLEIMAGES...)

Does that actually work very well? I may just have a disproportional dislike of flow chart programming due to my experiences with Cypress's thing for their PSoCs. It, uh, was not pleasant.

HiroshigeStations
Aug 4, 2007

For what I needed to do, it did it very well. For about 4-5 hours, I have a box that calibrates my batteries, as I intended. The programming isn't that sophisticated (loops, branches, and such) - but I see that modules exist for working with TCP/IP, Bluetooth, and a variety of serial buses.

Great feature is that it is self-documenting; all of your variable names and comments from the flowchart are copied over to the C; it is readable code. You can never have one disagree with the other.

HiroshigeStations fucked around with this message at 02:27 on Sep 10, 2008

ANIME AKBAR
Jan 25, 2007

afu~
I'll wait for a couple more votes before I start anything. If I were to do the MCU stuff, it would likely be mostly about how how the hardware peripherals work, things you need to know when programming in assembly (and should know anyways).

I've nothing against higher languages. I wish I could use them, but I'm not that great in C. But knowing assembly allows you to be much more in touch with your hardware so you know what is truly happening. It's also inherently more efficient than compiling from higher languages.

HiroshigeStations
Aug 4, 2007

mtwieg posted:

I've nothing against higher languages. I wish I could use them, but I'm not that great in C. But knowing assembly allows you to be much more in touch with your hardware so you know what is truly happening. It's also inherently more efficient than compiling from higher languages.

If you are trying to squeeze out as much performance as you can from the hardware, then you can do no better than assembler for optimizing your code. However, trying to do a very complex task entirely in assembler seems a bit masochistic. The optimization in a good C compiler is going to get you pretty close, you can tighten up areas using assembler macros. Of course, if you are doing something that contains simple elements, and you need/want to bang it out quick, tools like Flowcode are a dream.

Sure, the beauty for knowing every corner of your micro, writing tight code, and fitting the program into a tiny space is attractive, but sometimes it is such an impediment to reaching that much more attractive thing - finishing your creation.

This discussion is starting to belong elsewhere...I vote for the oscillators.

Squantmuts
Nov 14, 2005

mtwieg posted:

In the interest of giving this thread another jolt, I'm considering giving another series of lessons/tutorials. If you didn't catch my first one on switching power supplies, it starts on page 12 and goes until page 15. As far as subjects go, I have a few ideas:

1. Resonance oscillators (would be pretty technical)
2. Signal filters, effects (like stuff you'd use in audio to make effects and stuff. Somewhat technical)
3. Transistor circuits, like amplifiers and voltage regulators. Tons of possibilities. Not very math intensive, but a little "deep")
4. Eagle Cad tutorial for people wanting to make their own custom printed circuit boards. Not technical really.
5. Something microcontroller related. My experience is with AVRs, which are pretty user friendly. It would be pretty technical.

If anyone has any other ideas, shout out. I'll decide which on to do based on indicated interest from you guys.

I am up for topic 3 and 4. I use AVR's too but with C generally, sometimes I use ARM MCU's, like the LPC2100 series.

ANIME AKBAR
Jan 25, 2007

afu~

HiroshigeStations posted:

If you are trying to squeeze out as much performance as you can from the hardware, then you can do no better than assembler for optimizing your code. However, trying to do a very complex task entirely in assembler seems a bit masochistic. The optimization in a good C compiler is going to get you pretty close, you can tighten up areas using assembler macros. Of course, if you are doing something that contains simple elements, and you need/want to bang it out quick, tools like Flowcode are a dream.

Sure, the beauty for knowing every corner of your micro, writing tight code, and fitting the program into a tiny space is attractive, but sometimes it is such an impediment to reaching that much more attractive thing - finishing your creation.
Oh I agree completely. The thing is with higher languages, your code's efficiency is limited by how good the libraries you use are. Using user defined libraries is fine, but what happens a lot is that people wanting to make more specialized functions and such will build new libraries out of pre existing ones, and then someone will use that algorithm as a piece of another, and so on. Soon enough you might have a call or whatever that compiles from several libraries, and has tons of nested calls and branches and such, and compiles to ten times as much code as one would need with ASM. I've seen several times people using insane libraries they just grabbed off the internet that cause errors because it contains so many calls and branches that their MCU stack can't handle it. If they aren't familiar with how the thing actually works, then they'll never figure it out, and that's usually when people lose their jobs or their minds (I knew someone who was trying to use a special funtion meant to send two bytes of data via spi to a certain IC, and it had ten nested calls and compiled to about 150 lines of asm) .

As long as you have a good library that is grounded in ASM, not other libraries, it's a great trade off between efficiency and difficulty. But only someone who is familiar with ASM will likely be able to judge the quality of a library or not, which is why every serious programmer should know it.

ANIME AKBAR fucked around with this message at 21:16 on Sep 10, 2008

Hillridge
Aug 3, 2004

WWheeeeeee!
I code in straight up binary.

:colbert:

BeefofAges
Jun 5, 2004

Cry 'Havoc!', and let slip the cows of war.

mtwieg posted:

It's also inherently more efficient than compiling from higher languages.

No, not really. A compiler is generally smarter than all but the most geniuslike of programmers. Programming in assembly is also much, much slower than using a high level language.

SnoPuppy
Jun 15, 2005

BeefofAges posted:

No, not really. A compiler is generally smarter than all but the most geniuslike of programmers. Programming in assembly is also much, much slower than using a high level language.

I sort of agree. I think that knowing how to program in assembly gives one a much greater appreciation for the underlying hardware, leading to more efficient programming in a higher level language. Sometimes you can really trim down an inner loop by writing in assembly, since you can cut away any and all unnecessary instructions.

But, depending on how complicated the ISA is, many times a modern compiler will produce faster/better code. This is especially true for processors with a more complicated architecture.

For a RISC ISA, it may not make much of a difference in performance, but C will usually be fast enough until you are trying to squeeze out the last cycle. In addition, it is much faster to program in C vs asm.

Then again, C is basically assembler with some syntactic sugar...

ANIME AKBAR
Jan 25, 2007

afu~
I meant assembly can always be more efficient with the MCU's resources, not your own time. It will take longer, but not too much (as long as we're talking about MCUs). I can generally write a couple kb in a few hours if I've already drawn out flow charts and such.

ANIME AKBAR
Jan 25, 2007

afu~
Okay I'm narrowing down the topics a bit. After thinking about it, AVR tutorials would be really involved, and people likely won't be interested in ASM, and I doubt I could do a much better job than some of the existing tutorials out there. And resonance oscillators would only make sense to people who already have a firm grounding in EE, so that's out.

So the options so far, with some more details:
1. Signal filters/effects, with an emphasis on audio stuff (but small signal conditioning, not power amplifiers). Covers things like clipping, clamping, tone control, simple graphic EQ, phasing, wah, rectification, envelope detectors, etc.
2. Transistor stuff. Covers basic theory and a couple different transistor models, different devices (mosfets, jfets, bjts) and circuits like class A, class B, and class AB amplifiers, differential pairs (by the end you would understand the internals of an operational amplifier), current mirrors, current sources, voltage references, etc.
3. Eagle cad tutorial. Covers how to make schematics and layouts, how to easily make your own library components, and general methodology for laying out circuits (star grounds, ground planes, loop area, component packages, heatsinks, etc)

Again, I'll wait for several people to vote before getting started.

micron
Nov 15, 2005


Hopefully some can help with some old stuff.

Im looking for any information on using a Huntron and hope someone can either give me a quick how to or point me in the right direction. I remember messing with them about 15 years ago in the navy and they seemed like a viable tool (I'm also very bored at work and want to buy something to tinker with). They are pretty old and everywhere I look just points me back to huntrons website.

edit: http://www.huntron.com/products/videos/signatures.wmv

This help, but still a bit hazy

micron fucked around with this message at 20:25 on Sep 11, 2008

w_hat
Jul 8, 2003

mtwieg posted:

2. Transistor stuff. Covers basic theory and a couple different transistor models, different devices (mosfets, jfets, bjts) and circuits like class A, class B, and class AB amplifiers, differential pairs (by the end you would understand the internals of an operational amplifier), current mirrors, current sources, voltage references, etc.


Yes, this this this. I've always wanted to know more about that but never bothered to research it.

JawnV6
Jul 4, 2004

So hot ...

SnoPuppy posted:

Then again, C is basically assembler with some syntactic sugar...

Are you expecting to be called out on this? Would you care to back that up at all or are you just trolling?

SnoPuppy
Jun 15, 2005

JawnV6 posted:

Are you expecting to be called out on this? Would you care to back that up at all or are you just trolling?

All I meant is that straight C is pretty low level. There are very few things that you could do that wouldn't be obvious how to do in assembly. And, unless it relies on some obscure opcode, you can generally turn assembly into C.

catbread.jpg
Feb 22, 2007
I vote for effects!

We've had the C/assembly discussion here before, and all the pertinent points stand in favour of C, in my view:

- modern C compilers are incredibly efficient, there is almost no overhead and the compiler knows all the tricks and optimisations that a human would be very hard pressed to consistently implement
- using C greatly speeds up software development, provides portability, and allows the ease of use of non-native integer types (amongst other things) through compiler libraries (eg. AVR-GCC)
- C is still sufficiently low-level to have a direct correspondence to hardware and addressing

Basically any advantages one can dream up to using assembly to code are illusory, and there are massive benefits to be reaped by using C for doing anything not completely trivial. And if you're really really worried about the compiler interpretation of certain critical routines, it's easy to insert them as assembly routines inside C.

babyeatingpsychopath
Oct 28, 2000
Forum Veteran

Hillridge posted:

I code in straight up binary.

:colbert:

I have a motorola 68k dev board that i was using until my PIC showed up. i didn't know you could type in assembler and have it run so i was writing in bytecode. Got a cylon face display and a KITT-style fading thingy going before I found out about typing in assembly.

So, something besides MCUs is cool with me. I really dig transistors. I think MOSFETs are cool.

ante
Apr 9, 2005

SUNSHINE AND RAINBOWS

mtwieg posted:

Okay I'm narrowing down the topics a bit. After thinking about it, AVR tutorials would be really involved, and people likely won't be interested in ASM, and I doubt I could do a much better job than some of the existing tutorials out there. And resonance oscillators would only make sense to people who already have a firm grounding in EE, so that's out.

So the options so far, with some more details:
1. Signal filters/effects, with an emphasis on audio stuff (but small signal conditioning, not power amplifiers). Covers things like clipping, clamping, tone control, simple graphic EQ, phasing, wah, rectification, envelope detectors, etc.
2. Transistor stuff. Covers basic theory and a couple different transistor models, different devices (mosfets, jfets, bjts) and circuits like class A, class B, and class AB amplifiers, differential pairs (by the end you would understand the internals of an operational amplifier), current mirrors, current sources, voltage references, etc.
3. Eagle cad tutorial. Covers how to make schematics and layouts, how to easily make your own library components, and general methodology for laying out circuits (star grounds, ground planes, loop area, component packages, heatsinks, etc)

Again, I'll wait for several people to vote before getting started.

Definitely transistors.
My transistor course this term is taught by a horrible teacher :smith:

HiroshigeStations
Aug 4, 2007

babyeatingpsychopath posted:

So, something besides MCUs is cool with me. I really dig transistors. I think MOSFETs are cool.

Things best left unsaid on a date...

the wizards beard
Apr 15, 2007
Reppin

4 LIFE 4 REAL

catbread.jpg posted:

stuff on C vs Asm

This is a good point when talking about PCs, but compilers for MCUs are often pretty lovely. Also C cannot match hand-written assembly for writing small code, which is often a concern on MCUs.

Corla Plankun
May 8, 2007

improve the lives of everyone

mtwieg posted:

1. Signal filters/effects, with an emphasis on audio stuff (but small signal conditioning, not power amplifiers). Covers things like clipping, clamping, tone control, simple graphic EQ, phasing, wah, rectification, envelope detectors, etc.


I'd like to submit my vote for this one if you please.

Usagi-Sauce
Dec 2, 2005

YAMOxNINJA
~otp~
Any goons in here know a decent amount about simple ICs? I'm building a solid state component A/V switch box right now, and trying to figure out exactly which parts I want (and source all of them from a single supplier) is giving me major headaches.

From the top:

The box is going to take five sets of inputs. Input 0 comes from an RGB -> YCbCr converter that I have wired up to an old SCART switch box (so that I can hook my old consoles up to my new projector), and inputs 1-4 are four sets of 5 (Y, Cb, Cr, L, R) RCA sockets on the back of the box.

The inputs will be wired up to a bank of six 4051-type multiplexers: three chips for video, two for audio, and one for ground. The outputs of the multiplexers will be connected to another set of RCA sockets on the front panel.

I'm going to include a binary ripple counter, with its outputs connected to the select pins on each of the multiplexers and its clock pin wired to a push switch on the front panel, so I can cycle through the inputs one at a time by pressing the switch. For an extra flourish, the ripple counter's outputs will also go to an LED controller, so the number of the current input can be shown on a 7-segment display. Lastly, the whole thing is going to be powered by a USB 5V line.

If you read through all that, then you're probably wonder what I'm actually asking here, so here it is: I've already got a packet of HEF4051BP multiplexers, but I'm also seeing people say that 4000-series ICs are only good up to about 1MHz. Of course I'm trying to push an SD signal through these, so 640 columns of horizontal resolution at 15KHz = 9.6MHz minimum, or double that if I try to go up to 480p. Am I screwed with these ICs? Does anyone know of another type that can switch analog signals but has higher bandwidth?

Cyril Sneer
Aug 8, 2004

Life would be simple in the forest except for Cyril Sneer. And his life would be simple except for The Raccoons.
There's an electronics surplus place nearby that I like to visit; it has several large boxes full of old vacuum tubes (Sylvania, Philips, etc). I'd love to build a tube-related project but I have no idea how to identify what tubes might be useful.

Short of taking note of each and every tube variety, is there a way I can learn about different tube specs, and what ones are generally considered "useful"?

HiroshigeStations
Aug 4, 2007

Cyril Sneer posted:

Short of taking note of each and every tube variety, is there a way I can learn about different tube specs, and what ones are generally considered "useful"?

Can't short-cut experience. You got to come in knowing what you want for a project or to maintain/upgrade what you got. You go in just picking this and that because 'I can build a camera out of this" or "this is a tube used on Fender amplifiers, and they rock", then they will sit unused in your storage-area-of-choice. While the tube is important, its an inert piece of glass without of the rest of the equipment to run it.

These projects fail: Hey, I'm new to this, but there is this cool tube. I'm going to build X... Same sad result, wasted money, good parts rotting in the basement, and said person working harder on justifying why they didn't finish then on overcoming their lack of knowledge and finishing said project.

My advice, unless you are looking to collect tubes, wait till you actually have a need for them. Find a circuit to start with, one somebody else has already built. Be willing to spend the cash to finish - account for tools, nobody figures the costs of chassis punches and filament/plate transformers. Better yet, get one of those really cheap 50's AM radios and amplifiers and mess around with them.

If you see any 6JS6, PM me. I need them as spares for a transceiver. Lastly, https://www.tubedata.org and cheap 12AX7s, 6V6, 811, 807, and 0A2.

HiroshigeStations fucked around with this message at 05:10 on Sep 14, 2008

thepartypooper
Jul 4, 2002
I vote for audio effects.

I'm learning about transistors this semester anyway and I'm not really interested in EagleCAD, but signal conditioning is always interesting.

ANIME AKBAR
Jan 25, 2007

afu~
I'll go with filters and effects then. Less math and such than transistors anyways, plus I already explained op amps in the last series, which makes things easier. I'll likely start it up tomorrow.

ANIME AKBAR
Jan 25, 2007

afu~

Usagi-Sauce posted:

Any goons in here know a decent amount about simple ICs? I'm building a solid state component A/V switch box right now, and trying to figure out exactly which parts I want (and source all of them from a single supplier) is giving me major headaches.

From the top:

The box is going to take five sets of inputs. Input 0 comes from an RGB -> YCbCr converter that I have wired up to an old SCART switch box (so that I can hook my old consoles up to my new projector), and inputs 1-4 are four sets of 5 (Y, Cb, Cr, L, R) RCA sockets on the back of the box.

The inputs will be wired up to a bank of six 4051-type multiplexers: three chips for video, two for audio, and one for ground. The outputs of the multiplexers will be connected to another set of RCA sockets on the front panel.

I'm going to include a binary ripple counter, with its outputs connected to the select pins on each of the multiplexers and its clock pin wired to a push switch on the front panel, so I can cycle through the inputs one at a time by pressing the switch. For an extra flourish, the ripple counter's outputs will also go to an LED controller, so the number of the current input can be shown on a 7-segment display. Lastly, the whole thing is going to be powered by a USB 5V line.

If you read through all that, then you're probably wonder what I'm actually asking here, so here it is: I've already got a packet of HEF4051BP multiplexers, but I'm also seeing people say that 4000-series ICs are only good up to about 1MHz. Of course I'm trying to push an SD signal through these, so 640 columns of horizontal resolution at 15KHz = 9.6MHz minimum, or double that if I try to go up to 480p. Am I screwed with these ICs? Does anyone know of another type that can switch analog signals but has higher bandwidth?
the spec on the datasheet that seems most relevant for you is the on state frequency response, which varies with supply voltage from 13MHz at 5V to 70MHz at 15V. It's expected that CMOS performance will depend on supply voltage, so if you want to squeeze performance out of these things you should want to operate it at a high supply voltage. Assuming the specs are correct you should be fine. Your binary ripple counter idea is good too, just make sure you debounce the switch so you only get one edge per push.

big shtick energy
May 27, 2004


hobbesmaster posted:

Practice helps more than anything else. I was kind of afraid when first soldering (OMG it says 600!), just working with it helped me more than anything.

Thanks for the advice everyone. With a little practice I was soldering 0402 resistors and performing wacky SMT board mods without too much trouble.

Another question: I once saw in a youtube video this special desoldering solder than stayed liquid for several seconds after being heated. What was the name of it, and does anyone have any experience as to whether or not it works that well?

ANIME AKBAR
Jan 25, 2007

afu~

SecretFire posted:

Thanks for the advice everyone. With a little practice I was soldering 0402 resistors and performing wacky SMT board mods without too much trouble.

Another question: I once saw in a youtube video this special desoldering solder than stayed liquid for several seconds after being heated. What was the name of it, and does anyone have any experience as to whether or not it works that well?

the tutorial was posted a few pages back:
http://www.youtube.com/watch?v=3NN7UGWYmBY

the product you're thinking of is chip quik. I've never used it before, but it seems pretty neat, and the maker seems to give free samples.

Hillridge
Aug 3, 2004

WWheeeeeee!
If you can get your hands on a hot air station, you can take ANYTHING off a SMT board very easily. I've never used the chip quik stuff, so I can't comment on it.

Adbot
ADBOT LOVES YOU

Squantmuts
Nov 14, 2005

Hillridge posted:

If you can get your hands on a hot air station, you can take ANYTHING off a SMT board very easily. I've never used the chip quik stuff, so I can't comment on it.

Chipquik works pretty well, I have used it to remove a flash chip from a broken MP3 player PCB I found by the road. I cleaned off the chipquik without a problem and reattached it to a breakout bord zo I could read off the data.

It stays molten for about 10 seconds giving you ample time to heat all the sides of a chip that you want loose, so big QFP's would work without a problem.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply