03-28-2025, 10:52 PM (This post was last modified: 03-29-2025, 02:51 AM by mikikg.)
Hmm, Pululice odavno imaju CAN interface, a ima i USB-Serial ...
Ovo mora da probam ... : )
UPDATE: F103 probao i NE MOGU da rade zajedno CAN i USB, sve ostale kombinacije mogu ali baš ta ne može, dele neke iste buffere, inače radi CAN : (
F401 nema CAN ...
Moraće F407 da se potera ili H755 ...
Probao sam stari dobri STM32F4-Discovery, uspeo sam USB da nateram da radi zajedno sa CAN, ali na CAN ne dobijam poruke, vidim neke "pokušaje" da napravi neki puls ali neće ništa dalje od toga da pošalje.
Probao sam F103 isto tako se ponašao CAN dok nisam PRESPOJIO fizički TX>RX, kako spojim tako izadje ceo CAN frame, odspojim više ga nema!? Ima neka detekcija ne znam, za F103?
Kod F407 ima još više nekih registra za CAN periferiju, probao NORMAL i LOOPBACK mode isto se ponaša, krene jedan puls i nema dalje, i to tako uradi mislim tačno 16 puta (neki buffer/mailbox?) i posle toga taj puls bude kraći i više ne pokušava dalje?
03-29-2025, 03:08 PM (This post was last modified: 03-29-2025, 03:16 PM by savan.)
Znas kad nemam predstavu kako treba da izgleda CAN protokol, juce kad sam pogledao osciloskopom sve sto vidim jeste konstantan 14.7kHz pwm , kad bi spojio na automobil bice ili ce se promeniti nesto ili ce ovaj interfejs ponovo na astal da se doradi. Bilo bi interesantno napraviti jedan stm32 usb loger na primer kada dodje vcds da se ovaj nadje izmedju can i automobila kao can bridge + dekoder u hex, tako da kad na vcds uradim neku komandu tako da stm32 preko usb posalje na PC u tekstuslnom obliku log, pa se samo sa strane pored dekodirane komande i pretvorene u hex rucno sa strane napise koja komanda je izvrsena na vcds, to bi bilo dobro imati.
03-29-2025, 04:17 PM (This post was last modified: 03-29-2025, 04:20 PM by savan.)
Eto ko bi rekao, evo bas gledam izlaze neki rezultati vezano za stm32f407 -> https://www.google.com/search?q=vcds+stm...+stm32f407 to su ti klonovi sa bas tim stm32 sto ti sad probavas... probaj ako mozes neki fw da pustis dali ce da radi vcds + loader, ja sam to nesto na kratko gledao pre godinu dana ali nedovoljno, nisam bio odlucan da ga kupim
03-29-2025, 04:48 PM (This post was last modified: 03-29-2025, 05:14 PM by mikikg.)
@savan
Za taj VCDS vidim da spominju STM32F429 (i F407) ali F429 je ovaj kontroler ako se sećaš, iz PTPD GPS time servera, jel' taj kontroler?
Imao sam još jednu takvu pločicu moram da po tražim, sigurno može da se usnimi FW za VCDS!
Taj je posebno dobar jer ima i Ethernet, cela pločica.
Najbolji u toj seriji je definitivno STM32H755, sve to isto sa Ethernet ali ima DVA procesorska jezgram jedno Cortex-M4F kao kod F407 koje "radi vrhunski" samo na još većem Clock i ima i još jedno Cortex-M7 koje tek "izuva" na 480MHz, tu se vrti FreeRTOS koji hendluje sve oko mrežnog saobraćaja, od WEB servera pa nadalje!
BTW: Kao podsetnik, ovo je jedna od implementacija STM32H755, primer šta sve taj kontroler može da radi!
Taj setup je nekada bio baziran na RPi2 i posebnom F407 ali kada se pojavio dual-core M7+M4F to je bilo definitivna kombinacija i eto završila u ormanu!
03-29-2025, 05:31 PM (This post was last modified: 03-29-2025, 05:49 PM by mikikg.)
@savan
Biće kontrolera i za "Miki4Trionic" i "La Makina Savanova" ...
Mogu ti pošaljem jednu pločicu pa se igraj i ubaci VCDS, eto privremeno dok ne poručiš sebi nešto slično ...
Za razvoj vidim da su kompletirali skoro sve periferije za ZephyrOS (FreeRTOS) za ovaj kontreoler i konkretno tu pločicu.
Tu je dobro što to RTOS pokriva sve oko Etherneta i internih procesa i dalja integracija sa ostalim stvarima je relativno prosta pa i za CAN. https://docs.zephyrproject.org/latest/bo...index.html
Ne smem za sada nista vise da pocinjem, jedva sam se oslobodio projekata koje sam okolo naokolo zapoceo, tu nema kraja!!! : ) Tako da sam se malo rasteretio projekata i hocu da se vratim na class D! : )
(03-29-2025, 02:54 PM)mikikg Wrote: Kod F407 ima još više nekih registra za CAN periferiju, probao NORMAL i LOOPBACK mode isto se ponaša, krene jedan puls i nema dalje, i to tako uradi mislim tačno 16 puta (neki buffer/mailbox?) i posle toga taj puls bude kraći i više ne pokušava dalje?
(03-29-2025, 02:54 PM)mikikg Wrote: Kod F407 ima još više nekih registra za CAN periferiju, probao NORMAL i LOOPBACK mode isto se ponaša, krene jedan puls i nema dalje, i to tako uradi mislim tačno 16 puta (neki buffer/mailbox?) i posle toga taj puls bude kraći i više ne pokušava dalje?
Da li neko ima predstavu šta se tu dešava?
Da li ti je terminiran bus?
Tada nije bio, nisam imao ni tranceiver IC.
Caka je u tome, posle video, što se prati i RX prilikom TX, "prati sam sebe šta šalje" pa arbitrira sa tim i gleda ACk-ove.
Treba tranceiver IC i terminiacija da bi to bilo ok, nemam trenutno ISO1050 ...
03-30-2025, 03:49 PM (This post was last modified: 03-30-2025, 03:59 PM by mikikg.)
Ovo je na CAN liniji sa povezanim ECU, ELM327, vide se frejmovi ali je poveća gužva, ne mogu da uhvatim relaciju kako koji upit radi sa ovim mojim parametrima i PID-ovima, ne mogu da nadjem u saobraćaju frejmove vezane za PID 0x53F i 0x541, postoje tu negde i vide se kako se menjaju ali ne znam tačno koji frejmovi ...
Vidi se i zadnji puls druge amplitude koji je ACK na tu komandu.
Za početak samo me nekoliko tih probranih tu vrednosti (PID) interesuje, ti TP senzori i naponi
Ovo je kratak log, mora da bude u relaciji sa ovim na screen-shot
Sledeće što mi treba u programo je još jedan Virtualn COM Port, malo mi jedan : )
Hoću da razdvojim kanal za podatke i kanal za komande jer ima dosta tu stvari koje mogu da se menjaju u Run-time a mešanje toga na istom kanalu zna da bude problematično, kada se to razdvoji to je onda prava stvar.
T8Suite
The T8Suite is an Open Source tool used to tune Trionic 8 based ECU’s.
With the T8Suite it is possible to tune how the software behaves to increase the performance of the car and adjust the software for hardware modifications, such a high performance injectors. The T8Suite also supports real-time view and can be used to predict the behavior of the tune through it’s Air-mass viewer.
System Requirements, the T8Suite currently supports the following interfaces:
Ovo je bitna stvar za ovu priču, vreme procesiranja CAN frejmova/poruka.
Ovde se vide frejmovi, dva ili više vezanih koji se pojavljuju nekom brzinom vidi se u gornjem delu svakih 13ms, nije popunjen kompletan "bandwith" mreže vidite procentulano koliko je zauzeto može da bude potpuno zauzeto u nekim situacijama.
Drugi kanal je LED/GPIO koji samo služi za odmeravanje vremena i to upali izlaz kada udje u ISR rutinu i ugasi kada izadje.
Vidite u donjem delu da se interapt aktivira nakon završetka prijema poruke (za zakašnjenem oko 20us dok stigne u tu tačku) i u toj ISR rutini koja radi neko bazično formatiranje i slanje na USB VCP je proveo svega 17us!
To praiktično znači da može da hendluje full-speed ODB saobraćaj jer mu je procesiranje/slanje kraće od vremena trajanja jednog frejma, radi u real-time i još ima rezerve za razne dodatne stvari.
Ovi drugi adapteri/kontroleri "posustaju" pri tim brzinama jer su im trasportni kanali dosta sporiji i onda moraju da rade "filtriranje" frejmova. Tačno postoje kao što vidite ID sa 0x110 0x120 koji su bazične "broadcast" informacije poput brzine, rpm i ostalo koje "slušaju razni uredjaji" ali recimo smetaju kod prenosa jer ne može kontroler sve da pošalje a dodatno i ne trebaju svima te informacije pa se onda to filtriranje radi na samo kontroleru i tako on šalje samo recimo >= 0x501 gde su dodatne/extended servisne infomracije.
Sve u svemu ovaj kontroler to radi u real-time sa/bez filtera i HVATA SVE frejmove maksimalnom brzinom i prosleduje na USB VCP.
I tu sad ima dodatna caka, Baud-rate od tog VCP, hehe, praktično NEMA jer ne radim sa fizičkom seriskom vezom, koliko god da postavite u seriskom terminalu IMA DA RADI, i radi sa bilo kojom brzinom!
Praktično znači da možete da prosledite neke "dodatne instrukcije" preko podešavanja Baud-rate tog interfejsa, recimo 115200 je standardni neki DEBUG-MOD, 14400 je recimo prošireni Debug-mode, recimo 4800 je "filtrirani CAN mode"!!! i tako dalje, može u letu da se menja! ;-)