Welcome to Solid State Guitar Amp Forum | DIY Guitar Amplifiers. Please login or sign up.

March 29, 2024, 08:52:08 AM

Login with username, password and session length

Recent Posts

 

Need some beginners help.

Started by Jamieip, December 30, 2014, 10:21:30 PM

Previous topic - Next topic

Jamieip

Hey guys, brand new to the world of guitar amps and all so if I seem a little stupid please forgive me, i'm just very un-experienced.

I have a basic knowledge of electronics, I mean very basic. I can wire up a plug, solder acceptably well, I understand basic components like resistors/caps and their values. I recently obtained an arduino started kit and my god it's addictive. I love electronics and some aspects of programing, that being said I have little knowlege.

Where is the best place to start?

I'll start off by mentioning that I don't like kits. Not that they aren't fun to put together, i love lego! but thats the point, too me it's like lego. I can follow an instruction manual fine, but at the end of the day I have learnt very very little. I'm un-aware of kits that go into detail of each component and what it's effects have, why it is used and so forth.

I'm extremely interested in the solid state/amp modelling side of things, especially software/microcontrollers and the likes because of the arduino. I've just been introduced to the world of "DSP's", but I am clueless as to how they work.

Are their any books or youtube guides to the world of guitar amps. or recommended kits that actually teach you, rather than just tell you to place a component in a place?

some questions I have:

would it be possible to incorporate an arduino into an amp? on board effects if you will?

would it be possible to use pre-existing DSP boards to understand how they work and how they're programmed?  I have a dead line 6 DSP board but i'm sure the chip is fine.

What is so special about the Axe FX? Why is it light years ahead of anything else in the market? I am assuming that most of the amp moddeling side of things is done via firmware/software. the hardware is just adc/dac etc, so why is the axe fx so so so much better? Could I build my own stripped down version?

I'm just a little confused as to where to begin. any input is appreciated.
thanks
Jamie

J M Fahey

Not sure about what you want or your commitment.

Reaching the heights you dream, programming DSP, etc.  means either advanced University studies or equivalent.

Meaning, I'm quite certain there are quite a few bright 20 something around which while not in the University (or say just beginning it) are already flying at that level, I sometimes find them in specialized Forums (not many here because this is a more Traditional one, we still argue about 60 y.o. books, go figure ;)  ) , but the keyword here is equivalent .

Meaning , say, a 20 to 24 y.o. which is experienced on that area, most certainly began reading all he could find since age 12 ... or 14  .
Definitely before 15 or 16, at most.

Do the Math.

So I suggest you walk before you fly, and crawl before you walk.

Want to read a compact and realistic intro to Guitar Amplifiers?
Get a copy of Jack Darr's "Repair your own guitar amplifier" .
Buy it at Amazon, but as a preview you can find a simplified version online.

Feel free to ask any doubts, but first reread that part a few times ... things start to click together after a couple times.  :)

Jamieip

Thanks for the reply. I'll take a look at that book you suggested. My question was where to start, I keep getting suggestetions to buy a kit but I know I won't learn as much as i'd like

Roly

Hi Jamieip, welcome.


DO STUFF!  Dig in and have a go.


Secret to Learning Electronics - Fail and Fail Often - Jeri Ellsworth - YouTube
www.youtube.com/watch?v=xhQ7d3BK3KQ
Invest five minutes of your life in some damn good advice.  {and she plays bass}


I'll leave it to others to link to threads where some of your "how do I start?" questions have already been answered.

I'll just respond to this bit because I've been looking at it.

Quote from: Jamieipwould it be possible to incorporate an arduino into an amp? on board effects if you will?

The short answer is "no" and the reason is lack of bandwidth, they just don't churn through the bits fast enough.  That's if you don't break the rules.

If you break the rules then "yes, sorta", but YMMV a lot.  They tend to be various levels of awful.

https://www.google.com/search?q=arduino+guitar+youtube&ie=utf-8&oe=utf-8

