mikrocontroller.net

Forum: Projekte & Code Neues, halbfertiges Elektronik-CAD-Programm


Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:
  • preview image for 1.PNG
    1.PNG
    17,2 KB, 191 Downloads
  • preview image for 2.PNG
    2.PNG
    4,35 KB, 196 Downloads
  • preview image for 2a.PNG
    2a.PNG
    10,5 KB, 143 Downloads
  • preview image for 2b.PNG
    2b.PNG
    15,8 KB, 159 Downloads
  • preview image for 2c.PNG
    2c.PNG
    30,1 KB, 174 Downloads
  • preview image for 2d.PNG
    2d.PNG
    14,8 KB, 143 Downloads
  • preview image for 2e.PNG
    2e.PNG
    8,53 KB, 117 Downloads
  • preview image for 3.PNG
    3.PNG
    24,4 KB, 155 Downloads
  • preview image for 4.PNG
    4.PNG
    18,5 KB, 203 Downloads

Bewertung
3 lesenswert
nicht lesenswert
Hallo W. S.,

das Programm horizon hat richtig Potential das neue Standardprogramm 
fuer die Privatanwender zu werden. Lukas kennt sich sowohl mit Hardware, 
PCB-Layout und mit Software aus. Deshalb habe ich da größtes Vertrauen, 
dass das Programm ein großer Wurf wird.


Ich gebe zu, dass der Einstieg eine gewisse Hürde darstellt. Deshalb 
habe ich mal eine Anleitung geschrieben und ein paar screenshots dazu 
gemacht. Siehe nachfolgender Text.

1.
Ein beliebiges Verzeichnis anlegen, z. B. C:\horizon.
Das Ganze natürlich außerhalb von C:\Program ..


2.
Windows Version herunterladen
https://github.com/carrotIndustries/horizon/wiki/G...   -> 
1.png
Uuterhalb "Windows"  auf "here" klicken."
Da landet man dann hier:  http://0x83.eu/horizon-zip/
Den zip-file in dem Verzeichnis C:\horizon speichern und dort auspacken 
- "unzip here".
Das legt dann ein Unterverzeichnis horizon an. In dem sind die 
exe-Dateien.
Damit sieht das so aus:
C:\horizon\horizon


3. Pool laden.
https://github.com/carrotIndustries/horizon/wiki/G...
"Get the pool"
"download zipped pool" klicken.
horizon-pool-master.zip in C:\horizon speichern.
Auspacken mit "unzip here".
Damit hat man ein Unterverzeihnis
C:\horizon\horizon-pool-master


4. Example Project laden
https://github.com/carrotIndustries/horizon/wiki/G...
Ziemlich unten auf der Webseite ist Example project
"test project" klicken
https://github.com/carrotIndustries/horizon-test-project
"Clone or download" klicken
"Download ZIP" klicken und in C:\horizon speichern.
horizon-test-project-master.zip auspacken mit "unzip here".
Damit hat man ein Unterverzeihnis mit Schaltplan und Layout.
C:\horizon\horizon-test-project-master


5. Programm starten
Mit dem Explorer nach C:\horizon\horizon gehen.
horizon-prj-mgr.exe starten -> 2.png
Links oben of das Symbol klicken und dann weiter mit "Preferences" -> 
2a.png
Ein neues Fenster geht auf -> Add pool klicken -> 2b.png
Jetzt die .json Datei aus dem Verzeichnis 
"C:\horizon\horizon-pool-master" waehlen -> 2c.png
OK klicken -> 2d.png
In dem kleinen Fenster "Preferences" auf x klicken."  -> 2e.png
Jetzt sind wir wieder im Fenster wie beim Start - 2e.png
"Open" klicken" um das Beispielprojekt zu waehlen,
C:\horizon\horizon-test-project-master\pic32-eth.hprj  -> 3.png
Zum Schluss "Open" klicken in dem Fenster -> 3.png
Jetzt sieht das Fenster so aus -> 4.png
Hier kann man jetzt den Schaltplan(Top Schematic) und das Layout(Board) 
laden.
Den 3D View kann man aus dem PCB-Layout starten.

Gruß,
Helmut

: Bearbeitet durch User
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
7 lesenswert
nicht lesenswert
W.S. schrieb:
> So mein Freund

Meinst du wirklich, dass du dir mit deinem Geblubber „Freunde“ machst?

Wenn du dir den Thread mal ansiehst, dann wirst du feststellen, dass
es hinreichend viele Leute gibt, die selbst in dieser Phase durchaus
in der Lage sind, das Dingens zum Laufen zu bekommen.  Dass es noch
lange nicht im "Plug&Play"-Stadium ist, nun, das steht eigentlich
schon in der Threadüberschrift drin.  Wenn du mit dieser
Erwartungshaltung hergekommen bist: geh' einfach wieder.  Komm dann
wieder, wenn Lukas es nicht mehr als "halbfertig" tituliert sondern
wenigstens als "Beta".

Wenn dir ernsthaft daran gelegen ist, hier was zu testen und auch
sinnvolles Feedback zu geben, dann wirst du ganz sicher auch die
derzeitige Einstiegshürde schaffen.  Viele andere haben es vor dir
geschafft.  Wenn du dich im Thread umsiehst, wirst du feststellen,
dass Lukas konstruktiver Kritik gegenüber durchaus sehr aufgeschlossen
ist.  „ist eingebaut“, „ist geändert“, „klingt sinnvoll“ kannst du hier
an vielen Stellen lesen.  Auf Kritik der Art „du bist völlig auf dem
Holzweg“ wird er jedoch sehr sicher verzichten können, da brauchst du
dir also auch nicht erst die Mühe machen, sowas aufzuschreiben.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sowas wie ne Batch-Datei wäre schon schön. Nicht das ich es jetzt in 
diesem Stadium persönlich installieren würde. Nur ein Vorschlag.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Sowas wie ne Batch-Datei wäre schon schön.

Den Pool muss man nur einmal runterladen, danach braucht man sich
darum nicht mehr kümmern.

Dass das derzeitige Pool-Konzept nur ein Anfang ist, hatte Lukas ja
schon geschrieben.  An der Stelle wird sich also ohnehin nochmal was
ändern.

So schlecht dokumentiert hat er das alles gar nicht, steht halt in
seinem Wiki.  Da habe ich schon viel mehr Software erlebt, bei denen
die Doku nur aus .cpp-Dateien bestand.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
-4 lesenswert
nicht lesenswert
Sicher, nur du bist halt damit den ganzen Tag beschäftigt. Morgens klebt 
schon diverses C++ an der Kaffeetasse.
Andere wollen das Programm nur einsetzen.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
3 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Andere wollen das Programm nur einsetzen.

Naja, siehe Beitrag drüber: so weit ist es einfach noch nicht.  Im 
Moment
ist das praktisch nur was für Leute, die da bei der Entwicklung auch
(zumindest passiv) mitmachen möchten.  Das Teil wirft mit diversen
Meldungen um sich, und es kann hie und da schon auch mal 'ne unhandled
exception geben.  Wenn man das berichtet, stellt Lukas es ab, aber
wertvolle Arbeit würde ich damit nur mit ganz viel zwischendrin
Speichern machen wollen im derzeitigen Stadium.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Sicher, nur du bist halt damit den ganzen Tag beschäftigt. Morgens
> klebt
> schon diverses C++ an der Kaffeetasse.
> Andere wollen das Programm nur einsetzen.

Hallo Abdul K.,
Man muss nicht selber kompilieren, wenn man einen WIN-PC hat.
Lukas stellt sehr aktuelle exe-Dateien für Windows bereit. Das ist schon 
mal ein Superservice.

https://github.com/carrotIndustries/horizon/wiki/G...
Get Horizon
Windows
"here"

PS: Darauf musste man bei Gnu-Octave z. B. zehn Jahre warten.




Achtung, nur weiterlesen, wenn man selber unter WIN kompilieren will.

Die "build"-Umgebung in Windows lässt sich leichter installieren als die 
für Linux. Lukas hat das genau auf seiner Webseite beschrieben. 
Zusätzlich habe ich hier in einer meiner Antworten die notwendigen 
Kommandos zum erzeugen eigener WIN-exe zusammengefasst.


Anleitung zum Kompilieren der WIN-exe auf einem WIN-PC.

Einmalig mysys2 installieren. Anleitung siehe Webseite von Lukas.
https://github.com/carrotIndustries/horizon/wiki/B...



--- WIN version erzeugen
In WIN mysys2 starten. Ein Terminal geht auf. In dem Terminal wird dann
gearbeitet.


#Im home/user Verzeichnis von mysys2 ein Verzeichnis anlegen.

$ mkdir horizonxyz


#Vom home-Verzeichnis in dieses Verzeichns wechseln.

$ cd horizonxyz


#Die Source-Files herunterladen.

$ git clone http://github.com/carrotIndustries/horizon


#In das von clone angelegte Unterverzeichnis horizon wechseln.

$ cd horizon


#Kompilieren mit allen logischen cores des Prozessors damit es schnell
geht. Beispiel CPU mit 4 cores + hyperthreading -> -j 8.

$ make -j 8


#Die WIN-Version im Ordner "dist" erzeugen.

$ ./make_bindist.sh


Im Unter-Ordner "dist" ist dann ein Verzeichnis horizon. Das ist das
Programmverzeichnis für die Windows-Version.

: Bearbeitet durch User
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie starte ich einen neuen Pool?  Gibt's dafür ein Tool?

Wenn ich im Pool ein Symbol editiere (wird vermutlich bei anderen
Elementen nicht anders sein), hätte ich außer "Save" auch gern ein
"Save As …", damit ich ausgehend von einem vorhandenen Element ein
neues ableiten kann.

Autor: Possetitjel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:

> Wenn du dich im Thread umsiehst, wirst du feststellen,
> dass Lukas konstruktiver Kritik gegenüber durchaus sehr
> aufgeschlossen ist.

Ja, durchaus.

> Auf Kritik der Art „du bist völlig auf dem Holzweg“ wird
> er jedoch sehr sicher verzichten können, da brauchst du dir
> also auch nicht erst die Mühe machen, sowas aufzuschreiben.

Das ist sicher auch richtig -- das heißt aber nicht, dass
diese Kritik zwingenderweise sachlich falsch ist.

Ich hätte es auch wichtiger gefunden, vorhandene Software
besser und interoperabler zu machen, als ein weiteres
Komplettpaket zu schaffen -- aber es lohnt nicht, das
dauernd wieder aufzuwärmen.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Ah Abstürze. Achgott, PCs eben.

Ich hatte ja oben mal was über RUN-EDS anno 1992 geschrieben. Also 
damals ist diese Software so alle 2h abgestürzt. Und es gab einen 
speziellen abundzu Fehler, wo das Projekt irreparabel zerstört wurde. 
Das heißt, es wurde die Datei zerschreddert ohne sofortige Auswirkung. 
Irgendwann hat sich dieser Fehler dann offenbart und alles dazwischen an 
Arbeit reingesteckte, war damit futsch. Da nützt also auch kein Backup!
Das MacOS ging auch so 2-mal pro Tag hops... Auf einem 19" Monitor 
konnte man beim Scrollen zugucken. So war das damals. Nur mal so erwähnt 
für die jungen Hüpfer.
Die letzten Versionen RUN-EDS von 2001 waren recht stabil und hatten 
kaum Fehler. Das MacOS lief da bereits rockstabil.

Und nochwas zu Bartels Autorouter: 2001 hatten wir die letzten 
Vergleichstest zum Specctre-Router gemacht. Der war besser als der 
Bartels. Und lief schneller auf billigerer Hardware, da Windoof-PC.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Possetitjel schrieb:

> Ich hätte es auch wichtiger gefunden, vorhandene Software
> besser und interoperabler zu machen, als ein weiteres
> Komplettpaket zu schaffen

Mag sein.  Andererseits – wenn Lukas für sich erkannt hat, dass die
vorhandene Software einfach mal eine „verfahrene Kiste“ ist (was ja
letztlich auch W.S. für Kicad immer mal wieder behauptet, und was
Stefan Salewski für gEDA so konstatiert hat), dann kann die Auflösung
„Fang von vorn an und mach es besser“ durchaus die richtige sein.

Kommt hinzu, dass Lukas es offenbar vom Arbeitsumfang tatsächlich
in der Lage ist zu stemmen.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:
> hätte ich außer "Save" auch gern ein "Save As …"

Da fällt mir gerade auf: Alle Objekte im Pool Manager haben auch einen
"Create"-Button – nur Symbole nicht.  Irgendwie muss Lukas ja seine
Symbole wohl auch angelegt haben.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Und nochwas zu Bartels Autorouter: 2001 hatten wir die letzten
> Vergleichstest zum Specctre-Router gemacht. Der war besser als der
> Bartels. Und lief schneller auf billigerer Hardware, da Windoof-PC.

Wobei ich BAE seit 2001 unter FreeBSD benutze (die Linux-Version),
ist also nicht so, dass sie originär Mac-Edelhardware benötigt hätten. 
;)

Zu anderen Autoroutern kann ich nicht so viel sagen.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Das besondere am Mac war die Software, nicht die Hardware. Naja, die 
Kombination in manchen Bereichen, z.B. die Maus kombiniert mit 
vollgrafischer Oberfläche.
Allerdings hatten die ersten Macs schon echte EMV-Designs. Das habe ich 
bei den Windows-Kisten bzw. DOS IBM-PC ziemlich vermißt.

Ok, falscher Thread :-)

Autor: Max G. (l0wside) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Deshalb habe ich mal eine Anleitung geschrieben und ein paar screenshots
> dazu gemacht. Siehe nachfolgender Text.

Cool, danke. Damit habe ich es bei mir fix zum Laufen bekommen - bin ja 
neugierig und bewundere, was Lukas treibt.
Aur meiner Büchse (i7-3770, 4GB RAM, Win 7, SSD) braucht es gefühlte 10 
Sekunden für den Start. Anschließend sieht es dann etwas seltam aus - 
ich sehe zwar alle Bedienelemente, aber weder Schaltplan noch Layout.

Grafikkarte ist eine Radeon HD3600 - ziemlich alte Gurke, lt. Wikpedia 
kann sie aber OpenGL 3.3. Windows behauptet, der Treiber sei aktuell. 
Das prüfe ich aber erst morgen, es ist Zeit fürs Bett.

Fehlermeldungen wirft Horizon (2017-11-23-1801, das nenne ich mal 
bleeding edge) keine. Gibt es irgendwo ein Logfile?

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max G. schrieb:
> Grafikkarte ist eine Radeon HD3600 - ziemlich alte Gurke, lt. Wikpedia
> kann sie aber OpenGL 3.3. Windows behauptet, der Treiber sei aktuell.
> Das prüfe ich aber erst morgen, es ist Zeit fürs Bett.
>

Ich habe gerade mal diese Version "horizon-2017-11-23-1801.zip" kurz 
gestartet. Die läuft einwandfrei auf einem PC mit neuerer Grafikkarte 
(GTX950). Nach  meiner Erfahrung geht es ab Nvidia GTX560 und neuer 
problemlos. Bei einer Nvidia GTX260 geht fast alles bis auf das Füllen 
der Planes. Auf Rechnern mit Intel-CPU-Grafik läuft horizon auch.
Das kann nur also nur an deiner Grafikkarte/Grafikkarten-Treiber liegen. 
Da hilft wohl nur eine neuere Grafikkarte.

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Da fällt mir gerade auf: Alle Objekte im Pool Manager haben auch einen
> "Create"-Button – nur Symbole nicht.

Der ist bei den Units, da zu jedem Symbol eine Unit gehört. Symbole sind 
nicht die Primärquelle für Pins, dazu hat's die Units. Für bessere 
discoverability hab ich jetzt auch noch einen Knopf bei den Symbols 
eingebaut.

Jörg W. schrieb:
> Wie starte ich einen neuen Pool?  Gibt's dafür ein Tool?

Nein, da Leute dazu motiviert werden sollen, den globalen Pool zu 
benutzen. Wer seinen eignen Pool (z.B. in einem Unternehmen) haben will, 
kopiert sich am einfachsten den globalen Pool, löscht alles was nicht 
gefällt und ändert die UUID in der pool.json

> Wenn ich im Pool ein Symbol editiere (wird vermutlich bei anderen
> Elementen nicht anders sein), hätte ich außer "Save" auch gern ein
> "Save As …", damit ich ausgehend von einem vorhandenen Element ein
> neues ableiten kann.

Okay, kommt bald, wenn auch wohl als "Duplicate"-Knopf im Pool-Manager.

Falls sich wer wundert, weshalb so offensichtlich notwendige Features 
fehlen: Als Entwickler hat man leider eine etwas verzerrte Sicht auf die 
Dinge und hat 1000 Einfälle, was man als nächstes bauen könnte. Sowas 
wie Duplicate war auch mal dabei. Meistens gewinnt dann aber der 
Spieltrieb und sowas die 3D-Vorschau kommt dabei raus oder man kümmert 
sich um Details wie unglückliche Auswahl-Boxen. Solche wünsche von 
anderen Anwendern/Testern helfen mir ungemein Ideen zu priorisieren. 
Danke an alle!

Max G. schrieb:
> Aur meiner Büchse (i7-3770, 4GB RAM, Win 7, SSD) braucht es gefühlte 10
> Sekunden für den Start. Anschließend sieht es dann etwas seltam aus -
> ich sehe zwar alle Bedienelemente, aber weder Schaltplan noch Layout.

Kannst du mal einen Screenshot von dem Malheur machen?

Tester schrieb:
> Hast du eigentlich (oder wer anders) schon mal eine Platine fertigen
> lassen? Spiele mit dem Gedanken, mal mein Projekt bei Elecrow fertigen
> zu lassen um zu sehen was raus kommt ;-)

Nicht dass ich wüsste. Wenn du magst nur zu, aber sei nicht böse mit 
mir, wenn's nichts wird ;)

> Was anderes: Zu Kontrollzwecken wäre auch eine (konfigurierbare)
> Druckerausgabe nicht schlecht.

So wie ich jetzt drüber nachdenke eigentlich recht wenig Aufwand mit 
cairo...

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max G. schrieb:
> Fehlermeldungen wirft Horizon (2017-11-23-1801, das nenne ich mal
> bleeding edge) keine.

Die werden auf der Console rausgeworfen, also std::cerr << "irgendwas".

Müsstest du unter Windows wohl direkt aus einem cmd.exe heraus
starten.

Fehlermeldungen kommen hier auch nicht sooo viele (wenn ich nicht
gerade mal in eine Exception trete ;), aber es gibt massenhaft
Debugausgaben, bis hin zu SQL statements, die beim Ausfüllen des
Suchfeldes angezeigt werden.  Irgendwas solltest du da also schon
sehen. :)
SELECT parts.uuid, parts.MPN, parts.manufacturer, packages.name, GROUP_CONCAT(tags.tag, ' '), parts.filename FROM parts LEFT JOIN tags ON tags.uuid = parts.uuid LEFT JOIN packages ON packages.uuid = parts.package WHERE parts.MPN LIKE ? AND parts.manufacturer LIKE ? AND (parts.entity=? or ?) GROUP BY parts.uuid  ORDER BY parts.MPN COLLATE naturalCompare ASC
SELECT parts.uuid, parts.MPN, parts.manufacturer, packages.name, GROUP_CONCAT(tags.tag, ' '), parts.filename FROM parts LEFT JOIN tags ON tags.uuid = parts.uuid LEFT JOIN packages ON packages.uuid = parts.package WHERE parts.MPN LIKE ? AND parts.manufacturer LIKE ? AND (parts.entity=? or ?) GROUP BY parts.uuid  ORDER BY parts.MPN COLLATE naturalCompare ASC
create proc
exit stat 0

