kategoria: Stacje dyskietek
[#1] ADF OTG - programowalny pendrive do Goteka
Nie da się ukryć, że Gotek to doskonałe narzędzie, które skutecznie eliminuje wadliwe dyskietki, zastępując je pojedynczym i pojemnym pendrivem.

Nie da się też ukryć, że odszukanie konkretnego ADFa na pendrivie, który jest nimi wypchany po brzegi jest dość niewygodne. Chcąc coś dograć albo zgrać z tego pendrive'a musimy latać pomiędzy Amigą a Pecetem, bawić się w łażenie po katalogach i "bezpieczne odmontowywanie". Dodatkowo, skasowanie ADFa z pendrive'a powoduje przesunięcie indeksów w Goteku. Niby jest lepiej niż z dyskietkami, ale wciąż nie jest wygodnie.

Otóż, można to zmienić.

Miesiąc temu zapoczątkowałem projekt ADF On-The-Go. Jest to projekt zamiany Raspberry Pi Zero w programowalnego pendrive'a, którego zawartością można sterować zdalnie. Taki Raspberry Pi może być permanentnie podłączony do Goteka, ponieważ to komendami steruje się, czy Gotek widzi dyskietki czy nie i jak już ma je widzieć, to jakie. Na tym Raspberry Pi jest zainstalowany Raspbian, co umożliwia nam zarządzanie nim z całą potęgą systemu operacyjnego Linux. Co najlepsze, to wszystko działa out-of-the-box - nie musimy instalować żadnego dodatkowego softu ani lutować płytek, bo wszystko jest już w RPi Zero i w Linuksie.

Niemniej jednak - to co mamy wbudowane w Linuksie jest sterowalne tylko z poziomu terminala przez ssh. Nie jest to zły interfejs jeżeli mamy obok Peceta. Gorzej, gdy Pecet stoi gdzieś dalej. Mamy co prawda pod ręką smartfony, tylko że tutaj obsługa terminala jest niewygodna.

W to ostatnie wchodzi mój projekt.

ADF On-The-Go to aplikacja działająca jako strona internetowa. Po zainstalowaniu i zintegrowaniu z Raspbianem staje się dostępna pod adresem IP naszego RPi pod portem 43164 (AMIGA). Można na nią wejść z przeglądarki internetowej na naszym smartfonie czy Pececie.

Screenshot (kliknij aby powiększyć):


Z poziomu jej interfejsu można wgrywać ADFy oraz inne pliki z lokalnej maszyny, rozdzielać wgrane pliki na nowe ADFy z automatycznym podziałem zbyt dużych plików, tworzyć montowalne obrazy pendrive'ów z jednym lub większą ilością ADFów, a następnie pobierać je spowrotem z zawartością zmodyfikowaną już przez Amigę. Posiada też programowe API, dzięki czemu możemy do niej dorobić swój własny interfejs.

Co jest potrzebne aby to działało?

1. Amiga (Thank you, Captain Obvious!)
2. Gotek
3. Raspberry Pi Zero W
4. Kabel Micro USB - USB Type A koniecznie z przeciętą żyłą +5V
5. Karta micro SD z nagranym systemem Raspbian
6. Access Point WiFi - do niego podłączamy RPi
7. Osobny zasilacz do RPi. Nie polecam zasilać tego z Amigi bo Raspbian jednak nie powinien być wyszarpywany z prądu razem z Amigą tak jak można to zrobić z Workbenchem.

Wszystko jest dostępne na rynku i nie trzeba się bawić w majsterkowanie (oprócz operacji chirurgicznej na kablu USB). Po udanym postawieniu Raspbiana i zainstalowaniu na nim Pythona 3, Pythona 2 i pipów dla obu z nich, oprogramowanie adfotg instalujemy trzema komendami systemowymi:

sudo pip3 install adfotg
sudo pip2 install amitools
sudo adfotg --install


Po wykonaniu ostatniego '--install' oprogramowanie będzie startować razem z systemem operacyjnym. Ręcznie można je uruchomić poprzez:

sudo service adfotg start


Naszym pociętym kablem USB podłączamy złącze USB On-The-Go w RPi z gniazdem USB w Goteku i możemy ładować pierwsze ADFy.

Ponieważ obraz jest warty więcej niż 1000 słów, tutaj przygotowałem video gdzie można obejrzeć całość w akcji: https://youtu.be/oWo2jC6tGtE?t=321 (dla mniej cierpliwych, przedstawienie samego softu zaczyna się od 09:40).


Słowo formalności: temat umieściłem w kategorii Elektronika, pomimo tego, że cała elektronika w tym projekcie jest do kupienia ze sklepu, a sam projekt jest bardziej software'owy. Niemniej jednak tak mi to pasuje, bo podstawową ideą projektu jest zrobienie sprzętu w postaci programowalnego pendrive'a, a metodologia zrobienia tego pendrive'a jest tu kwestią drugorzędną.

Ostatnia aktualizacja: 15.12.2018 18:01:29 przez Zalewa
[#2] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #1

Super, zaraz biorę się za testy.
Jedna uwaga, RPi0 nie ma wifi.
Wifi posiada RPi0 W, które jest troszkę droższe niż 25zł szeroki uśmiech
[#3] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #1

Bardzo fajny projekt, gratuluję pomysłu i wykonania. Na filmie wspominałeś, że można zmieniać kolejność ADFów w obrazie i w ten sposób będą miały customowe indeksy w goteku - na jakiej zasadzie to działa? Jak można manipulować tym indeksem?

Ostatnia aktualizacja: 15.12.2018 19:52:43 przez engine
[#4] Re: ADF OTG - programowalny pendrive do Goteka

@engine, post #3

Na filmie wspominałeś, że można zmieniać kolejność ADFów w obrazie i w ten sposób będą miały customowe indeksy w goteku - na jakiej zasadzie to działa? Jak można manipulować tym indeksem?

Zgaduj zgadula poparte eksperymentem i intuicją: kolejność w której pliki zostaną wgrane do filesystemu FAT32 jest kolejnością ich zaindeksowania. Gotek nie sortuje tych plików w żaden sposób, tylko czyta kolejno wpisy w tablicy filesystemu. Możesz to też zaobserwować na zwykłym penie: po wgraniu nowego ADFa wszystkie pozostałe mają dalej swoje stare indeksy, a ten nowy plik dostanie następną liczbę w kolejności. ADF OTG to wykorzystuje i przy tworzeniu nowego obrazu pendrive'a wkopiowuje pliki w takiej kolejności, jaką ustalisz w interfejsie.

BTW: właśnie pushnąłem workaround na buga w xdftoolu i mamy już wersję 0.1.1.
[#5] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #4

nowsza wersja nadal nie naprawia mojego błędu i program nie działa



Od góry:
-pierwszy błąd po kliknięciu "Mount"
-drugi błąd po klinięciu "Quick Mount"
-trzeci błąd po kliknięciu w czerwony kwadracik na górze, ten pomiędzy zielonymi
Na goteku się nic nie dzieje "---"
[#6] Re: ADF OTG - programowalny pendrive do Goteka

@Tomuś, post #5

Doinstaluj pakiet mtools z apta. Zapomniałem to dodać do dokumentacji, a jest to wymagany krok.
[#7] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #6

Pakiet "mtools" nie jest zainstalowany, więc nie zostanie usunięty

gwizdanie
[#8] Re: ADF OTG - programowalny pendrive do Goteka

@Tomuś, post #7

Uzupełnienie:
do zainstalowania softu kolegi na RPi potrzebujemy "pipów":
sudo apt-get install python-pip
sudo apt-get install python3-pip


dodatkowo potrzebny jest mtools:
sudo apt-get install mtools


a na końcu i tak wam nie zadziała bo macie Cortexa zamiast FlashFloppy

powyższy soft działa tylko z FlashFloppy

Mimo tego idea zacna

Ostatnia aktualizacja: 16.12.2018 00:25:46 przez Tomuś
[#9] Re: ADF OTG - programowalny pendrive do Goteka

@Tomuś, post #8

a na końcu i tak wam nie zadziała bo macie Cortexa zamiast FlashFloppy

powyższy soft działa tylko z FlashFloppy

To nie jest do końca prawda. Powyższy soft działa też z Cortexem, pod warunkiem, że do obrazu pendrive'a wrzuci się selector.adf, który jest wymagany przez Cortex.

W następnej wersji softu zrobię tak, żeby można było wrzucić selector.adf do biblioteki ADFów i w jakiś sposób zaznaczyć, że ma być on dogrywany do każdego montowanego obrazu, tak żeby nie trzeba było go za każdym razem zaznaczać.

Niemniej jednak funkcjonalność selectora już poniekąd powiela funkcjonalność mojego softu, więc mogę się tu zgodzić, że skórka się nie opłaca za wyprawkę.

Wzmiankę o tym oraz brakujące komendy dodałem do readme.
[#10] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #9

Cortex trzyma "niejawnie" na dyskietce informacje o przypisanych adfach do slotów w Selector.adf.
To nie będzie problemem?
[#11] Re: ADF OTG - programowalny pendrive do Goteka

@Norbert, post #10

Nie powinno. To co podłączasz do urządzenia jest dla tego urządzenia widoczne jako pendrive. Nie ma z jego punktu widzenia żadnej różnicy pomiędzy prawdziwym pendrivem. To, co wgrasz na obraz pendrive'a, to tam zostanie. Każdy selector.adf na każdym obrazie będzie traktowany osobno.

Idea tego rozwiązania jest taka, że można przełączać się pomiędzy pendrive'ami o różnej zawartości bez machania sprzętem i bez posiadania rzeczywistych pendrive'ów w ogóle.

Możesz to RPi podłączyć do Peceta i popatrzeć jak to działa.

Ostatnia aktualizacja: 18.12.2018 00:17:55 przez Zalewa
[#12] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #11

Pora zakupić pi zero
[#13] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #1

Zacny projekt.
Powinieneś bardziej zareklamować kanał youtube.
Zakupiłem obudowę infinitiv do mojej A1200 i projekt normalnie z nieba mi spadł.
[#14] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #11

Nie dopisalem jeszcze ze będzie musiał uwzględnić inny sposób przechowywania slotów na cortex i ff/hxc.

A jeśli chodzi o duże pliki (powyżej wielkości dyskietki) to jest program hxcmount.
Umożliwia odczyt danych do Amigi bezpośrednio z pendrive

Ostatnia aktualizacja: 18.12.2018 21:05:37 przez Norbert
[#15] Re: ADF OTG - programowalny pendrive do Goteka

@Norbert, post #14

A jeśli chodzi o duże pliki (powyżej wielkości dyskietki) to jest program hxcmount.
Umożliwia odczyt danych do Amigi bezpośrednio z pendrive


ooo, a o tym nie wiedziałem.
Ja "gupia d**a", ładowałem wszystko do adf żeby później zgrać na wb...
A wystarczyłby mi adf z hxcmount....
[#16] Re: ADF OTG - programowalny pendrive do Goteka

@Norbert, post #14

Hxcmount potrzebuje goteka czy dowolnego innego złącza USB?
[#17] Re: ADF OTG - programowalny pendrive do Goteka

@watman, post #16

Hxcmount działa na sprzęcie na którym jest hxc lub inny kompatybilny soft (flashfloppy)
[#18] Re: ADF OTG - programowalny pendrive do Goteka

@MarekG1, post #13

Zakupiłem obudowę infinitiv do mojej A1200

Też mam tą obudowę. Używałem jej przez jakiś czas, ale przez nią odechciało mi się korzystać z Amigi. Obudowa cała trzeszczy i jej konstrukcja nie napawa pewnością, komponenty trzymają się na słowo, nie ma w niej dedykowanego miejsca na HDD, wmontowany zasilacz śmierdział chińszczyzną, kontroler klawiatury szwankował po wciśnięciu CTRL-A-A, a sama klawiatura od PC to nie było to. Nie polecam, mówiąc krótko. Finalnie powróciłem do oryginalnej obudowy. Infinitiv stoi sobie teraz na szafie i służy za pudełko dla Amigowych komponentów, których akurat nie potrzebuję.
[#19] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #18

To moja druga taka obudowa i mam klawę A1200 w obudowie infinitiv.
Wiedziałem na co się piszę. W przyszłości w tower na być turbo z 060, chłodzenie tego w oryginalnej obudowie nie jest ani łatwe ani estetyczne.
Na daną chwilę mam 3 x A1200, domyślnie ma zostać 1 orginał, 1 tower i jedna płyta pójdzie do projektu 4000TX.
Poza nie najlepszą sztywnością, ta obudowa jest zrobiona od podstaw do Amigi, a nie marną przeróbką obudowy pieca. Powalczę przy pomocy drukarki 3d, może uzyskam ładną i sztywną obudowę.
[#20] Re: ADF OTG - programowalny pendrive do Goteka

@Zalewa, post #1

Dzisiaj wydałem drugą wersję programu oznaczoną numerem 0.2.0. Do ważniejszych zmian można zaliczyć:

  • SELECTOR.ADF będzie automatycznie dodawany jako pierwszy ADF do każdego nowego obrazu pendrive'a, jeżeli tylko zostanie wgrany do biblioteki ADFów. Na obecną chwilę nie można tego wyłączyć inaczej niż przez skasowanie SELECTOR.ADF.
  • Polepszony wygląd na wąskich ekranach (np. na smartfonie; screenshot).
  • Opcja "szukaj" teraz szuka też obrazy pendrive'ów po ich nazwach.
  • Indywidualne przyciski akcji dla każdego obrazu pendrive'a.
  • Favicon.


Pełna lista zmian dla tej wersji znajduje się tu.

Aby zrobić aktualizację należy z shella maliny wykonać następujące dwie komendy:
sudo pip3 install -U adfotg
sudo service adfotg restart


W planach na bliższą bądź bardziej odległą przyszłość mam jeszcze dodanie możliwości grzebania w ADFach oraz możliwości klonowania i edycji zawartości obrazów pendrive'ów, oraz być może zrobienie dedykowanego klienta działającego pod Workbench 3.1 (przez TCP/IP).
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem