Mudanças entre as edições de "Grupo de Desenvolvimento C++ com KiCAD"

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
Linha 5: Linha 5:
 
O [http://kicad-pcb.org/ KiCAD] é uma suite de [http://www.gnu.org/philosophy/free-sw.pt-br.html software livre] para design de circuitos elétricos e placas de circuito impresso.
 
O [http://kicad-pcb.org/ KiCAD] é uma suite de [http://www.gnu.org/philosophy/free-sw.pt-br.html software livre] para design de circuitos elétricos e placas de circuito impresso.
   
  +
O objetivo da hackatona no e-hal será implementar a importação automática de projetos e bibliotecas do ''Eagle''. Mesmo sendo um software proprietário, o ''Eagle'' é o software EDA ''de-facto'' na comunidade de hardware aberto e livre. O KiCAD tem ganhado terreno, mas tal recurso aceleraria a sua adoção, já que grandes fornecedores como Sparkfun, Arduino e Adafruit usam Eagle e distribuem extensas bibliotecas de componentes.
Para aumentar o rendimento da hackatona, que terá participação de membros do time do KiCAD vindos
 
da gringa só para isso, o garoa organizou este grupo
 
preparatório para quem quiser (ou não) participar em outubro.
 
   
 
Para aumentar o rendimento da hackatona, que terá participação de membros do time do KiCAD vindos da gringa só para isso, o garoa organizou este grupo preparatório para quem quiser (ou não) participar em outubro.
A proposta do grupo é resolver bugs simples ("starter patches") do KiCAD com o
 
  +
 
A proposta deste grupo é resolver bugs simples ("starter patches") do KiCAD com o
 
objetivo de nos familiarizarmos com o código e, de quebra, praticar um
 
objetivo de nos familiarizarmos com o código e, de quebra, praticar um
 
pouco e ganhar experiência em desenvolvimento '''C++''' através de uma
 
pouco e ganhar experiência em desenvolvimento '''C++''' através de uma
Linha 17: Linha 17:
   
 
[[Imagem:Kicad-led-controller-juca.png|Exemplo de projeto feito no KiCAD|thumb|300px|right]]
 
[[Imagem:Kicad-led-controller-juca.png|Exemplo de projeto feito no KiCAD|thumb|300px|right]]
  +
  +
==Horário==
  +
 
Encontros presenciais às quartas-feiras** de setembro, na [[Biblioteca]] do
 
Garoa, a partir das 18h00, mas também pode participar remoto via [[IRC]] no #garoahc.
  +
 
==Investimento==
 
0
   
 
==Informações úteis==
 
==Informações úteis==
Linha 22: Linha 30:
 
* Segundo relato do [[Usuário:Juca|Juca]] o KiCAD passou a usar git em todos os seus repositórios, então as informações acima podem estar desatualizadas. Eu fiz o checkout pelo source mirror do github. Acredito que, como, de imediato, ninguém terá acesso de commit, esse checkout já é o suficiente.
 
* Segundo relato do [[Usuário:Juca|Juca]] o KiCAD passou a usar git em todos os seus repositórios, então as informações acima podem estar desatualizadas. Eu fiz o checkout pelo source mirror do github. Acredito que, como, de imediato, ninguém terá acesso de commit, esse checkout já é o suficiente.
 
* Recomendamos que cada um traga seu notebook, de preferência com uma distribuição GNU/Linux instalada
 
* Recomendamos que cada um traga seu notebook, de preferência com uma distribuição GNU/Linux instalada
 
==Referências==
 
* [https://www.youtube.com/watch?v=wRolB1my6fI] palestra do Wayne Stambaugh (líder do projeto) falando dos "velhos tempos" do KiCAD.
 
* [http://kicad-pcb.org/contribute/developers/] informações essenciais para novos desenvolvedores
 
* [https://lists.launchpad.net/kicad-developers/msg25959.html] thread na lista de e-mails sobre o desenvolvimento de suporte a arquivos do Eagle, que será tema da hackatona
 
* [https://www.youtube.com/user/ChrisGammell] [https://www.youtube.com/user/contextualelectronic] [https://www.youtube.com/playlist?list=PLy2022BX6Eso532xqrUxDT1u2p4VVsg-q] [https://contextualelectronics.com/] [http://www.theamphour.com/] [http://parts.io/] links para o trabalho do Chris Gammel, citado aos 32:20 da palestra do Wayne
 
   
 
===Instalar build system e dependências===
 
===Instalar build system e dependências===
Linha 60: Linha 62:
 
* ...
 
* ...
   
==Horário==
+
==Referências==
 
* [https://www.youtube.com/watch?v=wRolB1my6fI] palestra do Wayne Stambaugh (líder do projeto) falando dos "velhos tempos" do KiCAD.
 
 
* [http://kicad-pcb.org/contribute/developers/] informações essenciais para novos desenvolvedores
Encontros presenciais às quartas-feiras** de setembro, na [[Biblioteca]] do
 
 
* [https://lists.launchpad.net/kicad-developers/msg25959.html] thread na lista de e-mails sobre o desenvolvimento de suporte a arquivos do Eagle, que será tema da hackatona
Garoa, a partir das 18h00, mas também pode participar remoto via [[IRC]] no #garoahc.
 
 
* [https://www.youtube.com/user/ChrisGammell] [https://www.youtube.com/user/contextualelectronic] [https://www.youtube.com/playlist?list=PLy2022BX6Eso532xqrUxDT1u2p4VVsg-q] [https://contextualelectronics.com/] [http://www.theamphour.com/] [http://parts.io/] links para o trabalho do Chris Gammel, citado aos 32:20 da palestra do Wayne
 
==Investimento==
 
0
 
   
 
==Resumo dos encontros==
 
==Resumo dos encontros==

Edição das 19h25min de 7 de setembro de 2016

Modificando código do KiCAD no Emacs

O e-hal (I Encontro Brasileiro de Hardware Aberto e Livre), que acontecerá em outubro de 2016, terá uma hackatona do KiCAD.

O KiCAD é uma suite de software livre para design de circuitos elétricos e placas de circuito impresso.

O objetivo da hackatona no e-hal será implementar a importação automática de projetos e bibliotecas do Eagle. Mesmo sendo um software proprietário, o Eagle é o software EDA de-facto na comunidade de hardware aberto e livre. O KiCAD tem ganhado terreno, mas tal recurso aceleraria a sua adoção, já que grandes fornecedores como Sparkfun, Arduino e Adafruit usam Eagle e distribuem extensas bibliotecas de componentes.

Para aumentar o rendimento da hackatona, que terá participação de membros do time do KiCAD vindos da gringa só para isso, o garoa organizou este grupo preparatório para quem quiser (ou não) participar em outubro.

A proposta deste grupo é resolver bugs simples ("starter patches") do KiCAD com o objetivo de nos familiarizarmos com o código e, de quebra, praticar um pouco e ganhar experiência em desenvolvimento C++ através de uma ferramenta que pode ser utilizada em projetos de hardware feitos no Garoa.

Não é preciso ter grande experiência com C++, mas é necessário ter alguma familiaridade com alguma outra linguagem. O foco da atividade será programar e aprender programando.

Exemplo de projeto feito no KiCAD

Horário

Encontros presenciais às quartas-feiras** de setembro, na Biblioteca do Garoa, a partir das 18h00, mas também pode participar remoto via IRC no #garoahc.

Investimento

0

Informações úteis

  • Guia de desenvolvedores como obter o código fonte, instalar as dependências e compilar o kicad (TODO: colocar um guia resumido aqui)
  • Segundo relato do Juca o KiCAD passou a usar git em todos os seus repositórios, então as informações acima podem estar desatualizadas. Eu fiz o checkout pelo source mirror do github. Acredito que, como, de imediato, ninguém terá acesso de commit, esse checkout já é o suficiente.
  • Recomendamos que cada um traga seu notebook, de preferência com uma distribuição GNU/Linux instalada

Instalar build system e dependências

TODO

Baixar source

TOOD

Compilar

TODO

Criar e submeter patches

TODO

Starter patches

Os desenvolvedores do KiCAD disponibilizaram uma lista de bugs para iniciantes no projeto.

Caso tenha interesse em trabalhar em algum deles, coloque o seu nome na frente. A lista abaixo não é exaustiva. Você também pode trabalhar em qualquer outro bug que ache interessante.

  • Bug #1423515 pcbnew option to export text as editable text when writing DXF/SVG Pitanga
  • Bug #1428125 Don't freeze GUI when showing hotkey list.
  • Bug #1395442 Hotkeys Editor should have a reset button
  • Bug #1412628 pos file ref cut off
  • Bug #1448460 Canceling a started tract in GAL.
  • Bug #1424003 OpenGL & Cairo Canvas "End Track".
  • Bug #1492734 Likely DRAWSEGMENT::computeArcBBox() (pcbnew/class_drawsegment.cpp) is the culprit. The issue should solved in DRAWSEGMENT::ViewBBox(), so perhaps both could be merged.
  • Bug #793420 Perhaps it is missing a few OnModify() calls. Wayne proposes a simple solution which may serve as an example.
  • Bug #1005383 Minor UI issue.
  • Bug #1482866 One needs to get the currently highlighted net number, and preselect it in the zone creation dialog (pcbnew/dialogs/dialog_copper_zones.cpp) through a ZONE_SETTINGS object.
  • Bug #1485941 Class CONTEXT_TRACK_WIDTH_MENU (pcbnew/router/router_tool.cpp) lacks an update handler that would update the units whenever the menu is shown. Have a look at CONTEXT_MENU::SetMenuHandler(). It might be also a good introduction to implement #1519973.
  • Bug #1503921 It might be just one 'if' statement missing, though I am not sure.
  • ...

Referências

  • [1] palestra do Wayne Stambaugh (líder do projeto) falando dos "velhos tempos" do KiCAD.
  • [2] informações essenciais para novos desenvolvedores
  • [3] thread na lista de e-mails sobre o desenvolvimento de suporte a arquivos do Eagle, que será tema da hackatona
  • [4] [5] [6] [7] [8] [9] links para o trabalho do Chris Gammel, citado aos 32:20 da palestra do Wayne

Resumo dos encontros

07/09/16

  • Presentes:
  • Falado:
  • Feito:

14/09/16

  • Presentes:
  • Falado:
  • Feito:

21/09/16

  • Presentes:
  • Falado:
  • Feito:

28/09/16

  • Presentes:
  • Falado:
  • Feito: