Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Login


15 Pages«<7891011>»
Options
View
Go to last post Go to first unread
Corpius  
#161 Posted : Monday, March 25, 2013 6:56:34 AM(UTC)
Corpius

Rank: Member

Groups: Member
Joined: 2/1/2012(UTC)
Posts: 332
Location: The Netherlands

Thanks: 4 times
Was thanked: 18 time(s) in 18 post(s)
Because I wrote some learning code to teach my controler the IR codes of almost any remote. It was easier using Ken's library.
LeonvB  
#162 Posted : Monday, March 25, 2013 6:00:24 PM(UTC)
LeonvB

Rank: Member

Groups: Member
Joined: 5/23/2010(UTC)
Posts: 708
Location: Netherlands

Thanks: 2 times
Was thanked: 48 time(s) in 45 post(s)
Originally Posted by: DQ828 Go to Quoted Post
I also have an electricity supply issue which causes random noise to be injected into everything that has a ballast or transformer even SMPS suffer, the noise did appear to be worse with the new DAC in place! Of course the electricity supply company say it's all within limits & there's nothing that can be done!!. It's been driving me crazy for years.

Use a dual conversion UPS like an APC SURT1000. These will totally isolate you from a bad mains connection, as the UPS let's you run from the battery all of the time. They're a bit pricy and not very efficient though.

DQ828  
#163 Posted : Monday, March 25, 2013 9:05:10 PM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Originally Posted by: LeonvB Go to Quoted Post
Originally Posted by: DQ828 Go to Quoted Post
I also have an electricity supply issue which causes random noise to be injected into everything that has a ballast or transformer even SMPS suffer, the noise did appear to be worse with the new DAC in place! Of course the electricity supply company say it's all within limits & there's nothing that can be done!!. It's been driving me crazy for years.

Use a dual conversion UPS like an APC SURT1000. These will totally isolate you from a bad mains connection, as the UPS let's you run from the battery all of the time. They're a bit pricy and not very efficient though.



I've been thinking about buying a full wave inverter & a sealed 100 AH battery, I already have a good quality battery charger.

gwikse  
#164 Posted : Monday, March 25, 2013 9:17:35 PM(UTC)
gwikse

Rank: Member

Groups: Member
Joined: 1/19/2011(UTC)
Posts: 332
Location: Oslo, Norway

Thanks: 14 times
Was thanked: 17 time(s) in 17 post(s)
I have simular problems With the Power grid. I have been thinking about a UPS With regulated output for the entire system, but that would require a lot of cash if the Power amps also should be considered.

I have so far Placed the dac and Source Components on a "small" fixed output UPS and most of the nightmare situations disappeared (undervolting the dac sounds pretty awful through the speakers). I think I will look for a solution that cut the Power to the amps if the Voltage drop too much or gets too high (too high is easy to find solutions for, too low; not as easy).
DQ828  
#165 Posted : Tuesday, March 26, 2013 2:08:48 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
I need a system that will supply power to the amps as well as the transformers in them make the most noise, it's when they inject a 1050Hz signal to switch there gear on and off, hot water services on and off etc. Normally it's not a big issue, but at my place it's not good.

I only need about 150-170 watts total to run the whole system in normal conditions.

DQ828  
#166 Posted : Tuesday, March 26, 2013 7:26:55 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
God give me strength!

I took the DAC out of the system, back to the computer and reloaded the code, checked it was all working, remote etc & then put it back in the system (in exactly the same place that I removed my first BIII/arduino DAC from) & the remote played up immediately. It does sound good though.

I come home this afternoon and the whole system is on, that's strange, I turn it off, go outside, come back in, & it's turned itself on again.Brick wall

My first DAC has work flawlessly (except the 4 way SPDIF) for months, it is not an HiFiduino implementation, the firmware chip is still in place & all of the controlling is done externally.

Edited by user Tuesday, March 26, 2013 7:31:08 AM(UTC)  | Reason: Not specified

DQ828  
#167 Posted : Tuesday, March 26, 2013 9:23:04 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Corpius

I assume this;

setSabreVolume(byte regVal)
{
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}

should be:

void setSabreVolume(byte regVal)
{
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}

Also I assume this;

if ((currAttnu+offSetLeftCh)>MINATTNU || (currAttnu+offSetLeftCh)>MINATTNU )

should be:

if ((currAttnu+offSetLeftCh)>MINATTNU || (currAttnu+offSetRightCh)>MINATTNU )

Thanks

Edited by user Tuesday, March 26, 2013 9:24:13 AM(UTC)  | Reason: Not specified

Corpius  
#168 Posted : Tuesday, March 26, 2013 11:42:42 AM(UTC)
Corpius

Rank: Member

Groups: Member
Joined: 2/1/2012(UTC)
Posts: 332
Location: The Netherlands

Thanks: 4 times
Was thanked: 18 time(s) in 18 post(s)
Originally Posted by: DQ828 Go to Quoted Post
Corpius

I assume this;

setSabreVolume(byte regVal)
{
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}

should be:

void setSabreVolume(byte regVal)
{
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}

Also I assume this;

if ((currAttnu+offSetLeftCh)>MINATTNU || (currAttnu+offSetLeftCh)>MINATTNU )

should be:

if ((currAttnu+offSetLeftCh)>MINATTNU || (currAttnu+offSetRightCh)>MINATTNU )

Thanks
Correct. I typed it quickly without using a proper editor :) it was just to give you some ideas. Let me know how it works out.

DQ828  
#169 Posted : Wednesday, March 27, 2013 12:14:15 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Originally Posted by: Corpius Go to Quoted Post
Originally Posted by: DQ828 Go to Quoted Post
Corpius


Thanks
Correct. I typed it quickly without using a proper editor :) it was just to give you some ideas. Let me know how it works out.



I was going to try & get the display bar functioning before I give it a run, I find that part of the code very confusing, that's a big pile of code you've got there.

Thanks for the help
DQ828  
#170 Posted : Friday, March 29, 2013 10:52:58 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
I've been distracted (and will be for a while) building my son a sub for his birthday.

At this stage I would describe the sound as alive & crisp, the sound stage etc seems to be about the same, which bye the way is very good. Cant really compare without instant switching & even then it's a challenge from past experience, unless one is far superior to the other. I tend to find I need to listen for days before I can really make any type of call.

Unfortunately the new DAC has a life of it's own, turning itself & the whole system on and off at random. I haven't had it turn off while I'm listening but on numerous occasions it'd turned itself on & then off again or just stayed on until I turn it off. It seems VERY unlikely that it is any stray IR signals.

If anyone can suggest the most likely cause, something is triggering the code into the startDac sequence.

David
Corpius  
#171 Posted : Saturday, March 30, 2013 6:57:59 PM(UTC)
Corpius

Rank: Member

Groups: Member
Joined: 2/1/2012(UTC)
Posts: 332
Location: The Netherlands

Thanks: 4 times
Was thanked: 18 time(s) in 18 post(s)
I think that the most likely source is your son :). No seriously I need to see the code you're using before I can say anything useful about the problem. Have you tried shielding the ir receiver after you switched it off? If it stays off when the receiver is shielded you know for sure that it picks up and reacts to some ir signals.
DQ828  
#172 Posted : Monday, April 1, 2013 10:34:25 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Originally Posted by: Corpius Go to Quoted Post
I think that the most likely source is your son :). No seriously I need to see the code you're using before I can say anything useful about the problem. Have you tried shielding the ir receiver after you switched it off? If it stays off when the receiver is shielded you know for sure that it picks up and reacts to some ir signals.


I might try disconnecting the IR tonight & see what happens.

Brian Donegan  
#173 Posted : Monday, April 1, 2013 2:17:33 PM(UTC)
Brian Donegan

Rank: Administration

Groups: Administration, Customer
Joined: 10/24/2006(UTC)
Posts: 2,868
Location: Massachusetts, USA

Thanks: 2 times
Was thanked: 141 time(s) in 134 post(s)
Originally Posted by: DQ828 Go to Quoted Post
Originally Posted by: Corpius Go to Quoted Post
I think that the most likely source is your son :). No seriously I need to see the code you're using before I can say anything useful about the problem. Have you tried shielding the ir receiver after you switched it off? If it stays off when the receiver is shielded you know for sure that it picks up and reacts to some ir signals.


I might try disconnecting the IR tonight & see what happens.



You could try putting some masking tape of it.
DQ828  
#174 Posted : Tuesday, April 2, 2013 7:25:08 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Originally Posted by: Brian Donegan Go to Quoted Post
Originally Posted by: DQ828 Go to Quoted Post
Originally Posted by: Corpius Go to Quoted Post
I think that the most likely source is your son :). No seriously I need to see the code you're using before I can say anything useful about the problem. Have you tried shielding the ir receiver after you switched it off? If it stays off when the receiver is shielded you know for sure that it picks up and reacts to some ir signals.


