Code Monkey home page Code Monkey logo

eagle2fritzing's Introduction

Fritzing

Branch Badge
master Build Status
develop Build Status

The Fritzing application is an Electronic Design Automation software with a low entry barrier, suited for the needs of makers and hobbyists. It offers a unique real-life "breadboard" view, and a parts library with many commonly used high-level components. Fritzing makes it very easy to communicate about circuits, as well as to turn them into PCB layouts ready for production. It is particularly popular among Arduino and Raspberry Pi users, and is widely used in education and creative tinkering.

  • For more information on Fritzing and its related activities, visit http://fritzing.org. There you can also download the latest releases for all platforms and get help on getting started.

  • To report a problem or suggest improvements, use the issue tracker or the user forum. Please provide steps, what operating system you are on, including the version. Add screenshots or copies of error messages, describe what behavior you saw and what you expected.

  • If you would like to help with the development, please take a look at those labels:

    • label: easy start
    • label: challenging start

Some of those don't need C++ skills, like reproducing an issue on a certain platform, or verifying translations of languages we don't speak. If there is something for you, you might want to check the developer instructions next. This includes information about how to compile and run the Fritzing app.

Project Structure

  • help - End-user documentation included with the app.

  • parts - All the part definitions, including meta data (.fzp) and graphics (.svg), as well as some utility tools. They are kept in a separate repository at https://github.com/fritzing/fritzing-parts and only linked from here.

  • pri - Submodule definitions for Qt

  • resources - Binaries and definitions that are supposed not to be touched by users, such as fonts, images, special parts, etc.

  • sketches - Example circuits/sketches shipped with the application

  • src - Application logic!

  • tools - Utility tools for making releases, converting parts, etc.

  • translations - Language translations

Credits

The Fritzing app was maintained by the Friends-of-Fritzing e.V., a non-profit foundation based in Berlin, Germany. The project has grown out of a state-funded research project at the Interaction Design Lab at Potsdam University of Applied Sciences.

The founding team consists of Prof. Reto Wettach, André Knörig, Jonathan Cohen, and Stefan Hermann. Many fantastic people have contributed to it over the years.

Since 2019, the project is maintained by Kjell Morgenstern, with great support from Peter Van Epp, André Knörig, and AISLER.

The Fritzing app is written on top of the Qt cross-platform framework.

Licensing

The source code of Fritzing is under GNU GPL v3, the documentation and part designs under Creative Commons Attribution-ShareALike 3.0 Unported. The full texts of these licenses are shipped with this download.

This means that you can create your own variation of Fritzing, as long as you credit us and also publish it under GPL. Similarly, you may re-publish our documentation, as long as you credit us, and publish it under the same license. You may publish circuits and diagrams that you create with Fritzing and that use our graphics, again as long as you credit us, and publish your works under the same license. A credit can be as simple as "this image was created with Fritzing."

Lookup our FAQs for more details on licensing.

eagle2fritzing's People

Contributors

aknoerig avatar b4zz4 avatar el-j avatar irascible avatar magpern avatar s-kostyuk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

eagle2fritzing's Issues

Readme translations

eagle2fritzing tools are quite complex. So, to understand their work by myself and help to understand work of tools to other users, I started a README files translation into Russian in a new branch: translated_readme. Pull request will be sent as soon as translation will be finished.

Progress (Russian translation):

  • translate root readme file
  • translate brd2svg readme
    • 1/3 translated
    • 2/3 translated
    • fully translated
  • translate lbr2svg readme

Upgrade to Qt5

Upgrade both tools to compile with Qt5, since fritzing-app is already using that.

brd2xml crashes inconsistently

It never seems to finish converting the board to xml, making eagle2fritzing crash everytime with an error like:

looking for all.packages.txt in "C:/Users/Pinkdev1/Downloads/eagleToFritzingProjekt/eagle2fritzing/brd2svg/and/all.packages.txt"
"unable to finish RFID_Breakout_v2_compatible.brd"
QProcess: Destroyed while process ("C:\\EAGLE 9.0.1\\eagle.exe") is still running.
"unable to parse board xml 'RFID_Breakout_v2_compatible.xml': unexpected end of file line:2326661 col:84"

generating bin

done

Naturally, the results folder is empty, although it does have the folder structure.

The EAGLE GUI always appears for about 7 seconds before crashing, with this error:

Loading C:/Users/Pinkdev1/Downloads/eagleToFritzingProjekt/eagle2fritzing/build-brd2svg-Desktop_Qt_5_12_12_MinGW_64_bit-Release/release/temp-fritzing/brds/RFID_Breakout_v2_compatible.brd ...

Warning(s):

line 1629: invalid value 'checkNames' for attribute 'name' in tag <param>
line 1630: invalid value 'checkWireStubs' for attribute 'name' in tag <param>
line 1631: invalid value 'checkPolygonWidth' for attribute 'name' in tag <param>
line 1837: skipped unexpected tag <mfgpreviewcolors>

eagle2fritzing

It always seems to get stuck on "39%" (seen on the window title for EAGLE), although the brd2xml fails at inconsistent points:

  • line:2326661 col:84
  • line:2613801 col:48
  • line:2491201 col:24
  • line:2464779 col:82

I haven't yet been able to export that board into fritzing 😐

Command:

..\brd2svg -w . -e "C:\EAGLE 9.0.1\eagle.exe" -c contrib -a "C:\Users\Pinkdev1\Downloads\eagleToFritzingProjekt\eagle2fritzing\brd2svg\and"
looking for all.packages.txt in "C:/Users/Pinkdev1/Downloads/eagleToFritzingProjekt/eagle2fritzing/brd2svg/and/all.packages.txt"

Versions:

  • Qt Creator 5.0.2
  • EAGLE Version 9.6.2
  • Windows:
