Hallo liebe Forengemeinde, mir spinnt seit längerem eine fixe Idee für meine Geräte im Kopf, die ich euch gerne mal erläutern würde. Evtl. hat ja der ein oder andere noch eine bessere Idee, oder hat den ein oder anderen Gedankenanstoß. Folgender Fall: Ich habe in den letzten 10 Jahren diverse Geräte entwickelt (ca. 20 versch.), die alle jeweils eine externe Schnittstelle haben mittels derer die Geräte dann mit einem kleinen Windows Progrämmchen gesteuert werden können. Hierbei handelt es sich um jeweils rudimentäre Steuerbefehle (Start Stop, Drehzahl, Laufzeiten etc.) Die Schnittstelle ist eigentlich immer USB oder RS232, die Realisierung dahinter, sowie die Protokolle unterscheiden sich doch über die Jahre sehr stark. (RS232 über UART am PIC, dann mal USB direkt vom STM32 M0, dann mal UART auf FTDI RS232USB Chip etc etc.) Nun werden seit längerem die Rufe lauter diese externe Steuerung nicht nur über Kabel, sondern auch kabellos an zu bieten. Bluetooth erscheint mir hier am sinnvollsten weil: - kein Acesspoint etc nötig gegenüber WLAN - kein Stress mit der IT Ich würde jetzt gerne auf Basis eines STM32 Cortex M3 einen Art Adapter bauen wollen, der auf der einen Seite einen Bluetooth 4.0 Chip (Bluetooth 2 UART o.ä.) verwendet, der über Bluetooth aus einer Handy App heraus Steuerbefehle erhält,(z.B. Anlage Start) diese je nach verwendetem Gerät und alter der Maschine in einen Steuerbefehl den das Gerät versteht umwandelt und diesen dann entweder per UART-->RS232 oder als USB Master an die jeweilige Maschine ausgibt. Am Adapter selbst könnte ein 8Pol DIP Schalter vorhanden sein, mit dem man den Gerätetyp für den der Adapter sein soll auswählen kann. Nun zu den Problemen. 1.) Gibt es einen STM32 M3 der auch USB Master sein kann? Wenn ja gibt es hierzu irgendwo Software (ohne Cube und HAL?) 2.) Welchen Bluetooth Chip kann man hierzu empfehlen? Hab mal auf die Schnelle so was gefunden https://www.ebay.de/itm/SPP-C-Bluetooth-serial-adapter-module-51-Single-chip-UART-REPLACE-HC-05-HC-06/153156371890?hash=item23a8d4c5b2:g:lR8AAOSwjg1by7Yw:rk:2:pf:0 3.) Wie bekomme ich folgendes Problem in den Griff?: Die fertigen Bluetooth Module die ich bisher so kenne haben alle einen vom Hersteller gebrandeten Namen mit dem sie in der Bluetooth Welt sichtbar sind. Ich hab es bisher noch nie geschafft diesen Namen irgendwie zu verändern. Daraus ergeben sich zwei unschöne Nebeneffekte. Natürlich wäre mein Wunsch dass das Gerät auch unter meinem induviduellen Namen erkannt wird, zudem gibt es spätestens dann Probleme wenn jemand 2 Geräte von mir nebeneinander betreibt und 2 Adapter verwendet. Hat jemand hierzu Gedankenanstöße Bin für jeden Tipp, jeden Gedanken der nicht mit "du Vollidiot warum machst du überhaupt..." beginnt äußerst dankbar. Bis dann...
Ein anderer Weg wäre, du nimmst einen Raspberry Zero W. https://www.heise.de/make/meldung/Raspberry-Pi-Zero-W-Bluetooth-und-WLAN-Update-fuer-Mini-Himbeere-3637499.html
Bei dem kann man den Bluetooth Namen auch ändern: https://stackoverflow.com/questions/26299053/changing-raspberry-pi-bluetooth-device-name
Hallo soundmachine, 1) wenn Du einen Cortex M3 verwenden möchtest, warum muss der von ST sein? Es gibt z.B. BLE fähige controller mit Cortex M4 von Nordic (nRF52832). 2) Ich würde µCs von Nordic verwenden, da deren Software-APIs vernünftig designed und dokumentiert sind. Wenn die eigentliche Applikation nicht mit auf dem BLE Controller laufen soll, dann tut es der kleinste nrf51422 Conrtex M0. 3) Du solltest Dich kurz mal mit der Struktur von GATT beschäftigen. Gerade wenn man BLE verwendet, um kurz ein "frontend" für eine Hardware zu bauen, bei der man ein paar Werte konfigurieren möchte, eignet sich die "native" Bluetooth GATT Struktur sehr gut. Dort sind einzelnde "Werte" sogenante Characteristics die Grundbausteine, aus denen man einen Service zusammen setzt. (Darüber effektiv RS232 zu fahren ist relativ kompliziert). Auf der Smarthpone / Tablett-Seite gibt es generische GATT-Clients, mit denen man solche Characteristics entdecken, lesen und schreiben kann. Man kann den Dingern sogar Namen geben, die ein generischer Client dann anzeigen kann. Ich habe letztens für einen Kunden eine Firmware (für nRF52832) geschrieben, die es Ihm erlaubt, eine Handvoll Konfigurationsparameter an ein FPGA via SPI zu übertragen und Fehlerzustände periodisch überagen zu lassen. Mit Bluetoe (https://github.com/TorstenRobitzki/bluetoe) umgesetzt, hat den Kunden das weniger als 2 Tage gekostet. mfg Torsten
hallo, ich werfe einfach den DA14580 bzw. DA14680 ins Rennen. Gibt es auch fertiges transparentes UART Protokoll. cheers Sieges
soundmachine schrieb: > zudem gibt es spätestens dann Probleme wenn jemand 2 Geräte von > mir nebeneinander betreibt und 2 Adapter verwendet "Mein Name + Mac Adresse" Der NRF52832 würde wohl fast alle deine Probleme lösen. - gibts überall (auch als dev kit) - einfach programmierbar (z.b. auch arduino) - BLE und MC in einem - Name frei wählbar (mac adresse einmalig und auslesbar) das einzige was wohl nicht so ohne weiteres geht ist der USB Master. Da hab ich keinen schimmer.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.