Sie sind nicht angemeldet.

Werbung

Boote kaufen

Windstärken

Windstärkentabelle

Hallo Besucher, willkommen im Segeln-Forum! Hier kannst Du Dich registrieren, um unser Forum in seiner vollen Pracht genießen zu können! - Weitere Infos zur Registrierung - Login für Mitglieder -

341

Samstag, 4. April 2015, 12:42

Peter,
Du bist noch nicht lange hier, hier gibts keinen "Quark".
Wir sind hier nicht im YF.
Du unterhältst Dich hier mit Leuten, die ein Gesicht haben.

Bez. Deiner Frage eine inhaltliche Antwort:
Kannst Du kaufen, anschließen, zugucken ("einsehbar") wie perfekt arbeitet, staunen !

Frohe Ostern, allen, dem Forum, Euren Familien und besonders Jörn !

Da die Beiträge wie von Dödel-Peter und meine diese so lustig wie eindeutig gemeinte Replik hier eigentlich völlig unnötig sind, bitte ich ggf. die Moderation Dödels und meinen Beitrag wieder zu entfernen.
www.Hai-710.de.vu --- Perfektes Fahrtensegeln mit dem Trailerboot --- Törnberichte: www.hai-710.blogspot.de

342

Samstag, 4. April 2015, 12:43

Hallo,

warum wird hier etwas wie Quark breitgetreten, was eh nicht einsehbar (open source) ist?


Peter
Hm, weil uns das interessiert? :ueberlegen:

Hallo,

aber denkt doch einmal einfach weiter:
Der Informationsgehalt tendiert hier gegen Null.

Daß hier Interesse am "kochen" gehalten wird, täuscht doch nicht über die Tatsache der Nullinformation hinweg, wenn man einfach mal versucht mitzudenken.
"Staunen" bei so viel Geschriebe einfach zu hemdsärmlig und nur kostenlos aufgekochte Werbung.

Wenn der hier schon schreiben will, dann aber bitte aber mit der Angabe der Toolchain.
So, wie jetzt, ist jeder einzelne auf den platten Flaschenhals "konsumieren" beschränkt.


Meint
Peter

343

Samstag, 4. April 2015, 12:52

Peter,
ich erinnere mich, daß Du vor grob 1 jahr im YF an einem open source E-Autopilot arbeiten wolltest.
ich wies damals für Interessierte, die nicht oder nur wenig basteln wollen schon darauf hin, daß so etwas fix und fertig preiswert bei Dr. Heinrich gekauft werden kann.

Also, viele sind dankbar, daß es eine preiswerte, anscheinend sogar bessere Alternative zu den üblichen "Marken" gibt.
Von daher nehmen die Interessierten die Infos hier dankbar auf.

Wie immer im Netz, wenn einen was nicht interessiert oder gar stört, drüber weg lesen.
Aber nicht nach Zensur rufen, da würde ich was anderes daraus folgern, nämlich ein entgegen gerichtetes Eigeninteresse..

Also Peter,
auf welchem Stand ist denn Dein (oder Euer Kleingruppen) open source Autopilot ?

Bisher habe ich noch keine offenen Quellen dazu gesehen ?

Butter zu Fischen, morgen ist Ostersonntag !

Der Seefahrer hat nie ein open source Projekt angekündigt, er steht in keiner Pflicht, sein Knowhow kostenlos zu publizieren. Wieso auch ? Gute Leistung muß bezahlt werden. Gibst Du, Peter, was kostenlos ab, was zu Deiner Arbeit/Beruf gehört ?
Geh auf seine Webseite, kannst Dir eine Bestellung zusammen stellen.

Nochmal, bisher habe ich von dem so großartig angekündigten open-ource E-Steuerung nichts mehr gelesen.
Heinrich hatte es schon lange am Laufen, bevor die Gruppe/Du im YF auf die Idee kamt.


(Ggf. an die Moderation, was mit Dödels Einwürfen zu tun hat, weglöschen. Ihn ggf. verwarnen, damit ihm klar wird, wo Grenzen liegen. Sowohl aus dem Yf als auch aus seinen Beiträgen hier halte ich ihn für wenig sozialkompatibel, wie man hier bsp.-haft sieht. Mnachmal sind seine technischen (leider auch sonstigen) Beiträge sehr abseitig, am Thema vorbei. Durchaus hat er aber einiges an Wissen, was aber selten heraus kommt.)


