Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Forum der DL-QRP-AG für QRP und Selbstbau im Amateurfunk. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Montag, 24. Januar 2011, 16:41

MorseTweeter V 0.7 laeuft

Hallo,

es hat ein etwas gedauert, aber so langsam tut der Arduino was er machen soll:
1. Gehe zu Twitter
2. Sieh nach ob es einen neuen Tweet mit dem Wort "Morse" gibt
3. Hol den Tweet
4. Übersetze den Tweet in Morsecode
5. Gib ihn als akustisches Signal aus.

Jetzt morst es in der Bude und ich muss nicht mehr auf den Bildschirm sehen. Naeheres in meinem Blog:
http://hajos-kontrapunkte.blogspot.com/2…is-running.html

Natürlich ist er noch nicht fertig. Der Parser für den HTML-Code muss noch optimiert werden, ... In der Endstufe wird der Text zusätzlich auf einem kleinen Display angezeigt (ist noch auf dem Luftweg) und später soll der Arduino eine einfache Handtaste ansteuern.

Mal was voellig sinnfreies ...

72/73 de Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

2

Montag, 24. Januar 2011, 19:10

Hallo Hajo,
eine sinnfreie? Frage: der Arduino steuert die Handtaste oder steuert die Handtaste den Arduino?

73 de Addi / DC0DW

3

Montag, 24. Januar 2011, 22:41

Hallo,
Hallo Hajo,
eine sinnfreie? Frage: der Arduino steuert die Handtaste oder steuert die Handtaste den Arduino?

73 de Addi / DC0DW
im Moment troetet er nur selber, aber das Signal sollte die Handtaste steuern (Magnet), die wiederum völlig sinnfrei einen 10 mW TRX tastet und ich im Nebenraum die Morserei auch noch mit einem RX hören kann. Umständlicher gehts nimmer ;-) Oder vielleicht lässt er doch noch die Puppen tanzen oder so ...
Mal sehen wie lange ich das durchhalte - aber die Programmiererei mit dem Arduino macht Spass

72 de Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

4

Montag, 24. Januar 2011, 23:07

Danke Hajo,

für den kleinen Hinweis...µC steuert Handtaste
73 de Addi

5

Sonntag, 30. Januar 2011, 21:44

Hallo,

andere Leute sind auch fleissig.

Ich habe im Arduino-Forum einen schoenen Morse De/Encoder gefunden. http://liudr.wordpress.com/2010/12/02/mo…er-and-decoder/. Plays right out of the box.

Nur bei der Taste haette man etwas mehr investieren muessen ;-) (Video anschauen).

72 de Hajo aka DL1SDZ aka LeseLaster
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

6

Montag, 31. Januar 2011, 14:20

Und wenn ich schon dabei bin,

Auf der Seite http://raronoff.wordpress.com/2010/12/16/morse-endecoder/ hat Raron noch einen Morsedecoder vorgestellt.

Eigentlich sind es zwei Arduinos: Der eine sendet, der andere empfängt. Sehr gut erklärt ist der Aufbau der binären Codierung des Morsebaums und die entsprechende Umsetzung. Der Sourcecode ist wie immer frei.

72 de Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

7

Mittwoch, 2. Februar 2011, 23:20

Hallo,

so mein MorseTweeter kommt auch ein Stückchen voran. Er hat jetzt außerfahrplanmäßig ein LCD-Shield bekommen. Es gab die üblichen Schwierigkeiten, aber was macht man nicht alles für die Kunst. Einen kleinen Film gibts auch in meinem Blog.

Aber so langsam habe ich die Softwareteile zusammen.

72 de Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

8

Donnerstag, 3. Februar 2011, 11:29

Hallo Hajo...

wie sieht ein LCD-shield aus?

73 de addi /DC0DW

9

Donnerstag, 3. Februar 2011, 11:46

Hallo Addi,

