USB and Bluetooth Host Stack

Alles was Du selbst gebaut hast, hier herein. Das Projekt muss allerdings mit einem oder mehreren Parallax Propeller µC realisiert worden sein.
Antworten
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

USB and Bluetooth Host Stack

Beitrag von PIC18F2550 »

Hat damit schon ein mal einer rumgespielt?

Angetestet habe ich es schon ein mal aber es fehlt mir noch der richtige 6Mhz Quarz. :(

ERROR 150/151/170 :mrgreen:

Was mich interessiert ist das Dateisystem: welche FAT16/32 und wie groß?

Welche Funktionen werden Unterstützt?:
Datei schreiben/lesen/löschen/verschieben/umbenennen
Verzeichnis erstellen/löschen/umbenennen
Dateianhänge
usb-host-1.0.zip
(120.86 KiB) 476-mal heruntergeladen
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: USB and Bluetooth Host Stack

Beitrag von yeti »

Die schlechte Nachricht:

Ich wollt mich mal darauf stürzen, hab damals sogar noch USB-A-Buchsen und die passenden Widerstände geordert und irgendwie kam dann ... ... ... ... ... ... nix.
Das sind wohl die Folgen des Lebens über einem lokalen Gravitationsmaximum!

Die gute Nachricht:

Die ab f.p.c/d/c/1405875/#1405875 erwähnten Sourcen (auch bei MSGitHub) sollen mit 80MHz rennen.
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: USB and Bluetooth Host Stack

Beitrag von PIC18F2550 »

Hast du das pin 8 unbeschaltet gelassen?
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: USB and Bluetooth Host Stack

Beitrag von yeti »

PIC18F2550 hat geschrieben:Hast du das pin 8 unbeschaltet gelassen?
Neee... ich hab das Zeuch irgähndwann mal kompeilert als noch nicht alle Hardware da war und als die dann ankam den Hintern nimmer dem lokalen Gravitationsmaximum entreißen können und so sammelt dieser Eintrag auf meiner ewig und beschleunigend  (Dark Energy Inside!)  expandierenden Machmichmalliste seitdem nur Staub.

Erfolg beim Einsatz als USB-Tastatur-Anschluß wurde schon gemeldet:
https://forums.parallax.com/discussion/ ... nt_1405993
https://github.com/maccasoft/propeller-vt100-terminal
https://forums.parallax.com/discussion/ ... rd-support
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: USB and Bluetooth Host Stack

Beitrag von PIC18F2550 »

Habe mal die test-enumerate getestet da geht schon mal was.
Dateianhänge
20190731_203425.jpg
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: USB and Bluetooth Host Stack

Beitrag von yeti »

PIC18F2550 hat geschrieben:Habe mal die test-enumerate getestet da geht schon mal was.
:DAUMENHOCH
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: USB and Bluetooth Host Stack

Beitrag von PIC18F2550 »

:DAUMENHOCH Das war zu früh. :SCHREIEN

Die Fehlerbehandlung ist vollkommen daneben so das sich die Beispiele aufhängen und das war es erst ein mal weil nichts geht mehr.
Das Sector schreiben scheint ohne Fehler zu gehen.
Das Sector lesen bricht nach 24 Sectoren ab. Bei LBA Adressierung sollte das nicht passieren.
Das Filesystem zeigt keinerlei Erfolge.

Es könnte ein Timing Problem sein.

Einen wechsel des USB-Gerätes erkennt der Prop nur verzögert, nach mehreren Abfragen.

Irgendwie sind die sich nicht ganz einig

' Transmit / Receive Size limits.
'
' Transmit size limit is based on free Cog RAM. It can be increased if we save space
' in the cog by optimizing the code or removing other data. Receive size is limited only
' by available hub ram.
'
' Note that if TX_BUFFER_WORDS is too large the error is detected at compile-time, but
' if RX_BUFFER_WORDS is too large we won't detect the error until Start is running!

TX_BUFFER_WORDS = 185 ' FIXME is this right?
RX_BUFFER_WORDS = 266


TX_BUFFER_WORDS = 210
RX_BUFFER_WORDS = 256

Ich glaube beide werde sind Falsch.

Wenn der COG in long speichert währe eine Deffinition des Speicherbereiches im Long Format besser.
word kann auch im Longbereich angelegt werden so das es außerhalb vom Adressbereich eines Long liegt.
Dateianhänge
BB1.JPG
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: USB and Bluetooth Host Stack

Beitrag von PIC18F2550 »

Also.

Das lesen und schreiben von Sekoren im LBA-Modus funktioniert.

Bei dem Dateisystem FAT16/32 gibt es seltsame Effekte:

Das Verzeichnis lässt sich nicht lesen es kommt zum absturz.

Beim erstellen von Dateien scheint es nur eine bestimmte anzahl von Sektoren zu geben.
Ich habe 5 Dateien auf einem 64Mb Stick erstellt mit der Größe 1k,1k,32k,32k und 180k danach kam immer ein "time out".

Der Datendurchsatz im Block lesen/schreiben mit ca. 30kB hält sich in grenzen.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: USB and Bluetooth Host Stack

Beitrag von PIC18F2550 »

Ich hab gestern noch einmal mich mit dem Dateisystem befasst.
Dabei habe ich mal die 6Mhz Variante genommen.
Zeitlich kein Unterschied in der Geschwindigkeit feststellbar
Das lesen und schreiben von Sektoren ist ziemlich schnell nur wenn dann noch Spin mitwirkt geht die Geschwindigkeit in den Keller.

Leider konnte ich nicht genau ermitteln wie der Stick Formatiert werden muss das alles Funktioniert.

Die besten Ergebnisse waren mit FAT und 1024 Clustergröße zu erreichen.
Hier ließ sich auch das Verzeichnis auslesen nur nach dem Schreiben einer Datei musste ich den Stick neu Formatieren ( aber vorher alles mit 00h füllen).

Was mich stutzig macht sind die Konstanten.
Sollten die nicht aus dem
- MBR (Master Boot Record)
- DBR (DOS Boot Record)
gelesen werden?

Immerhin könnte ich bis zu 4 Partitionen auf dem Stick unterbringen

usb-storage.spin

Code: Alles auswählen

  ' 512 bytes is the de-facto standard. This is also the only size
  ' supported by FSRW. So, that's what we mandate.

  SECTORSIZE  = 512
  SECTORSHIFT = 9
fsw-usb.spin

Code: Alles auswählen

'   Constants describing FAT volumes.
'
con
   SECTORSIZE = 512
   SECTORSHIFT = 9
   DIRSIZE = 32
   DIRSHIFT = 5
https://www.datadoctor.biz/data_recover ... page6.html

https://www.datadoctor.biz/data_recover ... page7.html
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Antworten