Go Back   Home > Forums > > >
Home Forums Rules Articles diyAudio Store Blogs Gallery Wiki Register Donations FAQ Calendar Search Today's Posts Mark Forums Read

Twisted Pear Superior quality electronic kits

Reply
 
Thread Tools Search this Thread
Old 8th February 2018, 11:24 PM   #1
harruharru is offline harruharru  Norway
diyAudio Member
 
Join Date: Feb 2005
Location: Stavanger/Trondheim
Default Custom firmware for B3/B3SEPro

I have just finished building the 9038 pro with the Mercury. It sounds a bit darker, but with a lot of details and a large sound stage.

However I am at a dead end to get i2c communication working. I am using a Buffalo III for 6 channels and the 9038 pro for two channels. An Arduino Uno is connected to the Buffalo III then i2c cables from the Buffalo III to the 9038. The 9038 is replacing a Buffalo II. For some reason I do not manage to get the i2c communication working for the 9038. I have removed the chip and connected the cables to the i2c header. The code has also been modified to work with the 9038. However no luck so far. I put the DAC in Reset mode and out of reset mode via software.

Any suggesion?

Do I have to short the ADC header?

I have tried to set the addr header on both boards. The Buffalo III works in both cases, but not the 9038

Last edited by harruharru; 8th February 2018 at 11:47 PM.
  Reply With Quote
Old 9th February 2018, 12:39 AM   #2
harruharru is offline harruharru  Norway
diyAudio Member
 
Join Date: Feb 2005
Location: Stavanger/Trondheim
Do I need to set the DAC_reset pin on the GPIO header?
  Reply With Quote
Old 9th February 2018, 06:58 AM   #3
Dimdim is offline Dimdim  Greece
diyAudio Member
 
Join Date: Sep 2008
Location: Athens
I believe that you do.

Brian's controller does it through software control of the reset pin.

The proper thing to do appears to be to control the reset pin by the arduino, so as to properly reset the 9038 after power-on, but in all of my testing I've had no problems with the reset pin being always pulled down.
__________________
http://www.dimdim.gr
  Reply With Quote
Old 9th February 2018, 10:07 AM   #4
harruharru is offline harruharru  Norway
diyAudio Member
 
Join Date: Feb 2005
Location: Stavanger/Trondheim
Dimdim
Just so I understand you correctly. Pin 1 on the GPIO could be connected with a jumper to ground (kept low) all the time and then I can do the reset by i2c via software?

If I understand Brian's code correctly. The pin1 is kept low when the dac turns on and then after 1500ms pulled up.

Just for referrence of the reset pin: The reset pin should be kept low until all power supplies are up and running. Then the reset pin should be set high. To reset the dac after the power up sequence the reset pin needs to be pulled low then high. Is this correct understanding?

Last edited by harruharru; 9th February 2018 at 10:17 AM.
  Reply With Quote
Old 9th February 2018, 10:39 AM   #5
Dimdim is offline Dimdim  Greece
diyAudio Member
 
Join Date: Sep 2008
Location: Athens
Quote:
Originally Posted by harruharru View Post
Dimdim
Just so I understand you correctly. Pin 1 on the GPIO could be connected with a jumper to ground (kept low) all the time and then I can do the reset by i2c via software?
Pin 1 should be connected to gnd through a resistor (it probably already is..).

At power-on, after the supplies have stabilized, it should be pulled high by a digital line from the arduino, not through i2c.

Quote:
Originally Posted by harruharru View Post
If I understand Brian's code correctly. The pin1 is kept low when the dac turns on and then after 1500ms pulled up.

Just for referrence of the reset pin: The reset pin should be kept low until all power supplies are up and running. Then the reset pin should be set high. To reset the dac after the power up sequence the reset pin needs to be pulled low then high. Is this correct understanding?
Exactly.

In my previous post I meant that I have the reset line constantly pulled high, not low.
__________________
http://www.dimdim.gr
  Reply With Quote
Old 9th February 2018, 10:57 AM   #6
harruharru is offline harruharru  Norway
diyAudio Member
 
Join Date: Feb 2005
Location: Stavanger/Trondheim
Dimdim
Thank you.

What would be the best/easiest way to pull up Pin 1. My arduino board is fully isolated from the DACs. An opto isolated relay?
  Reply With Quote
Old 9th February 2018, 11:24 AM   #7
Dimdim is offline Dimdim  Greece
diyAudio Member
 
Join Date: Sep 2008
Location: Athens
Sure, that would probably work and I say probably because I don't know the value of the pulldown resistor that is present on the reset pin.

Which IC are you using as an isolator? Is there a chance that it has a spare output?
__________________
http://www.dimdim.gr
  Reply With Quote
Old 9th February 2018, 12:48 PM   #8
Russ White is offline Russ White  United States
diyAudio Member
 
Russ White's Avatar
 
Join Date: Jan 2005
Location: Nashville, TN, USA
I would refer you to the on-board firmware on github to see how to correctly control the DAC. If you want help with a specific project (especially since yours is very particular) lets please start a new thread.

GitHub - twistedpearaudio/Buffalo-III-SE-Pro-On-Board-Firmware
__________________
Less pulp more juice Twisted Pear
Audio
/Twisted Pear Audio Blog
  Reply With Quote
Old 9th February 2018, 12:59 PM   #9
Russ White is offline Russ White  United States
diyAudio Member
 
Russ White's Avatar
 
Join Date: Jan 2005
Location: Nashville, TN, USA
BTW it is absolutely not a good idea to just hold reset high all the time - while the DAC will operate (usually) - it will not be properly initialized. This actually matters much more than you might think - as the initialization sets analog operating points.
__________________
Less pulp more juice Twisted Pear
Audio
/Twisted Pear Audio Blog
  Reply With Quote
Old 9th February 2018, 01:03 PM   #10
harruharru is offline harruharru  Norway
diyAudio Member
 
Join Date: Feb 2005
Location: Stavanger/Trondheim
I use an anolog devices ADuM1250 so no spare output. I go for a relay.

I measure 256 ohm between pin 8 on the dac and pin 1. I do not know if a resistor is needed. The traces are not visible on the board so it is difficult to know if a resistor is needed. I would beleive it is not needed since pin 2 is DVCC. It seems logical to be short pin1 to pin2 without a resistor. Same goes for pin 11 DAC_ADDR short to Pin 12 DVCC.
  Reply With Quote

Reply


Custom firmware for B3/B3SEProHide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Firmware B3 dahlberg Twisted Pear 24 29th March 2017 12:04 PM
DSD to PCM in Octave, then DAC firmware borges Digital Line Level 0 19th December 2016 08:29 AM
Looking for 4x10HD old firmware stan miniDSP 17 10th December 2016 07:58 AM
Trade Custom Speaker Horns for Custom Amp brsanko Tubes / Valves 3 6th July 2010 05:32 AM


New To Site? Need Help?

All times are GMT. The time now is 12:53 AM.


Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2019 DragonByte Technologies Ltd.
Resources saved on this page: MySQL 14.29%
vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2019 DragonByte Technologies Ltd.
Copyright ©1999-2019 diyAudio
Wiki