Show Posts
Pages: [1] 2
1  International / Deutsch / Re: SainSmart UNO als Ersatz für Arduino Uno on: October 14, 2012, 11:53:14 am
@ESLEagleEye:
Elektronische Produkte werden heute zum erheblichen Anteil in China gefertigt. Die Qualität kann im allgemeinen als gut bezeichnet werden. Wo werden beispielsweise das Iphone oder nahezu sämtliche anderen Handy's, Motherboards, ... gefertigt ?
Aus Italien ist mir keine nennenswerte eletronische Industrie bekannt, was nicht heißen muß, daß man dort nicht SMD's auf Platinen löten kann.
Die Entwicklungsarbeit für die Platinen sowie die IDE schätze ich als minimal ein. Bei den Platinen werden letztlich kaum mehr als die PIN's der MCU's herausgeführt, die IDE ist kaum mehr als eine Oberfläche, die die bekannte gnu avr toolchain aufruft.

Das wirklich interessante an Arduino sind die vielen erstklassigen Library's, die jedoch überwiegend von dritten Personen stammen, die vom Arduino Team wohl keinen Cent gesehen haben.


@Cool: Bestell dir lieber einen MEGA2560 von SainSmart; kostet nur € 5,- mehr; bietet aber wesentlich mehr. Die Tatsache, daß der Sainsmart MEGA einen 8U2 und keinen 16U2 besitzt, ist irrelevant: in der Version R2 hatte das Originalboard auch einen 8U2.
2  International / Deutsch / Re: SainSmart UNO als Ersatz für Arduino Uno on: October 14, 2012, 09:39:15 am
Meine Erfahrung mit SainSmart:
Habe 3 MEGA2560 von SainSmart gekauft, z.t über Ebay z.T. über Amazon, je nachdem wo sie gerade billiger waren. Der Versand erfolgt in der Tat von "DE-Lager" (also kein Zoll) und zwar sehr schnell. Länger als 3 Tage habe ich nie gewartet.
Die Qualität der Platine ist gut.
Absolut kompatibel zum Original.
In der Tat werden z.T. MEGA8U2 als Interface-Controller verwendet, also genau diesselben, wie bei der R2 Version des Originals.
Auf der Rückseite meiner Boards steht im übrigen wohl zutreffend "Made in China", was ich allerdings als Qualitätsmerkmal gegenüber "Made in Italy" ansehe !
Warum die Originalboards das doppelte kosten bei einem Open-Source Projekt erschließt sich mir wirklich nicht. Rechnet man die Preise für die beiden MCU's und das bisschen weitere Hardware zusammen, sind die Preise der Original-Boards wirklich Phantasiepreise.

@uwefed
Der Ebay-Verkäufer macht folgende Angaben zu seinem Angebot:
* 100% New, Arduino-compatible Board with Official ATMEL Microcontroller.

Meines Erachtens auch aus wettbewerbsrechtlicher Sicht nicht zu beanstanden.