Autor: Bernd Wiebus (berndwiebus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch ein Nachtrag:

Bernd W. schrieb:
> Nachtrag:

>>> Ohne das ./ sucht die Shell in $PATH und nicht im aktuellen Verzeichnis.
>>> Ich hab's im Wiki mal angepasst.
>>
>> <vor stirn patsch> Das wird es vermutlich gewesen sein. Irgendwie war
>> ich wohl zu unkonzentriert.
>>
>> Ich werde es mal probieren, wenn ich heute Nachmittag wieder zu Hause
>> bin.
>
> Das war es leider nicht. Aber da sind noch andere merkwürdige Dinge.
> Ich such mal weiter.

Schande über mich. Das war ich selber. Ein Klassiker, per remote auf dem 
falschen Rechner und das auch nicht mitkriegen. :(

Nun startet das Programm, bricht aber mit einer Fehlermeldung ab:


(horizon-prj-mgr:1424): glibmm-ERROR **:
unhandled exception (type std::exception) in signal handler:
what: unable to open database file

Trace/Breakpoint ausgelöst

Ich probier mal ein pull, ob es da was neues gibt.
So, neue Daten, neuer build, aber gleiches Ergebnis:

(horizon-prj-mgr:3274): glibmm-ERROR **:
unhandled exception (type std::exception) in signal handler:
what: unable to open database file

Trace/Breakpoint ausgelöst

Wenn mit der "database" der pool gemeint ist, den habe ich auch auf der 
Platte. Nur wie teile ich horizon mit, wo der ist?

Bisher konnte ich ja noch nicht allzu viel an Ergebnis sehen, aber 
alleine die Menge an Sourcecode: "Hut ab"

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de



Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Bernd, ließ doch mal meine vorletzte Message - die mit den vielen 
Screenshots. Da steht drin wie man den Pool hinzufügt. Das muss man nur 
einmal machen.
Helmut

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd W. schrieb:
> Nur wie teile ich horizon mit, wo der ist?

Mit dem Pool Manager.

Wundert mich nur, dass er ohne irgendeinen registrierten Pool überhaupt
startet. Das hat er bei mir abgelehnt.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd W. schrieb:
> (horizon-prj-mgr:1424): glibmm-ERROR **:
> unhandled exception (type std::exception) in signal handler:
> what: unable to open database file

Ist repariert, das Problem war folgendes: Zum Speichern der 
Fenstergrößen benutze ich auch SQLite und das erwartet logischerweise, 
dass es das Verzeichnis, in dem die Datenbank liegt schon existiert. Bis 
jetzt ist das nur keinem aufgefallen, da alle das Verzeichnis schon 
hatten.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Man brauch SQlite zur Speicherung von 4 32Bit Zahlen? Da würde mich mal 
interessieren, wie man ohne Starten des Programms die Koordinaten eines 
Fensters per Hand ändert. Wie aufwändig ist das? Was muß man tun? Rein 
interessehalber. Normalerweise ist das doch in einer ini-Datei oder 
schlimmer  noch in der Registry.

Autor: Possetitjel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abdul K. schrieb:

> Man brauch SQlite zur Speicherung von 4 32Bit Zahlen?

Du brauchst zwei Mal 32bit für Fenstergrößen? Respekt.
Den Monitor hätte ich auch gerne...

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe keine Ahnung wie MS das vorgibt. Vielleicht sinds auch nur 
16bitter.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Man brauch SQlite zur Speicherung von 4 32Bit Zahlen?
Macht Dinge einfacher: Je nachdem, was der Anwender macht, können ja 
auch mehrere Fenster nahezu zeitgleich geschlossen werden und dereb 
Größen müssen gespeichert werden. Bei einer ini/json-Datei hätte ich 
über Locking nachdenken müssen, damit das nicht hinfällt, bei SQLite 
haben schon andere mit mehr Ahnung von der Materie drüber nachgedacht. 
Der Overhead meinerseits von SQLite verglichen mit einer Datei geht auch 
gegen null.

> Da würde mich mal
> interessieren, wie man ohne Starten des Programms die Koordinaten eines
> Fensters per Hand ändert. Wie aufwändig ist das? Was muß man tun?
$ sqlite3 .config/horizon/window_state.db 
SQLite version 3.21.0 2017-10-24 18:55:49
Enter ".help" for usage hints.
sqlite> SELECT * FROM window_state;
prj-mgr|1914|871|1|38|0
pool-editor-win-27|762|600|579|286|0
imp-symbol|1914|871|1|38|0
pool-mgr|1914|871|1|38|0

sqlite> UPDATE window_state SET width=100 WHERE window='prj-mgr';

sqlite> SELECT * FROM window_state;
prj-mgr|100|871|1|38|0
pool-editor-win-27|762|600|579|286|0
imp-symbol|1914|871|1|38|0
pool-mgr|1914|871|1|38|0

Alles kein Hexenwerk.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> bei SQLite haben schon andere mit mehr Ahnung von der Materie drüber
> nachgedacht

Genau darin sehe ich auch den Vorteil.  SQlite ist einfach stabile
Technik, die man nur noch benutzen muss.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Interessant. Ich sehe nur das Problem, wie man das dann repariert wenn 
was kaputt ist. Bei einer Textdatei ist das oft gut machbar. XML wird 
schon schwieriger.
Gerade eben habe ich einen Vista-Rechner, der partout zu einen 
bestimmten WLAN AP keine Verbindung aufbauen will. Mann kann die Liste 
der aktiven APs aufrufen und einen auswählen, und das wars dann auch. 
Keine Fehlemeldung und der alte AP weiterhin aktiv. Andere Platte rein, 
geht. Tja, also config defekt. Google bedient. Konfigurationsdateien 
gibts pro AP. Diese habe ich auch gefunden. Inhalt unlesbar. 
Dekodiermaske gibts nicht. Bei Windoof alles geheim. In der Registry das 
gleiche Spiel. Zig Einträge, aber völlig unsichtbar was wo im Bereich 
WLAN verknüpft ist. DAS IST EINFACH EIN SCHROTTKONZEPT!
Das Ende vom Lied: Werde Vista platt machen und Win7 komplett frisch 
installieren. Nicht nur wegen dem AP, sondern weil eh noch andere Sachen 
Probleme machen.
Selbst der Ersatz der Konfigurationsdatei für diesen speziellen AP von 
der anderen lauffähigen Platte hat nicht funktioniert.

Autor: Ulrich B. (ulrich_b665)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich hab mal versucht Horizon unter Solus Linux zu kompilieren, und es 
funktioniert erfreulicherweise out-of-the-box :)


Tools installieren:
$ sudo eopkg install git
$ sudo eopkg install -c system.devel
$ sudo eopkg install libgtkmm-3-devel cairomm-devel librsvg-devel util-linux-devel yaml-cpp-devel sqlite3-devel libboost-devel zeromq-devel cppzmq glm binutils-gold


Source herunterladen und Build starten:
$ mkdir -p ~/tmp/horizon
$ cd ~/tmp/horizon
$ git clone https://github.com/carrotIndustries/horizon.git 
$ make

Pool und Testprojekt herunterladen:
$ cd ~/tmp
$ git clone https://github.com/carrotIndustries/horizon-pool.git
$ git clone https://github.com/carrotIndustries/horizon-test-project.git

Starten:
$ ~/tmp/horizon/horizon-prj-mgr 
$ ~/tmp/horizon/horizon-pool-mgr 


Grüße, Ulrich

Autor: Klaus Rotter (klausro)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hätte noch eine Anregung: Wenn man ein Objekt anwählt, kann man ja 
die Attribute editieren. Wählt man z.B. mehrere Leiterbahnsegmente aus 
und möchte man bei allen z.B. die Breite ändern, muss man alle durch 
klicken. Es wäre schön, wenn man z.B. eine Checkbox mit "Apply to all" 
hätte, so dass nach dem Anwählen der Checkbox die Änderungen für alle 
Segmente simultan angewendet werden würde.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus R. schrieb:
> Es wäre schön, wenn man z.B. eine Checkbox mit "Apply to all"
> hätte, so dass nach dem Anwählen der Checkbox die Änderungen für alle
> Segmente simultan angewendet werden würde.

Das gibt es doch schon, das macht der Knopf mit dem Haken. Ich hab' dem 
gerade mal noch einen Tooltip spendiert.

Autor: Klaus Rotter (klausro)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Aehm... der "Knopf mit Haken"? Die Haken "tun" bei mir nicht viel. Egal 
was ich anklicke, es ändert sich nur das als erstes angewähltes Segment.

Edit: Ok, hab's kapiert. Erst die Breite für eines ändern, danach den 
Haken anwählen. Jetzt wird es für alle Angewählten übernommen.

: Bearbeitet durch User
Autor: Max G. (l0wside) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Kannst du mal einen Screenshot von dem Malheur machen?

Gerne. Sieht originell aus, die Kontextmenüs gehen auch. Man sieht nur 
nichts.

Auf der CMD-Konsole kommt nichts an, ist aber unter Windows typisch. Die 
Ausgabe von GUI-Programmen landet irgendwo im Nirvana und ist nur per 
Debugger sichtbar.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max G. schrieb:
> Gerne. Sieht originell aus, die Kontextmenüs gehen auch. Man sieht nur
> nichts.

Seltsam ist ebenfalls, dass an der Stelle, an der normalerweise der 
Grid-Multiplikator steht, nichts steht. Um Ausagabe auf der Konsole zu 
bekommen, musst du den horizon-prj-mgr.exe aus einer mingw-Konsole 
starten.

Wenn du dir eh msys2 installierst, installier' dort drin mal gtk:
pacman -S mingw-w64-x86_64-gtk3

und starte die gtk3-demo und öffne die OpenGL-Demo. Was passiert da?

Autor: W.S. (Gast)
Datum:

Bewertung
-6 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Meinst du wirklich, dass du dir mit deinem Geblubber „Freunde“ machst?
>
> Wenn du dir den Thread mal ansiehst, dann wirst du feststellen, dass
> es hinreichend viele Leute gibt, die selbst in dieser Phase durchaus
> in der Lage sind, das Dingens zum Laufen zu bekommen.

Ach Jörg, ich hab mich an dein unsachliches Geblubber und deine 
persönlichen Anfeindungen mittlerweile gewöhnt, so daß ich diese zumeist 
einfach überlese. Wenn was nicht funktioniert, dann sag ich das auch - 
ob dir das schmeckt oder nicht, ist deine Sache.

Ich erwarte ganz schlicht und einfach, daß sowas benutzbar ist, ohne daß 
man erst Sherlock Holmes spielen muß. Ich werde also eben NICHT nach 
irgendwelchen fehlenden Teilen im Internet herumsuchen. Punkt.


Jörg W. schrieb:
> Wie starte ich einen neuen Pool?  Gibt's dafür ein Tool?

Ach?
Sieh mal einer an.
Ein paar Beiträge nach deinem obigen Einwurf kommst du auf das gleiche 
Problem, ja?

Ich sag dir eins: Es kommt eben doch auf den vor jeglicher 
Programmiererei gefaßten, formulierten und gründlich überprüften Entwurf 
an.

W.S.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jetzt laß die Karottenindustrie einfach mal machen. In einem Jahr ist 
das bestimmt brauchbar. Ich habe jedenfalls vollsten Respekt!

Danach kann Lukas mit dem Transverter TINA nach LTspice Projektfile 
weitermachen :-)

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
4 lesenswert
nicht lesenswert
W.S. schrieb:
> Ein paar Beiträge nach deinem obigen Einwurf kommst du auf das gleiche
> Problem, ja?

Nein, ein völlig anderes.  Wie du Lukas' Antwort entnehmen kannst,
gibt es das, wonach ich gefragt habe, derzeit schlicht noch nicht.
Das liegt aber daran, dass er den zentralen Pool im Moment als
Designentscheidung erst einmal so vorgesehen hat.

Damit kann ich leben, Würgaround hat er genannt, einen Script, um
einen neuen Pool zu erzeugen, könnte ich mir zur Not sicher auch
selbst zimmern.

> Wenn was nicht funktioniert, dann sag ich das auch

Du kommst aber mit der Anspruchshaltung eines „Endkunden“ an und
übersiehst geflissentlich, dass sich Horizon derzeit überhaupt nicht
an solche richtet.  Das hat Lukas in diesem Thread von vornherein klar
gemacht, und das steht im Prinzip bereits in der Überschrift.

Die Schritte, wie man es zum Laufen bekommt, sind beschrieben.  Wenn
dir das zu umständlich ist, dann ist das Programm im derzeitigen
Zustand einfach mal nichts für dich, aber dann musst du doch auch nicht
ständig wieder hier aufschlagen und allen, die es gar nicht hören
wollen verkünden, wie schlecht es doch sei.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
@Lukas, mal was ganz Nichttechnisches: du solltest deinen Dateien
irgendeine Art von Copyright-Header voranstellen.  Ohne einen solchen
darf man sie ganz formal eigentlich nicht weiterverbreiten.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Jörg W. schrieb:
>> Da fällt mir gerade auf: Alle Objekte im Pool Manager haben auch einen
>> "Create"-Button – nur Symbole nicht.
>
> Der ist bei den Units, da zu jedem Symbol eine Unit gehört. Symbole sind
> nicht die Primärquelle für Pins, dazu hat's die Units.

Hmm, das hatte ich so noch nicht verstanden.

Ich hatte gedacht, dass die Units nur das Bindeglied sind, man aber
ein und dasselbe Symbol in verschiedenen Units benutzen könnte.

> Für bessere
> discoverability hab ich jetzt auch noch einen Knopf bei den Symbols
> eingebaut.

OK, danke.  Ich würde die Buttons allerdings tauschen (siehe Patch),
denn in allen anderen Tabs ist auch erst "Create", danach "Edit".

Autor: Sheeva Plug (sheevaplug)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Max G. schrieb:
>> Fehlermeldungen [...]
>
> Die werden auf der Console rausgeworfen, also std::cerr << "irgendwas".

Wären da nicht std::clog oder std::wclog sinnvoller?

Autor: Mampf F. (mampf) Benutzerseite
Datum:

Bewertung
2 lesenswert
nicht lesenswert
W.S. schrieb:
> Ich erwarte ganz schlicht und einfach, daß sowas benutzbar ist, ohne daß
> man erst Sherlock Holmes spielen muß. Ich werde also eben NICHT nach
> irgendwelchen fehlenden Teilen im Internet herumsuchen. Punkt.

Auf der Git-Seite war eine Anleitug, wo man das pool.json herbekommt ... 
rtfm

Außerdem ist die Software noch nicht mal Beta ...

Seufz

: Bearbeitet durch User
Beitrag #5222891 wurde von einem Moderator gelöscht.
Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

./horizon-pool-mgr.exe

Ab dem zweiten Doppelklick auf eine "Bauteilezeile" kommen permanent 
diese Debug-Meldungen.

Sind diese Debug-Meldungen im mysys2-Terminal OK oder ist das ein 
Problem?

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Sind diese Debug-Meldungen im mysys2-Terminal OK oder ist das ein
> Problem?

Nichts tragisches, Gtk ist wohl über irgendwas mit der Pad-Box rechts 
nicht ganz glücklich. Was genau, mag sich mir auch nicht so recht 
erschließen.

Lukas K. schrieb:
> Okay, kommt bald, wenn auch wohl als "Duplicate"-Knopf im Pool-Manager.
Sind drin: Für Entities und Parts fallen die Dialoge ein wenig komplexer 
als vielleicht erwartet aus, da ausgewählt werden kann, ob referenzierte 
Objekte auch kopiert werden, oder die bereits vorhandenen referenziert 
werden sollen.

Lukas K. schrieb:
> Wie oben geschrieben, soll
> was einmal im Pool ist eigentlich drin bleiben, daher kann der Pool
> Manager nichts löschen.
Hat sich herausgestellt, dass es zum experimentieren doch recht 
praktisch ist, Dinge einfach löschen zu können: Gibt's nun im 
Kontextmenü.

: Bearbeitet durch User
Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,
ich hätte gerne die Möglichkeit im Parts-Editor das "Package" zu ändern,
z. B. c0603 zu c0603a, weil die Anfoderungen an die Pads(pad stack) 
nicht bei allen die gleichen sind.
Mal möchte der PCB-Hersteller die "solder mask" etwas anders (größer) 
oder der Platinenbestücker(oder auch ich) möchte etwas besonderes an der 
"paste-Mask" oder kleinere oder größere Pads.
Kannst du das eiunbauen?
Gruß Helmut

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Kannst du das eiunbauen?

Das gibt es schon in anderer Form: Im Board gibt es diese Einstellungen 
bei der Regel "Parameters". Mit Klick auf "Apply All" werden die 
Einstellungen dann auf alle Bauteile auf dem Board angewandt.


Helmut S. schrieb:
> ich hätte gerne die Möglichkeit im Parts-Editor das "Package" zu ändern,
> z. B. c0603 zu c0603a, weil die Anfoderungen an die Pads(pad stack)
> nicht bei allen die gleichen sind.

Das Package ist nur bei Parts änderbar, die nicht von anderen Parts 
erben, da Package und Pin-Pad Zuordnung geerbt werden.

: Bearbeitet durch User
Autor: W.S. (Gast)
Datum:

Bewertung
-3 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Du kommst aber mit der Anspruchshaltung eines „Endkunden“ an und
> übersiehst geflissentlich, dass sich Horizon derzeit überhaupt nicht
> an solche richtet.  Das hat Lukas in diesem Thread von vornherein klar
> gemacht, und das steht im Prinzip bereits in der Überschrift.

Das ist mir alles von Anfang an klar gewesen - und es geht auch 
überhaupt nicht um mich selber.

Aber sag mal selbst, was aus einem Projekt werden soll, wenn (wie du 
schreibst) Lukas sich mit seinem Projekt DERZEIT garnicht an Endkunden 
richtet.

Da passiert nämlich ganz leicht genau dasselbe, was ich schon bei Kicad 
erleben mußte. Nämlich, daß auf weite Strecke das ganze Projekt nur aus 
Sicht seiner Programmierer vorangetrieben wurde und daß eben dabei an 
den Endkunden vorbei programmiert worden ist.

Je früher man so einen Projektentwurf einem echten Endkunden vorsetzt 
(oder einem, der zumindest sich bemüht, das Ding aus Anwendersicht mal 
anzuschauen), desto eher kann man den Gang der Entwicklung noch in die 
richtige Richtung hinbiegen.

Wenn hingegen erstmal viele Pflöcke eingeschlagen und eine Menge 
Codezeilen geschrieben sind, dann sind Änderungen an der Grundstruktur 
schmerzhaft, aufwendig oder sogar unmöglich, ohne große Teile des Ganzen 
wieder einzureißen.

Genau deshalb sind solche frühen Tests dringendst notwendig. Verstehst 
du das jetzt besser? Ich habe aus gutem Grunde immer wieder das Bauen 
eines Hauses als Gleichnis herangezogen. Eben zuerst die richtigen 
Fundamente legen, sonst braucht man später die Abrißbirne und den 
Bagger.

W.S.

Autor: Bernd Wiebus (berndwiebus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas und Joerg.

Jörg W. schrieb:

> Mit dem Pool Manager.
>
> Wundert mich nur, dass er ohne irgendeinen registrierten Pool überhaupt
> startet. Das hat er bei mir abgelehnt.

Hat ja auch nicht gestartet....darum die Fehlermeldungen. ;O)

Lukas K. schrieb:

> Ist repariert, das Problem war folgendes: Zum Speichern der
> Fenstergrößen benutze ich auch SQLite und das erwartet logischerweise,
> dass es das Verzeichnis, in dem die Datenbank liegt schon existiert. Bis
> jetzt ist das nur keinem aufgefallen, da alle das Verzeichnis schon
> hatten.