Arduino Guitar Pedal - Crazy Effects
https://www.youtube.com/watch?v=PBU245L8hfg

Raspberry Pi Guitar Effect Box
https://www.youtube.com/watch?v=bLcW70tcBX8

pedalSHIELD Arduino Guitar Pedal
https://www.youtube.com/watch?v=COPaqJBekBQ

Chipstomp - Arduino compatible digital audio effects processor.
https://www.youtube.com/watch?v=adsEnV4qAwk

PIC32mx based drum machine running in jam mode.
https://www.youtube.com/watch?v=9iZmi_6-KsA


There are some machines that have been coming on for a while that have serious DSP horsepower built-in, and these will change everything, quite sufficient grunt to process a stereo CD quality stream in real time without noticeable latency.

And once you have a working full bandwidth delay there are a bunch of delay related Fx you can build around that.


I have one of these;



...which is built around a pretty full-blooded custom computer system, but I also have one of these;



...which is a very straight single-board 68000.

An Ensoniq sampling keyboard I saw a while back was a 4MHz/Z-80/CPM floppy-based system.

To get anything out of a machine that is so tight for timing you have to forget C-anything and get down to the native code - assembler, and if you are going to get dirty anyway you should switch to a more proven chip such as the Z-80, or the Rasp-Pi.

