Show Posts
Pages: [1] 2 3 ... 9
1  Using Arduino / Networking, Protocols, and Devices / Re: UNO board I2C pullups? Can be enabled/disabled? on: March 14, 2013, 12:18:18 pm
Quote
in the range of 200 KHz appear the work just fine; in the range of 60 MHz, the change attempts often cause I2C errors.

I would definitely say that was a decoupling issue with your layout. Read this:-
http://www.thebox.myzen.co.uk/Tutorial/De-coupling.html

That is a high frequency you are dealing with and it can get into the supplies. I would also include a 1nF ceramic decoupling capacitor as well as the normal ones.
If you recall (reread some of your posts), we tried both large and small caps at the same time. There was no difference. However, I do believe you and I did read the article on decoupling (there are better descriptions). Unfortunately, I have had to put the project away for now. Perhaps in a few weeks we can try something more.
Sorry, but thanks for your help.
2  Community / Website and Forum / Re: Option to disable private messages - disable from selected members? on: March 08, 2013, 12:54:00 pm
PS: Is there a way of blocking specific members?

There are instructions on that page...

Quote
Other members of Arduino Forum can contact you personally, but sometimes you may want to ignore someone's messages. This page allows you to set that, among other things.
Ignorelist:
Add one Username on each line.
Or enter * to ignore all messages.

Find Members
Got it, thanks.
I'm always a bit thick when it comes to finding this stuff.
3  Using Arduino / Networking, Protocols, and Devices / Re: Wire lib vs I2C lib - interrupts, performance. on: March 08, 2013, 12:42:07 pm
To snoozerman and Headroom:
Thanks for sharing your experience and my apologies for my hasty review of the I2C stats.

I'll take the modified file and see what its like.

Regards.
4  Using Arduino / Networking, Protocols, and Devices / Re: UNO board I2C pullups? Can be enabled/disabled? on: March 05, 2013, 12:52:00 pm
Just as a follow up:
I obtained a few samples of the LTC6904 chip and wired one up to the UNO in the same way as the module was. The changes in frequency are more reliable than with the 1st chip, but that reliability goes down with the greater frequency coming out of the chip. Changes in low frequency, say in the range of 200 KHz appear the work just fine; in the range of 60 MHz, the change attempts often cause I2C errors.

In addition, the new chip seems to have a much higher frequency jitter at its output than for the 1st chip.

I think I'm going to look for another, more reliable, chip than the LTC6904. Its a bit of a nuisance.

Thanks.
5  Community / Website and Forum / Re: Option to disable private messages - disable from selected members? on: March 04, 2013, 01:36:32 pm
Is there no way of getting there via "Profile" from the main menu?

Of course there is.  Click Profile.  Click Personal Message Options.

Hahahaha! You only get that "Personal Message Options" selection if you are in the Forums section. I guess I wasn't there at the time I wanted to change the option.
Many thanks.

PS: Is there a way of blocking specific members?
6  Community / Website and Forum / Re: Option to disable private messages - disable from selected members? on: March 04, 2013, 10:55:44 am
So you have to log on. Then select Members, then search for your own name, and then click on your name to bring up the summary member/profile info page.
Then, under Modify Profile, select "Personal Message Options".

At: "Notify by email every time you receive a personal message:", select "Never".

Is there no way of getting there via "Profile" from the main menu? If not, may I suggest that capability be added?

Thanks.
7  Using Arduino / Networking, Protocols, and Devices / Re: Wire lib vs I2C lib - interrupts, performance. on: March 03, 2013, 11:10:27 pm
Wire...unless the text at http://playground.arduino.cc/Main/WireLibraryDetailedReference, section "The Wire Library" is out of date, the Wire library uses blocked I/O and not interrupts:

"The Wire library's I/O blocks. This means that when sending or receiving over the I2C bus, your application is prevented from running until the communication is complete. In truth the operation of the TWI hardware in your processor is interrupt-driven, so your application should be free to run at full speed while the TWI communication takes place, but this capability is not utilized by the Wire library. "

Have I misunderstood something?
8  Community / Website and Forum / Option to disable private messages - disable from selected members? on: March 03, 2013, 02:57:29 pm
I was wondering if there is a way to disable private messages? Perhaps even private messages from selected members?
9  Using Arduino / Networking, Protocols, and Devices / Re: Wire lib vs I2C lib - interrupts, performance. on: February 26, 2013, 09:44:27 pm
If you scroll down the page on dsscircuits.com you'll find a pretty detailed timing comparison between the I2C and wire library ;-)
That should explain any performance differences.
It does - in favor of the Wire lib. Compare bytes/us or us/byte. You'll see the Wire library is faster (more bytes/us or less us/byte) in all three cases. However, the text says the results are out of date. Note that the interrupt code may not have been removed in that version of the library.