Und sonst würde nur noch geistiges Ignorieren gegen "Dödel" helfen, wir antworten am besten nicht mehr, wenn er was abseitiges oder provokantes schreibt.
www.Hai-710.de.vu --- Perfektes Fahrtensegeln mit dem Trailerboot --- Törnberichte: www.hai-710.blogspot.de

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Hai-710« (4. April 2015, 13:03)


344

Samstag, 4. April 2015, 12:59

... für wenig sozialkompatibel, ...

... ebensolches gilt meiner Meinung nach für die Überschrift des Treads. Jetzt darfst Du mich auch hauen. :)

Uwe
:S

345

Samstag, 4. April 2015, 12:59

Also Peter,
auf welchem Stand ist denn Dein (oder Euer Kleingruppen) open source Autopilot ?

Bisher habe ich noch keine offenen Quellen dazu gesehen ?

Butter zu Fischen, morgen ist Ostersonntag !

Hallo,

Du, die Toolchain steht. Allein das ist zehnmal mehr Wert als hier gepflegte "staunen" und "konsumieren".
Daß ich das nicht weiter im YF veröffentliche liegt aber an Dingen, die für Dicht halt nicht einsehbar sind (und auch nicht sein müssen).


Peter

346

Samstag, 4. April 2015, 13:07

Ich schrieb es Dir schon,
dann schreibst Du derartiges aus (wirtschaftlichem) Eigeninteresse.

Und widersprichst Dir selbst !

Verlangst von einem etablierten Entwickler und Produzenten, er solle sein Knowhow offen legen - respektive verlangst, daß er "schweigt" -, und verbirgst Dein eigenes, das ist geradezu amüsant und lustig,
und entspricht in summa, was ich eben vorher geschrieben hatte :)
www.Hai-710.de.vu --- Perfektes Fahrtensegeln mit dem Trailerboot --- Törnberichte: www.hai-710.blogspot.de

347

Samstag, 4. April 2015, 13:15

Hallo,

weder noch. Du liegt meilenweit daneben, weil Dir einfach Hintergründe fehlen.
Du verrennst Dich nur, laß besser solche Spekulationen.

Für lupenreine kostenlose Werbung, wie hier betrieben, ist der Trööt viel zu aufgeblasen.

Was ist den das für eine schadenfrohe nichtshelfende Antwort:
"GGf - und das ist eine Frage - ist die open source - klickediklack per copy+paste eingefügte Sensorfusionssoftware nicht für die Beschleunigungen im Seegang ausgelegt?
Wenn das dann so sein sollte, muss man eben die Mathematik dahinter verstehen lernen, und die Dinge anpassen.
Das soll nur als Ansporn verstanden werden!"

um gleich darauf nachzutreten, wie toll doch die eigene Kiste "rennt".

Wem sonst, als nur platten Konsumenten, kann schon dieser Trööt helfen?
Dazu braucht es aber keine 500 Beiträge mit im grunde Null Inhalt.


Peter

348

Samstag, 4. April 2015, 13:21

Ah, da ist jemand sauer, weil ein anderer nicht freiwillig und kostenlos einem Dritten irgendeine aufwendige Software umschreibt...
Wobei das noch nicht mal verlangt war (wer spekuliert...), einfach offener Austausch.
Daß der unbeteiligte Dödel sauer ist, das ist süß.
www.Hai-710.de.vu --- Perfektes Fahrtensegeln mit dem Trailerboot --- Törnberichte: www.hai-710.blogspot.de

349

Samstag, 4. April 2015, 13:33

Hallo,

nein, laß es besser. Du verrennst Dich, weil Dir einfach Hintergründe fehlen.
So kommt nur Unsinn als Ergebnis heraus.

Nur soweit:
Aber einen gewisser Ehrgeiz ist mir bei diesem Thema nicht abzusprechen. Der ist aber völlig ohne Geldhorizont.
Wie soll man auch ohne Ehrgeiz dranbleiben können?