I might try disconnecting the IR tonight & see what happens.



You could try putting some masking tape of it.


Why didn't I think of that, must be my lack of knowledge with electronics I guess Angel

Anyway I did it, stuck the masking tape directly over the IR receiver & the system still turned on after about 15 hours of being off.

I don't have any random turning on/off with my first DAC, I'm thinking it might be a dodgy bit of code in the Loop, or maybe the Mega is picking up some random interference. It does get a bit tedious when seemingly bizarre things like this happen.

When I finish the sons sub I will mirror image the DAC so the screen it the right way up, I've given up trying to change the setup library to fix it.

As I've mentioned before this is a much better screen than the one in my first DAC, but the manufacturer has made it very difficult to dim the back light, if fact as yet I'm not sure I can actually get to the backlight power supply to dim it. I would have thought that being able to dim the backlight on every screen would be a good feature.

Edited by user Tuesday, April 2, 2013 7:29:14 AM(UTC)  | Reason: Not specified

DQ828  
#175 Posted : Wednesday, April 3, 2013 11:59:36 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Corpius

What do the highlighted lines do? Do they write the current offset to the registers, ie volume + 2 offset, then the volume might be 50 on one side & 51 on the other.

void setSabreLBalance(byte regVal){
regVal += offSetVolRight;
writeSabreReg(1, regVal); // set up volume in DAC1
writeSabreReg(3, regVal); // set up volume in DAC3
writeSabreReg(5, regVal); // set up volume in DAC5
writeSabreReg(7, regVal); // set up volume in DAC7
}

