Renesas verspricht, dass die Einarbeitung und der Umgang mit Ihren
Controller-Familien mittels Synergy recht einfach ist.
Wer hat mit Synergy Erfahrung und kann im Vergleich zu entsprechenden
Tools von anderen Herstellern etwas sagen?
Treten bei Synergy irgendwelche Kosten (z.B. für den C-Compiler) auf?
Hallo Rennie,
habe mich just gestern auf synergygallery.renesas.com registriert und
die IAR Embedded Workbench heruntergeladen und habe dann nach
Registrierung eine Lizenz ohne Limitierungen erhalten. Renesas bietet
dort auch eine Version ihrer eigenen Entwicklungsumgebung an. Jetzt muss
ich mir nur noch ein Eval-Board bestellen und dann kann die Evaluierung
losgehen... Um auf die Frage zu antworten, für Entwicklungsumgebung und
Compiler treten keine Kosten auf.
Du bezahlst das Ganze über die µCs die sind etwas teurer als andere.
Sind aber etwas schwierig zu vergleichen, jedenfalls beim S7 gibts
nichts so direkt Vergleichbares.
Jedenfalls: 640k Ram sollte für jeden reichen ;-)
Für kleinere Stückzahlen kann sich das durchaus lohnen, zudem braucht
man zum Testen ja nur ein SK-S7 für ca. 75€+USt, damit kann man schon
einiges machen.
Man sollte bei solchen Geschichten nicht die Nachteile vergessen:
Man nagelt seine Codebasis fest an eine bestimmten Version einer Library
fest. Die wird permanent inkompatibel geupdated, um das Projekt in 5
Jahren noch Compilieren zu können, muss man entweder die gesamte
Toolchain archiviert haben, oder alles Wochenlange nachziehen.
Hat die Entwicklungsumgebung Onlineaktivierung, kann man möglicherweise
ALLES wegwerfen, wenn sich der Hersteller entschließt, das zu droppen.
Dazu kommt:
Man versteht den Controller dahinter nicht wirklich, und wenn man Fehler
in der Lib finden muss, ist man angeschmiert. Support gibts dann auch
nicht, weil das kostet nix, muss man auch nicht supporten.
Negativbeispiele:
- STM32 Peripheral Lib : Wird nicht mehr gepflegt. Prächtig, erst ein
paar Jahre alt...
- PIC32 Peripheral Lib: Wurde wie eine heiße Kartoffel fallengelassen.
In beiden Fällen ist der damit erstellte Code fast wertlos, weil für ein
komplett neues Projekt zieht man sich keine obsolete Library mehr
hinein.
Natürlich kommt das auf die Projekte an, die man umsetzt. Sobald Sachen
wie USB und Ethernet ins Spiel kommt, kann sowas trotz der Nachteile
nötig werden.
Man kann sich das Lizenzmodell ja anschauen, obs für einen passt:
https://www.renesas.com/en-us/products/synergy/software.html
Vorteil ist, dass man halt alles aus einer Hand hat, mit einer Garantie
Bugs in bestimmter Zeit zu fixen.
Bei bestimmten Produkten gibts auch eine langjährige
Verfügbarkeitsgarantie, bisher hab ich da bei Renesas nur gute
Erfahrungen gemacht.
Klar, wenn sich die Teile gar nicht verkaufen wird auch irgendwann der
Support für das Softwareframework versiegen, bis dahin wird es aber
wahrscheinlich auf einem Stand sein das es sich noch ein paar Jahre lang
nutzen lässt.
Für mich war gerade der LAN/USB/Dateisystem-Kram interessant, da will
ich nicht lange dran basteln bis es läuft.
Die Hardwareskalierung passt auch gut auf das was ich vorwiegend mache.
josh schrieb:> Für mich war gerade der LAN/USB/Dateisystem-Kram interessant, da will> ich nicht lange dran basteln bis es läuft.
Ja, da ist das dann leider schon fremder Code nötig. Bei meiner
"privaten" PIC32-Lib ist genau das auch von Microchip - USB. Ich habs
selber versucht, bin zu dem Schluss gekommen, dass USB zu kompliziert
für mich ist.
Und genau da harkt es beim aktuellen Projekt:
Ich bräuchte gerade ein USB CDC + Mass Storage für einen PIC32MX470. Und
die ******* von Microchip wollen mich jetzt zu Harmony zwingen, PLIB
gibts nicht für das Device. Mir gefällt aber die ganze Umsetzung von
Harmony gar nicht.
Mein voll funktionsfähiger USB-CDC-Code aus einem anderen Projekt geht
nicht mit dem Compiler und dem Device. Nicht einmal das alte Projekt
compiliert noch mit dem aktuellen Compiler.
Die ganze andere Peripherie ist in 2 Stunden gelaufen (eigener Code),
und an dem blöden USB darf ich wieder tagelang herumpfiemeln. Jetzt halt
mit MSTACK.
STM32 : Selbes Spiel.
Daher meine Warnung.
Ich hab vor der Entscheidung für dieses Framework hauptsächlich mit den
Sachen verglichen die es von TI so gibt
(und irgendeinem LPC in der Leistungsklasse, der fiel aber schnell raus
weil selbst Leute vom Hersteller meinten
man solle sich den nicht antun ;-) ).
TI hatte zwar Verschiedenes im Programm, aber eben nicht so wirklich
durchgehend integriert.
Konkurrent für das RTOS wäre FreeRTOS gewesen, weil da schon im Team
Erfahrungen vorhanden waren.
Da gibts sogar eine für bestimmte Sicherheitsanforderungen
zertifizierungsfähige Variante, aber es stellte sich heraus dass das
dann doch kein FreeRTOS mehr ist.
Man hätte sich also doch etwas zusammenstöpseln und in bestimmten Fällen
wieder umbauen müssen.
Ganz abgesehen davon dass TI auch schon mal ne Prozessorserie einstampft
die gerade auf den Markt kam.
Nun gab es von Renesas bisher kein derartig integriertes Framework, man
konnte nur auf die Erfahrungen mit den bisherigen Toolchains und
Hardware zurückgreifen.
Aber da gabs nicht viel zu meckern. Bei der Hardware schon gar nicht,
die Peripherie ist reichhaltig und funktioniert, man hat es nicht mit
Errata-Bibeln zu tun.
Langfristige Verfügbarkeit ist auch bei bestimmten Typen gegeben, beim
S7 in nicht-BGA Gehäusen z.B. bis min. Mitte 2031:
https://www.renesas.com/en-eu/products/synergy/microcontrollers/s7-series.html
Auf Product List klicken.
Allerdings tut sich noch was bei der SSP-Software, früher Code läuft
nicht so ohne Weiteres auf der neuesten Version, da muss man schonmal in
ne Anleitung schauen und händisch ran.
Für einen Versionssprung mit vermutlich gravierenderen Änderungen meine
ich aber auch einen Konverter gesehen zu haben.
Bisher muss man auch beim erzeugen eines BSP für selbst designte
Hardware mit externen Scripten hantieren. Fand ich nicht so dolle, war
ein wenig fummelig mein Board als Auswahl in die IDE zu bekommen.
Das soll aber im nächsten Release integriert sein. Meine Hardware lief
dann aber auf Anhieb, Webserver, USB-Host und Device, SCIs und
(ich brauch allein 5 UARTs, der S7 hat bis zu 10 SCIs jeweils als SPI,
I2C oder UART zu verwenden), QSPI (in den Adressraum einblendbar),
CAN (sogar bis 3Mbit ohne Fehler über 2 galv. Trennungen, allerdings
über 2 CAN auf dem gleichen µC also identische Taktquelle)
War auch alles mit ein paar Mehrzeilern relativ einfach zu testen.
Cool ist das Konsolenframework, damit kann man sich ein DOS-Lookalike
basteln, genau das Richtige für eine Maschine mit 640k.
Kannste dann einfach umschalten zwischen LAN, USB-CDC oder UART.
Flashen über USB oder RS232 über eingebauten Bootloader geht
mittlerweile auch, hat etwas gedauert bis sie das in das PC-Flashtool
eingebaut hatten.
Der S7 hat soger einen teilintegrierten DCC für die eigene Corespannung.
Lief auch sofort obwohl sich das Handbuch zu dem Ding etwas ausschwieg
und die Eva-Boards nur den internen LDO verwenden.
Was das Risiko bei dem Paket auch etwas relativiert: Die Peripherie ist
zu grossen Teilen bewährter Kram aus den anderen Prozessorserien (oft
RX),
meist identisch sogar bis hin zu den Registeradressen.
Man kann im Framework auf allen Schichten arbeiten, bis runter direkt
zur Hardware, ist auch alles dokumentiert
(bis auf den Kryptokram, nur mit NDA). Da kann man sich also zur Not ne
Menge selber machen, abgucken oder wieder verwenden.
Nachteilig für Hobbyisten und Entwickler in Boutiquen die keinen FAE
neben sich sitzen haben ist die geringe Verbreitung
von Renesas-Kram in solchen Kreisen. Man hat eben nicht zig Foren wo
sich die Leute gegenseitig helfen und das Renesas Supportforum
ist nicht unbedingt so der Renner was eine rege Teilnahme angeht. Auch
andere Support-Quellen sind irgendwie fragmentiert auf diversen Seiten
und manchmal wird da auch was verschoben,
da muss man erst mal durchblicken. Aber man wird geholfen, nicht
unbedingt sehr vielstimmig, dafür aber meist kompetent.