Home > Arduino, Code > Arduino for Buffalo II DAC

Arduino for Buffalo II DAC

October 12, 2010 Leave a comment Go to comments

I’ve started writing the code for Arduino for the Buffalo II DAC. I am reusing the code I wrote for the Wolfson 8741 (TPA OPUS DAC), but I’ve decided to make some changes to make it easier for others to implement.

Hardware components:

  • Arduino UNO (Although any Arduino clone will work)
  • “Standard” Hitachi-HD44780-compatible LCD (20×4). This device has native support from the Arduino standard installation. In my previous code, I used a serial LCD implementation from a single supplier with custom libraries. The “standard” LCD is available everywhere. I got mine from SureElectronics on ebay
  • “El cheapo” rotary encoder, debounced with capacitors. More info here and here
  • 5V to 3.3V level converter for the I2C lines. Even though it has been reported that the Saber DAC is 5V tolerant at the inputs of the I2C, I’m using the level converter just in case. More info here.

The initial release consists of basic volume control with a rotary encoder and display of volume level from -99db to 0db.

The code is available here: Arduino code for Buffalo II DAC. Copy the text and paste it into an Arduino blank sketch; verify the code and upload it into the Arduino board. There are many good tutorials on how to get started with Arduino. Here is one: http://www.ladyada.net/learn/arduino/

  1. DoubleAA
    October 12, 2010 at 17:08

    Many, MANY thanks for posting this code. Having read your blog in the past, I got an Arduino Uno a couple weeks ago with the intent of interfacing with my Buffalo 32s. I’ve also requested information from ESS on getting the data sheet (signing the NDA, etc.). I’m intrigued since you mention that your are under NDA, but have received permission for sharing the code. I’m trying to figure out right now how to read the sample rate using the DPLL_NUM. Are you able to share that code by chance? Regardless, great work my friend.

    Thanks and keep up the GREAT work for the community.

  2. Hifiduino
    October 12, 2010 at 21:08


    This is all the code I’ve written so far. I wanted to put out a basic sketch for people to learn and experiment. I plan on adding more features as time permits. I can work on reading the sample rate next.

  3. DoubleAA
    October 12, 2010 at 22:13

    Sounds great! It’s your sample code / experiences that has driven me to get the Arduino and now, subsequently do more than just display sample rate😉 I now have added a headphone out which of course means I need the volume control and….again thanks!

  4. JRMN
    March 21, 2011 at 20:33

    What shield is that sitting on top of the arduino?

  5. BlogGeanDo
    March 21, 2011 at 23:32

    I purchased from nkcelectronics. I don’t see it anymore in their new website. It was some sort of prototyping shield similar to this: http://www.nkcelectronics.com/freeduino-arduino-protoshield-pcb.html

  6. JRMN
    March 22, 2011 at 15:11

    That’s too bad, looks like you were able to hook alot of stuff up to that shield. Is that the logic level converter I see and did it come with that harness for the LCD?

  7. BlogGeanDo
    March 22, 2011 at 18:55

    The shield came with nothing, just the solder holes/pads and the pins to connect to Arduino. Everything else, including extra holes for other components I added myself. The little red board is the logic level converter. Here is a better picture of the shield in another project: http://hifiduino.blogspot.com/2009/04/modding-shield.html

  8. September 14, 2016 at 14:51

    Indoor Activities For Toddlers

  9. September 14, 2016 at 15:21

    Pornography SEO

  10. September 14, 2016 at 15:24

    pulseras de gomitas

  11. September 14, 2016 at 16:27

    laptop deals

  12. September 14, 2016 at 16:32

    Seamless Aluminium Guttering

  13. September 14, 2016 at 17:14

    fluconazole xifaxan atenolol xifaxan amoxicillin xifaxan xifaxan vs. ciprofloxacin cipro xifaxan interaction can take xifaxan amoxicillin warfarin xifaxan lorazepam xifaxan imodium xifaxan interaction wellbutrin xifaxan prevacid rifaximin xifaxan tylenol

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s