void setSabreRBalance(byte regVal){
regVal += offSetVolLeft;
writeSabreReg(0, regVal); // set up volume in DAC1
writeSabreReg(2, regVal); // set up volume in DAC3
writeSabreReg(4, regVal); // set up volume in DAC5
writeSabreReg(6, regVal); // set up volume in DAC7

I modified the Balance code to suit my screen and found the DAC was starting up at full volume (displayed correct startup volume "50" though), after start up if you adjusted the balance the volume would jump to the correct level. Then if you tried to change the volume the display would change but the actual vol level didn't change, once again if you adjusted balance the volume level would correct itself.

I ended up replacing;

/*void setSabreVolume(byte regVal)
{
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}*/

with the original code;

void setSabreVolume(byte regVal)
{
writeSabreReg(0, regVal); // set up volume in DAC1
writeSabreReg(1, regVal); // set up volume in DAC2
writeSabreReg(2, regVal); // set up volume in DAC3
writeSabreReg(3, regVal); // set up volume in DAC4
writeSabreReg(4, regVal); // set up volume in DAC5
writeSabreReg(5, regVal); // set up volume in DAC6
writeSabreReg(6, regVal); // set up volume in DAC7
writeSabreReg(7, regVal); // set up volume in DAC8
}

and all worked fine

My display shows as a series of bars above & below center on the left of the screen.

UserPostedImage

UserPostedImage

Edited by user Thursday, April 4, 2013 9:33:45 PM(UTC)  | Reason: Not specified

DQ828  
#176 Posted : Friday, April 5, 2013 10:21:20 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Hmm, it's never that simple, the balance adjustment is lost every time you adjust the volume. It's still a step in the right direction though.
Corpius  
#177 Posted : Saturday, April 6, 2013 10:15:34 AM(UTC)
Corpius

Rank: Member

Groups: Member
Joined: 2/1/2012(UTC)
Posts: 332
Location: The Netherlands

Thanks: 4 times
Was thanked: 18 time(s) in 18 post(s)
That is because when you replaced the code with the original code the offset never gets added to the volume.

you need to replace

void setSabreVolume(byte regVal)
{
writeSabreReg(0, regVal); // set up volume in DAC1
writeSabreReg(1, regVal); // set up volume in DAC2
writeSabreReg(2, regVal); // set up volume in DAC3
writeSabreReg(3, regVal); // set up volume in DAC4
writeSabreReg(4, regVal); // set up volume in DAC5
writeSabreReg(5, regVal); // set up volume in DAC6
writeSabreReg(6, regVal); // set up volume in DAC7
writeSabreReg(7, regVal); // set up volume in DAC8
}

with:

void setSabreLBalance(byte regVal){
regVal += offSetVolRight;
writeSabreReg(1, regVal); // set up volume in DAC1
writeSabreReg(3, regVal); // set up volume in DAC3
writeSabreReg(5, regVal); // set up volume in DAC5
writeSabreReg(7, regVal); // set up volume in DAC7
}

void setSabreRBalance(byte regVal){
regVal += offSetVolLeft;
writeSabreReg(0, regVal); // set up volume in DAC2
writeSabreReg(2, regVal); // set up volume in DAC4
writeSabreReg(4, regVal); // set up volume in DAC6
writeSabreReg(6, regVal); // set up volume in DAC8
}

and use the next function to call both functions

void setSabreVolume(byte regVal)
{
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}


The highlghted lines add the offset to the actual volume. This needs to be done for both the left and right channel, that's why there are now two functions to set the volume :)
.

Edited by user Saturday, April 6, 2013 10:20:10 AM(UTC)  | Reason: Not specified

DQ828  
#178 Posted : Sunday, April 7, 2013 12:21:21 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Originally Posted by: Corpius Go to Quoted Post
That is because when you replaced the code with the original code the offset never gets added to the volume.

you need to replace

void setSabreVolume(byte regVal)
{
writeSabreReg(0, regVal); // set up volume in DAC1
writeSabreReg(1, regVal); // set up volume in DAC2
writeSabreReg(2, regVal); // set up volume in DAC3
writeSabreReg(3, regVal); // set up volume in DAC4
writeSabreReg(4, regVal); // set up volume in DAC5
writeSabreReg(5, regVal); // set up volume in DAC6
writeSabreReg(6, regVal); // set up volume in DAC7
writeSabreReg(7, regVal); // set up volume in DAC8
}

with:

void setSabreLBalance(byte regVal){
regVal += offSetVolRight;
writeSabreReg(1, regVal); // set up volume in DAC1
writeSabreReg(3, regVal); // set up volume in DAC3
writeSabreReg(5, regVal); // set up volume in DAC5
writeSabreReg(7, regVal); // set up volume in DAC7
}

void setSabreRBalance(byte regVal){
regVal += offSetVolLeft;
writeSabreReg(0, regVal); // set up volume in DAC2
writeSabreReg(2, regVal); // set up volume in DAC4
writeSabreReg(4, regVal); // set up volume in DAC6
writeSabreReg(6, regVal); // set up volume in DAC8
}

and use the next function to call both functions

void setSabreVolume(byte regVal)
{
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}


The highlghted lines add the offset to the actual volume. This needs to be done for both the left and right channel, that's why there are now two functions to set the volume :)
.


I did exactly what you are suggesting & that's when I had the following problem as described in my post above;

"I modified the Balance code to suit my screen and found the DAC was starting up at full volume (displayed correct startup volume "50" though), after start up if you adjusted the balance the volume would jump to the correct level. Then if you tried to change the volume the display would change but the actual vol level didn't change, once again if you adjusted balance the volume level would correct itself."


Then I removed the;

void setSabreVolume(byte regVal)
{
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}

and replaced it with the original volume function & the problem went away, It appears your new void setSabreVolume(byte regVal) function is causing issues, at least in my code.

Have you implemented it in your code & tried it out?

Corpius  
#179 Posted : Sunday, April 7, 2013 9:21:19 AM(UTC)
Corpius

Rank: Member

Groups: Member
Joined: 2/1/2012(UTC)
Posts: 332
Location: The Netherlands

Thanks: 4 times
Was thanked: 18 time(s) in 18 post(s)
No, not yet,, but think I found the error that caused the problem.

void setSabreVolume(byte regVal) {
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}

Should be

void setSabreVolume(byte regVal) {
setSabreRBalance( regVal ); // set volume of right channel
setSabreLBalance( regVal ); // set volume of left channel
}

DQ828  
#180 Posted : Sunday, April 7, 2013 10:14:15 AM(UTC)
DQ828

Rank: Member

Groups: Member
Joined: 8/17/2010(UTC)
Posts: 368
Location: australia

Thanks: 8 times
Was thanked: 3 time(s) in 3 post(s)
Originally Posted by: Corpius Go to Quoted Post
No, not yet,, but think I found the error that caused the problem.

void setSabreVolume(byte regVal) {
void setSabreRBalance(byte regVal); // set volume of right channel
void setSabreLBalance(byte regVal); // set volume of left channel
}

Should be

void setSabreVolume(byte regVal) {
setSabreRBalance( regVal ); // set volume of right channel
setSabreLBalance( regVal ); // set volume of left channel
}



Your a clever man, it all seems to work properly now well done and many thanks.

Rss Feed  Atom Feed
Users browsing this topic
GuestUser (56)
15 Pages«<7891011>»
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.