uC + ETH + SD

Rozmowy na luzie np. o pogodzie lub śmiesznych kotach
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 3
Posty: 8943
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5873
Kontakt:

uC + ETH + SD

Post autor: dziobu »

Wspominałem kiedyś że przy pierwszej okazji sprawdzę ile wyciąga jakiś znany mi uC przy przesyłaniu danych przez sieć.
Padło na STM32F767
(normalny program; nie jest to środowisko testowe)
STM32F7@216MHz, ETH, SD (Goodram SDHC 8GB).
  • zapis - ~600kB/s,
  • odczyt - ~1800kB/s.
Czyli tyle co oferuje DUET ;)

I ciekawostka:
Po zjechaniu zegarem rdzenia do 48MHz szybkość transferu spadła o...15% :) Tyle daje m.in wyrzucenie wszystkich transferów do DMA.

Test dedykuję twórcom smoothieware, którzy to z LPC1769 wyciągają 10%-15% tego co ja powyżej.


A przy kolejnych okazjach wrzucę wyniki z innych uC. Dla sportu i do porównania ;)
Berg
Awatar użytkownika
dragonn
Zasłużony
Postów w temacie: 2
Posty: 6384
Rejestracja: 12 gru 2016, 21:50
Lokalizacja: Opole
Drukarka: LUME
x 1455

Re: uC + ETH + SD

Post autor: dragonn »

Fajny wynik, dobrze wiedzieć że ograniczeniem tutaj nawet nie jest ESP8266 które robi za WiFi bo wersja z WiFi wyciąga podobne transfery.
Raczej żeby uzyskać wyższe transfery to trzeba było dołożyć jakiś zewnętrzny RAM który by służył za bufor.
sp6vgx
Konto z ograniczeniami
Postów w temacie: 4
Posty: 489
Rejestracja: 06 lut 2018, 18:38
Lokalizacja: Warszawa
x 74
Kontakt:

Re: uC + ETH + SD

Post autor: sp6vgx »

Z ciekawości jaki stos TCP/IP używałeś ? LwIP ? Jak ci się nudzi sprawdź może na CycloneTCP https://www.oryx-embedded.com/#&panel1-2 - jest tam chyba nawet gotowy przykład FTP...
For every complex problem, there is a solution that is simple, neat, and wrong.
Ultimaker 1 i 1/2, Szrotek, Vertex K8400, Anycubic I3 Mega
sp6vgx
Konto z ograniczeniami
Postów w temacie: 4
Posty: 489
Rejestracja: 06 lut 2018, 18:38
Lokalizacja: Warszawa
x 74
Kontakt:

Re: uC + ETH + SD

Post autor: sp6vgx »

dragonn pisze: Raczej żeby uzyskać wyższe transfery to trzeba było dołożyć jakiś zewnętrzny RAM który by służył za bufor.
Dokładnie przy TCP warto mieć większy z tego powodu że normalnie nie dostaje się ACK po każdym wysłanym pakiecie, a różne stosy różnie próbują komputery do tego zmusić np. wysyłając porcję danych w większej ilości pakietów (co skutecznie zmniejsza transfer).

Choć akurat STM32F767 ma tego ram-u dość sporo... ja akurat czekam na płytki z STM32F777 (to samo + krypto) - akurat poszły do lutowania... Karty SD nie ma na pokładzie... ale ETH akurat jest więc też może zrobię jakieś testy...

Inna sprawa jeśli chodzi o ESP to lepiej chyba obecnie używać ESP32 - różnica cenowa relatywnie niewielka, a możliwości sporo większe - w sumie na samym ESP32 można by całą drukarkę oprzeć :)
For every complex problem, there is a solution that is simple, neat, and wrong.
Ultimaker 1 i 1/2, Szrotek, Vertex K8400, Anycubic I3 Mega
Awatar użytkownika
dragonn
Zasłużony
Postów w temacie: 2
Posty: 6384
Rejestracja: 12 gru 2016, 21:50
Lokalizacja: Opole
Drukarka: LUME
x 1455

Re: uC + ETH + SD

Post autor: dragonn »

sp6vgx pisze: Inna sprawa jeśli chodzi o ESP to lepiej chyba obecnie używać ESP32 - różnica cenowa relatywnie niewielka, a możliwości sporo większe - w sumie na samym ESP32 można by całą drukarkę oprzeć :)
No zdecydowanie ale jak Duet powstawał to jeszcze ESP32 nie było.
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 3
Posty: 8943
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5873
Kontakt:

Re: uC + ETH + SD

Post autor: dziobu »