Der Build von gestern hat gestartet, und ich war in der Lage, den Pool 
einzubinden.
Soweit also ok.

Leider komme ich erst irgendwann die Woche dazu, mir das näher 
anzusehen.....und dann natürlich mit einem aktuellen Build

Bis jetzt macht es einen guten aufgeräumten Eindruck.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

: Bearbeitet durch User
Autor: Bernd Wiebus (berndwiebus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Helmut.

Helmut S. schrieb:

> 3. Pool laden.

> 4. Example Project laden

> 5. Programm starten

Danke für Deine Quasi Anleitung.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

ich versuche gerade mal einen Pool aufzubauen und dabei eine sinnvolle 
Vorgehensweise zu finden. Im ersten Schritt habe ich erstmal Units und 
dazu die passenden Symbole angelegt. Aus denen kann man dann später 
Entities machen. Die Funktion "Duplicate Unit" ist dabei recht 
hilfreich. Dupliziert man aber erst das Symbol, steckt man in einer 
Sackgasse, weil man dem Symbol keine Unit zuordnen kann. Übersehe ich da 
was?

Damit verwand dürfte eine andere Frage sein. Es gibt eine Unit "Generic 
2 pin connector", die ist sowohl dem Symbol "Generic 2 pin connector 
(1x2)" als auch dem Symbol "Generic 2 pin connector (2x1)" zugeordnet. 
Ich vermute, da wurde ein Symbol dupliziert und dann der Name und das 
Symbol geändert. Die Unit blieb gleich, denn die ist ja ohnehin nicht 
änderbar. Was ist die Idee hinter dieser Vorgehensweise? Soll man damit 
solche Fälle wie das amerikanische und europäische Widerstandssymbol nur 
einer Unit zuordnen können? Beim Platzieren eines Parts im Schaltplan 
bekommt man zumindest die Auswahl zwischen diesen beiden, der einen Unit 
zugeordneten, Symbolen.
In diesem Fall tritt übrigens ein Fehler auf. Wenn man die Box zur 
Auswahl des Symbols mit "Cancel" schließt, dann stürzt der 
Schaltplan-Editor ab.

Nochmal eine positive Rückmeldung: ich baue jetzt seit ca. 2 Wochen fast 
täglich ein neues Debian-Paket und das klappt zu > 95% immer 
reibungslos. Manchmal muss ich meinen Patch für das Makefile anpassen, 
mehr aber nicht.
Klasse Leistung.

  Uwe

Autor: Bernd Wiebus (berndwiebus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo W.S.

W.S. schrieb:

> Aber sag mal selbst, was aus einem Projekt werden soll, wenn (wie du
> schreibst) Lukas sich mit seinem Projekt DERZEIT garnicht an Endkunden
> richtet.
>
> Da passiert nämlich ganz leicht genau dasselbe, was ich schon bei Kicad
> erleben mußte. Nämlich, daß auf weite Strecke das ganze Projekt nur aus
> Sicht seiner Programmierer vorangetrieben wurde und daß eben dabei an
> den Endkunden vorbei programmiert worden ist.

Sagmal, Rauchst Du irgendwas? Das soll ein OpenSource Projekt werden!
Als solches hat es KEINE KUNDEN. ;O)

Das hat für den Anwenden den riesen Vorteil, dass es nicht darauf 
getrimmt sein muss, die Entscheider zu beeindrucken, die selten auch 
Anwender sind, sondern es wird von Leuten geschrieben, die selber 
Elektronikentwicklung machen.

Als OS Programm kann es im allgemeinen deutlich praxisorientierter 
(insbesondere für Kleinanwender) sein, als proprietäre Software, die aus 
Verkaufsgründen immer auf Eindruck machen schielen muss. ;O)


> Genau deshalb sind solche frühen Tests dringendst notwendig.

??? So wie ich das hier verstehe, sind zig Leute gerade mit Testen 
beschäftigt. WAS ist dein Problem?

> Verstehst du das jetzt besser? Ich habe aus gutem Grunde immer wieder das > 
Bauen eines Hauses als Gleichnis herangezogen. Eben zuerst die richtigen
> Fundamente legen, sonst braucht man später die Abrißbirne und den
> Bagger.

Die Menschheit baut wesentlich länger Häuser als sie CAD Programme 
schreibt. Insofern besteht bei Häusern sehr viel tradiertes Wissen, 
wärend bei CAD Programmen eigentlich alle Programme noch irgendwie in 
einem Experimentierstadium sind.

So auch hier, wo ein paar Sachen ausprobiert werden sollen.

Wenn Du konkrete Vorschläge hast, dann kannst Du sie bestimmt 
anbringen, aber was Du machst, ist eine Besinnung auf Grundlagen 
einfordern, die so überhaupt noch nicht existieren.

Mal ganz abgesehen von Deinem etwas aggressiven Tonfall.

Niemand startet ein solches Projekt ohne Vorüberlegungen. Selbst 
wesentlich kleinere Sachen habe ich selber Monate- bis Jahre im Kopf 
herumgewälzt, bevor ich ein kleines Konzept gemacht habe. So ist Lukas 
mit Sicherheit nicht dabei, ohne Konzept zu arbeiten. Aber an 
irgendeinem Punkte muss Schluss sein mit Konzept, und es muss angefangen 
werden, das ganze Umzusetzten. Weil jedes Konzept kann fatale Fehler 
enthalten, die erst auffallen, wenn man es anfängt Umzusetzten. Mann 
könnte also eine Ewigkeit damit verbringen, ein extrem detailiertes und 
perfektes Konzept aufzustellen, was überhaupt nicht funktioniert.

Deine "geforderte" Vorgehensweise ist eher eine 
Projektverhinderungsstrategie, wenn man es genau sieht. Was ist 
eigentlich Deine Agenda? Konkrete Vorschläge kommen ja nicht......

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

: Bearbeitet durch User
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe S. schrieb:
> Klasse Leistung.

Auf FreeBSD 11.x (da kann der Clang native C++14) würde es praktisch
aus der Dose heraus bauen.

Ich finde das auch eine gute Leistung!

Autor: Possetitjel (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Bernd W. schrieb:

>> Genau deshalb sind solche frühen Tests dringendst
>> notwendig.
>
> ??? So wie ich das hier verstehe, sind zig Leute
> gerade mit Testen beschäftigt. WAS ist dein Problem?

Zu viele Fragen auf einmal :)

1.
Das Problem von W.S. ist, dass er eine richtige Frage im
falschen (sozialen) Kontext diskutieren will. Er ist
ungefähr genauso nervig wie ein überzeugter Veganer auf
dem Jahresball der Metzger-Innung: Sachlich vielleicht gar
nicht falsch, aber nutzlos, nervtötend, unangemessen.

2.
Deine Feststellung, FOS-Software habe keine Kunden (sondern
nur Anwender) ist sachlich richtig, geht aber nicht weit
genug: Manchmal hat sie nicht einmal "echte" Anwender. Der
Spruch "Wenn Du hier nichts beitragen kannst, dann hast Du
auch kein Recht, Forderungen zu stellen" schreibt die Inzucht
auf Dauer fest.
Das "Problem" (wenn es denn eins ist) bei Lukas' Vorgehen
liegt in der ZIELSTELLUNG, nicht in der Durchführung.

3.
Software-Tests werden aus unterschiedlichen Gründen gemacht.
Die Fragen "Haben wir das Richtige implementiert?" und "Haben
wir es richtig implementiert?" zielen in unterschiedliche
Richtungen.
Hier im Thread liegt der Fokus eindeutig auf der zweiten Frage.
Das ist für sich genommen nicht falsch, aber W.S. bemängelt
(nach meinem Verständnis) nur, dass die erste Frage deutlich
zu wenig diskutiert wird.

Letztlich liegen bei FOS-Software Licht und Schatten noch
näher beieinander als bei kommerzieller: Gute FOSS-Software
ist unter Umständen SEHR gut, eben weil der Programmierer
auch der Anwender ist.
Bei FOSS-Software, die aber an den Bedürfnissen (einiger)
Anwender vorbeigeht, haben diese Anwender NOCH weniger
Einfluss als bei kommerzieller Software: Gegen die Replik
"Du hast mir gar nix vorzuschreiben -- ich bin nicht Dein
Codiersklave!" hat man keine Handhabe. Bei kommerzieller
Auftragsentwicklung sieht das deutlich anders aus.

Ich bin ein ausgesprochener Freund von FOSS, aber man darf
die Nachteile des Modells auch nicht übersehen.


Bernd W. schrieb:
> Weil jedes Konzept kann fatale Fehler enthalten, die erst
> auffallen, wenn man es anfängt Umzusetzten.

Ja -- aber dann taugt das Konzept nichts :)

> Mann könnte also eine Ewigkeit damit verbringen, ein
> extrem detailiertes und perfektes Konzept aufzustellen,
> was überhaupt nicht funktioniert.

Es gibt immer viele Wege, etwas falsch zu machen; das
Aufstellen von Konzepten bildet da keine Ausnahme :)

Projektplanung ist viel schlechter lehrbar als Bohren,
Feilen oder Steaks braten, aber dennoch ist es ein
Handwerk wie viele andere auch.

Der sehr verbreitete Spruch "Wer glaubt, dass Projektleiter
Projekte leiten, der glaubt auch, dass Zitronenfalter
Zitronen falten" ist im Wesentlichen nur eins: Sehr dumm.

Autor: Mampf F. (mampf) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Possetitjel schrieb:
> Es gibt immer viele Wege, etwas falsch zu machen; das
> Aufstellen von Konzepten bildet da keine Ausnahme :)

Mmhmm, oft hat man ja ein Bild vor Augen, wie das fertige Projekt 
aussehen soll ... Solange man quasi nur einer ist, der an einem Projekt 
arbeitet, ist es auch kein Problem, das genau so umzusetzen, wie man 
sich das vorstellt.

Da braucht man dann keine Projektplanung oder Konzepte ;-)

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Possetitjel schrieb:
> Die Fragen "Haben wir das Richtige implementiert?" und "Haben wir es
> richtig implementiert?" zielen in unterschiedliche Richtungen. Hier im
> Thread liegt der Fokus eindeutig auf der zweiten Frage.

Das sehe ich keineswegs so.  Lukas hat weiter oben selbst postuliert,
dass er für alle Anregungen dankbar ist, auch die, die in Richtung
der ersten Frage gehen.

Was er dabei sicher nicht in Frage stellen wird, ist den grundlegenden
Workflow des Gesamtsystems.  Der ist ja bei ihm insbesondere daraus
entstanden, dass er mit dem, was es schon gab, aus Anwendersicht
völlig unzufrieden war und es daher anders angehen wollte.

: Bearbeitet durch Moderator
Autor: Bernd Wiebus (berndwiebus) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hallo Possetitjel.


Possetitjel schrieb:

> 2.
> Deine Feststellung, FOS-Software habe keine Kunden (sondern
> nur Anwender) ist sachlich richtig, geht aber nicht weit
> genug: Manchmal hat sie nicht einmal "echte" Anwender. Der
> Spruch "Wenn Du hier nichts beitragen kannst, dann hast Du
> auch kein Recht, Forderungen zu stellen" schreibt die Inzucht
> auf Dauer fest.

Vernünftigen Argumenten gegenüber ist ja auch niemand abgeneigt, sie 
zumindest in Erwägung zu ziehen.

Allerdings, wenn Nischen Anwender sich ihre eigene Software als ihr 
eigenes Handwerkszeug selber in die Hand schreiben, sind sie wohl auch 
die einzigen wirklichen Experten dafür.

> Das "Problem" (wenn es denn eins ist) bei Lukas' Vorgehen
> liegt in der ZIELSTELLUNG, nicht in der Durchführung.

Es geht um beides, Zielstellung und Durchführung.


> Software-Tests werden aus unterschiedlichen Gründen gemacht.
> Die Fragen "Haben wir das Richtige implementiert?" und "Haben
> wir es richtig implementiert?" zielen in unterschiedliche
> Richtungen.
> Hier im Thread liegt der Fokus eindeutig auf der zweiten Frage.
> Das ist für sich genommen nicht falsch, aber W.S. bemängelt
> (nach meinem Verständnis) nur, dass die erste Frage deutlich
> zu wenig diskutiert wird.

So verstehe ich das auch.....aber W.S. bringt auch keine konkreten 
Vorschläge für ein Ziel. Er bemängelt nur, dass es nicht gemacht wurde. 
Ich gehe aber davon aus, dass das jeder macht, auch wenn es nicht 
unbedingt nach aussen sichtbar ist. Und das Ergebnis einer solchen 
Überlegung muss nicht mit dem Übereinstimmen, was bei W.S. herauskommen 
würde. ;O)

> Bei FOSS-Software, die aber an den Bedürfnissen (einiger)
> Anwender vorbeigeht, haben diese Anwender NOCH weniger
> Einfluss als bei kommerzieller Software: Gegen die Replik
> "Du hast mir gar nix vorzuschreiben -- ich bin nicht Dein
> Codiersklave!" hat man keine Handhabe. Bei kommerzieller
> Auftragsentwicklung sieht das deutlich anders aus.

Richtig. Aber das sehe ich nicht als Problem. Weil eigentlich schreiben 
FOSS Entwickler immer extreme Nischensoftware für sich selber. Der 
Erfolg einiger dieser Produkte ist dann auf das Versagen kommerzieller 
Konzepte zurückzuführen. Also eher Zufall. Merkwürdigerweise treten 
diese Zufälle aber sehr häufig auf...


> Bernd W. schrieb:
>> Weil jedes Konzept kann fatale Fehler enthalten, die erst
>> auffallen, wenn man es anfängt Umzusetzten.
>
> Ja -- aber dann taugt das Konzept nichts :)

Richtig....aber wann will man das sonst feststellen, wenn nicht durch 
einen Umsetzungsversuch?

>
>> Mann könnte also eine Ewigkeit damit verbringen, ein
>> extrem detailiertes und perfektes Konzept aufzustellen,
>> was überhaupt nicht funktioniert.
>
> Es gibt immer viele Wege, etwas falsch zu machen; das
> Aufstellen von Konzepten bildet da keine Ausnahme :)

Ohja.

>
> Projektplanung ist viel schlechter lehrbar als Bohren,
> Feilen oder Steaks braten, aber dennoch ist es ein
> Handwerk wie viele andere auch.

Ich sehe es eher als Kunst, weil mir komplett die Begabung dazu fehlt. 
Aber ich sehe dieses Fehlen einer Begabung dazu auch bei W.S., solange 
er nicht konkreter wird. ;O)

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

Autor: Possetitjel (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Jörg W. schrieb:

> Possetitjel schrieb:
>> Die Fragen "Haben wir das Richtige implementiert?" und
>> "Haben wir es richtig implementiert?" zielen in
>> unterschiedliche Richtungen. Hier im Thread liegt der Fokus
>> eindeutig auf der zweiten Frage.
>
> Das sehe ich keineswegs so.

Ich weiss :)

> Lukas hat weiter oben selbst postuliert, dass er für alle
> Anregungen dankbar ist, auch die, die in Richtung der
> ersten Frage gehen.

Ja, aber...

> Was er dabei sicher nicht in Frage stellen wird, ist den
> grundlegenden Workflow des Gesamtsystems.

Eben.

Das bedeutet faktisch: Es gibt eine gewisse Zahl fundamentaler
Design-Entscheidungen, die nicht verhandelbar sind. Punkt.
(Dazu gehört aus meiner Sicht z.B., dass es ein Komplett-
paket werden soll.)

> Der ist ja bei ihm insbesondere daraus entstanden, dass
> er mit dem, was es schon gab, aus Anwendersicht völlig
> unzufrieden war und es daher anders angehen wollte.

Richtig.

Wenn man die Äußerungen von W.S. mal mit gutem Willen liest
(und über seinen unangemessenen Ton großzügig hinwegsieht),
dann ist genau DAS ja auch sein Kritikpunkt: ER (L.) war
unzufrieden, ER wollte es anders angehen. Was andere Anwender
wollen, was andere Anwender stört, spielt keine wesentliche
Rolle. (Wäre es anders, hätte es eine Planungsphase gegeben,
in der die Wünsche der Anwender ermittelt worden wären. Gab
es aber meines Wissens nicht.)

Nur um nicht missverstanden zu werden: L. macht nix falsch.
Er programmiert sich einfach die Software, die er haben möchte.
Die Kritik zielt auf eine generelle Schwäche von FOSS.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Possetitjel schrieb:
> Was andere Anwender wollen, was andere Anwender stört, spielt keine
> wesentliche Rolle.

Bezüglich des grundlegenden Designs: richtig.

Ansonsten sehe ich schon, dass er auf geäußerte Wünsche eingeht.

> Die Kritik zielt auf eine generelle Schwäche von FOSS.

Die aber auch eine Stärke sein kann: es wird einfach mal gemacht, und
„der Markt“ kann dann zeigen, ob sich das durchsetzt.  Dieser besteht
ja am Ende aus viel mehr Nutzern als nur W.S. :)

Autor: Bernd Wiebus (berndwiebus) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hallo Jörg und  Possetitjel-

Jörg W. schrieb:

>> Was andere Anwender wollen, was andere Anwender stört, spielt keine
>> wesentliche Rolle.
>
> Bezüglich des grundlegenden Designs: richtig.

Immerhin hat er das ganze ja gestartet, weil er mit den herkömmlichen 
Designs unzufrieden war, und eigene Ideen hatte.
Da ist kaum zu erwarten, dass er ausgerechnet diese Grundlagen ändert.

>
> Ansonsten sehe ich schon, dass er auf geäußerte Wünsche eingeht.

Das sehe ich auch.

>
>> Die Kritik zielt auf eine generelle Schwäche von FOSS.
>
> Die aber auch eine Stärke sein kann: es wird einfach mal gemacht, und
> „der Markt“ kann dann zeigen, ob sich das durchsetzt.  Dieser besteht
> ja am Ende aus viel mehr Nutzern als nur W.S. :)

Eben. Es scheint oft also eine ganze Menge von Leuten zu geben, die sich 
gut mit den Konzepten dieser Software anfreunden können.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Uwe S. schrieb:
> Dupliziert man aber erst das Symbol, steckt man in einer
> Sackgasse, weil man dem Symbol keine Unit zuordnen kann. Übersehe ich da
> was?

Nein, das ist by Design so: Symbole stellen nur die Pins einer Unit dar 
und sind daher recht fest mit dieser verbunden. Ohne Unit wüsste ein 
Symbol nicht, wie die Pins heißen. Ein Dialog zum Austauschen der Unit, 
wobei die Pins dann über Namen zur neuen Unit zugeordnet werden, wäre 
allerdings denkbar, wenn das unbedingt so gebraucht wird.

> Damit verwand dürfte eine andere Frage sein. Es gibt eine Unit "Generic
> 2 pin connector", die ist sowohl dem Symbol "Generic 2 pin connector
> (1x2)" als auch dem Symbol "Generic 2 pin connector (2x1)" zugeordnet.
> Ich vermute, da wurde ein Symbol dupliziert und dann der Name und das
> Symbol geändert. Die Unit blieb gleich, denn die ist ja ohnehin nicht
> änderbar. Was ist die Idee hinter dieser Vorgehensweise? Soll man damit
> solche Fälle wie das amerikanische und europäische Widerstandssymbol nur
> einer Unit zuordnen können?