Leute, die ihr hier euch nur aufs "Staunen" begrenzt und euch als Dankerbietung von platter Werbung vereinnahmen laßt:
Laßt es einfach mal sacken, was ich hier schrieb.
Hier hatte jemand versucht mitzudenken, wurde aber sogleich von der Werbetrommel aus "Ansporn" getreten.
Laßt euch doch nicht am Nasenring führen.


Peter

350

Samstag, 4. April 2015, 13:41

Peter,
ich bin langjähriger Segler und automatisch Beobachter der Segelszene, in den Foren wird hinreichend publiziert. Ich habe ein gewisses Gefühl, was läuft.

Ich schlage Dir folgendes vor:

Beschwere Dich über Werbung in den entsprechenden Raymarine, Garmin, Autohelm u.a. Trööts.
Gucken wir doch mal, ob sich dort die Nutzer das Wort zu ihren eigenen Produkten, oder den (Erfahrungs-)Austausch, ihre "willenlose mystische Euphorie" (Zitat von Dödels Beitrag 353 weiter unten) über die neuen Modelle von Dir verbieten lassen.
Geh in einen entsprechenden Trööt und fordere die "tool-chain".
Alle werden ihren Spaß haben :)

Was mich stört/antreibt, siehe direkt meine erste Antwort zu Deinem "Quark", daß Du hier YF-Jargon einbringst, trollmäßig, obwohl ich weiß das willst Du noch nicht mal, ich schrieb schon oberhalb, so bist Du eben.
Es kann nicht sein, daß, weils einigen im YF zu langweilig geworden ist, nun hier versucht wird, Unfrieden zu stiften.
Und genau das ist Dein Beitrag ("Quark" usw.), unsubstantiierte Vorwürfe gegen einen innovativen Produktentwickler, der jedoch hier für seine Freundlichkeit (Authentizität als Person) weit über seine zufällig in den letzten Jahren entwickelten Produkte hinaus bekannt ist.

Der letzte Beitrag von Dir hiervor, ist nun geradezu perfide.
Du wirfst mit Schmutz und schlägst vor, es sacken zu lassen, so nach dem Motto, vom Schlammwurf wird schon was hängen bleiben.
Menno !
Ich bin mir sicher, dem Leser ist die Sachlage klar, und das beste wäre, dieses völlige OT-Thema hieraus zu löschen, für Peters Selbstschutz schrieb ich das schon zu Beginn.
www.Hai-710.de.vu --- Perfektes Fahrtensegeln mit dem Trailerboot --- Törnberichte: www.hai-710.blogspot.de

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »Hai-710« (4. April 2015, 14:10)


351

Samstag, 4. April 2015, 13:47

Peter scheint ein wenig angefrustet, dass hier jemand ein Produkt vorstellt das tut, und er noch über die Toolchain grübelt. :D
Viele Grüße,
Oliver

  • »Heinrich-Der-Seefahrer« ist der Autor dieses Themas

Beiträge: 3 027

Schiffsname: (verkauft)

Heimathafen: KOLOBRZEG

  • Nachricht senden

352

Samstag, 4. April 2015, 13:53

... für wenig sozialkompatibel, ...

... ebensolches gilt meiner Meinung nach für die Überschrift des Treads. Jetzt darfst Du mich auch hauen. :)
Uwe


@ugies
Uwe, schau doch noch mal auf das Eröffnungsdatum des Trööt. Der Titel ist von 2011.
Damals gab es tatsächlich im Consumer-Bereich nur einachsige Gyrosensoren,
gekoppelt mit Fluxgate-Kompass (kardanisch aufgehangene Spulen) als Magnetfeld-Sensor.
Das hat sich ja neuerdings auch etwas verändert - Wenn man sich das EVO-System von Raymarine ansieht,
ist zu vermuten, dass die dort jetzt mittlerweile auch MMES drinnhaben, also Chipsensoren.
Allerdings erst 3 Jahre nach meinem Trööt...
Ich will nicht unbedingt unterstellen, dass diese Veröffentlichung hier eine Entwicklung angestoßen hat,
aber dass sie dazu beigetragen hat, dass ein EVO-System von Raymarine nicht erst in 5 Jahren auf den Markt kommt, denke ich schon.
Die mussten einfach "Nachziehen" (und sitzen jetzt auf tausenden von antiquierten Fluxgate-Systemen)...

