ES9018 I2C controller - Page 18 - diyAudio
Go Back   Home > Forums > Source & Line > Digital Line Level

Digital Line Level DACs, Digital Crossovers, Equalizers, etc.

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 4th March 2013, 09:47 AM   #171
Corpius is offline Corpius  Netherlands
diyAudio Member
 
Corpius's Avatar
 
Join Date: Jan 2011
Quote:
Originally Posted by chryses View Post
Looks very cool. A couple of questions:

1) Have you tested it with an OLED display? Specifically, I'm interested in the New Haven 20x4 OLED displays (e.g., the NHD‐0420DZW‐AY5). I've been wrestling with using a port expander with one of these displays for quite some time (Hacking an Arduino Library to support a NewHaven OLED with an MCP23008 port expander | BuffaloDac). I'm guessing the CE644 probably won't work with this type of display w/o some code modification, but I'd love to be wrong. Ultimately, I may have to give up on this display, but I really prefer the look of an OLED to an LCD.

2) What are the dimensions of the mounting holes on the CE644? The center point of the mounting holes on my New Haven OLED are 93 mm apart in width and 55mm apart in height. Will it fit?

3) Are there enough free pins w/ interrupt functionality to support a second rotary encoder? I'd like to make a system with a dial for controlling input/settings and a dial for controlling volume/mute.
Sorry for the late responds.

I'm currently testing it with the same OLED, but I have the same issue that you had. No custom characters. When I try to display these the OLED stampedes. I had a look at your code, but I can not use these exact same code with my expander. I'm using the PCF8574at. I still have some ideas to try out, so using OLED is not possible for the moment. Work in progress

The center points of the mounting holes are exactly the same as your OLED and as other 20x4 HD44780 LCD's as well.

There are enought free pins to a a second rotary encoder, no problem. Pin 2, 10 and 11 can be used for the external interrupt routines. Pin 2 is already used for the encoder, but pin 10 and 11 are free to use for any application that uses the interrupt routines, f.i. adding some more encoders.
__________________
CE-Designs.net
  Reply With Quote
Old 10th March 2013, 01:36 PM   #172
Corpius is offline Corpius  Netherlands
diyAudio Member
 
Corpius's Avatar
 
Join Date: Jan 2011
Default IR learning code

I finished the learning code for the IR codes.
Now the firmware is able to learn the IR codes of most commonly used IR protocols. I tested it with all my remotes I have at home and they all worked just fine. Most of these are using the NEC or RC5 protocols.

I also designed a new version of the PCB. This new version includes a two channel digital isolator (ADUM1200) which I will be using to fully isolate the pins used for input switching at the OTTO or my 4:1 Mux. In the previous version it was only possible to use the I2C isolator to isolate it from my DAC, but the pins used for input switching where not isolated. This meant that there still was no real isolation, unless a relay was used to do the switching (which I did )
__________________
CE-Designs.net
  Reply With Quote
Old 10th March 2013, 03:51 PM   #173
diyAudio Member
 
Join Date: Oct 2004
Hi Robert,
I purchased on of your controllers and finally had a chance to hook it up. It is working fine. I like the simplified display and it is much easier to change settings with the remote than using the push button. The volume numbers go the opposite way than they did with the HI Fiduino code. (they go up when volume is increased). I assume this is by design? What kind of relay do you use for the sidecar and power?

Overall I am very happy with your controller. Thank you for making this available.
Mike
  Reply With Quote
Old 10th March 2013, 04:09 PM   #174
diyAudio Member
 
Join Date: Jul 2005
Location: North IL
Quote:
Originally Posted by pixelpusher View Post
The volume numbers go the opposite way than they did with the HI Fiduino code. (they go up when volume is increased). I assume this is by design?
Yes it is. I like that the numbers go up with increased volume. Old school I guess.... I'm guessing code could be changed easily if someone preferred it the other way.
  Reply With Quote
Old 10th March 2013, 04:29 PM   #175
Corpius is offline Corpius  Netherlands
diyAudio Member
 
Corpius's Avatar
 
Join Date: Jan 2011
My pleasure.

I reversed the volume numbers . This can easily be undone. Look for all lines that contain "99-(dimval\2)" and change it to "(dimval\2)"

You only have to use a relay when you want the controller to be isolated from your DAC. Any 5v relay will do for the sidecar, but since it does no have to switch large currents I suggest using a small signal relay. This is also more energy efficient.