Das ist ein möglicher Anwendungsfall. Die Idee hier bei den Steckern war 
diese: In der Netzliste (Unit/Entity) ist es ja egal, wie die Pins nun 
räumlich im Stecker angeordnet sind, daher gibt es für jede Anzahl Pins 
nur eine Unit. So kann man auch ohne Probleme später mit dem "Assign 
Part"-Tool aus einem 1x10 einen 2x5-Stecker machen, da beide für die 
Netzliste identisch sind (selbe Unit/Entity). Im Schaltplan will man 
damit's optisch besser zum Board passt beide Optionen haben. Geplant 
sind hier noch diese Dinge: Symbol im Schaltpan änderbar machen (für 
Units mit mehreren Symbolen). Vielleicht: Parts können bevorzugte 
Symbole angeben, damit z.B. der 2x5-Wannenstecker standardmäßig auch das 
2x5-Symbol bekommt und nicht erst der Dialog zur Auswahl des Symbols 
aufgeht.

> Beim Platzieren eines Parts im Schaltplan
> bekommt man zumindest die Auswahl zwischen diesen beiden, der einen Unit
> zugeordneten, Symbolen.
> In diesem Fall tritt übrigens ein Fehler auf. Wenn man die Box zur
> Auswahl des Symbols mit "Cancel" schließt, dann stürzt der
> Schaltplan-Editor ab.
Ist repariert.

Autor: Possetitjel (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Jörg W. schrieb:

> Possetitjel schrieb:
>> Was andere Anwender wollen, was andere Anwender
>> stört, spielt keine wesentliche Rolle.
>
> Bezüglich des grundlegenden Designs: richtig.

Gut. Dann haben wir ja bis dahin erstmal Konsens.


> Ansonsten sehe ich schon, dass er auf geäußerte
> Wünsche eingeht.

Selbstverständlich; das habe ich auch schon mehrfach
zugestanden. Das ist ja gar nicht mein Zielpunkt.


>> Die Kritik zielt auf eine generelle Schwäche von FOSS.
>
> Die aber auch eine Stärke sein kann: es wird einfach mal
> gemacht, und „der Markt“ kann dann zeigen, ob sich das
> durchsetzt.

Naja. Das ist kein Alleinstellungsmerkmal von FOSS; das
machen die Kommerziellen genauso.

Der ärgerliche Unterschied ist nur, dass es bei FOSS
überhaupt nicht notwendig wäre. Da es keinen Zwang zur
Rentabilität gibt, muss sich niemand "durchsetzen".

Autor: Possetitjel (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Bernd W. schrieb:

> Immerhin hat er das ganze ja gestartet, weil er mit den
> herkömmlichen Designs unzufrieden war, und eigene Ideen
> hatte.

Sicher; Unzufriedenheit als Motiv, etwas zu ändern, ist
ja ein durchaus häufiger Fall.

> Da ist kaum zu erwarten, dass er ausgerechnet diese
> Grundlagen ändert.

Naja, fraglich ist, was GENAU ihn gestört hat und was also
diese Grundlagen sind.

Die Tatsache, dass es (meines Wissens) kein wirklich
universelles Austauschformat für Schaltpläne gibt, war
es schon mal nicht -- sonst hätte er sich das als Thema
vorgenommen.

Die Tatsache, dass jede Software die Bauteil-Stammdaten
(Symbole, Footprints, ggf. Datenblätter, Spice-Modelle...)
mehr schlecht als recht (und natürlich inkompatibel zu
allen anderen Systemen) verwaltet, war es offensichtlich
auch nicht.

Nur um mal zwei Punkte zu nennen, die MICH stören.

> Eben. Es scheint oft also eine ganze Menge von Leuten zu
> geben, die sich gut mit den Konzepten dieser Software
> anfreunden können.

Was bleibt einem denn übrig? Die Alternativen sind ja noch
schlimmer.
Außerdem sind Anwender manchmal (notgedrungen) unfassbar
leidensfähig -- sonst wären MS-DOS, Windows98 oder vi nie
zum Einsatz gelangt.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Possetitjel schrieb:
> Die Tatsache, dass jede Software die Bauteil-Stammdaten (Symbole,
> Footprints, ggf. Datenblätter, Spice-Modelle...) mehr schlecht als recht
> (und natürlich inkompatibel zu allen anderen Systemen) verwaltet, war es
> offensichtlich auch nicht.

Wieso?  Gerade an dieser Stelle hat sich Lukas ja intensiv Gedanken
gemacht.  Also nicht Austauschbarkeit, das bleibt sowieso immer
Wunschdenken, aufgrund nicht deckungsgleicher Konzepte – BAE bspw.
benutzt metrisches Raster für die Schaltplandarstellung, viele andere
(aus mir nicht nachvollziehbaren Gründen) zölliges.  Da half es eben
bei BAE auch nicht besonders, dass man per Script Eagle-Daten
einlesen kann.

Aber bezüglich der Organisation der Daten sehe ich schon ein Konzept.

Das kann einem natürlich nun gefallen oder nicht, das ist wieder was
anderes. ;-)

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Die Situation mit Formaten für Schaltplan/Board/etc. ist ähnlich wie die 
mit Formaten für Textverarbeitung: Das Dateiformat muss jedes Feature, 
jede noch so versteckte Einstellung der Applikation abbilden. Bei 
Textverarbeitung hat man das gelöst, indem Formate von Applikationen zum 
Standard erklärt wurden. Mittelbar wurde damit die Applikation selber 
zum Standard, da man um das Format vollständig zu unterstützen die 
Applikation praktisch nachbauen muss.

Wenn jetzt z.B. Autodesk es hinbekommen würde das XML-Format von Eagle 
als Standard bei der ISO oder so durchzubekommen, wären alle 
Applikationen, die das Format verwenden im Kern eben Eagle - mit allen 
vor- und Nachteilen.

Ein Austauschformat zur Darstellung von Footprints und Symbolen ist in 
der Tat wünschenswert und meines Erachtens auch deutlich einfacher 
umsetzbar als ein Austauschformat für Schaltpläne, da alle Programme 
halbwegs vergleichbare Vorstellungen von Symbol und Package haben.

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

ich habe mal angefangen einige der Units, Entities und Symbols aus 
meinem lokalen Pool als Pull-Request bei github einzustellen. Wenn das 
für dich so in Ordnung ist, dann hätte ich auch noch mehr und würde die 
auch als Pull-Request zur Verfügung stellen. Konkrete Bauteile habe ich 
auch noch ein paar, aber die können erstmal warten.

  Uwe

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

jetzt habe zu viel gespielt und mein Pool lässt sich nicht mehr 
aktualisieren. Gemäß Fehlermeldung fehlt eine Symbol-Datei, die ich 
zuvor gelöscht hatte. Die Units und Entities aber auch. Mag sein, dass 
mir da ein Fehler unterlaufen ist. Ich stelle mir aber die Frage, woher 
der Pool-Manager überhaupt weiß, welche Datei fehlt. Läuft das nicht 
alles über Ids? Ich finde in keiner der json-Dateien eine Referenz auf 
die fehlende Datei.

  Uwe

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe S. schrieb:
> Ich stelle mir aber die Frage, woher
> der Pool-Manager überhaupt weiß, welche Datei fehlt. Läuft das nicht
> alles über Ids? Ich finde in keiner der json-Dateien eine Referenz auf
> die fehlende Datei.

Den Dateinamen, die der Pool Manager anzeigt, ist die Datei bei der die 
Exception aufgetreten ist. Irgendwas, das die Datei referenziert gibt's 
nicht. Seit gerade sagt der einem auch welche UUID und welcher Typ 
fehlt.

Uwe S. schrieb:
> Wenn das
> für dich so in Ordnung ist, dann hätte ich auch noch mehr und würde die
> auch als Pull-Request zur Verfügung stellen.

Schaut gut aus und ist merged. Bei den Symbolen hab' ich noch die 
Pin-Namen aus gemacht, da die sonst komisch ausschauen.

Jetzt wo es im Pool auch Bauteile mit invertierten Pins gibt, sollte das 
horizon auch abbilden können: Wahrscheinlich wird es für die Pins in den 
Units noch Flags geben, um Eingenschaften wie Invertiert, oder 
Takteingang zu kennzeichnen, damit man nicht immer selber malen muss.

Autor: Sheeva Plug (sheevaplug)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Possetitjel schrieb:
> Bei FOSS-Software, die aber an den Bedürfnissen (einiger)
> Anwender vorbeigeht, haben diese Anwender NOCH weniger
> Einfluss als bei kommerzieller Software: Gegen die Replik
> "Du hast mir gar nix vorzuschreiben -- ich bin nicht Dein
> Codiersklave!" hat man keine Handhabe. Bei kommerzieller
> Auftragsentwicklung sieht das deutlich anders aus.

OpenSource ist aber keine Auftragsentwicklung! Trotzdem kann man Einfluß 
darauf nehmen, wenn man freundlich fragt oder gar einen funktionsfähigen 
Patch einreicht. Oder wenn man das Projekt forkt und seine Vorstellungen 
innerhalb dieses Forks realisiert. Oder indem man jemanden dafür 
bezahlt, eine dieser drei Vorgehensweisen umzusetzen.

In der kommerziellen Auftragsentwicklung hast Du im Übrigen auch 
keinerlei Einflußmöglichkeit. Dann wird umgesetzt, was in der 
Spezifikation steht, auf deren Basis die Angebote, Preise und Zeitpläne 
kalkuliert und der Auftrag erteilt worden ist. Wenn Du Änderungen 
willst, mußt Du sie bezahlen.

> Ich bin ein ausgesprochener Freund von FOSS, aber man darf
> die Nachteile des Modells auch nicht übersehen.

Das ist natürlich richtig, aber Du konstruierst welche, wo keine sind, 
und noch dazu mit falschen Analogien.

Autor: Sheeva Plug (sheevaplug)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Possetitjel schrieb:
> Das bedeutet faktisch: Es gibt eine gewisse Zahl fundamentaler
> Design-Entscheidungen, die nicht verhandelbar sind. Punkt.

Ohne solche Designentscheidungen kann man keine Software entwickeln. 
Sonst diskutiert man das Projekt tot, bevor es angefangen hat.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Wahrscheinlich wird es für die Pins in den
> Units noch Flags geben, um Eingenschaften wie Invertiert, oder
> Takteingang zu kennzeichnen, damit man nicht immer selber malen muss.

Jetzt gibt es im Symbol-Editor für Pins dekorative Elemente wie 
Invertiert, Takteingang, Schmitt-Trigger, oder Open-Collector/Emitter 
mit/ohne Pullup/pulldown.

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab's gerade mal die Pin-Dekorationen probiert. Funktioniert super. Ist 
die Bezeichnung 'Dot' für invertierte Pins nicht etwas unglücklich? 
Warum nicht 'Inverted'?

Autor: W.S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd W. schrieb:
> Hallo W.S.
> ...
> Sagmal, Rauchst Du irgendwas? Das soll ein OpenSource Projekt werden!
> Als solches hat es KEINE KUNDEN. ;O)

Erstens: nein ich bin Nichtraucher
Zweitens: du bist unverschämt, sowas zu schreiben. Also bleib sachlich.
Drittens: wenn du dediziert was gegen das Wort "Kunde" hast, dann nenne 
es doch einfach "finaler Anwender".

Kommt auf's Gleiche raus.

Es sind eben immer diejenigen, die ein Produkt benutzen wollen und 
nicht darin herumkonstruieren/programmieren wollen - und die eben auch 
nicht zuvor irgendwelche anderen Teile wie Pools und so von woanders 
zusammensuchen wollen/können.

Aber "Kunde" ist griffiger und allgemeinverständlicher.

Negativbeispiel: Frag doch mal nen Verkäufer im Mediamarkt, wieviel 
uint8_t's die Festplatte im Regal hat.

Bernd W. schrieb:
> So verstehe ich das auch.....aber W.S. bringt auch keine konkreten
> Vorschläge für ein Ziel. Er bemängelt nur, dass es nicht gemacht wurde.

Wiebitte???

Zur Sache:
Das vorbereitete Projekt herunterzuladen und zu installieren/auszupacken 
reicht nicht. Es fehlt an dem Pool, was auch immer dessen Inhalt sein 
mag. Offenbar muß ich mich selber zitieren:

W.S. schrieb:
> Ich hätte erwartet, daß man als Benutzer zumindest die Chance hätte, das
> System erstmal irgendwie aufzusetzen, so daß es auch läuft und einen
> nicht vor ein zu nix brauchbares fast leeres Fenster setzt. Die
> penetrante und durch nichts lösbare Nachfrage nach dem ominösen Pool
> verhindert zuverlässig, daß man mit deinem Programm irgendwas beginnen
> kann. Erwarte bitte nicht, daß irgend ein Interessent eine derartige
> pool.json vorrätig hat.

Ist dir das nicht klar genug?
Nein?
Dann sag ich es mal anders:

In jede Distribution gehört wenigstens eine minimale "pool.json" hinein, 
damit man zumindest etwas vom eigentlichen Programm überhaupt sieht. 
Noch besser wäre es, wenn es einen Menüpunkt gäbe, mit dem man auf 
Knopfdruck sowas generieren kann.

Bedarf dafür ist da, siehe Jörg:
"Wie starte ich einen neuen Pool?  Gibt's dafür ein Tool?"

Eben. Meine Rede die ganze Zeit über.

W.S.

Autor: Guido B. (guido-b)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
W.S. schrieb:
> Wiebitte???
>
> Zur Sache:
> Das vorbereitete Projekt herunterzuladen und zu installieren/auszupacken
> reicht nicht. Es fehlt an dem Pool, was auch immer dessen Inhalt sein
> mag.

Öhm, RTFM!

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
W.S. schrieb:
> Bedarf dafür ist da, siehe Jörg:

Wenn du keine Ahnung hast, worüber ich schreibe, dann benutz' mich
bitte nicht als Referenz.

Den Standard-Pool runterzuladen und zu aktivieren, braucht's nur ein
RTFM.

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

in GitHub sehe ich Kommentare für eine neue Funktion um packages zu 
wählen.

"board    add alternate packages   ...."

Ich habe heute Abend dein Programm kompiliert. Sollte man das Package in 
dem PCB-Fenster auswählen können? Ich kann da aber in dem Feld "Package" 
nichts ändern. Siehe Bild. Ist die Funktion noch nicht fertig oder muss 
ich an anderer Stelle vorher etwas einstellen?

Gruß
Helmut

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Diese Funktion ist so gemeint: Im Package kann man (im Popover, wo man 
auch Name, etc. eintippt) ein Package als alternate Package für ein 
anderes Package eintragen. Im Pool gibt es als Beispiel wie sowas 
aussehen kann die Packages "R0603 (manual soldering)" und "C0603 (manual 
soldering)". Diese haben als "alternate for" R0603 bzw. C0603 
eingetragen. In der Combobox zum Package erscheinen dann alle Packages, 
die als "alternate for"  das Package des Parts eingetragen haben.

Diese Funktion ist ausdrücklich nicht dafür vorgesehen verschiedene 
Packages (z.B. DIP und SMD) einem Part zuzuordnen.

Helmut S. schrieb:
> Ist die Funktion noch nicht fertig oder muss
> ich an anderer Stelle vorher etwas einstellen?

Du musst wohl noch deinen Pool aktualisieren, damit da auch die oben 
genannten Packages drin sind.

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

> Du musst wohl noch deinen Pool aktualisieren,

Habe gerade mal den Pool ganz neu heruntergeladen und unzip gemacht. 
Dann den Pool-manager gestartet. Es sind keine packages und parts mehr 
da. Die fehlen jetzt.
Teste das doch mal bei dir. Poolverzeichnis löschen, Pool herunterladen, 
unzip vom Download des Pools machen, pool manager starten und schauen.
Mein Pool ist jetzt unbrauchbar.

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Teste das doch mal bei dir. Poolverzeichnis löschen, Pool herunterladen,
> unzip vom Download des Pools machen, pool manager starten und schauen.
> Mein Pool ist jetzt unbrauchbar.

Tatsache, das ist hingefallen, weil jetzt auch Packages andere Packages 
referenzieren und die Reihenfolge in der die Packages geladen werden 
relevant ist. Ist nun repariert.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Helmut S. schrieb:
>> Teste das doch mal bei dir. Poolverzeichnis löschen, Pool herunterladen,
>> unzip vom Download des Pools machen, pool manager starten und schauen.
>> Mein Pool ist jetzt unbrauchbar.
>
> Tatsache, das ist hingefallen, weil jetzt auch Packages andere Packages
> referenzieren und die Reihenfolge in der die Packages geladen werden
> relevant ist. Ist nun repariert.

Habe gerade noch mal kompiliert. Dann habe ich den Pool Manager 
gestartet. Dort musste ich "Update Pool" wählen. Danach habe ich das 
Layout geöffnet. Jetzt kann ich ein anderes Package wählen.

>Diese haben als "alternate for" R0603 bzw. C0603 eingetragen.
Jetzt stellt sich mir die Frage wo wird definiert welches alternative 
Package möglich ist.

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Lukas K. schrieb:
>>Diese haben als "alternate for" R0603 bzw. C0603 eingetragen.
> Jetzt stellt sich mir die Frage wo wird definiert welches alternative
> Package möglich ist.

Im Pool-Manager. Einfach ein Package öffnen und dann mal das Menü in der 
Kopfzeile ausklappen. Dort wo man den Namen, Manufacturer und Tags 
eingeben kann, gibt es jetzt noch einen Button 'Alternate for'.

  Uwe

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Uwe S. schrieb:
> Helmut S. schrieb:
>> Lukas K. schrieb:
>>>Diese haben als "alternate for" R0603 bzw. C0603 eingetragen.
>> Jetzt stellt sich mir die Frage wo wird definiert welches alternative
>> Package möglich ist.
>
> Im Pool-Manager. Einfach ein Package öffnen und dann mal das Menü in der
> Kopfzeile ausklappen. Dort wo man den Namen, Manufacturer und Tags
> eingeben kann, gibt es jetzt noch einen Button 'Alternate for'.
>
>   Uwe

Danke Uwe,
jetzt finde ich es auch. Man kann/muss das alternative package für jedes 
Bauteil auswählen, wenn man es ändern will. Das ist OK.
Im Anhang ein screenshot für alle die es interssiert.
Helmut

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Neue Frage
Was macht dieses "Apply to all", das erscheint, wenn man auf das Häkchen 
klickt? Scheinbar nichts oder macht es doch etwas?
Helmut

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Neue Frage
> Was macht dieses "Apply to all", das erscheint, wenn man auf das Häkchen
> klickt? Scheinbar nichts oder macht es doch etwas?
Wenn du mehrere Objekte ausgewählt hast, dann wird die Eigenschaft auf 
alle angewendet. In deinem Fall, mit nur einem Objekt, ist also in der 
Tat nichts zu sehen. Besser wäre es wohl, den Button dann garnicht 
anzuzeigen. Die gleiche Funktion gibt es auch bei mehreren ausgewählten 
Pads, wenn man 'Edit pads' aufruft.

  Uwe

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe S. schrieb:
> Besser wäre es wohl, den Button dann garnicht
> anzuzeigen.

Ist jetzt (fast) so drin und der Tooltip ist auch ein bisschen 
erklärender. Ganz ausblenden wollte ich den Knopf nicht, weil das dann 
komisch aussah.

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Neue Frage
> Was macht dieses "Apply to all", das erscheint, wenn man auf das Häkchen
> klickt? Scheinbar nichts oder macht es doch etwas?
Wenn du mehrere Objekte ausgewählt hast, dann wird die Eigenschaft auf
alle angewendet.

Danke Uwe, das passt.

Lukas K. schrieb:
> Uwe S. schrieb:
>> Besser wäre es wohl, den Button dann garnicht
>> anzuzeigen.
>
> Ist jetzt (fast) so drin und der Tooltip ist auch ein bisschen
> erklärender. Ganz ausblenden wollte ich den Knopf nicht, weil das dann
> komisch aussah.