Edition Windows 10 Home Single Language
Version 21H1
Installed on    ‎2020-‎09-‎18
OS build    19043.1348
Experience  Windows Feature Experience Pack 120.2212.3920.0

Board: https://cdn.sparkfun.com/datasheets/Sensors/ID/RFID_Breakout_v2.zip

Trying to "save as a copy for EAGLE 7.x" and using that brd doesn't work. Any help would be greatly apreciated. My exact build of eagle2fritzing is avalible on the other issue I opened

OS X version

Is there a way to build an OS X command line version?

Interpret brd files directly, instead of using a ULP

When brd2svg was written, the Eagle lbr file format was closed, so we created an Eagle ULP to export it into a consumable format.

Since Eagle 6, the file format is XML-based, so we could get rid of this extra step. This would get us one step closer to integrating the importer into the Fritzing GUI.

dies from missing fonts

i tried fixing the qrc, so that qrc_phoenixresources.cpp actually conains the files. still just dies for me at start.
#0 0x00007ffff73a4887 in ?? () from /usr/lib/libQt5Gui.so.5
#1 0x00007ffff73a9cdc in ?? () from /usr/lib/libQt5Gui.so.5
#2 0x00007ffff73b1397 in QFontDatabase::addApplicationFont(QString const&) () from /usr/lib/libQt5Gui.so.5
#3 0x000000000043f630 in BrdApplication::registerFonts (this=0x7fffffffe040) at brdapplication.cpp:3685
#4 0x000000000040c403 in BrdApplication::start (this=0x7fffffffe040) at brdapplication.cpp:246
#5 0x0000000000408ffc in main (argc=9, argv=0x7fffffffe1e8) at main.cpp:8

Missing brd2xml.scr?

When I run brd2svg it tries to load a board file with the name of doesntexist.brd. Looking at the code I think that this maybe due to the fact that its looking for the script brd2xml.scr and not finding it. I see brd2xml.ulp is supplied should brd2xml.scr have also been supplied?

lbr2svg doesn't accept any arguments

lbrapplication.cpp file on line 2468: there is no elements in args list at all. Even argument number 0 (full path to executed binary) isn't present. As a result, lbr2svg is unusable for now. Proof:
debug

Fix readme

Maybe this is obvious, but isn't mentioned in readme files. There is unable to build brd2svg and lbr2svg without Fritzing sources. And more, folder with Fritzing sources must be strictly named fritzing-app and be placed in the same folder with eagle2fritzing

So, folder structure to build tools from this repo:

some_folder
|-- eagle2fritzing
|-- fritzing-app

Please, add this information to readme file. And sorry for my English

brd2svg fails when element name has illegal characters

It seems that there is no sanitation done on characters that appear in element names.
I tried converting a board (http://www.seeedstudio.com/wiki/images/0/0b/Lipo_rider_v1.1.zip) that unfortunately has an element (on/off switch) called "ON<-->OFF".

The '<' and '>' are then copied into the XML unescaped (should be converted to "&lt;" and "&gt;" respectively). I haven't checked for other characters that might need escaping but I would guess they are not handled correctly as well.

Note: modified comment to escape the original XML escape sequence for '<'. It seems markdown has munched my original sequence and converted it to a real '<', making my comment not really clear.

Run.py file does not exist

According to Adafruit's manual there should exist a 'run.py' file in the 'brd2svg' directory. However, it does not exist in this version.

Offer the option to generate fzpz/fzbz

Currently both tools only generate fzp/fzb and associated svgs that need to be copied into the program file structure (or the user's data folder). This is because the tool is optimized for large batch operations.

For individual use, it would be desired to generate "shareable" files (fzpz/fzbz) that can be imported into Fritzing via the GUI.

ERROR on MacOS

Hey.
I run the qmake -spec macx-clang lbr2svg.pro command and it doesn't show any error messages. Only this information:

Project WARNING: Qt has only been tested with version 10.15 of the platform SDK, you're using 11.1.
Project WARNING: This is an unsupported configuration. You may experience build issues, and by using
Project WARNING: the 11.1 SDK you are opting in to new features that Qt has not been prepared for.
Project WARNING: Please downgrade the SDK you use to build your app to version 10.15, or configure
Project WARNING: with CONFIG+=sdk_no_version_check when running qmake to silence this warning.

Afterward I run the make command but it failed with this error message. I don't know how to handle this error. Maybe someone can help me.

../../fritzing-app/src/svg/../debugdialog.h:25:10: fatal error: 'QDialog' file not found
#include <QDialog>
         ^~~~~~~~~
1 error generated.
make: *** [svgfilesplitter.o] Error 1

lbr2svg README Google Spreadsheet link broken

In the README.md of lbr2svg,

This dif can be exported from this google spreadsheet. It lists all SparkFun Eagle lbrs from some time ago. This example is overly complicated though, and we need to provide a much simpler one.

the Google Spreadsheet link is broken:
image
<Sorry, the file you request has been deleted.>

unable to parse board xml

Hello
Thanx for sharing this...
I am running into an error:

$ ./brd2svg -w ./atWork/ -e /opt/eagle/
looking for all.packages.txt in "/opt/eagle2fritzing/brd2svg/all.packages.txt" 
"unable to start Adafruit_Feather_Zero_BLE_rev_A.brd" 
"unable to parse board xml 'Adafruit_Feather_Zero_BLE_rev_A.xml': unexpected end of file line:1 col:1" 
generating bin 
done 

IO tried running it on my home folder (permissions on opt folder??) but in vain...
Looked the issue up and found this_adafruit_forum_post
I am following every instruction but still it fails...
Any ideas?
I am on ubuntu 14.04
Thanx

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.