Welcher AP-Hersteller hat standardmäßig eine Motoraus / Kreisfahrt-Funktion, wenn der Skipper mit seinem Smartphone ins Wasser fällt? :rufan:

:viannen_06: Jaja, ich weiß: NOCH keiner (ausser diesem lästigen Selbststeuer-Freak aus Hinterpommern) ...
:tauziehen:

Joern

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Heinrich-Der-Seefahrer« (4. April 2015, 14:59)


353

Samstag, 4. April 2015, 14:02

Hallo,

nunja, gefrustet eher nicht. Ich bin von nichts dergleichen abhängig.
Das "Problem" ist eher anders gelagert und liegt mehr in einer besonders hier im Forum für mich unverständlich mystischen Euphorie begründet, die faktisch mit sozialer Gewalt gepflegt wird.

Und noch eins:
Es sind auf dem freien Markt überhaupt keine Fluxgates mehr so dolle erhältlich, das hat mit einem "Seefahrer" hier im Trööt überhaupt nix zu tun.
Für reichlich weniger Geld gibt es die 9dof bereits schüttgutweise.


Peter

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Dödel« (4. April 2015, 14:22)


354

Samstag, 4. April 2015, 14:10

Hallo,

nunja, gefrustet eher nicht. Ich bin von nichts dergleichen abhängig.
Das "Problem" ist eher anders gelagert und liegt mehr in einer für mich unverständlich mystischen Euphorie begründet, die hier faktisch willenlos gepflegt wird.


Peter
Meinst Du finanzielle Abhängigkeit?
Viele Grüße,
Oliver

355

Samstag, 4. April 2015, 14:12

Hallo,

muß ich jetzt auch noch mit dem Buchstabieren beginnen?


Peter

  • »Heinrich-Der-Seefahrer« ist der Autor dieses Themas

Beiträge: 3 027

Schiffsname: (verkauft)

Heimathafen: KOLOBRZEG

  • Nachricht senden

356

Samstag, 4. April 2015, 14:41

Hallo,
warum wird hier etwas wie Quark breitgetreten...
Peter

Wir Alteingesessenen verhunzen hier keine Lebensmittel!
(nur anno-toback-Trööts bis zur finalen Unleserlichkeit... :D )

siehe:
Ausgeplündert.
Ich wurde ausgeplündert von deutschen Seglern.
Kein einziger Kurscomputer mehr übrig.
Daher gleich Nägel mit Köpfen, und für die nächste Serie ein neu designtes Mainboard,
in das alle Wünsche und Zusatzfeatures seit Mainboard revision3 (2013) eingeflossen sind:

index.php?page=Attachment&attachmentID=185470

Die Klemmendichte hat sich für die Kleinverbraucher und reinen Signalleitungen etwas erhöht,vom 5 mm-Raster auf ein 3,8 mm Raster, es gibt zusätzlich:

- Anschlussklemme für 12V-Beeper als Warnung bei Bluetooth-Verlust (Smartphone im Wasser) vor anstehendem MOB-Manöver

- Anschlussklemme für Engine-off-Relais, wird eingeschaltet bei MOB (Bluetooth-Verlust), liefert 5 A zum Abschalten der Maschine

- Anschlussklemme für NMEA-ausgang (RS232-level), hier wird fortlaufend die HDM-Sentenz ausgegeben (Heading magnetic)

- Anschlussklemme für AP-Mode-LED, die 5-sekündlich signalisiert, in welchem Modus sich der AP befindet FL.R.(n.)5s; n=1:COMPASS, n=2:NMEA_COG, n=3:NMEA_WPNT, n=4:NMEA_WIND, n=5:WIND_ANA

- Anschlussklemme für AP-Mode-Drucktaster, mit dem man die AP-Modi durchsteppen kann: COMPASS, NMEA-COG, NMEA-WAYPNT, NMEA-WIND, WIND_ANALOG