Hallo Lukas,
Die Erklärung gefällt mir. Siehe screenshot für alle anderen.

Flipped "on" bedeutet Bauteil ist auf der Unterseite. Flipped "off" 
bedeuted das Bauteil ist auf der Oberseite. Man kann die Lage eines 
Bauteils an dessen Farbe erkennen.

Lukas, könntest du mal wieder eine WIN-Version machen für die Leute die 
nicht kompilieren wollen?

Helmut

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Noch ein Tipp
Wenn man mehrere Bauteile selektiert hat, dann kann man mit den 
Pfeiltasten links und rechts unter Packages ein Bauteil nach dem anderen 
wählen. Klickt man auf 1/3 dann geht zusätzlich ein "Dialogfenst" mit 
Radiobuttons auf. Da kann man mit einem Klick eines der selektierten 
Bauteile auswählen.

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Lukas, könntest du mal wieder eine WIN-Version machen für die Leute die
> nicht kompilieren wollen?

Soeben geschehen. Wenn sich jemand mit Appveyor auskennt und Windows-CI 
bauen mag, wäre ich demjenigen sehr verbunden :)

Ein paar Worte noch zu dem Property-Editor auf der rechten Seite im 
allgemeinen: Tabellarische Propery-Editoren, wie man sie von vielen IDEs 
und CAD-Programmen kennt, wie z.B. 
http://doc.qt.io/qt-5/images/designer-property-editor.png waren mit 
immer zu fummelig zu bedienen und zeigen u.U. komische Platzhalter an, 
wenn mehrere Objekte ausgewählt sind.

Daher stehen die Namen über und nicht neben den Werten und alles ist ein 
normales Widget und nicht die hakelig zu bedienenden Widgets aus 
Listen/Tabellen. Das "1/3" zur Auswahl des aktuellen Objektes in 
Kombination mit dem "Apply to all"-Knopf schien mir als gute Lösung um 
sowohl eines als  auch mehrere Objekte zu bearbeiten.

Wenn man eine Property anfasst, wird zunächst eine kurze Zeit gewartet, 
ob noch was passiert, um mehrere schnell aufeinander folgenden 
Änderungen zu einem Undo/Redo-Schritt zusammenzufassen. In dieser Zeit 
wird das "Commit pending" eingeblendet.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,
war deine letzte Änderung jetzt so wichtig, dass man unbedingt wieder 
neu kompilieren sollte?
Ich habe natürlich für mich neu kompiliert.

 core   fix tool includes   44 minutes ago

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> core   fix tool includes   44 minutes ago

Nichts wichtiges, nur in paar includes angepasst, damit es nicht unnütz 
Dateien neu bauen muss.

Autor: Max G. (l0wside) Benutzerseite
Datum:

Bewertung
3 lesenswert
nicht lesenswert
Max G. schrieb:
> Anschließend sieht es dann etwas seltam aus -
> ich sehe zwar alle Bedienelemente, aber weder Schaltplan noch Layout.

Auf einem anderen Rechner läuft es jetzt. Die UI sieht dank GTK ziemlich 
ungewohnt aus, aber daran gewöhnt man sich schnell.
Gefühlt ist es wie ein Rewrite von KiCAD, der ein paar hakelige Punkte 
(Library-Verwaltung, Sync Schaltplan/Board) neu konzipiert hat. In jedem 
Fall sind einige Dinge besser als beim Adler gelöst. Bis jetzt finde 
ich´s ziemlich gut (und ich bin Schwabe ;)

Ein paar Kleinigkeiten, die mir als unbedarftem Erstnutzer aufgefallen 
sind:
* Der Unit Editor ist noch nicht ganz rund:
  * Ich kann keine Einträge löschen ("-" bewirkt nichts)
  * Ich würde mir wünschen, neue Einträge einfach per Tab/Enter o.ä. 
erzeugen zu können. Dann kann ich die Pinliste aus dem Datenblatt 
einfach abtippen und muss nicht zwischen Tastatur und Maus wechseln
  * Nach dem Hinzufügen eines Pins mit "+" hüpft der Cursor irgendwo 
hin, und die blaue Markierung ebenfalls. Manchmal auf´s gleiche, 
manchmal auch nicht.
  * Die automatische alphabetische Sortierung nervt mich eher, ab einer 
gewissen Anzahl muss ich scrollen, um zu finden, wo es denn jetzt 
weitergeht. Ich würde sie eher weglassen.
Anregung: fertige Einträge mit Labels darstellen und erst nach 
Anklicken, nur für den aktuellen Eintrag, Combobox/Entry verwenden. Ist 
deutlich platzsparender.
* "Enter Datum" ist zwar vermutlich korrekt, aber recht ungebräuchlich. 
"Enter Value" wäre gängiger.
* Beim Duplizieren eines Packages beschwert sich Horizon, dass das 
Verzeichnis nicht existiert, anstatt es einfach anzulegen. Nach ANlegen 
von Hand geht´s problemlos.
* Der Footprint Generator ist prima. Nur: wenn ich versuche, ein 
Quad-Package zu erzeugen, malt er nur die rechte und linke Pinreihe. 
Unten und oben fehlt.
* Muss ich für das Zeichnen einer Verbindung im Schaltplan tatsächlich 
"dn n" tippen?
* Änderungen beim Zeichnen (sei es Mirror, sei es Undo, ...) werden erst 
dann übernommen, wenn die Maus wieder bewegt wird. Bis dahin bleibt der 
alte Zustand erhalten.
* Wie kriege ich es hin, dass eine abknickende Linie den Knickpunkt 
wechselt (das, was bei Eagle Strg+rechte Maustaste macht)?

More to come...

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Max G. schrieb:
> Max G. schrieb:
>> Anschließend sieht es dann etwas seltam aus -
>> ich sehe zwar alle Bedienelemente, aber weder Schaltplan noch Layout.
>
> Auf einem anderen Rechner läuft es jetzt. Die UI sieht dank GTK ziemlich
> ungewohnt aus, aber daran gewöhnt man sich schnell.
> Gefühlt ist es wie ein Rewrite von KiCAD, der ein paar hakelige Punkte
> (Library-Verwaltung, Sync Schaltplan/Board) neu konzipiert hat. In jedem
> Fall sind einige Dinge besser als beim Adler gelöst. Bis jetzt finde
> ich´s ziemlich gut (und ich bin Schwabe ;)

Sehr schön :)

> Ein paar Kleinigkeiten, die mir als unbedarftem Erstnutzer aufgefallen
> sind:
> * Der Unit Editor ist noch nicht ganz rund:
>   * Ich kann keine Einträge löschen ("-" bewirkt nichts)

Kann ich jetzt nicht so reproduzieren. Einen oder mehrere Pins auswählen 
(sodass die blau werden), dann auf - klicken und die Pins verschweiden

>   * Ich würde mir wünschen, neue Einträge einfach per Tab/Enter o.ä.
> erzeugen zu können. Dann kann ich die Pinliste aus dem Datenblatt
> einfach abtippen und muss nicht zwischen Tastatur und Maus wechseln

Hört sich sinnvoll an, kommt bald.

>   * Nach dem Hinzufügen eines Pins mit "+" hüpft der Cursor irgendwo
> hin, und die blaue Markierung ebenfalls. Manchmal auf´s gleiche,
> manchmal auch nicht.
>   * Die automatische alphabetische Sortierung nervt mich eher, ab einer
> gewissen Anzahl muss ich scrollen, um zu finden, wo es denn jetzt
> weitergeht. Ich würde sie eher weglassen.

Ah, das hängt wohl zusammen, da neue Einträge automatisch einsortiert 
werden. Wär' wohl besser, wenn die direkt nach dem Eintrag kommen, der 
davor ausgewählt war.

Die Sortierung habe ich eingebaut, weil die Pins innerhalb einer Unit 
sonst gar keine sinnvolle Reihenfolge hätten.

> Anregung: fertige Einträge mit Labels darstellen und erst nach
> Anklicken, nur für den aktuellen Eintrag, Combobox/Entry verwenden. Ist
> deutlich platzsparender.

Das schaut dann komisch aus, wenn sich die Höhe von den Zeilen 
verändert, je nachdem wo der Cursor gerade steht.

> * Beim Duplizieren eines Packages beschwert sich Horizon, dass das
> Verzeichnis nicht existiert, anstatt es einfach anzulegen. Nach ANlegen
> von Hand geht´s problemlos.

Du benutzt horizon auf Windows, oder? Die Meldung da kommt vom 
Windows-Dialog zum Speichern selber. Windows scheint keinen brauchbaren 
Dialog zu haben, um einen neuen Ordner anzulegen, nur Dialoge um 
vorhandene Ordner auszuwählen. Ich könnte an der Stelle auch den 
Dateidialog von Gtk benutzen, aber dann beschweren sich Leute zurecht, 
dass der komisch ausschaut...

> * Der Footprint Generator ist prima. Nur: wenn ich versuche, ein
> Quad-Package zu erzeugen, malt er nur die rechte und linke Pinreihe.
> Unten und oben fehlt.

Was für Einstellungen hast du da gemacht? Bei mir hat das immer 
funktioniert.

> * Muss ich für das Zeichnen einer Verbindung im Schaltplan tatsächlich
> "dn n" tippen?

Entweder "dn" oder "n".

> * Änderungen beim Zeichnen (sei es Mirror, sei es Undo, ...) werden erst
> dann übernommen, wenn die Maus wieder bewegt wird. Bis dahin bleibt der
> alte Zustand erhalten.

Höre ich jetzt s zum ersten mal, was sind da die genauen Umstände?

> * Wie kriege ich es hin, dass eine abknickende Linie den Knickpunkt
> wechselt (das, was bei Eagle Strg+rechte Maustaste macht)?

Du meinst von horizontal-vertikal auf vertikal-horizontal umschalten? 
Das geht mit "/".

Autor: Max G. (l0wside) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

alle Erfahrungen auf Windows 7 64 bit, integrierte Grafik (Intel 5500, 
was auch immer das ist).

* Zum Einträge löschen im Unit Editor: ach so, ich muss auf den Rand 
klicken, um den Frame(?) auszuwählen. Wäre gut, wenn Cursor im Feld auch 
reichen würde.
* Zu der Darstellung mit Labels/Entry: ja, die Höhe verändert sich, die 
Gesamthöhe aber nicht. Anbei mal eine kurze hässliche Fingerübung in 
Python zur Demo, wie das aussähe.

[mg]
>> * Beim Duplizieren eines Packages beschwert sich Horizon, dass das
>> Verzeichnis nicht existiert, anstatt es einfach anzulegen. Nach ANlegen
>> von Hand geht´s problemlos.
>
> Du benutzt horizon auf Windows, oder? Die Meldung da kommt vom
> Windows-Dialog zum Speichern selber. Windows scheint keinen brauchbaren
> Dialog zu haben, um einen neuen Ordner anzulegen, nur Dialoge um
> vorhandene Ordner auszuwählen. Ich könnte an der Stelle auch den
> Dateidialog von Gtk benutzen, aber dann beschweren sich Leute zurecht,
> dass der komisch ausschaut...

Ja, Windows, s.o.
Lasse doch einfach den darüberliegenden Ordner auswählen und generiere 
den Namen aus dem schon bekannten Packagenamen.

[mg]
>> * Der Footprint Generator ist prima. Nur: wenn ich versuche, ein
>> Quad-Package zu erzeugen, malt er nur die rechte und linke Pinreihe.
>> Unten und oben fehlt.
>
> Was für Einstellungen hast du da gemacht? Bei mir hat das immer
> funktioniert.
Screenshots anbei. Ist reproduzierbar.

>> * Änderungen beim Zeichnen (sei es Mirror, sei es Undo, ...) werden erst
>> dann übernommen, wenn die Maus wieder bewegt wird. Bis dahin bleibt der
>> alte Zustand erhalten.
>
> Höre ich jetzt s zum ersten mal, was sind da die genauen Umstände?
Ist durchgängig so, vermutlich irgendein Treiberthema Gtk/Windows. Ich 
finde es aber nicht schlimm, höchstens ein bisschen gewöhnungbedürftig.

Danke noch mal für dein Engagement!

Max

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max G. schrieb:
> * Zu der Darstellung mit Labels/Entry: ja, die Höhe verändert sich, die
> Gesamthöhe aber nicht. Anbei mal eine kurze hässliche Fingerübung in
> Python zur Demo, wie das aussähe.

Das Problem bei der Sache ist, dass wenn man auf einen Eintrag klickt, 
dieser seine Position in der Liste leicht ändert. Das so hinzubekommen, 
dass ich damit zufrieden wäre, ist mir gerade zu viel Aufwand.

Max G. schrieb:
> Ja, Windows, s.o.
> Lasse doch einfach den darüberliegenden Ordner auswählen und generiere
> den Namen aus dem schon bekannten Packagenamen.

Das selbe Problem gibt's auch beim neu anlegen von Packages. Vielleicht 
fällt mir da noch was ein...

Max G. schrieb:
> Screenshots anbei. Ist reproduzierbar.

Hm, vielleicht sind die anderen Pads auch einfach nur an der falschen 
Position? Drück mal auf "Pos1", damit alles dargestellt wird.

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

ich habe gerade die neueste Funktion im Schaltplan ausprobiert.

schematic editor: start net lines by dragging from pins/junctions

Dabei fielen mir mal wieder diese Überschneidungen an den Knicken der 
Leitungen auf. Ehrlich gesagt habe ich das noch nie in irgend einem 
anderen Schaltplan gesehen.
Ich hätte es gerne ohne diese Überschneidungen, weil das dem ansonsten 
sehr guten Eindruck des Schaltplanes schadet.

Ist das nur zu Debug-Zwecken so?

Gruß
Helmut

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Ist das nur zu Debug-Zwecken so?

Ist jetzt standardmäßig aus und kann ebenso wie das automatische starten 
von Netzlinien in den Einstellungen angepasst werden.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Helmut S. schrieb:
>> Ist das nur zu Debug-Zwecken so?
>
> Ist jetzt standardmäßig aus und kann ebenso wie das automatische starten
> von Netzlinien in den Einstellungen angepasst werden.

Danke Lukas,
eine clevere Idee das konfigurierbar zu machen. Auf die Idee wäre ich 
jetzt nicht gekommen. Da werde ich doch gleich mal den compiler starten 
...

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Max G. schrieb:
>> Screenshots anbei. Ist reproduzierbar.
>
> Hm, vielleicht sind die anderen Pads auch einfach nur an der falschen
> Position? Drück mal auf "Pos1", damit alles dargestellt wird.

Ist repariert, war was Windows-spezifisches: 
https://github.com/carrotIndustries/horizon/commit...

Autor: N. G. (newgeneration) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

erst einmal danke für die Zeit, die du in dieses Projekt investierst. 
Ist echt super!

Allerdings gibt es eine Kleinigkeit von mir anzumerken:
Ich finde, dass man von den Compiler-Meldungen regelrecht erschlagen 
wird.
Ich mache das bei meinen Makefile-Projekten immer so: sobald ich weiß, 
dass die Compiler-/Linker-Aufrufe stimmen, gebe ich nur noch eine 
Status-Meldung pro Datei aus und nicht mehr die gesamte Command-line.
Dadurch sieht das das kompilieren so aus:
...
Compiling file canvas3d/canvas3d.cpp...
In file included from ./canvas/poly2tri/poly2tri.h:35:0,
                 from canvas3d/canvas3d.cpp:11:
./canvas/poly2tri/common/shapes.h: In Konstruktor »p2t::Point::Point(double, double)«:
./canvas/poly2tri/common/shapes.h:60:29: Warnung: Deklaration von »y« überdeckt ein Element von »p2t::Point« [-Wshadow]
   Point(double x, double y) : x(x), y(y) {}
                             ^
./canvas/poly2tri/common/shapes.h:47:13: Anmerkung: verdeckte Deklaration ist hier
   double x, y;
             ^
...
Compiling file pool-mgr/duplicate/duplicate_window.cpp...
Compiling file resources.cpp...
Compiling file gitversion.cpp...
Linking final file horizon-imp...
Linking final file horizon-pool...
Linking final file horizon-prj...
Linking final file horizon-pool-update-parametric...
Linking final file horizon-prj-mgr...
Linking final file horizon-pool-mgr...
Ich habe das diff-file vom Makefile einfach mal angehängt. Du musst das 
selbstverständlich nicht übernehmen, ist ja auch nur eine kosmetische 
Angelegenheit, die man nur beim kompilieren sieht :-)
Das hat allerdings auch den Vorteil, dass man die Warnings besser sehen 
kann.

Ein weiterer Punkt sind allerdings die ganzen Warnings bezüglich 
gleichnamigen Variablen (-Wshadow). Diese Variablen würde ich 
umbenennen, sonst kommt man teilweise echt durcheinander... :-)


Mit freundlichen Grüßen,
N.G.

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,
ich habe gerade einen reproduzierbaren "crash case" im PCB Layout 
gefunden.

Version: WIN
horizon-2017-12-10-0139.zip

Zeichne mit dl ein Dreieck
Selektiere das ganze Dreieck
Dann Rechtsklick in dem Bereich des selektierten Dreiecks -> Select more
Dann stürzt das Pogramm ab.


Ich hatte übrigens gehofft einen log-file von dem crash zu bekommen. Da 
ist aber keiner. Bekomme ich den log-file nur in der mysys2 Umgebung?

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
N. G. schrieb:
> Ein weiterer Punkt sind allerdings die ganzen Warnings bezüglich
> gleichnamigen Variablen (-Wshadow). Diese Variablen würde ich
> umbenennen, sonst kommt man teilweise echt durcheinander... :-)

Das ist in Code, der nicht von mir ist. Sofern's da keinen dringenden 
Grund zu gibt, fass' ich den nicht an.

N. G. schrieb:
> [...]
> Das hat allerdings auch den Vorteil, dass man die Warnings besser sehen
> kann.

Schaut sinnvoll aus, vielleicht bau' ich das in ner ruhigen Minute noch 
mit der Option die Compiler-Aufrufe anzuzeigen ein.

Helmut S. schrieb:
> ich habe gerade einen reproduzierbaren "crash case" im PCB Layout
> gefunden.

Ist repariert.

Zusätzlich werden jetzt Exceptions aus den Tools abgefangen und 
erscheinen im Log-Fenster.

Autor: Michael H. (overthere)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Unter Ubuntu scheint es ein paar mal ein paar Funktionen nicht zu 
kennen. Hab mal Issue #25 erstellt. Höre jetzt auf mit dem Versuch es zu 
compilieren.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Michael H. schrieb:
> Unter Ubuntu scheint es ein paar mal ein paar Funktionen nicht zu
> kennen. Hab mal Issue #25 erstellt. Höre jetzt auf mit dem Versuch es zu
> compilieren.

Wie schon auf github geschrieben: Da ist dein ubuntu wohl zu alt. Warte 
entweder auf das neue LTS oder upgrade auf 17.04.

Autor: Michael H. (overthere)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Ich habe das Programm am Laufen. Danke an Lukas für den Support.

Ich freue mich, zu sehen, wie dieses Projekt weiterentwickelt wird... 
Vielen Dank an Lukas für die Arbeit schomal. Mach weiter so!

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
6 lesenswert
nicht lesenswert
Gute Neuigkeiten für alle, die den Pool als zip runtergeladen haben und 
keine sinnvolle Möglichkeit hatten, den Pool aktuell zu halten: Seit 
soeben kann der Pool-Manager das: Auf der Startseite mit "Download..." 
den Pool herunterladen, dann gibt's den neuen Tab "Remote" mit dem Knopf 
"Upgrade Pool", mit dem seinen lokalen Pool unter Beibehaltung eigener 
neuer Parts und Änderungen auf den aktuellen Stand bringen kann.

