-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!3.eu.feeder.erj
e.net!2.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder8.news.weretis.net
!news.uzoreto.com!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media
.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neost
rada.pl!news.neostrada.pl.POSTED!not-for-mail
Date: Sun, 9 Apr 2023 19:29:27 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.9.0
Newsgroups: pl.misc.elektronika
Content-Language: en-US, pl
From: Atlantis <m...@w...pl>
Subject: PIC32MX795F512L + Harmony - Ethernet się wykrzacza
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 47
Message-ID: <6432f5f7$0$19607$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.30.161.122
X-Trace: 1681061367 unt-rea-a-02.news.neostrada.pl 19607 83.30.161.122:34860
X-Complaints-To: a...@n...neostrada.pl
X-Received-Bytes: 3721
Xref: news-archive.icm.edu.pl pl.misc.elektronika:779635
[ ukryj nagłówki ]Jakiś czas temu złożyłem sobie projekt radia internetowego/odtwarzacza
MP3 z wykorzystaniem mikrokontrolera PIC32MX795F512L i układu Ethernet
PHY DP83848. Firmware napisałem przy użyciu starych bibliotek MLA.
Wszystko działało całkiem sprawnie.
Później powstała nowsza wersja hardware'u, wykorzystująca znacznie
mocniejszy PIC32MZ2048EFM100 i bibliotekę Harmony. Sprawdzała się ona
znacznie lepiej - chociażby z uwagi na domyślne wykorzystanie RTOS-a.
Ostatnio postanowiłem backportować nową wersję softu pod stary hardware.
Z czystej ciekawości chciałem się przekonać jak dobrze starszy MCU
będzie sobie radził z nowymi bibliotekami. Gdyby eksperyment się udał,
to potencjalnie mógłbym wykorzystać w przyszłych projektach tych kilka
scalaków leżących w szufladzie. ;)
Oczywiście głównym problemem były mniejsze zasoby sprzętowe. O ile
PIC32MZ2048EFM100 miał 2MB flasha i 512kB RAMu, to PIC32MX795F512L ma
odpowiednio tylko 512kB i 128kB. Program się zmieścił, zajmując jakieś
75% flasha. Zmniejszając rozmiar kilku statycznych buforów, manipulując
rozmiarem sterty i rozmaitymi ustawieniami w konfiguracji udało mi się
także (chyba) upchnąć wszystko w RAM-ie.
Pierwsze wrażenie były jak najbardziej pozytywne. Oprogramowanie
działało na starym sprzęcie zaskakująco dobrze. Powiedziałbym nawet, że
lepiej niż na starych bibliotekach, co zapewne jest zasługą RTOS-a
(różne procesy wykonują się równolegle i np. stos TCP/IP nie łapie
przestoju, gdy inny proces utyka w jakiejś dłuższej pętli).
Dzisiaj jednak kilkukrotnie zaobserwowałem dziwną awarię: komunikacja po
sieci wykrzaczyła się zupełnie. Płytka przestała odpowiadać na pingi,
nie mogłem się dostać do webUI, również kod kliencki na MCU przestał
otrzymywać dane z internetu. W momencie wystąpienia awarii dioda ACT na
gniazdku Ethernetowym zaczęła się świecić cały czas. Co więcej - parę
razy awaria spowodowała wykrzaczenie się komunikacji po Ethernecie na
wszystkich urządzeniach podpiętych do tego samego routera!
Nie był to jednak całkowity zawias - ciągle mogłem wydawać polecenia w
konsoli UART i otrzymywałem sensowne odpowiedzi.
Raczej nie jest to wina sprzętu, bo na starym sofcie (biblioteki MLA)
płytka była testowana miesiącami i zawsze działała stabilnie. Taki
problem nigdy nie wystąpił. Odnoszę też wrażenie, że prawdopodobieństwo
wystąpienia awarii jest silne skorelowane z ilością przesyłanych danych
- problem występował zawsze podczas odtwarzania streamu audio z sieci
(radio internetowe po HTTP). Chociaż ta hipoteza musi jeszcze zostać
przetestowana, to na razie urządzenie działa odtwarzając lokalne pliki i
problem jeszcze nie wystąpił.
Ktoś ma jakąś hipotezę? Gdzie szukać potencjalnej przyczyny?
Następne wpisy z tego wątku
- 09.04.23 20:09 J.F
- 10.04.23 00:11 Zenek Kapelinder
- 10.04.23 09:35 Atlantis
- 10.04.23 10:49 Zenek Kapelinder
- 10.04.23 11:11 Atlantis
- 10.04.23 11:38 J.F
- 10.04.23 11:42 J.F
- 10.04.23 13:27 Zenek Kapelinder
Najnowsze wątki z tej grupy
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
- No proszę, a śmialiście się z hindusów.
- Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800
- karta parkingowa
- Wl/Wyl (On/Off) bialy/niebieski
- I3C
- Pytanie o transformator do dzwonka
- międzymordzie USB 3.2 jako 2.0
- elektronicy powinni pomysleć o karierze elektryka
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=