- Anschlussklemme für WIND-ANALOG Eingang, an den man eine ggf. auf einem Cherry-Hall-Rotationssensor (0..360°) aufgebaute analoge Windfahne anschließen kann (0 - 3,3V).

Die Verarbeitung des WindAnalog-Modus muss noch implementiert werden.
Weitere Features, die aktuell "In der Mache" sind, ist die Verwendung des Micro-SD-Speicherkartensteckplatzes auf dem Hauptprozessorboard,
unter anderem für Logging (Sensorik, Aktuatorik komplett) und die Speicherung eines "Werksreset" der Kalibrierungen und AP-Parameter.
(Nur NMEA2000 ist leider noch nicht absehbar...)

Frohe Ostern!


Da war noch...:
An den Engine-Off-Ausgang (eins unterhalb der Kupplung, siehe Bild),
der bei Skipper-Über-Bord auf 12 V geschaltet wird, könnte man auch eine Seenotautomatik(Sender, Notsignale) dranhängen... :kopfkratz:

Nochmal frohe Ostern und einen guten Start in die Saison!

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Heinrich-Der-Seefahrer« (4. April 2015, 15:04)


357

Samstag, 4. April 2015, 15:00

Hallo,

muß ich jetzt auch noch mit dem Buchstabieren beginnen?


Peter
Ich kann Dir nicht sagen was Dich wieder aufbaut.

Vielleicht ein Tipp:


Mach was eigenes, aber mach es fertig.

Back Dir nen Kuchen und iss Ihn auf, das hilft Dir mehr als hier in einem Trööt rumzunölen in dem jemand sein erfolgreiches selbstgebautes Hitechprodukt präsentiert.
Viele Grüße,
Oliver

358

Samstag, 4. April 2015, 15:14

Zitat von »Dödel«
Hallo,
warum wird hier etwas wie Quark breitgetreten...
Peter


Wir Alteingesessenen verhunzen hier keine Lebensmittel!
(nur Trööts bis zur finalen Unleserlichkeit... :D )

Hallo,

so ist es leider und in der Bildsprache doch beides.

Der "the_muck" mit seinem Arduino-Bord aus dem Beitrag 330 wurde platt abserviert, übersteuert.
Dabei hat gerade er hier den besten und wichtigsten Inhalt geliefert:
Abkehr vom naiv transzendenten Staunen von Machers Gnaden hin zum rationalen Erfassen.

@Oliver:
Keine Sorge. Das wird kommen wie das Amen in der Kirche, wenn ich Zeit nehmen kann.
Aber, wie bereits geschrieben: Du bist mit Deinen momentanen Vermutungen komplett auf dem Irrweg.


Peter

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Dödel« (4. April 2015, 15:28)


  • »Heinrich-Der-Seefahrer« ist der Autor dieses Themas

Beiträge: 3 027

Schiffsname: (verkauft)

Heimathafen: KOLOBRZEG

  • Nachricht senden

359

Samstag, 4. April 2015, 15:23

Ihr wollt open Source? hier ist open Source!

Zitat von »Dödel«
Hallo,
warum wird hier etwas wie Quark breitgetreten...
Peter
Wir Alteingesessenen verhunzen hier keine Lebensmittel!
(nur Trööts bis zur finalen Unleserlichkeit... :D )

Hallo,
so ist es leider und in der Bildsprache doch beides.
Der "the_muck" mit seinem Arduino-Bord aus dem Beitrag 330 wurde platt abserviert, übersteuert.
Dabei hat gerade er hier den besten und wichtigsten Inhalt geliefert:
Abkehr vom naiv transzendenten Staunen von Machers Gnaden hin zum rationalen Erfassen.
Peter

:P

Und zwar der Code der Android-App zum Fernsteuern des B-CALMXP (viel Spaß beim "rationalen Erfassen" :D ):


package com.heisystec.BCALMXP;

import android.app.Activity;
import android.os.Bundle;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.content.Intent;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.*;
import android.view.View.OnClickListener;
import android.view.inputmethod.EditorInfo;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import android.text.*;
import android.text.style.*;
import android.text.Spanned.*;
import android.R.drawable.*;
import android.graphics.*;