Die verwendeten Bilder zeigen allerdings manchmal das Originalboard (was in der Tat "problematisch" wäre), als auch das SainSmart Board.
3  Using Arduino / Networking, Protocols, and Devices / Re: MEGA2560 and I2C with LM92 on: October 11, 2012, 08:29:07 am
Quote
How are you fitting 13 bits in one 8 bit byte?
Not at all. My code:
int lmtemp=0;
lmtemp = ((msb << 8 | (lsb)) >> 3;

I did not program the other mcu, was no Atmel chip.

Quote
Are you still using shielded cable?
I tried shielded and unshielded cable. No difference over 10 inches.

Quote
Why do you think you need to?
I think, less bitrate makes bus-timing less critical. Furthermore there may be influence from SCL with 100khz to SDA when using longer cable.

There is another strange thing: You wrote, Wire.requestFrom would block. When a disconnet the LM92, there is no blocking but msb and lsb are read by Wire.read with 11111111 each.
4  Using Arduino / Networking, Protocols, and Devices / Re: MEGA2560 and I2C with LM92 on: October 11, 2012, 08:12:19 am
Quote
And the upper 4 bits of the MSB (or at least the upper 3) don't mean anything, either.
The msb of the first byte is temperature sign, followed by 12 bits of temperature data. The last (lowest) 3 Bits are status bits (that i don't need). Look at the datasheet (-> temperature register).

I used the LM92 with another mcu over a distance of more than 30 feet absulotly reliable. (shielded cable of course)
Are there any experiences about the Mega2560 and it's I2C interface ? Is it possible to use I2C for longer distances ?; maybe with some additional hardware ?

I tried to reduce the wire library's bitrate by editing the line
#define TWI_FREQ 100000L  to
#define TWI_FREQ 25000L
in wire.h, but couldn't see any difference in data reliability. Are there other hacks necessary to reduce bitrate ?

There is another thing, that makes me wonder: transferred data is quite stable (at stable temperature), but a few degrees to high. Doesn't look like the influence of noise etc.
5  Using Arduino / Networking, Protocols, and Devices / Re: MEGA2560 and I2C with LM92 on: October 11, 2012, 07:44:01 am
Thank you PaulS for your quick reply.
I don't know how the smiley came in there, of course it means "8".
The temperature is returned in 12 bits + sign(msb) = 13 bits. (while negative temperature can't occur in my application).
These are the msb bits, the LM 92 returns. The lower 3 bits are status bits, unimportant for me, therefore ">>3".

I don't think, it's a software problem because it gets worse the longer the cable is.

I just can say about the msb, that there are to much "1" read by Wire.read(). The lsb represents to small temperature differences to verify.

6  Using Arduino / Networking, Protocols, and Devices / Re: MEGA2560 and I2C with LM92 on: October 11, 2012, 06:58:39 am
LM92: http://www.datasheetcatalog.org/datasheet/nationalsemiconductor/LM92.pdf

Wiring : SDA to SDA , SCL to SCL, both with 4,7k pullups to 5V.

Code:
                            byte msb = 0;
                            byte lsb = 0;
                            long start = millis();
                            Wire.requestFrom(75,2);
                            while((Wire.available() < 2) && (millis()-start) < 1500) {
                            }
                            msb = Wire.read();
                            lsb = Wire.read();
                          
                            Serial.println(lsb, BIN);
                            Serial.println(msb, BIN);
                        
                            int lmtemp=0;
                            lmtemp = ((msb << smiley-cool | (lsb)) >> 3;
                            Serial.println(lmtemp, BIN);
                            
                            float tempfl = lmtemp * 0.0625;
7  Using Arduino / Networking, Protocols, and Devices / MEGA2560 and I2C with LM92 on: October 11, 2012, 04:04:15 am
I need help with the problem:
I have a LM92 (thermal sensor) connected to a Mega2560 (IDE 1.0.1 with its Wire library).
Cable length ist less than 10 inches. I have to read 2 Bytes, consequitivly send by the LM92 on a Wire.requestFrom from the Mega2560.
This works, but the Bytes which are read by Wire.read() have too much "1"'s, so the reported temperature is some degrees to high.
This problem worsens, if cable length is increased (e.g. 10 feet). I used internal pullups as well as external pullups -> no change.
Can anyone help ???
8  International / Deutsch / Re: neue Ethernet Shields mit eigenartigen Verhalten on: October 08, 2012, 11:51:58 am
Auf dem Bild von Rainerg sieht man übrigens 4 Lotbrücken auf der rechten Seite des W5100. Der Hersteller scheint wohl ein paar Probleme mit dem Löten zu haben; ansonsten sind die Shields nicht schlecht, vor allem für den Preis !
9  Using Arduino / Networking, Protocols, and Devices / Re: 3G GPRS shield and DynDns update ip on: October 06, 2012, 07:56:24 am
I guess what you want, but i don't think that would work anyway:
Usually 3G networks don't provide globaly routable ip's.
10  International / Deutsch / Re: neue Ethernet Shields mit eigenartigen Verhalten on: October 06, 2012, 06:05:46 am
Quote
es würde mich schon interessieren, wie du genau das Redet-Problem beseitigen konntest

1. Verbindung der Reset Leitung von MEGA-Board zum Ethernet shield trennen.
2. An einem Pin des Reset-Tasters auf dem shield kommt die Resetleitung an. Von dort einen Widerstand auf + (weiß nicht, ob diese billigen Boards schon einen Pullup haben, dann könnte man auf den Widerstand verzichten).
3. Von einem freien Pin des MEGA zur Sicherheit eine Diode (Wiznet arbeitet mit 3,3 V !) auf die Resetleitung des W5100 (am einfachsten wieder an den Resettaster).
4. Nun hat man es in der Hand, einen programmgesteuerten Reset des W5100 in void setup() auszuführen: o.g. PIN auf OUTPUT stellen, 250ms auf LOW ziehen, dann wieder auf Input (ohne PULLUP).

Bei mir funktioniert das bestens. Hat auch den positiven Nebeneffekt, daß der W5100 auch bei einem Watchdog Reset des MEGA ebenfalls resettet wird (was bei den Originalboards übrigens nicht erfolgt).

Die Lotbrücken zwischen den Pins des W5100 sind leider Realität. Kurioserweise sieht man sie bei genauem Hinsehen sogar auf den Werbefotos bei Ebay !!! Schau sie dir mal genau an.
Da allerdings die meisten Pins des W5100 ohnehin auf Ground gelegt sind, kann man (wie ich) Glück haben das es keine Auswirkung hat. Habe deshalb auch verzichtet, die Brücken zu entfernen.
11  International / Deutsch / Re: neue Ethernet Shields mit eigenartigen Verhalten on: October 05, 2012, 01:00:31 pm
Hallo zusammen,

auch ich habe (bereits vor ein paar Wochen) ein solches "HanRun" Shield bei Ebay für € 12,70 gekauft.

Die Reset-Problematik konnte ich mit einer ähnlichen Methode wie von Pylon beschrieben überwinden, allerdings benötigt der W5100 meines Wissens ein LOW-Signal auf der Resetleitung von 250 (!) ms.

Das Board läuft bei mir seit Wochen einwandfrei im Standalone-Betrieb.

Nachdem ich die Bilder in diesem Thread gesehen habe, habe ich mir die Pins des W5100 noch einmal angesehen und siehe da: es sind 8 (!) Lotbrücken zu erkennen. Ansonsten scheint mir die Qualität der Platine nicht schlecht (sind ja auch sonst keine Bauteile mit so kleinem Pinabstand drauf).
Erstaunlicherweise lauft das Board bei mir trotzdem absolut stabil und da ich bis vor ein paar Minuten von diesem Thread nichts wußte, habe ich vor ein paar Tagen noch ein weiteres geordert, daß wol demnächst eintreffen wird. Der Preis ist allerdings wohl unschlagbar; die Lotbrücken wird man beseitigen können.
12  Using Arduino / Installation & Troubleshooting / Re: Watchdog timer reseting arduino before I can upload another sketch on: October 04, 2012, 03:37:52 pm
Quote
re-loading bootloader
when he "reloads" the same bootloader, he will probably have he same problem with wdt.
13  Using Arduino / Installation & Troubleshooting / MEGA 2560 and USBASP Bug ? on: October 04, 2012, 12:03:50 pm
I have the following problem with the usbasp programmer (latest usbasp firmware 2011-05-28, avrdude 5.1):
Programming works well, but reading flash has probably a bug: in the hexfile the bootloader appears twice: at the end of the first 128k and at the end of 256k. the program (which is at the beginning of address space in flash of course) cannot be seen at all !
Can someone verify this ?
 
Edit: This results in a verify error after programming; while programming itself is physicly correct.
14  Using Arduino / Installation & Troubleshooting / Re: Watchdog timer reseting arduino before I can upload another sketch on: October 04, 2012, 11:53:58 am
Which bootloader have you installed ?
the bootloader shipped with the arduino IDE for the MEGA 2560 is not watchdog compatible. If you want to use the wdt you have to install an alternate bootloader with a programmer

15  Using Arduino / Networking, Protocols, and Devices / Re: Smartphone -> Arduino Ethernet Server on: September 23, 2012, 09:22:33 am
Great !
That's it !
Pages: [1] 2