horizon eda
play

Horizon EDA Version 1.0 Lukas Kramer 2020-02-01 FOSDEM 2020 - PowerPoint PPT Presentation

Horizon EDA Version 1.0 Lukas Kramer 2020-02-01 FOSDEM 2020 Lukas K., FOSDEM 2020 1 / 11 Lukas K., FOSDEM 2020 2 / 11 Lukas K., FOSDEM 2020 3 / 11 Design and Implementation Decisions Keep it simple Lukas K., FOSDEM 2020 4 / 11


  1. Horizon EDA Version 1.0 Lukas Kramer 2020-02-01 FOSDEM 2020 Lukas K., FOSDEM 2020 1 / 11

  2. Lukas K., FOSDEM 2020 2 / 11

  3. Lukas K., FOSDEM 2020 3 / 11

  4. Design and Implementation Decisions • Keep it simple Lukas K., FOSDEM 2020 4 / 11

  5. Design and Implementation Decisions • Keep it simple • No funky class hierarchies Lukas K., FOSDEM 2020 4 / 11

  6. Design and Implementation Decisions • Keep it simple • No funky class hierarchies • Direct mapping from UI to data Lukas K., FOSDEM 2020 4 / 11

  7. Design and Implementation Decisions • Keep it simple • No funky class hierarchies • Direct mapping from UI to data • Breadth first implementation Lukas K., FOSDEM 2020 4 / 11

  8. Design and Implementation Decisions • Keep it simple • No funky class hierarchies • Direct mapping from UI to data • Breadth first implementation • Don’t be afraid to rewrite Lukas K., FOSDEM 2020 4 / 11

  9. Design and Implementation Decisions • Keep it simple • No funky class hierarchies • Direct mapping from UI to data • Breadth first implementation • Don’t be afraid to rewrite • Have fun! Lukas K., FOSDEM 2020 4 / 11

  10. Prehistory Lukas K., FOSDEM 2020 5 / 11

  11. Prehistory September 2016 First commit, symbol editor in Python combined with C for renderer Lukas K., FOSDEM 2020 5 / 11

  12. Prehistory September 2016 First commit, symbol editor in Python combined with C for renderer October 2016 Rewrite everything in C Lukas K., FOSDEM 2020 5 / 11

  13. Prehistory September 2016 First commit, symbol editor in Python combined with C for renderer October 2016 Rewrite everything in C November 2016 Rewrite everything in C++, symbol and schematic editor Lukas K., FOSDEM 2020 5 / 11

  14. Prehistory September 2016 First commit, symbol editor in Python combined with C for renderer October 2016 Rewrite everything in C November 2016 Rewrite everything in C++, symbol and schematic editor December 2016 Padstack, package and board editor. Windows support. Lukas K., FOSDEM 2020 5 / 11

  15. Prehistory September 2016 First commit, symbol editor in Python combined with C for renderer October 2016 Rewrite everything in C November 2016 Rewrite everything in C++, symbol and schematic editor December 2016 Padstack, package and board editor. Windows support. January 2017 Part editor, YAML editors for units etc. Publication. Lukas K., FOSDEM 2020 5 / 11

  16. Prehistory September 2016 First commit, symbol editor in Python combined with C for renderer October 2016 Rewrite everything in C November 2016 Rewrite everything in C++, symbol and schematic editor December 2016 Padstack, package and board editor. Windows support. January 2017 Part editor, YAML editors for units etc. Publication. Lukas K., FOSDEM 2020 5 / 11

  17. Prehistory September 2016 First commit, symbol editor in Python combined with C for renderer October 2016 Rewrite everything in C November 2016 Rewrite everything in C++, symbol and schematic editor December 2016 Padstack, package and board editor. Windows support. January 2017 Part editor, YAML editors for units etc. Publication. Lukas K., FOSDEM 2020 5 / 11

  18. Early History February 2017 Project manager, no more CLI for opening schematics! Lukas K., FOSDEM 2020 6 / 11

  19. Early History February 2017 Project manager, no more CLI for opening schematics! May 2017 Rule framework and copper clearance rules (DRC) Lukas K., FOSDEM 2020 6 / 11

  20. Early History February 2017 Project manager, no more CLI for opening schematics! May 2017 Rule framework and copper clearance rules (DRC) June 2017 Parametric padstacks and packages Lukas K., FOSDEM 2020 6 / 11

  21. Early History Parameter program February 2017 Project manager, no more CLI for opening schematics! 1.55 mm 1.0mm get -parameter [ solder_mask_expansion ] May 2017 2 * +xy Rule framework and copper clearance rules (DRC) set -shape [ mask -ob obround ] June 2017 1.15 mm Parametric padstacks and packages get -parameter [ solder_mask_expansion ] + 1.55 mm get -parameter [ solder_mask_expansion ] 2 * + set -shape [ mask -rect rectangle ] ... Lukas K., FOSDEM 2020 6 / 11

  22. Early History February 2017 Project manager, no more CLI for opening schematics! May 2017 Rule framework and copper clearance rules (DRC) June 2017 Parametric padstacks and packages September 2017 Pool manager, no more CLI at all! KiCad’s router! Lukas K., FOSDEM 2020 6 / 11

  23. Early History February 2017 Project manager, no more CLI for opening schematics! May 2017 Rule framework and copper clearance rules (DRC) June 2017 Parametric padstacks and packages September 2017 Pool manager, no more CLI at all! KiCad’s router! October 2017 Copper planes, 3D view (only board, no packages) Lukas K., FOSDEM 2020 6 / 11

  24. Early History February 2017 Project manager, no more CLI for opening schematics! May 2017 Rule framework and copper clearance rules (DRC) June 2017 Parametric padstacks and packages September 2017 Pool manager, no more CLI at all! KiCad’s router! October 2017 Copper planes, 3D view (only board, no packages) Lukas K., FOSDEM 2020 6 / 11

  25. History January 2018 STEP import/export Lukas K., FOSDEM 2020 7 / 11

  26. History January 2018 STEP import/export April 2018 Start of master thesis Lukas K., FOSDEM 2020 7 / 11

  27. History January 2018 STEP import/export April 2018 Start of master thesis Lukas K., FOSDEM 2020 7 / 11

  28. History January 2018 STEP import/export April 2018 Start of master thesis May 2018 Multithreaded DRC, BOM export Lukas K., FOSDEM 2020 7 / 11

  29. History January 2018 STEP import/export April 2018 Start of master thesis May 2018 Multithreaded DRC, BOM export June 2018 Unified pool and project manager Lukas K., FOSDEM 2020 7 / 11

  30. History January 2018 STEP import/export April 2018 Start of master thesis May 2018 Multithreaded DRC, BOM export June 2018 Unified pool and project manager October 2018 Configurable colors Lukas K., FOSDEM 2020 7 / 11

  31. History January 2019 Parametric search Lukas K., FOSDEM 2020 8 / 11

  32. History January 2019 Parametric search April 2019 Proper PDF export Lukas K., FOSDEM 2020 8 / 11

  33. History January 2019 Parametric search April 2019 Proper PDF export July 2019 Incremental pool update Lukas K., FOSDEM 2020 8 / 11

  34. History January 2019 Parametric search April 2019 Proper PDF export July 2019 Incremental pool update November 2019 Partinfo API integration Lukas K., FOSDEM 2020 8 / 11

  35. History January 2019 Parametric search April 2019 Proper PDF export July 2019 Incremental pool update November 2019 Partinfo API integration January 2020 Version 1.0 Lukas K., FOSDEM 2020 8 / 11

  36. Taking care of dependencies Lukas K., FOSDEM 2020 9 / 11

  37. Taking care of dependencies GTK made GtkGLArea work for more than one window on win32 Lukas K., FOSDEM 2020 9 / 11

  38. Taking care of dependencies GTK made GtkGLArea work for more than one window on win32 libgit2 fixed segfault introduced by reordering of include paths Lukas K., FOSDEM 2020 9 / 11

  39. Taking care of dependencies GTK made GtkGLArea work for more than one window on win32 libgit2 fixed segfault introduced by reordering of include paths zeromq fixed locale affecting port number formatting Lukas K., FOSDEM 2020 9 / 11

  40. Taking care of dependencies GTK made GtkGLArea work for more than one window on win32 libgit2 fixed segfault introduced by reordering of include paths zeromq fixed locale affecting port number formatting ccache fixed broken header dependency generation (regression) Lukas K., FOSDEM 2020 9 / 11

  41. What’s next? Lukas K., FOSDEM 2020 10 / 11

  42. That’s it! Lukas K., FOSDEM 2020 11 / 11

Recommend


More recommend