Bald kann der Pool Manager dann auch mithilfe der Github-API für einen 
Pull Requests aufmachen, damit man auch ohne weitere Git-Kenntnisse neue 
Bauteile in den Pool einpflegen kann.

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,
ich habe Probleme beim build für Windows.

$ ./make_bindist.sh

Obiges läuft normal durch.

Wenn ich dann in Windows auf horizon-pool-mgr.exe klicke erhalte ich 
eine Fehlermeldung wegen fehlender libcurl-4.dll.

Gruß
Helmut

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> eine Fehlermeldung wegen fehlender libcurl-4.dll.

Ist repariert. Ein wenig unschön ist allerdings, dass ich auf Windows 
für curl und libgit selber die root-Zertifikate für TLS ausliefern 
muss...

Autor: chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier gibt es ein Tool zum exportieren von Eagle-Designs:
https://hackaday.com/2017/12/21/exporting-eagle-li...
Vielleicht nützt das auch was für dieses Projekt.

Autor: eagle user (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
chris schrieb:
> Hier gibt es ein Tool zum exportieren von Eagle-Designs:

Das Tool müsste ja in den horizon pool einspeisen, ist das überhaupt 
machbar? Nicht nur wegen der unterschiedlichen Datenstrukturen, sondern 
auch, weil im horizon Wiki steht:

> Although you can create your own pool, you are strongly encouraged to
> use the pool over at https://github.com/carrotIndustries/horizon-pool/.
> To add new parts to it, simply submit a merge request.

Wie ist denn das zu verstehen? Ob man wirklich meine Spezialteile im 
Pool haben will, sei mal dahin gestellt. Aber heißt das, wenn ich ein 
neues Bauteile brauche, muss ich warten, bis das im Pool eingepflegt 
ist? Wie ist das gedacht?

Und wo wir gerade dabei sind, das README schreibt:
> Features for developers
> (...)
> Everything is referenced by UUIDs

Die UUIDs müssten doch zentral erzeugt werden? Und trotzdem wären sie 
u.U. nicht eindeutig; wie werden Kollisionen behandelt?

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
eagle user schrieb:
> Die UUIDs müssten doch zentral erzeugt werden? Und trotzdem wären sie
> u.U. nicht eindeutig; wie werden Kollisionen behandelt?

Der Sinn von UUIDs ist, dass man eben ohne zentrale Instanz eindeutige 
IDs erzeugen kann. Da es ca. 3.4×10³⁸ verschiedene UUIDs gibt, klappt 
das auch gut genug. Die Wahrscheinlichkeit, dass Dinge aufgrund eines 
Bugs in meinem Code kaputt gehen, ist deutlich größer, als die, dass man 
über eine doppelte UUID stolpert.

eagle user schrieb:
> Aber heißt das, wenn ich ein
> neues Bauteile brauche, muss ich warten, bis das im Pool eingepflegt
> ist? Wie ist das gedacht?

Nein, selber einpflegen. Derzeit heißt das Forken, Branch machen, 
Bauteil anlegen, Commiten, merge request aufmachen und hoffen dass der 
akzeptiert wird. Dann haben alle was davon. Gerade bin ich dabei, 
GitHub-Integration einzubauen, damit diese Schritte in vereinfachter 
Form direkt im Pool Manager ohne weitere git-Kenntnisse erledigt werden 
können.

eagle user schrieb:
> Das Tool müsste ja in den horizon pool einspeisen, ist das überhaupt
> machbar? Nicht nur wegen der unterschiedlichen Datenstrukturen,

Bei Packages sehe ich einen Importer noch am einfachsten umsetzbar. Bei 
Symbolen muss sich der Importer eben Units und Entities dazu ausdenken. 
Alles in allem kein Hexenwerk, Freiweillige vor :)

Uwe B. schrieb:
> Lukas,
>
> wirst Du auf der FOSDEM im EDA Devroom vortragen?

Ja: https://fosdem.org/2018/schedule/event/cad_horizon/

Auf dem 34C3 bin ich auch anzutreffen, einfach PN schreiben.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Auf dem 34C3 bin ich auch anzutreffen

Hälst du einen Vortrag?

Das Programm ist so riesig, dass ich zumindest auf Anhieb nichts
sehen konnte.  Wenn du einen Vortrag hälst und es zeitlich passt,
würde ich mir den Livestream reinziehen.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Hälst du einen Vortrag?

Ne, dafür ist das Projekt m.E. noch nicht weit genug. Nächstes Jahr dann 
vielleicht.

Autor: Michael H. (overthere)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meine perschönliche Sichtweise auf das CAD-Programm ist, dass es auf dem 
richtigen Weg ist und das was werden könnte. Jedoch denke ich, dass noch 
einiges an Usability-Improvements von Nöten ist - wie Du selbst sagst 
ist das Programm in den Kinderschuhen. So hat KiCad auch mal angefangen.
Was mich an KiCAD stört, ist das die keine Clearance-Matrix haben und 
das auch nicht implementieren wollen. Desshlab möchte ich mal dein 
Program ausprobieren.
Ich habe heute ca. 2h gebraucht, um mir grob mal einen Überblick zu 
verschaffen. Ich erstelle Dir für alles was mir auffällt ein Issue. Das 
kann etwas bombadierend wirken - ist aber so nicht gemeint.
Mit dem Fosdem würde mich auch der Vortrag interessieren - den würde ich 
mir auch gerne dann als Video reinziehen.
Mein Plan ist es eine Testplatine damit zu machen, und mal 5 Euro in 
eine ChinaPCB zu investieren und den Prozess dann in einem separten 
Threat zu dokumentieren. Mal sehen, ob ich das hinbekomme.

EDIT:
Eine Problematik, die ich bei den Pools sehe, was ich aber auch falsch 
sehen könnte, ist falls jemand mist commited, andere darunter leiden. 
Desshalb hatte ich separate Pools vorgeschlagen.
Jedoch sollte falls man nur einen Pool haben sollte, einen Button haben, 
der den Pool automatisch updated. Also, dass man nicht erst 
"umständlich" git clone, etc. machen muss. Praktiker würde das 
abschrecken...

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael H. schrieb:
> Jedoch sollte falls man nur einen Pool haben sollte, einen Button haben,
> der den Pool automatisch updated.

Genau das gibt es doch seit kurzem: Wenn du den Pool mit "Download..." 
heruntergeladen hast, gibt es im Tab "Remote" den Knopf "Upgrade" um den 
lokalen Pool auf den Stand von dem auf Github zu bringen.

Michael H. schrieb:
> ist falls jemand mist commited, andere darunter leiden.

Darum schau ich's mir (und in Zukunft hoffentlich noch andere) an. Das 
entbindet einen als Anwender dennoch nicht davon, das Part selber zu 
verifizieren.

EDIT: Wenn du Bugfixes schnell haben willst, ist es empfehlenswert 
selber zu bauen: 
https://github.com/carrotIndustries/horizon/wiki/B...

: Bearbeitet durch User
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Darum schau ich's mir (und in Zukunft hoffentlich noch andere) an.

Wird aber irgendwann ein Fulltime-Job werden.  Man sollte vorher eine
Strategie haben, wie jeder dann auf seinem privaten Fork des
„offiziellen“ Pools arbeiten kann, von diesem ggf. Updates importiert,
aber ansonsten seine eigenen Bauteile privat hält.

Ein EDA-Programm, welches alle Bauteile in der Bibliothek hat, wird
es ohnehin nicht geben können.  Dazu sind erstens die Hersteller zu
einfallsreich :) und zweitens die Anforderungen der Anwender zu
verschieden.

ps: Viel Spaß auf dem 34C3!

: Bearbeitet durch Moderator
Autor: eagle user (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael H. schrieb:
> Eine Problematik, die ich bei den Pools sehe, was ich aber auch falsch
> sehen könnte, ist falls jemand mist commited, andere darunter leiden.

Ich fürchte, das siehst du richtig. Deswegen sollte man das...

chris schrieb:
> Hier gibt es ein Tool zum exportieren von Eagle-Designs:

...wahrscheinlich vermeiden. Die bei Eagle mitgelieferten Bauteile haben 
mich schon nicht überzeugt, aber was ich bisher aus anderen Quellen 
gefunden habe war den Download nicht wert. Cadsoft hatte ja ein paar 
(wenige) Regeln festgelegt, aber nicht einmal die werden eingehalten.

Die Idee, im Pool nur die originale Herstellernummer zu verwenden, finde 
ich ausgezeichnet (ich hoffe, ich hab' das richtig verstanden). Das ist 
schon mal sehr viel besser als die Praxis bei Eagle.

Autor: Michael H. (overthere)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bauteile genau anzulegen, und zu pflegen ist ein heiden Aufwand. 
Desshalb gibt es ja SnapEDA, Librarian und wie die alle heißen.
Eventuell könnte man sich mit denen zusammentun?

Für den Anfang kann ich gerne helfen, über die Bauteile drüber zu 
schauen, die reinkommen. Falls Hilfe gewünscht ist.

Autor: Bernd Wiebus (berndwiebus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Eagle user und Michael
.

eagle user schrieb:

>> Hier gibt es ein Tool zum exportieren von Eagle-Designs:
>
> ...wahrscheinlich vermeiden. Die bei Eagle mitgelieferten Bauteile haben
> mich schon nicht überzeugt, aber was ich bisher aus anderen Quellen
> gefunden habe war den Download nicht wert.

Das wird wohl so für jede x-beliebige Quelle gelten, weil halt auch 
jeder andere Vorstellungen von einer guten Bibliothek hat.

Darum wird niemand, der sich ernsthaft mit Schaltplänen und 
Platinenlayout beschäftigt, darumherum kommen, sich seine eigene 
Bibliothek zusammenzustellen, die er irgendwann halt auch gut kennt, und 
von deren Bestandteilen er weiss, dass sie auch im Zusammenhang mit 
seinen anderen "Systemen" gut funktioniert.

Offizielle Bibliotheken sind eigentlich nur ein erster Vorschlag, den 
man oft so aktzeptieren kann, aber auch genauso oft anpassen muss, und 
der auch immer auf Fehler überprüft werden muss.

Darum kann ein breiter Zugriff auch auf fremde Bibliotheken sehr 
sinnvoll sein.

Snapeda bietet eine breite Palette von Programmen, in deren Format 
exportiert werden kann, aber nur Eagle und KiCad haben davon offene bzw. 
sogar freie Formate.
 Snapeda: https://www.snapeda.com/

Viele Distributoren bieten den Download von Bibliotheken zu denen von 
ihnen vertriebenen Bauteilen an wie zum Beispiel Farnell oder Digikey. 
Das sind dann auch meistens Eagle oder KiCad Bibliotheken.

Digikey: 
https://www.digikey.de/de/news/press-releases/2017...

Es ist also eher angeraten, eine Import und Exportfunktion für 
gängige
Bibliotheksformate zu schreiben.
Gängig und offen oder sogar frei sind aber nur drei: Eagle, KiCad und 
gEDA.


Michael H. schrieb:
> Bauteile genau anzulegen, und zu pflegen ist ein heiden Aufwand.
> Desshalb gibt es ja SnapEDA, Librarian und wie die alle heißen.

Das haut in die gleiche Kerbe.

> Eventuell könnte man sich mit denen zusammentun?

Warum soll man in den Format Zoo ein weiteres Format einbringen, solange 
es offene und freie gibt?
Lieber auf ein freies vorhandenes gehen, was auch schon unterstützt 
wird. Ein neues Format müsste schon eine erhebliche Verbreitung 
bekommen, bevor es bei diesen Anbietern aufgenommen würde.

KiCad wäre ein guter Kandidat als Austauschformat , weil dort Symbol, 
Footprint und 3D-Modell zusammengefasst werden können ,
 aber nicht zusammengefasst werden müssen . Es ist also in dieser 
Hinsicht sehr flexibel.

eagle user schrieb:

> Cadsoft hatte ja ein paar
> (wenige) Regeln festgelegt, aber nicht einmal die werden eingehalten.

Es ist erstens auch immer die Frage, was an Regel sinnvoll ist, und 
zweitens selbst wenn irgendwann einmal alle Bibliotheken konform mit den 
Regeln sind, und die Regeln werden überarbeitet, ist es ein großer 
Arbeitsaufwand bzw. Zeitaufwand, die vorhandenen Bibliotheken 
anzupassen.
Die Bibliotheken hinken den Regeln also immer hinterher.

Das habe ich bei Eagle so bemerkt, und bei KiCad eben auch. Bei KiCad 
existiert für das Bibliotheksprojekt (was vom eigentlichen KiCad Projekt 
sogar getrennt ist) ein Regelwerk: 
https://github.com/KiCad/kicad-library/wiki/Kicad-...

Wer zu der Bibliothek beitragen will, kann das nur, wenn irgend jemand 
anderes die Bibliothek auf Konsens mit dem aktuellen Regelwerk überprüft 
hat.

> Die Idee, im Pool nur die originale Herstellernummer zu verwenden, finde
> ich ausgezeichnet (ich hoffe, ich hab' das richtig verstanden). Das ist
> schon mal sehr viel besser als die Praxis bei Eagle.

Das ist ein guter Ansatz. Aber natürlich sind auch alternative Symbole 
und Footprints für das gleiche Bauteil sinnvoll.

Im Schaltplan möchtest Du einmal z.B. eine monolitische Darstellung für 
z.B. ein Relais, wo Spule und Kontaktsätze zusammengefasst sind, aber 
auch eins in aufgelöster Darstellung wo Spule und Kontaktsätze getrennt 
sind, um sie bei größeren Schaltplänen verteilen zu können.
Je nach den Umständen ist das eine oder andere Sinnvoll.

Bei Footprints gibt es bei THT Bauteilen oft die Möglichkeit, sie 
liegend oder stehend zu montieren, oder allgemein kleine Pads wo Dichte 
oder Isolationsabstand wichtig sind, oder aber große Pads, wo Platz ist, 
aus Robustheitsgründen.

Viele Bauteile existieren mit einem mehr oder weniger Festgelegten 
Gehäuse. Für diese sind generische Footprints gut, die man bei Bedarf 
auch ändern kann.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd W. schrieb:
> Das ist ein guter Ansatz. Aber natürlich sind auch alternative Symbole
> und Footprints für das gleiche Bauteil sinnvoll.

Das funktioniert bereits.

Die GitHub-Integration zum Erstellen von Pull Requests gibt's nun auch: 
https://github.com/carrotIndustries/horizon/wiki/W...

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,
das kompilieren in mysys2 bringt eine "Fehler"-Meldung - scheint aber 
trotzdem richtig kompiliert zu haben. Idee?
Helmut

Autor: Mar. Wa. (elektrowagi78) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd W. schrieb:
> KiCad wäre ein guter Kandidat als Austauschformat , weil dort Symbol,
> Footprint und 3D-Modell zusammengefasst werden können ,
>  aber nicht zusammengefasst werden müssen . Es ist also in dieser
> Hinsicht sehr flexibel.

FÜhrt aber nicht gerade zur Standardisierung eines Übergabeformats, weil 
dann wieder jeder macht, was er möchte.

Andererseits: Wer baucht bei der Übergabe von Produktionsdaten Symbole? 
Genau das möchte Ich z.B. nicht. Der Produzent soll die Platine machen 
und mehr nicht, weil Prototyp.

Bei einer Serie ist es was anderes.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Hallo Lukas,
> das kompilieren in mysys2 bringt eine "Fehler"-Meldung - scheint aber
> trotzdem richtig kompiliert zu haben. Idee?
> Helmut

Richtig gebaut haben kann es damit nicht, ist repariert.

Autor: chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd Wiebus (berndwiebus) Benutzerseite
>Das wird wohl so für jede x-beliebige Quelle gelten, weil halt auch
>jeder andere Vorstellungen von einer guten Bibliothek hat.

>Darum wird niemand, der sich ernsthaft mit Schaltplänen und
>Platinenlayout beschäftigt, darumherum kommen, sich seine eigene
>Bibliothek zusammenzustellen, die er irgendwann halt auch gut kennt, und
>von deren Bestandteilen er weiss, dass sie auch im Zusammenhang mit
>seinen anderen "Systemen" gut funktioniert.

Das genau bringt mich jedes Mal auf die Palme, wenn ich darüber 
nachdenke.
Ich habe schon in Firmen gearbeitet, bei denen ein Mann mit nichts 
anderem beschäftigt ist, als Bauteile anzulegen. Wenn man dann ein Neues 
braucht, muss man jedes Mal warten, bis der Zeit hat.
Jeder Hersteller eines Bauteils wird sein Bauteil wohl mit einem 
CAD-System konstruiert haben. Gäbe es eine einheitliches Format wie z.B. 
DIN, wäre die ganze Blindleistung dass jede Firma wieder ihr eigenes 
Bauteil anlegen muss, unnötig.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
chris schrieb:
> Gäbe es eine einheitliches Format wie z.B. DIN, wäre die ganze
> Blindleistung dass jede Firma wieder ihr eigenes Bauteil anlegen muss,
> unnötig.

Du hast noch nicht verstanden, dass es absolut nicht am fehlenden
Format liegt, sondern dass einfach jede Firma ihre eigenen Ideen hat,
was beim Anlegen eines Bauteils wichtig ist, wie sich das Ding in
die firmeneigene Infrastruktur integriert etc. pp.  Die paar Striche
zu zeichnen, ist dabei fast der geringste Anteil an Arbeit.  Die
MechCAD-Daten bekommt man mittlerweile teilweise sogar von den
Herstellern (genauso wie die 3D-CAD-Daten).

Gehört aber nicht hierher, hier geht es um Horizon.

: Bearbeitet durch Moderator
Autor: Klaus Rotter (klausro)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich konnte heute (nach einem Update "git pull; make") den interaktiven 
Router nicht mehr starten. Ich hatte ein paar Leiterbahnen gelöscht und 
wollte diese neue verlegen. Fehlermeldung siehe Bildschirmfoto.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus R. schrieb:
> Ich konnte heute (nach einem Update "git pull; make") den interaktiven
> Router nicht mehr starten. Ich hatte ein paar Leiterbahnen gelöscht und
> wollte diese neue verlegen. Fehlermeldung siehe Bildschirmfoto.

Hallo Klaus,

ich konnte den von dir beschriebenen Fehler in WIN10 nicht 
nachvollziehen.

Falls du einen WIndows-Rechner hast, dann könntest du es mal mit der von 
Lukas generierten WIN-Version vom 01.01.2018 testen.

http://0x83.eu/horizon-zip/

Gruß
Helmut

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus R. schrieb:
> den interaktiven
> Router nicht mehr starten.

Endlich kommt das Logging mal Sinnvoll zum Einsatz. Davor wäre das ganze 
Programm abgestürzt :)

Der Fehler kam, daher, dass in deinem eigenen Padstack beim SSOP-28 aus 
noch unbekannter Ursache Polygone ohne Vertices waren. Jetzt werden 
diese nicht mehr geladen.

: Bearbeitet durch User
Autor: Klaus Rotter (klausro)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Der Fehler kam, daher, dass in deinem eigenen Padstack beim SSOP-28 aus
> noch unbekannter Ursache Polygone ohne Vertices waren. Jetzt werden
> diese nicht mehr geladen.

Ja, danke! Jetzt geht es. Die "eigenen Padstacks" haben leider mir schon 
etwas Kummer bereitet. Hätte ich nur am Anfang kapiert, dass die schon 
vorhandenen Padstacks parametrisierbar sind... wüsste jetzt nicht, wo 
man dann noch eigene bräuchte.

Autor: Peter B. (peter_b188)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Lukas!

Ich habe gestern ganz zufällig dein Projekt gefunden und ich muss dir 
wirklich sagen: Hut ab!
Ich hatte das gleiche schon (einfaches Tool, globale Library (hier 
Pool), usw.) vor ein paar Jahren vor zu implementieren, jedoch fehlte 
mir einfach die Zeit dafür.
Ich bin dir auf jeden Fall sehr dankbar für deine Mühe :)

Auf Github hast du sicherlich schon mitbekommen, dass ich hier auch mit 
arbeiten möchte bzw. auch schon mache (Github-user: peterus).
Unter anderem habe ich bereits ein Script erstellt um die SMD 
Widerstände der Größen 0402, 0603, 0805 und 1206 in der E12-Reihe 
automatisch zu generieren (von 0 bis 100MOhm).
Das hab ich eigentlich einmal nur gemacht, um mich mit den Pool-Daten 
näher zu beschäftigen.

Wenn du nichts dagegen hast, würde ich gerne das makefile "austauschen" 
auf cmake. Ich benütze cmake schon seit ein paar Jahren und man hat 
damit einige mehr Vorteile (auflösen von externen Bibliotheken ist 
einfacher, es gibt mehrere config files, logging von dem was man sehen 
möchte, logging ist auch schöner, usw.).
Zusätzlich würde ich auch gleich ein bisschen aufräumen und ein bisschen 
eine bessere Struktur rein bringen wo die Daten gespeichert sind.

Anfangen würde ich damit, dass ich mal alle cpp's und hpp's durch gehe 
und einen Header mit Lizenz rein schreiben lasse mit einem Script.

edit: habs mir anders überlegt: Lizenz solltest du übernehmen :)

: Bearbeitet durch User
Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter B. schrieb:
> Ich bin dir auf jeden Fall sehr dankbar für deine Mühe :)
Schön zu hören :)