public class BCALMXP extends Activity {

// Debugging
private static final String TAG = "BCALMXP";
private static final boolean D = true;

// Message types sent from the BTService Handler
public static final int MESSAGE_STATE_CHANGE = 1;
public static final int MESSAGE_READ = 2;
public static final int MESSAGE_WRITE = 3;
public static final int MESSAGE_DEVICE_NAME = 4;
public static final int MESSAGE_TOAST = 5;

// Key names received from the BTService Handler
public static final String DEVICE_NAME = "device_name";
public static final String TOAST = "toast";

// Intent request codes
private static final int REQUEST_CONNECT_DEVICE = 1;
private static final int REQUEST_ENABLE_BT = 2;

// Layout Views
private TextView mTitle;
private ListView mConversationView;
//private EditText mOutEditText;
//private Button mSendButton;

// Name of the connected device
private String mConnectedDeviceName = null;
// Array adapter for the conversation thread
private ArrayAdapter<String> mConversationArrayAdapter;
// String buffer for outgoing messages
private StringBuffer mOutStringBuffer;
// Local Bluetooth adapter
private BluetoothAdapter mBluetoothAdapter = null;
// Member object for the chat services
private BTService mChatService = null;

private String str = "$HSDBS,B00000";

private char[] inBuf = new char[81];
private int wMark;
private TextView textView0;
private TextView textView1;
private TextView textView2;
private TextView textView3;
private TextView textViewS;
private TextView TextOut;
private BackgroundColorSpan BlueMark = new BackgroundColorSpan(Color.LTGRAY);

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (D) Log.e(TAG, "+++ ON CREATE +++");
String s = new String("MHD "+"COG SOG "+"AP RUD "+" << MENU LIGHT >> ");
inBuf= s.toCharArray();

// Set up the window layout
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);

// Set up the custom title
mTitle = (TextView) findViewById(R.id.title_left_text);
mTitle.setText(R.string.app_name);
mTitle = (TextView) findViewById(R.id.title_right_text);


// Get local Bluetooth adapter
mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

// If the adapter is null, then Bluetooth is not supported
if (mBluetoothAdapter == null) {
Toast.makeText(this, "Bluetooth is not available", Toast.LENGTH_LONG).show();
//finish();
// return;
}

textView0 = (TextView) findViewById(R.id.textView0);
textView1 = (TextView) findViewById(R.id.textView1);
textView2 = (TextView) findViewById(R.id.textView2);
textView3 = (TextView) findViewById(R.id.textView3);
textViewS = (TextView) findViewById(R.id.textViewS);
TextOut = (TextView) findViewById(R.id.TextOut);


Button button0 = (Button) findViewById(R.id.Button0);
button0.setOnTouchListener(new View.OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
//event.getAction()
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
doSendMsg(1, 1);
//doUpdateDisplay();
//textView0.setText("Hello World");
break;
case MotionEvent.ACTION_UP:
doSendMsg(1, 0);
break;
}
//TextView textView = (TextView) findViewById(R.id.TextOut);
//textView.setText("Touched Button 0");
return false;
}
});

Button button1 = (Button) findViewById(R.id.Button1);
button1.setOnTouchListener(new View.OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
//event.getAction()
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
doSendMsg(2, 1);
break;
case MotionEvent.ACTION_UP:
doSendMsg(2, 0);
break;
}
//TextView textView = (TextView) findViewById(R.id.TextOut);
//textView.setText("Touched Button 0");
return false;
}
});

Button button2 = (Button) findViewById(R.id.Button2);
button2.setOnTouchListener(new View.OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
//event.getAction()
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
doSendMsg(3, 1);
break;
case MotionEvent.ACTION_UP:
doSendMsg(3, 0);
break;
}
//TextView textView = (TextView) findViewById(R.id.TextOut);
//textView.setText("Touched Button 0");
return false;
}
});

Button button3 = (Button) findViewById(R.id.Button3);
button3.setOnTouchListener(new View.OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
//event.getAction()
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
doSendMsg(4, 1);
break;
case MotionEvent.ACTION_UP:
doSendMsg(4, 0);
break;
}
//TextView textView = (TextView) findViewById(R.id.TextOut);
//textView.setText("Touched Button 0");
return false;
}
});