dragonn pisze:Raczej żeby uzyskać wyższe transfery to trzeba było dołożyć jakiś zewnętrzny RAM który by służył za bufor.
Nawet nie. Spokojnie bym, się w tej pamięci zmieścił.
Zapis na kartę osiągnąłem kiedyś w okolicach 1MB/s na STM32F1 więc się da; a mam wrażenie że powinno dać się jeszcze 2x szybciej. Natomiast tutaj nie mam żadnego buforowania. To prosty test jak sobie radzi wszystko od kopa, z minimalnym kodem i działajać w ramach pracującego programu.
sp6vgx pisze:Z ciekawości jaki stos TCP/IP używałeś ? LwIP ?
Nie. Bawię sie w ramach MDK-Middleware co w sporej częsci odpowiada Seggerowi.
sp6vgx pisze:Jak ci się nudzi sprawdź może na CycloneTCP
Przykro mi ale ostatnio wybitnie mi się nie nudzi :D
sp6vgx pisze:Inna sprawa jeśli chodzi o ESP to lepiej chyba obecnie używać ESP32 - różnica cenowa relatywnie niewielka, a możliwości sporo większe - w sumie na samym ESP32 można by całą drukarkę oprzeć :)
Mnie się akurat ESP32 zupełnie nie podoba ;p
Począwszy od dokumentacji, przez peryferia na idei działania skończywszy. Mam zestaw uruchomieniowy, ale gdyby nie sieć to bym nawet nie patrzył co to i po co. Zresztą dalej szukam czegoś innego. Już nawet Nordic bardziej mi się podoba, a to dotychczas najgorsza platforma (nRF51) na jakiej robiłem coś komercyjnego (swoją drogą - działa rewelacyjnie...)
Ja jednak wolę małe, zamknięte uC gdzie można we wszystkim pogrzebać, większość klepnąć samemu a potem zamknąć tak żeby user nie dotykał. Czasem jest to niestety wręcz wymagane.
sp6vgx
Konto z ograniczeniami
Postów w temacie: 4
Posty: 489
Rejestracja: 06 lut 2018, 18:38
Lokalizacja: Warszawa
x 74
Kontakt:

Re: uC + ETH + SD

Post autor: sp6vgx »

@dziobu

CO do ESP32 to fakt dokumentacja taka sobie ;) ale idzie przeżyć. Peryferia może nie wyczes ale jest to co się najczęściej używa... do tego dwa rdzenie sprzętowa kryptografia itd. Pewna wada co spowalnia to wykonywanie programu z flash-a po SPI, ale to można obchodzić przy krytycznych procedurach odpalając z RAM... Przy cenie w sklepie za rogiem na poziomie okolo 14zł nie jest źle: https://kamami.pl/esp32/563391-uklad-sc ... essif.html Owszem taniej można kupić jakiegoś STM32... ale nie zrobi się na nim tego co na ESP32 czyli WiFi + BT i pozostaje jeszcze sporo mocy obliczeniowej na inne pierdoły...

DOOM-a jak widać też można odpalić https://www.youtube.com/watch?v=y6PP_IBbOTY ;)

Projekt może być zamknięty - jedyny problem to zewnętrzny Flash który można skopiować... ale to i wada niektórych FPGA...

Mi się coś zdaje że bardziej opisujesz tutaj doświadczenia z ESP8266 niż ESP32 gdzie faktycznie było trochę tragicznie i z peryferiami i z mocą jak i dokumentacją...
For every complex problem, there is a solution that is simple, neat, and wrong.
Ultimaker 1 i 1/2, Szrotek, Vertex K8400, Anycubic I3 Mega
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 3
Posty: 8943
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5873
Kontakt:

Re: uC + ETH + SD

Post autor: dziobu »

Nie, piszę o ESP32. Pobawiłem się tym trochę i z mojego punktu widzenia to jest po prostu bida z nędzą. Ani kontrolera LCD, ani obsługi zewnętrznego RAMu. USB też nie ma.
To wypasiony moduł radiowy - tak jak ADuCM jest wypasionym przetwornikiem. Ale poza tym co ma robić to jest grubo średni.
Natomiast liczę że jako mostek uC-wifi to może znajdę coś lepszego ;)

sp6vgx pisze:Projekt może być zamknięty - jedyny problem to zewnętrzny Flash który można skopiować... ale to i wada niektórych FPGA...
To nie jest "problem". To wada jak cholera.
W przypadku FPGA ciekawy/żenujący patent ma Keil w najmocniejszym jtagu - mapa FGPA jest w pamięci podtrzymywanej bateryjnie i jak ta padnie to jest koniec życia urządzenia :D Inaczej bym go dawno kupił.
Ostatnio zmieniony 05 lut 2019, 15:34 przez dziobu, łącznie zmieniany 1 raz.
sp6vgx
Konto z ograniczeniami
Postów w temacie: 4
Posty: 489
Rejestracja: 06 lut 2018, 18:38
Lokalizacja: Warszawa
x 74
Kontakt:

Re: uC + ETH + SD

Post autor: sp6vgx »

@dziobu

Kwestia zastosowania. Ja ekspertem od ESP32 nie jestem i w sumie od niedawna się tym bawię. Miałem wskrzesić trochę mojego starego trackera APRS. Dodać WiFi (obecnie tylko BT), końcówkę mocy z 5W itd. Oryginalnie był na STM32F407 i miałem do tego STM32 dodać ESP32 aby załatwić WiFi i BT. Jak się trochę zapoznałem to wyszło że spokojnie mogę wywalić STM-a i całość (modulacja/demodulacja AFSK, logika, obsługa prostego LCD) ogarnie ESP32 z podpiętym kodekiem audio pod i2s....
For every complex problem, there is a solution that is simple, neat, and wrong.
Ultimaker 1 i 1/2, Szrotek, Vertex K8400, Anycubic I3 Mega
ODPOWIEDZ

Wróć do „O wszystkim i o niczym”