> Auf Github hast du sicherlich schon mitbekommen, dass ich hier auch mit
> arbeiten möchte bzw. auch schon mache (Github-user: peterus).
> Unter anderem habe ich bereits ein Script erstellt um die SMD
> Widerstände der Größen 0402, 0603, 0805 und 1206 in der E12-Reihe
> automatisch zu generieren (von 0 bis 100MOhm).
> Das hab ich eigentlich einmal nur gemacht, um mich mit den Pool-Daten
> näher zu beschäftigen.

Okay, aber eigentlich will ich im Pool nur Bauteile mit MPN und 
Hersteller haben, bzw. die CPL-Teilenummern, die man mit den 
Octopart-Bomtool zu echten Bauteilen zuordnen kann. Mir schwebt vor, 
dass man zukünftig die exportierte BOM direkt bei Octopart oder Digikey 
einwerfen und dann einfach bestellen kann.

Allerdings hat nicht jedes Projekt diesen Anspruch und so generische 
Widerstände können dafür durchaus praktisch sein, mal drüber nachdenken.

> Wenn du nichts dagegen hast, würde ich gerne das makefile "austauschen"
> auf cmake. Ich benütze cmake schon seit ein paar Jahren und man hat
> damit einige mehr Vorteile (auflösen von externen Bibliotheken ist
> einfacher, es gibt mehrere config files, logging von dem was man sehen
> möchte, logging ist auch schöner, usw.).

Bis jetzt fehlt mir an make eigentlich nichts wirklich, was die 
zusätzliche Komplexität rechtfertigen würde. Externe Bibliotheken zu 
finden klappt mit pkg-config auf meinen Zielplattformen auch hinreichend 
gut.

> Zusätzlich würde ich auch gleich ein bisschen aufräumen und ein bisschen
> eine bessere Struktur rein bringen wo die Daten gespeichert sind.
Wie meinst du das genau? Jetzt bezogen auf pool oder source code?

> Anfangen würde ich damit, dass ich mal alle cpp's und hpp's durch gehe
> und einen Header mit Lizenz rein schreiben lasse mit einem Script.
>
> edit: habs mir anders überlegt: Lizenz solltest du übernehmen :)
Auch wenn es mir persönlich missfällt, muss das wohl so sein...

Autor: Peter B. (peter_b188)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Okay, aber eigentlich will ich im Pool nur Bauteile mit MPN und
> Hersteller haben, bzw. die CPL-Teilenummern, die man mit den
> Octopart-Bomtool zu echten Bauteilen zuordnen kann. Mir schwebt vor,
> dass man zukünftig die exportierte BOM direkt bei Octopart oder Digikey
> einwerfen und dann einfach bestellen kann.

Kann ich voll und ganz verstehen, jedoch gibt es hier gerade ein mal ein 
paar Widerstände in der CPL-Bibliothek. Ich hab mich ein bisschen 
eingelesen in das CPL und heraus gefunden, dass diese nur die meist 
benutzten Sachen rein stellen. Das heißt, dass dort nie ein Widerstand 
sein wird mit 5.6k (in 1206) weil dieser nicht unter den meist benützten 
ist.
Angenommen ich möchte nun ein Projekt bauen wo dieser Widerstand 
benötigt wird. Ich kann ihn auch kaufen, nur gibt es den nicht im Pool - 
wäre ziemlich blöd...

> Bis jetzt fehlt mir an make eigentlich nichts wirklich, was die
> zusätzliche Komplexität rechtfertigen würde. Externe Bibliotheken zu
> finden klappt mit pkg-config auf meinen Zielplattformen auch hinreichend
> gut.

Sobald das Projekt größer wird, wird es viel einfacher zum managen ;) 
Spreche da aus guter Erfahrung aus der Arbeit usw.

> Wie meinst du das genau? Jetzt bezogen auf pool oder source code?

Der Pool ist schon gut strukturiert!
Beim Source Code habe ich sehr lange gebraucht bis ich verstanden habe 
wie wo was liegt. Bzw. was außerdem auch ein externer Code ist.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Peter B. schrieb:
> Angenommen ich möchte nun ein Projekt bauen wo dieser Widerstand
> benötigt wird. Ich kann ihn auch kaufen, nur gibt es den nicht im Pool -
> wäre ziemlich blöd...

Meine (vielleicht utopische) Idee war, dass der Anwender sich dann auf 
digikey den gewünschten Widerstand aussucht und mit einem Skript wie 
deinem gleich die ganze Serie des Herstellers in den Pool einpflegt.

Wenn man sich beim Design der Schaltung nicht von sowas aufhalten lassen 
will, kann man auch einfach im Schaltplan den Widerstand auch ohne Part, 
nur als Entity, platzieren und den Wert einfach eintippen. Später kann 
man dann das Anlegen von den Bauteilen nachholen und mit dem "Assign 
Part"-Tool den Widerständen das richtige Part zuweisen.

Peter B. schrieb:
> Beim Source Code habe ich sehr lange gebraucht bis ich verstanden habe
> wie wo was liegt. Bzw. was außerdem auch ein externer Code ist.

Okay, man könnte alles externe (clipper, etc) in einen 
"3rd_party"-Ordner stecken, damit das besser getrennt ist. Was hat dich 
sonst so konkret gestört?

Autor: Mampf F. (mampf) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Meine (vielleicht utopische) Idee war, dass der Anwender sich dann auf
> digikey den gewünschten Widerstand aussucht und mit einem Skript wie
> deinem gleich die ganze Serie des Herstellers in den Pool einpflegt.

Man sollte daran denken, dass mittlerweile 3d-Fähigkeit ein Must-Feature 
ist.

KiCad kann es ja schon und ich würde mit keinem (neuen) Programm mehr 
arbeiten wollen, das keine 3d-Fähigkeiten hat.

Autor: A. N. (nero)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht könnte man wieder die 3D Ansicht von KiCad in horizon 
integrieren!

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mampf F. schrieb:
> Man sollte daran denken, dass mittlerweile 3d-Fähigkeit ein Must-Feature
> ist.

Das trifft sich gut, da bin ich gerade dran :) Laden von STEP-Modellen 
mit opencascade klappt schon, an der richtigen Stelle in der 3D-Vorschau 
sind sie auch schon. Fehlt nur noch ein bisschen drumherum. Der Code zum 
STEP-Importieren mit opencascade ist weitestgehend von 
https://github.com/KiCad/kicad-source-mirror/blob/... 
abgekupfert.

STEP-Export steht auch der Roadmap, das wird dann darauf hinauslaufen 
kicad2step zu portieren.

A. N. schrieb:
> Vielleicht könnte man wieder die 3D Ansicht von KiCad in horizon
> integrieren!

Ne, die haben aus mir unbekannten Gründen gleich ein ganzes 
Scenegraph-Framework implementiert und verwenden legacy-OpenGL.
Ich werfe die Vertices und Indizes für die Dreiecke aller Bauteile auf 
dem Board in VBOs auf die GPU und kann diese dann durch instancing 
mehrfach an den vorgesehenen Positionen rendern.

: Bearbeitet durch User
Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welche Funktion hat das Icon "Herz" im Part Browser?
Ich kann keine Funktion beim anklicken erkennen.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Welche Funktion hat das Icon "Herz" im Part Browser?
> Ich kann keine Funktion beim anklicken erkennen.

Das fügt das ausgewählte Part den Favoriten (links im Fenster) hinzu, 
bzw. entfernt es daraus.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Helmut S. schrieb:
>> Welche Funktion hat das Icon "Herz" im Part Browser?
>> Ich kann keine Funktion beim anklicken erkennen.
>
> Das fügt das ausgewählte Part den Favoriten (links im Fenster) hinzu,
> bzw. entfernt es daraus.

Danke. Da hätte ich auch selber draufkommen müssen. :-)

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Mampf F. schrieb:
>> Man sollte daran denken, dass mittlerweile 3d-Fähigkeit ein Must-Feature
>> ist.
>
> Das trifft sich gut, da bin ich gerade dran :) Laden von STEP-Modellen
> mit opencascade klappt schon, an der richtigen Stelle in der 3D-Vorschau
> sind sie auch schon. Fehlt nur noch ein bisschen drumherum. Der Code zum
Unglaublich! Habe es direkt mal ausprobiert, stecke aber beim Laden der 
Step-Datei fest. Im 3D-View des Packages klicke ich auf den 
Browse-Button für die Step-Datei, wählt diese aus und schließe dann den 
Datei-Dialog. Passieren tut allerdings nichts. Der Dateiname erscheint 
auch nicht im Textfeld vor dem Browse-Button. Das hätte ich erwartet. 
Ist das der richtige Weg? Wo liegen die Step-Dateien, wenn man sie denn 
mal hochgeladen bekommt?

  Uwe

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sodele, STEP-Modelle funktionieren nun grundlegend einige Worte dazu 
noch: Integration in die Download/Upgrade-Infrastruktur fehlt noch, 
kommt aber bald.

Angedacht war das dann so: Im Pool wird es dann neben  packages, 
entities, etc. noch den Ordner "3d_models" geben, in dem dann alle 
STEP-Dateien an Zentraler stelle liegen, also teil des Pools werden.

Da die Lizenzbedingungen einiger Hersteller es nicht erlauben, deren 
Modelle weiterzuverteilen, wird es noch einen Ordner geben, in den man 
dann selber die Modelle mit dem richtigen Dateinamen ablegen kann.

Geduldet euch am besten noch ein Paar Tage, dann wird aus dem Futur im 
Absatz oben auch Präsens ;)

Uwe S. schrieb:
> Das hätte ich erwartet.
> Ist das der richtige Weg? Wo liegen die Step-Dateien, wenn man sie denn
> mal hochgeladen bekommt?

Da hat noch eine Fehlermeldung gefehlt (ist jetzt drin), die einem sagt, 
dass sich die Datei nicht im Pool befindet. Damit man keine absoluten 
Pfade hat, werden die Dateinamen relativ zum Pool gespeichert. Wenn du 
deine Modelle in einen Unterordner des Pools kopiert, sollte es klappen.