die Arduinogemeinde hat eine eigene Sprache entwickelt. So sind Shields genormte PCBs, die direkt auf den Arduino gesteckt werden können. Diese Shields werden direkt mit Spannung versorgt, angesteuert etc.Das LCD-Shield ist bei mir eine LCD-Anzeige 16x2 Zeichen und 5 Pushbuttons. Ansehen kannst Du Dir das in einem kleinen Video, das ich auf meinem Blog verlinkt habe.

Dieser Modulaufbau (z.B. LCD, Ethernet, Breakout, MP3, Midi, Motor, Servo ...) des Arduino ist schon genial, da man sich (fast) keine Gedanken machen muss, die einzelnen Komponenten anzusteuern, da die genormten Shields von entsprechenden Bibliotheken direkt unterstützt werden. Will sagen: Man muss sich nur Gedanken um das (inhaltliche) Programm machen und kann einen Großteil der technischen (Kommunikations-) Probleme ausblenden.

72 de Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

10

Donnerstag, 3. Februar 2011, 11:54

Hallo Hajo,

so kann es gehen ..ich hatte shield mit Abschirmung übersetzt! :-) . Ist fast zwangsläufig, die meistens manualls bzw. pdf's im Beruf sind nur auf English.

73 de Addi

11

Mittwoch, 16. Februar 2011, 23:20

MorseTweeter v. 0.9 oder mit Freude scheitern

Hallo,

MorseTweeter v 0.9 morst, aber ich glaube ich mache mal wieder etwas anderes. Die Software läuft, aber ich hätte einen ausgewachsenen Parser schreiben müssen, um die Twitterantworten von den Tags zu befreien. Und das war nicht das Ziel der Veranstaltung.

Einzelheiten: http://hajos-kontrapunkte.blogspot.com/2…erhaps-end.html

Spass hats gemacht, auch wenn die Puppen zum Schluss nicht tanzten.

Auf zum nächsten Projekt : Einem Theremin, aber damit werde ich dieses Forum nicht belästigen :D
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

12

Donnerstag, 17. Februar 2011, 20:15

Was treibst du denn da? Die Twitter-Webseite parsen, wo Twitter dir gefühlte dreihundert Exportformate anbietet? Zum Beispiel jSon, dafür findest du garantiert einen Parser:

http://www.twitter.com/statuses/user_tim…LeseLaster.json
vy 73 de Thomas - DD1TS - netAction.de

13

Donnerstag, 17. Februar 2011, 23:34

Hallo,

das Problem liegt bei der Verbindung zu Twitter. Verbindung zu search.twitter, dann GET ..., geht nicht mehr und die 0auth war mir zu kompliziert.
Die Suche muss als String formuliert werden: search.twitter.com/query... und das bekam ich nicht gebacken, da ich ueber dns etc gehen muss. Deswegen laufen die alten Arduinoprojekte nicht mehr und keiner konnte mir eine Lösung aufzeigen. So kam ich auf die Idee mit dem php-script ... na ja - war auch nicht so erfolgreich. Oder gibt es einen Weg, dass der Apache/php ohne ueber eine Html-seite zu gehen den String an den Arduino weiterleitet?

Man lernt nie aus.

Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

14

Freitag, 18. Februar 2011, 09:32

Ich habe dein Problem nur überflogen, also Schuss ins Blaue. Habe ich es richtig verstanden, dass du erst die Domain auflöst und dann an die IP-Adresse den HTTP GET schickst? Das kann nicht gehen:

Quellcode

1
2
3
4
5
6
7
8
9
10
$ wget http://199.16.156.11/search.atom?q=morse
--2011-02-18 09:25:12--  http://199.16.156.11/search.atom?q=morse
Verbindungsaufbau zu 199.16.156.11:80... verbunden.
HTTP Anforderung gesendet, warte auf Antwort... 301 Moved Permanently
Platz: http://search.twitter.com/search.atom?q=morse [folge]
--2011-02-18 09:25:12--  http://search.twitter.com/search.atom?q=morse
Auflösen des Hostnamen »search.twitter.com«.... 199.16.156.11
Verbindungsaufbau zu search.twitter.com|199.16.156.11|:80... verbunden.
HTTP Anforderung gesendet, warte auf Antwort... 200 OK
Länge: 20938 (20K) [application/atom+xml]


Du siehst, dass du von der IP-Adresse erst zur Domain umgeleitet wirst und dann dort deine Antwort bekommst. Es fehlt also in deinem HTTP GET die Domain. Lies mal bitte eine Dokumentation über HTTP 1.1 und die Angabe der Domain. Wahrscheinlich ist es das, was du suchst:

Quellcode

1
2
GET /search.atom?q=help HTTP/1.1
Host: search.twitter.com:80
vy 73 de Thomas - DD1TS - netAction.de

15

Freitag, 18. Februar 2011, 12:43

Danke Thomas fuer Dein Interesse.

Es ist noch etwas komplizierter:
http://arduino.cc/forum/index.php/topic,45921.0.html

Hier wurde die Diskussion schon mal gefuehrt. Die Kernfrage:

Zitat

So my question: How could I encode the URL "http://search.twitter.com/search.atom?q=help" in the Arduino programm so that the string provokes the connection to twitter and triggers the search?


konnte keiner beantworten und laesst sich scheinbar auch nicht codieren, deswegen meine grossen Umwege :whistling: Inzwischen habe ich auch verstanden, dass in den Browsern eine Routine eingebaut ist, die die Verbindung aufbaut und 'gleichzeitig?' den String weiterleitet. Aber ich bin halt kein Browser 8o

Na ja ist auch nicht so wichtig - obwohl es mich schon fuchst. Der HTML-Parser war auch nicht das grosse Problem: Es waren die URL-Auflösungen bei verkuerzten Links im Body der Tweets. Die Kiste kann alles morsen, aber es macht keinen Spass, wenn sie statt das Zeichen '#' zu verschlucken, das Wort 'Hashtag' morst.

Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

16

Freitag, 18. Februar 2011, 12:56

Sag mal bitte exakt, was du willst. Die HTTP-Anfragen im arduino-Board sind alle falsch, nämlich HTTP 1.0 statt HTTP 1.1, und können nicht gehen.

Wenn du die Anfrage nicht hinbekommst, kannst du einen kleinen Webspace mit PHP als Proxy nehmen. Der muss dann aber eine eigene IP-Adresse haben, sonst hast du das gleiche Problem wieder.

Quellcode

1
2
3
<?
readfile("http://search.twitter.com/search.atom?q=help");
?>


Was meinst du mit gleichzeitig? Ein Browser löst die Domain auf, stellt über die IP-Adresse eine Verbindung zum Webserver her, schiebt sein GET rüber und bekommt die Antwort. Wirklich gleichzeitig läuft da nichts.

Was haben die URLs in den Tweets mit Hashtags zu tun? Die einen sind was mit # davor, die anderen mit http://.
vy 73 de Thomas - DD1TS - netAction.de

17

Freitag, 18. Februar 2011, 19:35

Hallo Thomas,

bei deinem PHP-Script bekomme ich im Browser die bekannte Antwort inc. HTML ohne Ende. Bei dem VersuchWebspace, php-Proxy, bin ich noch am Lesen.

Bei der Anfrage (nicht URLcodiert):

Quellcode

1
2
 byte server[] = { 128, 242, 240, 148 }; // search twitter
client.println("GET /search.atom?q=LeseLaster&rpp=1 HTTP 1.1");