The relay for power also has to operate at 5v. It should be able to switch larger currents,so make sure it can switch a few amperes. I'm using an Omron G6B-1174P-US. This type can handle currents up to 8 amperes. A bit of overkill. At least I do not have to worry about frying the relay.
__________________
CE-Designs.net
  Reply With Quote
Old 14th March 2013, 11:42 PM   #176
miksi is offline miksi  Serbia
diyAudio Member
 
Join Date: May 2003
Location: Nis
Hello, Corpius.

I've downloaded your CE328 code and I wonder what did you use to compile it?
So far I have been using the hifiduino code with Arduino 1.02, reports some warning during compile but it's OK. Your code compiles but when I upload it don't have input names, just 6 rectangles and it's very slow, doesn't react on encoder rotation(don't have apple remote). Watched your youtube video and I supposed it should behave like that.
At the moment I'm trying to implement some TI ISOs 7220 (iso1540 already on the breadboard area of your shield working fine) for OTTO II and SIDECAR control. I think their power supply should be totaly separated and for otto very clean.
Thanks for great effort and I hope you can help.
  Reply With Quote
Old 15th March 2013, 07:55 AM   #177
Corpius is offline Corpius  Netherlands
diyAudio Member
 
Corpius's Avatar
 
Join Date: Jan 2011
I'm using Visual Studio to write and compile the code. You need the Visual Micro plugin for it to work. I think that Atmel (Visual) Studio does also work, but I'm not sure about that.

The reason that you don't see input names is that you did not perform a reset from the menu. You need to have a remote for this. However I just uploaded a new version that does the reset for you when you have never done this before. Also some minor errors are corrected in this new version.

The Terminal A & B of rotary encoder should connect to pin 2 and pin 4. The switch of the rotary encoder should connect to pin 5.
__________________
CE-Designs.net
  Reply With Quote
Old 15th March 2013, 01:40 PM   #178
miksi is offline miksi  Serbia
diyAudio Member
 
Join Date: May 2003
Location: Nis
Thanks Corpius,
It's working now but I still need the remote to get in the menu. I have the remote from yamaha av receiver with IR learning capabilities but need original apple remote to set it up. I know the apple tv code for the latest yamaha remotes but this code doesn't apply for my remote .
  Reply With Quote
Old 15th March 2013, 03:39 PM   #179
Corpius is offline Corpius  Netherlands
diyAudio Member
 
Corpius's Avatar
 
Join Date: Jan 2011
Quote:
Originally Posted by miksi View Post
Thanks Corpius,
It's working now but I still need the remote to get in the menu. I have the remote from yamaha av receiver with IR learning capabilities but need original apple remote to set it up. I know the apple tv code for the latest yamaha remotes but this code doesn't apply for my remote .
U're welcome!

You can use the serial monitor to find out which codes your Yamaha remote is using.

uncomment the first line in the setup() function:

Serial.begin(9600); // for debugging

Comment the second last line in the getIRkey() function:

//c3>>= 1; // Discard the least significant bit

Add the next line to the end getIRkey() function before the return (c1+c2+C3);. Upload and watch the code appear on the Serial monitor when you press a key.

Serial.println(c1 + c2 +c3, DEC);

Write down the code for each key. Then go to the loop() function and change all the numbers in the switches in a way that they correspond to the numbers you have written down.
__________________
CE-Designs.net
  Reply With Quote
Old 1st April 2013, 03:09 AM   #180
diyAudio Member
 
Join Date: Oct 2004
Robert,
I noticed in your user manual v1.21 you say, "When using the non-isolated I2C breakout connect it to the DACís I2C header by means of a logic level converter." I have connected my DAC directly as was recommended in the previous version of your user manual. I do have a logic level converter that I used with the Arduino but I assumed that it was not needed here. Wouldn't the same result be achieved by simply using the isolated i2c breakout?
Thanks, Mike
  Reply With Quote

Reply


Hide 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
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
ES9018 - I2C interface vt4c Digital Line Level 0 4th August 2012 01:12 AM
Samsung 1602VFD For CDROM Controller & Remote Volume Controller slowgay Swap Meet 2 22nd November 2008 02:44 PM
I2C controller for Audio DSP elnec Digital Source 6 15th February 2008 10:58 AM
I2c Amdio Digital Source 9 29th April 2007 12:05 AM
I2C Controller abid_rehan Digital Source 1 21st October 2004 10:02 AM


New To Site? Need Help?

All times are GMT. The time now is 10:07 PM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.
Copyright ©1999-2014 diyAudio

Content Relevant URLs by vBSEO 3.3.2