Autor: tester (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welches dev package braucht man denn dafür?

util/step_importer.cpp:2:10: fatal error: TDocStd_Document.hxx: Datei 
oder Verzeichnis nicht gefunden
 #include <TDocStd_Document.hxx>
          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
tester schrieb:
> Welches dev package braucht man denn dafür?
>
> util/step_importer.cpp:2:10: fatal error: TDocStd_Document.hxx: Datei
> oder Verzeichnis nicht gefunden
>  #include <TDocStd_Document.hxx>
>           ^~~~~~~~~~~~~~~~~~~~~~
> compilation terminated.

Unter Debian versuchs mal mit liboce-ocaf-dev

  Uwe

Autor: tester (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe S. schrieb:
> Unter Debian versuchs mal mit liboce-ocaf-dev

Ja, danke, das wars. Noch ein Job für Lukas, Wahrscheinlich wieder mein 
vermurkstes Padstack. Wenn ich im Board auf die 3D Ansicht gehe, crashed 
horizon.

klaus@Yoga:~/horizon/horizon$ ./horizon-prj-mgr
SELECT parts.uuid, parts.MPN, parts.manufacturer, packages.name, 
GROUP_CONCAT(tags.tag, ' '), parts.filename, parts.description FROM 
parts LEFT JOIN tags ON tags.uuid = parts.uuid LEFT JOIN packages ON 
packages.uuid = parts.package WHERE parts.MPN LIKE ? AND 
parts.manufacturer LIKE ? AND (parts.entity=? or ?) GROUP BY parts.uuid 
ORDER BY parts.MPN COLLATE naturalCompare ASC
col 2
create proc
spawn /home/klaus/horizon/horizon/horizon-imp -b 
/home/klaus/horizon/proj/rpi-codec/board.json 
/home/klaus/horizon/proj/rpi-codec/top_block.json 
/home/klaus/horizon/proj/rpi-codec/vias
imp rx null

(horizon-imp:4658): glibmm-ERROR **:
unhandled exception (type std::exception) in signal handler:
what: [Unsupported] Opposing point on constrained edge

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
tester schrieb:
> unhandled exception (type std::exception) in signal handler:
> what: [Unsupported] Opposing point on constrained edge

Oh, den kennen wir doch:

Klaus R. schrieb:
> [...]
> terminate called after throwing an instance of 'std::runtime_error'
>   what():  [Unsupported] Opposing point on constrained edge
> end proc 4244
> exit stat 134

Da es jetzt Logging gibt, hab ich das die exception abgefangen und ein 
Log-Eintrag draus gemacht: 
https://github.com/carrotIndustries/horizon/commit... 
Dann fehlt immerhin nur die Füllung beim Silkscreen an der Stelle, an 
der's hinfällt.

Autor: tester (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke. Die Exception wird jetzt abgefangen.

Autor: Helmut S. (helmuts)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lukas,

"make" in mysy64 (WIN 10) funktioniert seit heute nicht mehr. Es bricht 
einfach nach kurzer Zeit ab.

Gruß
Helmut

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut S. schrieb:
> Hallo Lukas,
>
> "make" in mysy64 (WIN 10) funktioniert seit heute nicht mehr. Es bricht
> einfach nach kurzer Zeit ab.
>
> Gruß
> Helmut

Seit heute ist opencascade zum Laden von den STEP-Modellen eine 
Abhängigkeit: 
https://github.com/carrotIndustries/horizon/wiki/B...

Zum Installieren:
pacman -Sy mingw-w64-x86_64-oce 

Autor: Peter B. (peter_b188)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Lukas!

Ich arbeite schon seit ein paar Tagen an einer Restrukturierung so dass 
du normal weiter entwickeln kannst und ich mich eben um ein paar andere 
Punkte kümmere (Liste weiter unten).
Nachdem das schon langsam ein bisschen größer geworden ist, wollte ich 
mich einmal mit dir absprechen welche Änderungen du übernehmen würdest 
und welche nicht (nicht das ich hier einige Tage arbeite und du die 
Änderungen e nicht rein-mergen möchtest).

Hier ist die Liste mit einer Erklärung zu jedem Punkt wieso ich denke 
das diese Änderung besser ist:
1) externer Code wurde in den Ordner "extern" verschoben (umbenennen in "3part"?) -> Trennung zwischen Projekt-Code und externen/3part-Code
2) Projekt-Code wurde in src/* verschoben -> Übersichtlicher Platz für den Code
3) Umstellung von Makefile auf CMake -> siehe weiter unten
4) Include-Dirs verringert (die Einzelnen Module müssen jetzt angegeben werden beim Include) -> damit Abhängigkeiten einfacher ersichtlich sind
5) gresources von CMake erstellen lassen -> Vereinfachung von einem Build Schritt für CMake
6) board/board_layers.hpp Konstanten in einem enum verwandelt -> kann mit einer Shared-Lib (cmake) nicht mehr verwendet werden (Linker Error mit CMake), Umwandlung in einem enum war ohne weiteres einfach möglich.

Natürlich gibt es hier leider ein paar Abhängigkeiten:
Wenn 3) gemacht werden soll, muss auch 5) und 6) durchgeführt werden. 
Auch anders herum 5) ist Abhängig von 3) und das wiederum von 6)!

Wieso nun CMake:
* Du kannst unabhängig vom Buildsystem arbeiten -> Projekt kann mit 
Makefile, Visual Studio, <Buildsystem deiner Wahl> usw. geöffnet werden.
* Wenn eine neue externe Library hinzugefügt wird (so wie jetzt gerade 
der Fall ist), meckert schon CMake von vornherein das die Library fehlt 
und es wird noch gar nicht gebaut. Außerdem bekommt man eine genaue 
Fehlerbeschreibung wieso und was fehlt.
* Nettere Ausgabe (ok, ist Ansichtssache. Aber ich finde es cool das ich 
den Buildvorschritt mit %e sehen kann)

So... das hab ich mal in den letzten 3 bis 4 Tagen fast alles erledigt! 
Nachdem es aber dein Projekt ist und du das sagen darüber hast, möchte 
ich dir da nicht auf die Füße treten und gleich einen riesigen "pull 
request" los schicken :)
Ich bin gerne offen meine Änderungen auf deine neusten Änderungen 
aufzusetzen, würde aber gerne wissen mit was du einverstanden wärst und 
was ich dir alles schicken darf. Dann würde ich das Schritt für Schritt 
auf mehrere Pull Requests aufteilen, so dass du und ich nicht zu viel 
zum ändern haben ;)

------------------------------------------------------------------------

Bezüglich der Änderungen vom Pool die von mir noch offen sind:
Mit dem Original Namen von der CPL Lib, kann ich aber auch nicht direkt 
in der SnapEDA's Library suchen.
Möchte ich zb. einen 100Ohm Widerstand in 1206 haben finde ich in der 
CPL diesen Eintrag: CPL-RES-1206-100-0.25W
Gehe ich nun auf die SnapEDA's Seite und gebe diesen Begriff bei der 
Suche ein, bekomme ich kein Ergebnis! Oder gibt es hier eine andere 
"Suche" wenn ich schon diesen Begriff habe?

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Cool, dass mal jemand anders den Sourcecode anfasst :)

Peter B. schrieb:
> 1) externer Code wurde in den Ordner "extern" verschoben (umbenennen in
> "3part"?) -> Trennung zwischen Projekt-Code und externen/3part-Code
Sehr schön :)

> 2) Projekt-Code wurde in src/* verschoben -> Übersichtlicher Platz für
> den Code
Geschmackssache, ist aber wohl so üblich, also ja.

> 3) Umstellung von Makefile auf CMake -> siehe weiter unten
Hast mich überzeugt. Insb. kann dann opencascade eine optionale 
Abhängigkeit werden und man kann auf 
https://github.com/FreeCAD/FreeCAD/blob/master/cMa... 
aufbauen.

> 4) Include-Dirs verringert (die Einzelnen Module müssen jetzt angegeben
> werden beim Include) -> damit Abhängigkeiten einfacher ersichtlich sind
Das hatte ich schon längers vor, aber war immer zu faul dazu. Danke! 
Ganz früher war alles in einem Ordner drin, als ich dann Zeug in Ordner 
einsortiert hatte, war ich zu faul zum Includes anpassen. -I war da am 
einfachsten...

> 5) gresources von CMake erstellen lassen -> Vereinfachung von einem
> Build Schritt für CMake
D.h. man gibt Cmake die liste von ressourcen?

> 6) board/board_layers.hpp Konstanten in einem enum verwandelt -> kann
> mit einer Shared-Lib (cmake) nicht mehr verwendet werden (Linker Error
> mit CMake), Umwandlung in einem enum war ohne weiteres einfach möglich.
Oh, ganz vergessen, dass es die neben scoped enums auch noch gibt, danke 
:)

Peter B. schrieb:
> Oder gibt es hier eine andere
> "Suche" wenn ich schon diesen Begriff habe?
Octopart, da kommen dann Widerstände von mehreren Herstellern zur 
Auswahl.
Das schöne an den CPL-Parts ist, dass sich schon jemand anders eine 
Zuordnung von generischer Part-Nummer zu MPN gemacht hat. Wenn es da 
noch andere Schemata gibt, sind die auch gerne gesehen, Hauptsache man 
bekommt automatisch eine MPN raus.

Autor: Peter B. (peter_b188)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Cool, dass mal jemand anders den Sourcecode anfasst :)

Ja ich kenn das leider zu gut von einigen Projekten von mir. Da werkelt 
man ewig lange herum und es gibt zwar viele Interessenten, aber am 
Schluss steht ma dann doch fast ganz alleine da.
Da freut man sich schon wenn mal jemand anderer mit anpackt :)

> Geschmackssache, ist aber wohl so üblich, also ja.
Du hast hald den Vorteil, dass du wirklich den gesamten Code auf einem 
Platz hast. Alles was nicht Code ist, kommt einfach wo anders hin und es 
gibt eine Trennung dazwischen ;)

>> 3) Umstellung von Makefile auf CMake -> siehe weiter unten
> Hast mich überzeugt. Insb. kann dann opencascade eine optionale
> Abhängigkeit werden und man kann auf
> https://github.com/FreeCAD/FreeCAD/blob/master/cMa...
> aufbauen.
Guter Punkt und wird dann von mir auch gleich mit umgesetzt!

>> 4) Include-Dirs verringert (die Einzelnen Module müssen jetzt angegeben
>> werden beim Include) -> damit Abhängigkeiten einfacher ersichtlich sind
> Das hatte ich schon längers vor, aber war immer zu faul dazu. Danke!
> Ganz früher war alles in einem Ordner drin, als ich dann Zeug in Ordner
> einsortiert hatte, war ich zu faul zum Includes anpassen. -I war da am
> einfachsten...
:) In der Zwischenzeit ist das Projekt ja schon ziemlich groß geworden, 
da muss schon eine Struktur her, sonst wird das nur Chaos.

>> 5) gresources von CMake erstellen lassen -> Vereinfachung von einem
>> Build Schritt für CMake
> D.h. man gibt Cmake die liste von ressourcen?
Ja genau (gibt dafür extra eine CMake Erweiterung). Es werden dann 
automatisch die Files überprüft ob diese existieren und danach wird das 
xml erstellt und dann das Cpp file.

>> Oder gibt es hier eine andere
>> "Suche" wenn ich schon diesen Begriff habe?
> Octopart, da kommen dann Widerstände von mehreren Herstellern zur
> Auswahl.
> Das schöne an den CPL-Parts ist, dass sich schon jemand anders eine
> Zuordnung von generischer Part-Nummer zu MPN gemacht hat. Wenn es da
> noch andere Schemata gibt, sind die auch gerne gesehen, Hauptsache man
> bekommt automatisch eine MPN raus.
Jaaa stimmt... wenn ich jetzt meine generierten Namen verwende kommt man 
nicht gleich auf ein Ergebnis. Man muss erst die "-" entfernen und dann 
kommt auch was raus. Da muss man noch was machen :)

Autor: Michael H. (overthere)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat jemand schon Symbole erstellt?
Ich brauche z.B. einen OpAmp. Aber irgendwie sehe ich z.B. nicht wo ich 
die Pins hinzufügen kann. Gibts da einen Trick?

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael H. schrieb:
> Hat jemand schon Symbole erstellt?
> Ich brauche z.B. einen OpAmp. Aber irgendwie sehe ich z.B. nicht wo ich
> die Pins hinzufügen kann. Gibts da einen Trick?

Bei horizon werden die Pins eines Bauteils nicht im Symbol definiert, 
sondern in der Unit: 
https://github.com/carrotIndustries/horizon/wiki/T...

Du legst dir also für dein Bauteil eine neue Unit an, trägst dort die 
Pins ein und legst dann eines oder mehr Symbole dazu an.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm. Und wie soll dann ein Bauelement mit z.B. der typischen Varianten 16 
Pins als DIP und 20 Pins als SMT definiert werden?

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Hm. Und wie soll dann ein Bauelement mit z.B. der typischen Varianten 16
> Pins als DIP und 20 Pins als SMT definiert werden?

Da legst du einfach ein zweites Bauteil an.

Autor: Uwe Steinmann (steinm)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

diese 3D-Modelle machen mir gerade wahnsinnig. Angehängt sind mal zwei 
Screenshots. Einmal das Bauteil in FreeCAD und dann das importierte 
Bauteil in Horizon. Jetzt frage ich mich warum da zwei Beine fehlen und 
der Ursprung so verschoben ist. Wie muss man denn so ein Bauteil 
anlegen, damit es passend auf der Platine erscheint?

  Uwe

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Linkes Bild ist auch noch ein Bug drin. Schau dir den Mittelpin oberhalb 
0,0,0 an. Da ist er irrtümlich transparent. Sieht zumindest so aus.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uwe S. schrieb:
> . Jetzt frage ich mich warum da zwei Beine fehlen und
> der Ursprung so verschoben ist. Wie muss man denn so ein Bauteil
> anlegen, damit es passend auf der Platine erscheint?

Hast du mir mal die STEP-Datei?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Linkes Bild ist auch noch ein Bug drin. Schau dir den Mittelpin oberhalb
> 0,0,0 an. Da ist er irrtümlich transparent. Sieht zumindest so aus.

Nö, das ist nur der eingeblendete Koordinatenursprung mit der Z-Achse,
die blau dargestellt ist und direkt auf der Oberfläche des Anschlusses
liegt.

Autor: Uwe Steinmann (steinm)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier ist mal step Datei.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Uwe S. schrieb:
> Hier ist mal step Datei.

Hab ich's mir doch schon fast gedacht, dass ich noch die Platzierung von 
Unterobjekten berücksichtigen muss. Mit den Modellen, die ich so in der 
Hand hatte, ging's auch ohne...

Ist in 
https://github.com/carrotIndustries/horizon/commit... 
repariert.

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:
> Uwe S. schrieb:
>> Hier ist mal step Datei.
>
> Hab ich's mir doch schon fast gedacht, dass ich noch die Platzierung von
> Unterobjekten berücksichtigen muss. Mit den Modellen, die ich so in der
> Hand hatte, ging's auch ohne...
>
> Ist in
> 
https://github.com/carrotIndustries/horizon/commit...
> repariert.

Perfekt, damit läuft es. Danke.

  Uwe

Autor: Max G. (l0wside) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas, ich muss mal sagen: die Geschwindigkeit, in der du Patches 
bereitstellst und einbaust, sollte jeden kommerziellen Hersteller vor 
Neid erblassen lassen.
Meinen allergrößten Respekt dafür!

Autor: Mampf F. (mampf) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max G. schrieb:
> Lukas, ich muss mal sagen: die Geschwindigkeit, in der du Patches
> bereitstellst und einbaust, sollte jeden kommerziellen Hersteller vor
> Neid erblassen lassen.

Das geht nur, solange man kein kommerzieller Hersteller ist und 
größtenteils alleine daran arbeitet :)

> Meinen allergrößten Respekt dafür!

Ja, von mir auch! :)

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal was zum Thema Step-Dateien.

Kicad hat bereits eine ordentliche Menge Step-Dateien, die ich punktuell 
versucht habe einzubinden. Grundsätzlich kein Problem, nur die 
Ausrichtung des Packages und des 3d-Modells passt oft nicht zusammen. 
Bei dem besagten TO-92 hatte ich den Ursprung auf den mittleren Pin 
gelegt. Das 3D-Modell aus Kicad legt den Ursprung aber auf einen der 
äußeren Pins. Wenn ich jetzt das Package passend verschiebe dann 
zerreißt es mir die Boards, die dieses Packages bereits verwenden. 
Sicher ich könnte auf das Update des Pools im Projekt verzichten, aber 
grundsätzlich wird man immer wieder, nicht zu einander passende 
3D-Modelle und Packages haben. Könnte man bei der Zuordnung des 
3D-Modells zum Package nicht eine Verschiebung und Rotation des 
3D-Models angegeben, die das Modell dann zurecht rückt?

  Uwe

Autor: Michael H. (overthere)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Uwe: Ich hatte das schon angefragt, es kam allerdings die Antwort, man 
solle es in der STEP-Datei ändern.
https://github.com/carrotIndustries/horizon/issues/61

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael H. schrieb:
> es kam allerdings die Antwort, man solle es in der STEP-Datei ändern.

Wenn man mal davon ausgeht, dass man heutzutage STEP-Dateien oft
direkt vom Hersteller bekommt, finde ich das nicht so gut.

Bei selbst erzeugten ist das sicher was anderes.

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael H. schrieb:
> @Uwe: Ich hatte das schon angefragt, es kam allerdings die Antwort, man
> solle es in der STEP-Datei ändern.
> https://github.com/carrotIndustries/horizon/issues/61

Ok. Das halte ich aber auch für unglücklich, weil man bei der Menge an 
bestehenden Step-Dateien kaum noch davon profitieren kann, wenn man die 
alle anpassen muss. Aber letztlich muss dass natürlich Lukas 
entscheiden.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Michael H. schrieb:
>> es kam allerdings die Antwort, man solle es in der STEP-Datei ändern.
>
> Wenn man mal davon ausgeht, dass man heutzutage STEP-Dateien oft
> direkt vom Hersteller bekommt, finde ich das nicht so gut.

Eben bei denen, die von Herstellern kommen, liegt der Ursprung oft im 
nirgendwo und die Rotation passt auch überhaupt nicht. Sowas behebt man 
besser in einem anständigen MCAD-Programm wie FreeCAD, anstatt in 
horizon nach Augenmaß Nummern einzutragen. In Freecad z.B. ist es 
einfach möglich, das Modell so zu verschieben, dass dessen Unterseite 
genau bei z=0 liegt.

Uwe S. schrieb:
> Ok. Das halte ich aber auch für unglücklich, weil man bei der Menge an
> bestehenden Step-Dateien kaum noch davon profitieren kann, wenn man die
> alle anpassen muss.

Bei den Modellen von SMD-Bauteilen, die ich mir so angesehen hatte, 
hat's gepasst, da dort der Ursprung vom Modell auch in der Mitte liegt.


Eine wirkliche Konvention, wo in den Packages der Ursprung liegen soll 
fehlt noch. Bei Kicad ist's für alles was nicht Through hole ist der 
Mittelpunkt vom Bauteil und bei TH im Mittelpunkt von Pin 1, was sich 
auch so in den 3D-Modellen widerspiegelt. Mir persönlich gefällt das 
nicht so wirklich.

Um die Through Hole-Modelle von KiCad verwenden zu können, ist es 
durchaus sinnvoll, Verschiebung/Rotation eintragen zu können, nur hat 
man dann wieder das Problem, dass Leute anstatt im MCAD nachzumessen und 
die Werte daraus zu übernehmen, einfach so lange an den Knöpfen drehen 
werden, bis es optisch passt.

Autor: Uwe Steinmann (steinm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas K. schrieb:

> Um die Through Hole-Modelle von KiCad verwenden zu können, ist es
> durchaus sinnvoll, Verschiebung/Rotation eintragen zu können, nur hat
> man dann wieder das Problem, dass Leute anstatt im MCAD nachzumessen und
> die Werte daraus zu übernehmen, einfach so lange an den Knöpfen drehen
> werden, bis es optisch passt.

Dann habe ich mir in der Tat die Problemfälle rausgesucht. Ich kann 
durchaus verstehen, dass hier eine einheitlich Vorgehensweise besser 
wäre (z.B. den Ursprung auf Pin 1 oder den linken Pin (bei horizontaler 
Ausrichtung) zu legen).
Ist halt blöd, wenn man einen ganzen Schwung 3D-Modelle und Packages 
hat, die nicht zusammen passen und beides aus Quellen kommt, die 
möglicherweise noch Änderungen vornehmen. Wenn ich die Kicad-Modelle 
anpasse, werde ich mögliche Korrekturen darin vermutlich nicht mehr 
übernehmen können. Folglich muss ich meine Packages in Horizon anpassen 
und das bedeutet Nacharbeiten in den bereits erstellten Boards. Zur Zeit 
noch überschaubar, kann aber ziemlich viel Arbeit bedeuten.

  Uwe

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und genau aus dem Grund ist es üblich eigentlich alles selber neu 
anzulegen bzw. nach eigenen Vorgaben externe dafür zu beauftragen.
Eigentlich ein Witz, denn in DE sind ja sogar die Schaltsymbole in den 
Schaltplänen zu großen Teilen genormt. Nur die wenigsten halten sich 
dran.

Vielleicht verändert sich das mal irgendwann. In den letzten 40 Jahren 
war dieser Zeitpunkt aber nie erreicht.
Vielleicht liegt es an der Neumodigkeit von Elektronik, den vielen 
Individualisten in diesem Feld oder weil im Bereich Elektronik einfach 
noch <zu> viel Geld für Spezialgänge vorhanden ist.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> denn in DE sind ja sogar die Schaltsymbole in den Schaltplänen zu großen Teilen 
genormt.

Nur finden alle Firmen außerhalb Deutschlands diese Symbole nicht 
überzeugend. Deshalb werden die sich international auch nie durchsetzen. 
Deshalb sollte sich Lukas an internationale Geflogenheiten orientieren.

: Bearbeitet durch User
Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
International würde ich das nicht nennen, eher amerikanisch. Vielleicht 
in Zukunft auch chinesisch. Zeichnet sich ja jetzt schon deutlichst ab. 
Z.B. Datenblätter in chinesisch-only.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Und genau aus dem Grund ist es üblich eigentlich alles selber neu
> anzulegen bzw. nach eigenen Vorgaben externe dafür zu beauftragen.

Ich habe aber dabei noch niemanden (im industriellen Umfeld) gesehen,
der sich seine eigenen 3D-Modelle gezimmert hat. Klar baut sich jeder
seine Bauteile selbst, aber die 3D-Modelle sind nur dann dabei, wenn
man sie irgendwoher bekommen kann: bei einfachen Dingen
(Standard-Hühnerfutter) schon auch gut und gern mal aus dem EDA-Tool,
bei spezielleren Bauteilen halt die vom Hersteller.

Helmut S. schrieb:
> Nur finden alle Firmen außerhalb Deutschlands diese Symbole nicht
> überzeugend.

Falls du die IEC-Symbole meinst: die sind nicht einmal deutsch,
sondern international. ;-)  Die BRD hat sie sogar relativ spät in
die eigene Norm übernommen, im Ostblock sind sie kurz nach ihrer
Normierung durch die IEC offiziell übernommen worden (und auch
tatsächlich benutzt, sowohl von den Fachzeitschriften als auch in
der Industrie).  Aber da, wo man Entfernungen immer noch mit Daumen
und Füßen misst, wird auch das wohl noch ein bisschen dauern …

Ist aber hier egal, hier geht's ja um die Anpassungen, die Horizon
gewillt ist, an einem 3D-Modell vorzunehmen.

Lukas K. schrieb:
> nur hat man dann wieder das Problem, dass Leute anstatt im MCAD
> nachzumessen und die Werte daraus zu übernehmen, einfach so lange an den
> Knöpfen drehen werden, bis es optisch passt.

Sagen wir mal so: solange das einer für sich privat macht und nur
„ungefähr“ ein Gefühl bekommen will, wie's am Ende aussieht, finde
ich das auch OK.  Ob das Modell da noch einen Zehntelmillimeter
daneben sitzt, interessiert dafür kaum.  In den offiziellen Pool
würde ich es natürlich so nicht übernehmen.

Nicht jeder will sich unbedingt auch noch privat mit einem 3D-MCAD
befassen müssen (wenngleich das natürlich durch des Ingenieurs neues
Spielzeug, den 3D-Drucker allmählich ohnehin mehr werden, die es
tun :).

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
3D ist sicherlich ein neuer Trend. Liegt ja auch daran, daß ein dortiges 
"Symbol" doch deutlich aufwändiger zu erstellen ist als ein planes 
Schaltplansymbol.

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abdul K. schrieb:
> Eigentlich ein Witz, denn in DE sind ja sogar die Schaltsymbole in den
> Schaltplänen zu großen Teilen genormt. Nur die wenigsten halten sich
> dran.

Das Problem an den Normen ist, dass sie in den 70ern stehen geblieben 
sind bzw. darauf aufbauen, das elektronische Schaltungen wie 
Schaltschränke aus genormten und austauschbaren Bauteilen bestehen. Dass 
heutzutage fast jede Schaltung in irgendeine Art proprietäre Bauteile 
wie Mikrocontroller, FPGAs oder Schaltregler beinhaltet ist in den 
Normen nicht wirklich reflektiert.

Daher muss besser früher als später ein verbindlicher Satz an Regeln 
her, um Diskussionen wie diese hier 
https://github.com/carrotIndustries/horizon-pool/pull/11 abzukürzen. Die 
KiCad library convention ist da schonmal ein guter Startpunkt.

Abdul K. schrieb:
> 3D ist sicherlich ein neuer Trend.

Kommt drauf an. Für den Hobbyisten vielleicht, da kann das Projekt schon 
fertig sein, wenn das Board funktioniert. In der Industrie hingegen ist 
es ja üblich, Boards in Gehäuse einzubauen. Mit einem Gehäuse, das 
irgendwie lose mit vielen Kabeln um das Board zusammengeschustert ist 
gewinnt man da keinen Blumentopf mehr, man will das Board mit den darauf 
befindlichen Bauteilen aus dem ECAD ins MCAD exportieren können, damit 
das Gehäuse genau zum Board passt. In Zeiten von 3D-Druckern auch für 
Hobbyisten umsetzbar.

Jörg W. schrieb:
> Nicht jeder will sich unbedingt auch noch privat mit einem 3D-MCAD
> befassen müssen

Ich werde kein Package ablehnen, nur weil es kein 3D-Modell enthält. 
Besser gibt keines als ein nach Augenmaß positioniertes.

Autor: Michael H. (overthere)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hinsichtlich der 3D Diskussion:
Ich von meiener Seite habe mir gesagt, das es schön gewesen wäre. 
Allerdings reicht es meistens schon aus, sich die STEPs von KiCad 
rüberzuziehen.
Wenn da welche sind, dann gut, wenn nicht, halt kein 3D Model.

(Sieht für meinen Zweck halt schön aus, allerdings für mich nicht 
überlebenswichtig...)

Ich bin im Moment dabei in freien minuten Bauteile zu erstellen, sodass 
man eine Grundlage bekommt, schnell loslegen zu können.

Ich denke, das Program hat Potential.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.