erhalteich folgende Antwort:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Using Server: 128.242.240.148
HTTP/1.1 406 Not Acceptable
Date: Fri, 18 Feb 2011 18:15:56 GMT
Server: hi
Status: 406 Not Acceptable
X-Transaction: 1298052956-71067-56027
X-RateLimit-Limit: 150
Last-Modified: Fri, 18 Feb 2011 18:15:56 GMT
X-RateLimit-Remaining: 149
X-Runtime: 0.12076
X-Transaction-Mask: 0b5b266a28469a7b52ded76c9a66f018
Content-Type: text/html; charset=utf-8
Content-Length: 1
Pragma: no-cache
X-RateLimit-Class: api
X-Revision: DEV
Expires: Tue, 31 Mar 1981 05:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post-check=0
X-RateLimit-Reset: 1298056556
Set-Cookie: k=87.158.191.193.1298052956403343; path=/; expires=Fri, 25-Feb-11 18:15:56 GMT; domain=.twitter.com
Set-Cookie: guest_id=12980529564058673; path=/; expires=Sun, 20 Mar 2011 18:15:56 GMT
Set-Cookie: _twitter_sess=BAh7CDoPY3JlYXRlZF9hdGwrCPZA%252FDkuAToHaWQiJWYyMDc1ZTlhNWIwNWFm%250ANjI5MDhjYWE2NWI5NjdlOGMzIgpmbGFzaElDOidBY3Rpb25Db250cm9sbGVy%250AOjpGbGFzaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA--ba3668bb41fa41ac3229a41849b11d28c684c479; domain=.twitter.com; path=/; HttpOnly
Vary: Accept-Encoding
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN


Wenn ich die Frage ohne "HTTP 1.1" mache verbindet er sich, gibt aber kein Ergebnis aus und verabschiedet sich.

72 de Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

18

Freitag, 18. Februar 2011, 19:47

Mit deiner Anfrage hast du dem Server nicht gesagt, von welcher Domain "Host: " du die Daten haben willst. Das musst du aber tun.

Der Fehler "406 Not Acceptable" sagt dir, dass du auch die Angabe "Accept: " des von dir gewünschten Datenformates vergessen hast.

Weitere Informationen: http://www.gethifi.com/blog/browser-rest-http-accept-headers
vy 73 de Thomas - DD1TS - netAction.de

19

Freitag, 18. Februar 2011, 20:35

Danke,

jetzt muss ich erst einmal lesen

73 de Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte

20

Freitag, 18. Februar 2011, 23:16

Hallo,

für heute stecke ich es erst einmal. Der Fehlercode war schon mal auf 400 aber ...

Der Code sieht jetzt so aus:

Quellcode

1
2
3
   client.println("GET /search.atom?q=Morse&rpp=1 HTTP/1.1 ");
    client.println("Host: search.twitter.com");
    client.println("Accept: text/xml;q=0.9");


Und die Antwort von Twitter:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
connected
Using Server: 128.242.240.148
HTTP/1.1 406 Not Acceptable
Date: Fri, 18 Feb 2011 22:11:11 GMT
Server: hi
Status: 406 Not Acceptable
X-Transaction: 1298067070-49239-28953
X-RateLimit-Limit: 150
Last-Modified: Fri, 18 Feb 2011 22:11:10 GMT
X-RateLimit-Remaining: 131
X-Runtime: 0.08282
X-Transaction-Mask: 0b5b266a28469a7b52ded76c9a66f018
Content-Type: text/html; charset=utf-8
Content-Length: 1
Pragma: no-cache
X-RateLimit-Class: api
X-Revision: DEV
Expires: Tue, 31 Mar 1981 05:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post-check=0
X-RateLimit-Reset: 1298067366
Set-Cookie: k=87.158.191.193.1298067070980993; path=/; expires=Fri, 25-Feb-11 22:11:10 GMT; domain=.twitter.com
Set-Cookie: guest_id=129806707098362725; path=/; expires=Sun, 20 Mar 2011 22:11:10 GMT
Set-Cookie: _twitter_sess=BAh7CDoPY3JlYXRlZF9hdGwrCAig0zouAToHaWQiJTFkZWZhYmFkYWE0OTY0%250ANjEyMjhiN2Y5YjU4ZGY4ZTFlIgpmbGFzaElDOidBY3Rpb25Db250cm9sbGVy%250AOjpGbGFzaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA--9a327e01e2a258cf186936f58b9fd70feb63bf79; domain=.twitter.com; path=/; HttpOnly
Vary: Accept-Encoding
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Connection: close


Schoenen Abend noch
72 de Hajo
---
Cela est bien dit, mais il faut cultiver notre jardin.

Hajo's Kontrapunkte