Button button4 = (Button) findViewById(R.id.Button4);
button4.setOnTouchListener(new View.OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
//event.getAction()
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
doSendMsg(0, 1);
break;
case MotionEvent.ACTION_UP:
doSendMsg(0, 0);
break;
}
//TextView textView = (TextView) findViewById(R.id.TextOut);
//textView.setText("Touched Button 0");
return false;
}
});
//DEvices sofort suchen
Intent serverIntent = new Intent(this, DevListActivity.class);
startActivityForResult(serverIntent, REQUEST_CONNECT_DEVICE);

}

/*@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
*/

public void doSendMsg(Integer Btn, Integer State) {
// 0123456789012
char[] arr = str.toCharArray();
//char SendStr[] = ('$','H','S','D','B','S',',','B','0','0','0','0','0','*');
switch (Btn) {
case 0:
if (State == 0) {
arr[8] = '0';
} else {
arr[8] = '1';
}
break;
case 1:
if (State == 0) {
arr[9] = '0';
} else {
arr[9] = '1';
}
break;
case 2:
if (State == 0) {
arr[10] = '0';
} else {
arr[10] = '1';
}
break;
case 3:
if (State == 0) {
arr[11] = '0';
} else {
arr[11] = '1';
}
break;
case 4:
if (State == 0) {
arr[12] = '0';
} else {
arr[12] = '1';
}
break;
}
TextView textView = (TextView) findViewById(R.id.TextOut);
String s = "";
for (char temp : arr) {
s = s + temp;
}
//textView.setText(s + '*');
if (mBluetoothAdapter != null) {
sendMessage(s + '*');
}

}


@Override
public void onStart() {
super.onStart();
if (D) Log.e(TAG, "++ ON START ++");

// If BT is not on, request that it be enabled.
// setupChat() will then be called during onActivityResult
if (mBluetoothAdapter != null) {
if (!mBluetoothAdapter.isEnabled()) {
Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableIntent, REQUEST_ENABLE_BT);
// Otherwise, setup the chat session
} else {
if (mChatService == null) setupChat();
}
}
}

@Override
public synchronized void onResume() {
super.onResume();
if (D) Log.e(TAG, "+ ON RESUME +");

// Performing this check in onResume() covers the case in which BT was
// not enabled during onStart(), so we were paused to enable it...
// onResume() will be called when ACTION_REQUEST_ENABLE activity returns.
if (mBluetoothAdapter != null) {
if (mChatService != null) {
// Only if the state is STATE_NONE, do we know that we haven't started already
if (mChatService.getState() == BTService.STATE_NONE) {
// Start the Bluetooth chat services
mChatService.start();
}
}
}
}

private void setupChat() {
Log.d(TAG, "setupChat()");

// Initialize the array adapter for the conversation thread
mConversationArrayAdapter = new ArrayAdapter<String>(this, R.layout.message);
mConversationView = (ListView) findViewById(R.id.in);
mConversationView.setAdapter(mConversationArrayAdapter);

// Initialize the compose field with a listener for the return key
//mOutEditText = (EditText) findViewById(R.id.edit_text_out);
//mOutEditText.setOnEditorActionListener(mWriteListener);

// Initialize the send button with a listener that for click events
//mSendButton = (Button) findViewById(R.id.button_send);
/*
mSendButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// Send a message using content of the edit text widget
TextView view = (TextView) findViewById(R.id.edit_text_out);
String message = view.getText().toString();
if (mBluetoothAdapter != null) {
sendMessage(message);
}
}
});
*/

// Initialize the BluetoothChatService to perform bluetooth connections
mChatService = new BTService(this, mHandler);

// Initialize the buffer for outgoing messages
mOutStringBuffer = new StringBuffer("");
}

@Override
public synchronized void onPause() {
super.onPause();
if (D) Log.e(TAG, "- ON PAUSE -");
}

@Override
public void onStop() {
super.onStop();
if (D) Log.e(TAG, "-- ON STOP --");
}