So you can do anything you want, just not on an Arduino.  {I have several here, Leo's, Uno's, and the primary problem is that they aren't fast enough, there are too few instructions available between samples.  Outboarding the sampling would help, but it looks like naked CPU grunt is going to blast through anyway, maybe next year.}
If you say theory and practice don't agree you haven't applied enough theory.

Jamieip

Thanks for that super helpful reply! The main reason I wanted arduino is because of the USB feature. It's be so cool to hook an amp up to my PC and write effects like that. Is there anything similar to the arduino that could handle the speeds? I assume you're talking about the ADC/DAC, which should be around 44.1KHZ, but the arduino it's 10. There are "shields" out there that claim to have much much faster ADC/DAC but again i'm out of my depths now and may be completely wrong.

I have a line 6 DSP board around, would it be possible to load my own code onto there somehow and use that as my DSP?

Roly

In the digital or z-1 plane we use the idea that we can model how components act, and we can do that with three elements in various combinations, z-1 is delay by one bit time in storage, a, b, c, etc are scaling factors applied to the stored value, and a summer that adds all the parts together and produces the next processed sample.

This could be as simple as just scaling for volume control, a more complex tonestack, or a full Hi-Fi amp with tone controls, high and low filters, maybe a graphic EQ...

Even the most basic volume control requires the processor to read in a sample, multiply it by the current volume scaling factor, then output it again.


Simple First-Order or single Pole or Zero function, a simple CR network


As we can re-arrange the C and R to make a high or low pass filter, so we can re-arrange the elements above to produce the same thing.


As the tonestack gets more complicated so does the DSP model...




State-variable filter


The "+" functions are signed summers,
the "x" functions are signed multipliers
The "z-1" functions are getting the previous sample (and saving this one)

Each of these is a simple job in itself, but all of them have to run to completion before the next sample time, there is no latitude or you will lose real time and get "chattering" output.  At 44.1kHz that's only;

t = 1/f

1/44.1kHz = 0.0226757mS = 22.6uS - not lot of instructions in that time.


8th-Order (very steep cutoff) filter



So the speed of the A/D is a bit incidental to the problem of not having enough raw number crunching time between samples to do anything really useful.  The RaspPi is quicker, but there are some new Arduino-like boards in the pipeline that have really fast CPU's and even some DSP-specific stuff, so they should more than do the trick.


Quote from: JamieipI have a line 6 DSP board around, would it be possible to load my own code onto there somehow and use that as my DSP?

Unless specific instructions are given in the user manual, no.  Generally speaking manufacturers don't want you rummaging around in their underwear.

A system like this will generally have a vector table of user functions.  You will load a pointer or data somewhere, or push it onto the stack, then call the function.  It will return a value, a function completed, or an error code.  There will be hundreds of these, each doing some small specific job that is part of the whole.  It may be as simple as turning on a front panel LED, or as complex as running an FFT for a spectrum display.

Theoretically you could craft your own effects by writing progs that made use of all these available components, but Line-6 isn't Open Source, so these system calls are undocumented (even if you could get your code to load and run).

The nice thing would be to write to Line-6, explain what you want to do, and request the source code for your device, and get it back by e-mail attach.

That would be the nice thing, but there are accountants and lawyers in the works, so I'll give you odds of at least 1000:1 against.  A 99.9+% chance you will get a thundering letter waving copyright at you.

You could get a Bus-Pirate and spend the next couple of years disassembling/reverse engineering their code.  Been there, done that, and typically the code is so cruddy you have to write your own anyway because it was written in a panic under extreme duress, the normal mode for commercial software.  {and you think Copyright is about protecting trade secrets rather than somebodies posterior.  :lmao: }



Okay, you wanna get serrios?

Take your Arduino and feed some audio in to one of the A/D's (there are articles about how to do this on the web).

Write a sketch that simply reads the A/D and stuffs the value out directly somehow.

This is proofing your channel - what is the basic characteristic of the A/D->CPU->D/A path as an audio channel?   Headroom/noise floor?  Bandwidth?  How much spare time have you got between samples?

If you say theory and practice don't agree you haven't applied enough theory.

Jamieip

Thanks for that reply! It's going to take me a while to understand everything you've mentioned. I've only just learnt about op-amps that's how basic my knowledge is. I'm slowly following though. Is their any good starting point in general electronics or things I should know before jumping in at the deep end?

Roly

Quote from: Jamieipthings I should know before jumping in at the deep end?

Yeah - if it's live, don't touch it!   :dbtu:  {get a neon screwdriver}

We calculate things to three significant figures, but in reality electronics is normally pretty approximate, 20%, sometimes 30% tolerance to component drift with little or no change in operation.

Electronics is also a huge field, applied to so many things, so we tend to dive into the detail of the bit that is under our noses and work it out from there.


Since you seem interested in digital audio I am quite serious about you setting up a basic audio test with your Arduino.  You only need a few odd bits to get your guitar signal safely into the Arduino, and only a few more to get it out to your guitar amp.  Now you have a USB cable going to your machine with the Arduino IDE up, and a blank screen.  The software object is utterly basic, read a sample in, pump it out, repeat until reset.

Now you have a signal channel that you can test like any other audio channel.  Bandwidth/frequency response?  Noise floor?  Jitter?  Digital "overs"?  Tinfoil in the piano "aliases"?

This is the bolt of cloth you have to cut your wardrobe, the log you have to mill to get timber to build your house.

Which Arduino board do you have?


In Ye Oldie Days of Yore trainees made their own instruments, and in electronics you need instruments, voltmeter, signal generator, AC millivoltmeter, *oscilloscope*, frequency counter/timer, etc, depending on where their hobby interest/employment led them.  {an oscilloscope is, IMO, the most important and useful instrument you can have in a workshop.  Even the most basic computer-based AC-only scope running on an old clunker is better than no scope at all.}

It's easy to generate an audio signal from a transistor or op-amp with few other bits, but building a good bench audio sig gen is a serious challenge.  Your instruments should be ten times better than what you are measuring, and you need to maintain them to keep them that way.

You need to understand the limitations of all your instruments so you know when not to trust them and double-check some other way.

I have a large collection of meters and generators and each has a particular strength for a particular job (and often a particular weakness for other jobs).


There have also been some interesting discussions on here about building "breadboards" for prototyping and diddling with circuits, search "breadboard".
If you say theory and practice don't agree you haven't applied enough theory.

Jamieip

I have the arduino uno, whatever the most recent version. I also have a cheap multimeter and a fair amount of components I've bought or pulled from electronics over the last year or 2. I'm very tempted to as you said setup a test on the arduino to process audio, even though I know it has it's limitations. Unfortunately I have a habit of looking far too into things. for example I spend all day yesterday learning how the fade command works. I've known how to use it, but I now know that it is almost the same as the blink command, just continuously repeated changing the frequency/duty cycle each time. I then hooked up an analog voltmeter and saw it bouncing, then a piezo to try and change the pitch whilst still in the blink code. I have an issue that I don't understand how electricity works. I've spent so much time researching and all I get is the comparison to a water system which is a load of crap. Especially in AC. If i were trying to fill up a bath, using the AC comparison, I would be putting water into the bath, then taking it back out again. No matter how long I did this for, id never have a full bath. How does this work? If electrons are moving forwards and the backwards, surely nothing will happen?

Roly

And if you tried to charge a battery using AC you would get the same result for similar reasons.

The analogy for AC is more like a closed hydraulic, or perhaps cable system, say like the controls on an aircraft.  As the yoke is pushed forward and back the elevators are driven down and then up, some work is transmitted during each movement and work is always positive no matter which way it is going.

The side cranks on a steam engine transmit very considerable power from the steam cylinders to the wheels (and in fact AC motors have a similar "which way" problem at start-up - some single-phase induction motors will happily run backwards if they are given a spin before power is applied), but they don't actually go anywhere to do it.  Think of two guys working a cross-cut saw, here to there and back again, but the log gets cut in the process.



Remember, and analogy is only to give you a starting point with something you know to try and explain something similar you don't - the water analogy is quite handy for DC but gets a bit stretch with AC.


Heat!  Electrons moving forward and backwards in a resistance still collide with the atoms of metal and lose heat in the collision if they are a one way torrent or waves going back and forth.


Fields.
What electronics/electrical technology deals with are two field effects, the electric field which we call voltage, and the magnetic field due to current flowing.  The third factor is resistance, electron mobility in materials, which is generally considered to be an innate property rather than a field.

When you apply a battery to a wire an electric field is established along the wire at between 0.6 and 0.9 of the speed of light (mainly depending on the insulator material) and electrons move in response to that field.  What may be very surprising is that even with a current of 1 amp flowing the actual velocity of a particular electron is only about 10cm per second.  Like the oil in your car brakes, it doesn't move very far when you hit the pedal, but it transmits the pressure to the far end almost instantly.

A deep dark secret is that we understand the "what" of electricity and magnetism about as well as we understand the "what" of gravity - in other words, not very well at all.  But we understand very well how these operate, so we can sling-shot space probes to planets, comets, and even right out of our solar system, and we can build all sorts of electrical devices with predicable results.


If you say theory and practice don't agree you haven't applied enough theory.

Bakeacake08

You sound like you're asking a lot of the same questions I was asking when I started out learning about electronics (which was not very long ago). If you really want to get a better grasp on how this stuff all works, I'd suggest you start reading textbook type materials. One series of books I found is called "Lessons in Electronic Circuits" by Tony R. Kuphaldt. It's four volumes and each is about 500-600 pages long. Topics are DC, AC, Semi-conductors, and Digital. I found them as PDFs online somewhere. Whatever you find, keep reading a lot of it, because it probably won't all make sense the first time around, but it'll get easier the more information you pack in your brain.

Jamieip

Awesome, thanks for the help guys!

washburn311@gmail.com

I have few suggestions. There is one kit that goes into detail.  AM/FM 108CK SUPERHET RADIO KIT. It explains what each section does in detail. If willing to spend a little money on some testing equipment you will seeighly  what I am talking about. It is made by Elenco and you can go to there site and read through the manual. I highly recommend it if you want a kit that explains what all the components do. A good lesson in Audio Amplifiers and a lot fun to build.