However, micro-controllers are about real-time events and polling tends to block the real-time system. Or does it?
10  Using Arduino / Networking, Protocols, and Devices / Wire lib vs I2C lib - interrupts, performance. on: February 26, 2013, 02:23:48 pm
From my look at the Wire Lib and the I2C lib (http://dsscircuits.com/articles/arduino-i2c-master-library.html), its apparent that the Wire Lib uses interrupts whereas the I2C lib polls and essentially blocks activity until the function has completed.

I understand the advantage of interrupts in general, but what are the differences in performance between I2C and the Wire lib?
11  Using Arduino / Networking, Protocols, and Devices / Re: UNO board I2C pullups? Can be enabled/disabled? on: February 26, 2013, 12:03:06 pm
Well you never know what is going to be damaged because you don't know how the die is laid out.
. Yet the chip has a 10 ohm resistor at the output, and the manual's cautionary note was for good waveforms at high frequency ... but after trying the decoupling, I can think of no other reason.
12  Using Arduino / Networking, Protocols, and Devices / Re: UNO board I2C pullups? Can be enabled/disabled? on: February 26, 2013, 11:19:37 am
Quote
It is difficult to tell much from the photos as they are too blurred.
Can't do better, I'm afraid.

Quote
Were those traces from your code? The data does not look to match what you have posted as your code.
The traces were from the I2CScanner code. As you can tell from the code, the program puts out many addresses. The scope is triggering on the SDA trace (blue), but it could be for any address.

Quote
Things to try:-
The code on the module's web site.
Did that some time back.

Quote
I'll try it.

Quote
It could be you have a faulty module.
I think that's the problem. When I first used the module, it worked fine. Then I put an 8 ohm speaker on the output. I read the manual later and it implies that the output should not be loaded at all - even the scope probe had to great an input capacity (some 100 pf). Since then its been misbehaving. But I didn't think the I2C system would be damaged.
13  Using Arduino / Networking, Protocols, and Devices / Corrected I2C Scanner Sketch- attached. on: February 25, 2013, 09:51:55 pm
The version of the sketch in error has this line of code:
Code:
Wire.beginTransmission(address);
The sketch with that line will report the incorrect device address because the beginTransmission() method requires a right-shifted address value and the sketch sends it and reports the unshifted address. The correct code line is:
Code:
Wire.beginTransmission(address>>1);
The attached sketch is the corrected one.
14  Using Arduino / Networking, Protocols, and Devices / Re: UNO board I2C pullups? Can be enabled/disabled? on: February 25, 2013, 05:47:12 pm
Welli am running out of ideas. Any chance of posting a photo of your setup?
here are some photos:
1 of the set-up. I can't get closer and stay in focus.
1 of the wave forms while the scanner sketch is running.

Just a note: The scanner sketch miss-reports the device address. Normally the device address is shifted right one bit before passing it to the Wire.beginTransmission(address) method. The Wire lib then shifts it left with 1 for a read, or 0 for a write before sending it out.:
----------------see twi.c, line 144:
  // build sla+w, slave device address + w bit
  twi_slarw = TW_READ; //TW_READ=1
  twi_slarw |= address << 1; //twi_slarw=twi_slarw ! (address<<1)
------------------
The passing program keeps the unshifted address.
Ex: -------------
const byte i2cAddress =(0x2E >>1);      // Wire lib shifts back left for IO;
...
Wire.beginTransmission(i2cAddress);
------------------------------
However, the scanner sketch passes raw unshifted address. So for the reported 0x17, Wire believes it to be 0x2E. For 0x7E, its 0x2F. These are the proper read and write addresses for the module. Once the sketch is corrected the correct addresses are reported. See the attachment.
15  Using Arduino / Networking, Protocols, and Devices / Re: UNO board I2C pullups? Can be enabled/disabled? on: February 25, 2013, 04:54:04 pm
I would check that the pull ups are actually enabled as that could cause those sorts of problems as well.
I would use a large capacitor across the supply at the module end. Start with 47uF and work up to 1000uF.
The other thing that could cause this is the I2C clock geeing too fast but I don't see how that can be the case.
Can you examin the waveforms on a scope?
To Grumpy_Mike.
I refloated the solder bridges for the pull-ups. SDA and SCL look good on the scope: 0V-5V swings for both. I tried the I2C address scan. It recognized two addresses: 0x17 and 0x7E. Now 0x17=(0x2E>>1). This is the address of the module. I have no idea what 0x7E might mean.
The program reports no errors.
I tried 3 caps from +5V to ground at the module wires, but the scanner reports the same addresses.
Pages: [1] 2 3 ... 9