@Override
public void onDestroy() {
super.onDestroy();
// Stop the Bluetooth chat services
if (mChatService != null) mChatService.stop();
if (D) Log.e(TAG, "--- ON DESTROY ---");
}

private void ensureDiscoverable() {
if (D) Log.d(TAG, "ensure discoverable");
if (mBluetoothAdapter != null) {
if (mBluetoothAdapter.getScanMode() !=
BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE) {
Intent discoverableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
discoverableIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300);
startActivity(discoverableIntent);
}
}
}

/**
* Sends a message.
*
* @param message A string of text to send.
*/
private void sendMessage(String message) {
// Check that we're actually connected before trying anything
if (mChatService.getState() != BTService.STATE_CONNECTED) {
Toast.makeText(this, R.string.not_connected, Toast.LENGTH_SHORT).show();
return;
}

// Check that there's actually something to send
if (message.length() > 0) {
// Get the message bytes and tell the BluetoothChatService to write
byte[] send = message.getBytes();
mChatService.write(send);

// Reset out string buffer to zero and clear the edit text field
mOutStringBuffer.setLength(0);
//mOutEditText.setText(mOutStringBuffer);
}
}

// The action listener for the EditText widget, to listen for the return key
/*
private TextView.OnEditorActionListener mWriteListener =
new TextView.OnEditorActionListener() {
public boolean onEditorAction(TextView view, int actionId, KeyEvent event) {
// If the action is a key-up event on the return key, send the message
if (actionId == EditorInfo.IME_NULL && event.getAction() == KeyEvent.ACTION_UP) {
String message = view.getText().toString();
sendMessage(message);
}
if (D) Log.i(TAG, "END onEditorAction");
return true;
}
};
*/
// The Handler that gets information back from the BluetoothChatService
private final Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MESSAGE_STATE_CHANGE:
if (D) Log.i(TAG, "MESSAGE_STATE_CHANGE: " + msg.arg1);
switch (msg.arg1) {
case BTService.STATE_CONNECTED:
mTitle.setText(R.string.title_connected_to);
mTitle.append(mConnectedDeviceName);
mConversationArrayAdapter.clear();
break;
case BTService.STATE_CONNECTING:
mTitle.setText(R.string.title_connecting);
break;
case BTService.STATE_LISTEN:
case BTService.STATE_NONE:
mTitle.setText(R.string.title_not_connected);
break;
}
break;
/*
case MESSAGE_WRITE:
byte[] writeBuf = (byte[]) msg.obj;
// construct a string from the buffer
String writeMessage = new String(writeBuf);
mConversationArrayAdapter.add("Me: " + writeMessage);
break;
*/
case MESSAGE_READ:
byte[] readBuf = (byte[]) msg.obj;
doParseInput(readBuf, msg.arg1);
// construct a string from the valid bytes in the buffer
//String readMessage = new String(readBuf, 0, msg.arg1);
//doParseInput(readMessage);

//hier musse ich leider 7000 Zeichen rauskürzen, man darf nur 20.000 in einem Post...
}

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Heinrich-Der-Seefahrer« (4. April 2015, 15:35)


360

Samstag, 4. April 2015, 15:45

Hallo,

aus dem Zusammenhang geschnitten bleibt es trotz "viel" nebulös, und das weißt Du ganz genau.
Kontextfähige Hinweise werden nur von seriösen Forumsteilnehmern offenbart, soweit meine Meinung.
the_muck zählt dazu.


Peter

Zur Zeit ist neben Ihnen 1 Benutzer in diesem Thema unterwegs:

1 Besucher

Counter:

Gezählt seit: 4. Februar 2014, 08:39, nur eingeloggte Mitglieder
 Zugriffe:   Hits heute: 110   Hits gestern: 2 794   Hits Tagesrekord: 5 297   Hits gesamt: 3 265 972   Hits pro Tag: 2 351,47 
 Seitenaufrufe:   Klicks heute: 810   Klicks gestern: 18 926   Klicks Tagesrekord: 154 353   Klicks gesamt: 27 451 984   Klicks pro Tag: 19 765,14 

Charterboote

Kontrollzentrum