ESP32 a EEPROM
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Úterý Srpen 27 19:06:02 CEST 2019
Nevim jak to myslite, funkce RTOS jsou co se tyce moznosti volanio z ISR
velmi osekane, vytvorit task nejde urcite, jdou ridit synchronizacni
objekty (jen nektere) napr., spravny postup je cekat treba na semafor v
tasku a semafor uvolnit v ISR.
Dne 27.08.2019 v 18:47 Ondřej Pavelka napsal(a):
> Jakmile zavolám funkci pro zápis do EEPROM (přerušovací rutiny Timerů
> mám samozřejmě jako RAM_ATTR včetně funkcí, které se z této rutiny
> volají), pak to spadne.
> Využívám volání procesů přes xTaskCreate - to může být také problém.
> Ano, nezkusil jsem úplně všechen kód přenést do RAM, protože to už asi
> není úplně ten pravý Workaround....
> Jestliže bych nemohl používat xTaskCreate - tedy separátní task RTOSu,
> pak pro mě asi interní emulace EEPROM není použitelná.
>
> O.
>
>
> PUT data saved to EEPROM
> Guru Meditation Error: Core 1 panic'ed (Cache disabled but cached
> memory region accessed)
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: Core 1 panic'ed (IllegalInstruction).
> Exception was unhandled.
> Memory dump at 0x4017f260: bad00bad bad00bad bad00bad
> Guru Meditation Error: CorGuru Meditation Error: Core 1 panic'ed
> (Unhandled debug exception)
> Debug exception reason: Stack canary watchpoint triggered (loopTask)
>
> út 27. 8. 2019 v 17:00 odesílatel Jiří Nesvacil <nesvacil na posys.eu
> <mailto:nesvacil na posys.eu>> napsal:
>
> Behem zapisu do Flash je vypnuta cache FLASH. Ovsem jedna
> instrukce neustale pristupuje do cache a cele to vypadne na
> vyjimku nejspise v preruseni.
>
> Dejte si do google Cache disabled but cached memory region
> accessed
>
> *the code that was triggered by the interrupt did not have the
> IRAM_ATTR attribute.*
>
> Most O/S library function cannot be called from an ISR. Review
> your code, make sure that every function it calls is local. and
> has the IRAM_ATTR attribute. For example, you Cannot call
> Serial.print() from an ISR.
>
> Oznacte tedy atributem *IRAM_ATTR* kod preruseni a je to.
>
> Jirka
>
>
> Dne 26.08.2019 v 16:21 Jaroslav Buchta napsal(a):
>> Jak uz jsem psal, problem bude asi v tom, ze behem mazani a
>> zapisu proste musi bezet program vyhradne z RAM, pro obe jadra
>> (nebo musi byt zastaveno, nevim, to jsem nejak dukladne
>> nezkoumal) Tipuju, ze je to asi nejak chybne naprogramovano,
>> treba nejake SW moduly nepocitaji s timto stavem.
>> Zase se divim, ze by mel byt problem s timery - asi v souvislosti
>> s prerusenim, to musi bezet v RAM kazdopadne.
>>
>> Dne 26.08.2019 v 15:23 Josef Štengl napsal(a):
>>> Některé procesory nesnášejí přerušování během zápisu do FLASH.
>>> Jestli se to týká i zápisu do FEE (FLASH EMULATED EERPROM), to
>>> nevím, zatím jsem se tomu vyhýbal.
>>>
>>>
>>> On 26. 08. 19 15:11, Dodo Racek wrote:
>>>> Dohad:
>>>> Skor si myslim, ze je to citlive na ine (cudzie) prerusenia
>>>> pocas zapisu do EEPROM.
>>>>
>>>> Dodo
>>>>
>>>> po 26. 8. 2019 o 15:00 Petr Zapadlo <zapik na email.cz
>>>> <mailto:zapik na email.cz> <mailto:zapik na email.cz>
>>>> <mailto:zapik na email.cz>> napísal(a):
>>>>
>>>> proč zrovna timery jsou kolizní s EEPROM? To mi moc nedává
>>>> smysl. (ale je to tím že do toho asi málo vidím)
>>>>
>>>> Petr
>>>>
>>>>
>>>> Dne 26.8.2019 v 14:26 Ondřej Pavelka napsal(a):
>>>>> Problém s emulací EEPROM na ESP32 bývá pravděpodobně
>>>>> způsobem použitím timerů.
>>>>> Mám dva timery na 1s a 10ms, používám PWM na řízení LED a
>>>>> do EEPROM prostě nazapíšu, aniž by to nehavarovalo.
>>>>>
>>>>> O.
>>>>>
>>>>>
>>>>> pá 23. 8. 2019 v 6:13 odesílatel Pavel Brychta
>>>>> <pavel.brychta na duhasys.eu <mailto:pavel.brychta na duhasys.eu>
>>>>> <mailto:pavel.brychta na duhasys.eu>
>>>>> <mailto:pavel.brychta na duhasys.eu>> napsal:
>>>>>
>>>>> Zdá se, že to řeší tento PR
>>>>> https://github.com/z3t0/Arduino-IRremote/pull/599 , ale zatím
>>>>> není sloučený...
>>>>>
>>>>> Pavel
>>>>>
>>>>> Dne 22.8.2019 v 21:33 Petr Zapadlo napsal(a):
>>>>>>
>>>>>> A tady je někdo se stejným problémem:
>>>>>>
>>>>>> https://github.com/espressif/arduino-esp32/issues/928
>>>>>>
>>>>>> petr
>>>>>>
>>>>>>
>>>>>> Dne 22.8.2019 v 19:26 Petr Zapadlo napsal(a):
>>>>>>>
>>>>>>> Zdravím,
>>>>>>>
>>>>>>> tak jsem našel viníka. Je jím knihovna
>>>>>>> https://github.com/shirriff/Arduino-IRremote.
>>>>>>>
>>>>>>> Když odkomentuji
>>>>>>>
>>>>>>> irrecv.enableIRIn();
>>>>>>>
>>>>>>> tak to při zápisu do EEPROM začne havarovat.
>>>>>>>
>>>>>>> Otázka je jestli mám šanci to nějak vyřešit.
>>>>>>>
>>>>>>> Petr
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Dne 22.8.2019 v 06:16 Pavel Brychta napsal(a):
>>>>>>>> DD,
>>>>>>>>
>>>>>>>> zkuste vyrobit MCVE a pošlete mi takto vytvořený
>>>>>>>> projekt, včetně platformio.ini - ověřím to na různých
>>>>>>>> variantáh ESP32 modulů, které mám k dispozici.
>>>>>>>>
>>>>>>>> Pavel
>>>>>>>>
>>>>>>>> Dne 20.8.2019 v 19:16 Petr Zapadlo napsal(a):
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> HW-list mailing list - sponsored bywww.HW.cz
>>>>>>> <http://bywww.HW.cz> <http://www.HW.cz> <http://www.HW.cz>
>>>>>>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>>>>> <mailto:Hw-list na list.hw.cz> <mailto:Hw-list na list.hw.cz>
>>>>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> HW-list mailing list - sponsored bywww.HW.cz
>>>>>> <http://bywww.HW.cz> <http://www.HW.cz> <http://www.HW.cz>
>>>>>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>>>> <mailto:Hw-list na list.hw.cz> <mailto:Hw-list na list.hw.cz>
>>>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>>> _______________________________________________
>>>>> HW-list mailing list - sponsored by www.HW.cz
>>>>> <http://www.HW.cz> <http://www.HW.cz> <http://www.HW.cz>
>>>>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>>> <mailto:Hw-list na list.hw.cz> <mailto:Hw-list na list.hw.cz>
>>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> HW-list mailing list - sponsored bywww.HW.cz
>>>>> <http://bywww.HW.cz> <http://www.HW.cz> <http://www.HW.cz>
>>>>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>>> <mailto:Hw-list na list.hw.cz> <mailto:Hw-list na list.hw.cz>
>>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>>> _______________________________________________
>>>> HW-list mailing list - sponsored by www.HW.cz
>>>> <http://www.HW.cz> <http://www.HW.cz> <http://www.HW.cz>
>>>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>> <mailto:Hw-list na list.hw.cz> <mailto:Hw-list na list.hw.cz>
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>>>
>>>> _______________________________________________
>>>> HW-list mailing list - sponsored by www.HW.cz <http://www.HW.cz>
>>>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>> _______________________________________________
>>> HW-list mailing list - sponsored by www.HW.cz <http://www.HW.cz>
>>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>>
>> _______________________________________________
>> HW-list mailing list - sponsored by www.HW.cz <http://www.HW.cz>
>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>> http://list.hw.cz/mailman/listinfo/hw-list
>
>
> ------------------------------------------------------------------------
> Logo AVG <http://www.avg.com/internet-security>
>
> Tento e-mail byl zkontrolován na viry antivirovým softwarem AVG.
> www.avg.cz <http://www.avg.com/internet-security>
>
>
> <#m_5428768419251792362_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz <http://www.HW.cz>
> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
> http://list.hw.cz/mailman/listinfo/hw-list
>
>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20190827/c3b0661f/attachment.html>
Další informace o konferenci Hw-list