Mojo FPGA v3 from Embedded Micro

Boy that conversion makes a mess, but at least you can find the exact location of everything with the vector coordinates.

1 Like

Actually Illustrator was the package of choice at the start and many of the core parts are in Illustrator. Then it became not free anymore and we changed to Inkscape. Iā€™m a late comer and havenā€™t used anything but Inkscape but the older folks in here should still know illustrator I expect. Iā€™m working on correcting my pcb svg (the bottom connector was .1 too high) and adding the board outline and mounting holes to silkscreen from the eagle svg. Iā€™ll post it when I finish. PS. you may want to use Inkscape .91 (one version back) as .92 has changed the resolution from 90 dpi to 93 dpi and I had scaling problems on a part (but only that one part for some reason) using .92 and so switched back to .91.

Peter

This Eagle2Svg script in Eagle can also export everything in monochrome. Would that help any?

No, the current svg is fine as Old_Grey noted it has the xy coords of all the elements and I can position them from there. Pcb is done Iā€™m having a quick bash at schematic.

Peter

How does your final SVG look for the square pads? I have modified the Eagle2Svg script in Eagle to generate a more sensible file (using your specifications from above). I just need to know how to define the squares (the SVG code).

Thanks for all of your help. How would you like me to credit you on the GitHub site?

The square should look like this

        <rect fill="none" stroke="rgb(255, 191, 0)" id="square" y="41" stroke-width="20" gorn="0.3.0.0" height="58"  x="41" width="58"/>

for a standard .038 pad (which is what the listed pad is).

Peter

1 Like

Awesome. Thanks for doing the PCB work. Iā€™ve just been banging my head against the wall trying to find an automated way I can go from Eagle to Fritzing for future parts, but once this part is finished, then I may never have to use Eagle again.

I should have mentioned earlier there is a python script that does eagle to Fritzing conversion available somewhere. Having nothing on eagle I have never used it and I understand it is both complex and somewhat buggy but it is there. As well I think someone mentioned that adafruit has a somewhat fixed version of the script too. A search in this forum should find a reference (or hopefully someone that knows more about it may chime in). Iā€™ m almost finished arguing with Inkscape about correcting the schematic to be in .1 centers (as usual Inkscape is insisting on tying the coordinates in the tool bar to each other and changing one when I change another for reasons I donā€™t understand :slight_smile: ).
Iā€™ll post a new version with both changes when Iā€™m done. At present Iā€™m doing the last row of the 4 sides of schematic.

Peter

I think the problem with Illustrator is that its idea of translate has changed and Fritzing no longer completely understands it. I fixed up schematic in Inkscape but didnā€™t remember to ungroup everything (which removes the translates usually). When I imported the result in to Fritzing the alignment was off. Moving back to Inkscape and ungrouping all the connectors makes the alignment wrong just as it was in Fritzing indicating to me that Inkscape understands the Illustrator translate but Fritzing doesnā€™t. Iā€™m currently changing the pin positions yet again to get them properly aligned and will try again. My version of pcb came from a Fritzing source and thus should be fine (famous last words, because I didnā€™t actually check it when I had the part up in Fritzting :slight_smile: ).

Peter

1 Like

OK all done I think. Below is the completed part and a test sketch to verify the part is correct. The test sketch is a bit ugly because I donā€™t care about routing, only that all the pins are verified to connect to what I think they should. In this case I used 25 pin and 5 pin single row connectors to provide a connection point for each pin in all 3 views and made a connection for each pin, then made sure the connection looked correct in the other 2 views (I started with breadboard). As noted in the last reply it looks like Illustrator has changed their translate parameters and fritzing hasnā€™t kept up. To fix that in schematic with Inkscape I ungrouped everything which usually (and in this case) removes all the translates (which I like to do anyway as it leaves the coordinate system 1 to 1 which is valuable) and then when I was finished did a select all and grouped everything then named the resulting group schematic to set the correct layer id. As noted pcb was recreated from an existing part in Inkscape so it didnā€™t have this problem. As well all the svgs were edited with vi and all instances of px were removed as if the font-size commands have px on the end Fritzing will set the font size to 0 when the part is edited.

part:

Embedded Micro Mojo v5.fzpz (34.8 KB)

test sketch:

Embedded Micro Mojo v5 test sketch.fzz (107.5 KB)

Peter

1 Like

Wow! Thank you for all the work you put into this. This is perfect. Incidentally, your approach of using single row connectors is how their Proto Shield is designed. It routes the pins over and under the board to new pins inside the PCB.

For future reference, the ā€œv3ā€ in the file name is referring to the model of the Mojo (there is also a v2), not the revision of my part.

I have updated the GitHub project with your changes and added the sample sketch to a new folder at the root of the project.

When I update the readme file on the GitHub page, how do I credit your work? I definitely want to give you credit for cleaning this up.

Thanks again for all of your hard work.

I just added to it to keep the parts separete for both you and me.

@vanepp in the fritzing forums is fine (thats how the parts maintainer does it on parts problem reports on github)

You are most welcome, its in all our interests to encourage people to make new parts, that (along with further development) is what Fritzing needs most, there are currently not enough parts (and probably never will be :slight_smile: ).

Peter

I just found an Eagle library for the Mojo parts and it has the simplest arrangement of the pins with everything else removed. I used the Eagle script Eagle2Svg to convert it to SVG and put it on the GitHub site. I opened it in Inkscape and it looked good, but I donā€™t know how to use Inkscape yet to see if itā€™s suitable.

Can you take a look and tell me how hard it is to convert this file to a usable format? I only ask because I want to see if this Eagle2Svg script can be used in the future.

GitHub SVG folder for Mojo pcb

Also, what is your editor of choice (since you donā€™t use Eagle) for schematics and pcbā€™s (other than Fritzing)? I may need to stop getting used to Eagle due to licensing. I only used it because thatā€™s what the Mojo manufacturer made available on their website for Schematics and board.

If I upload an SVG file directly to this forum, can you still see the SVG source? I noticed that it puts it inline with the message, but can it also be downloaded separately?

It is somewhat OK in that it has the pads at what looks like the correct places. It doesnā€™t however have any of the groups (silkscreen, copper1 copper0) nor any connector information nor a stroke-width (needed to set the hole size) so it would be a fair amount of work to convert it as the stroke width and connector information would need to be added manually to each pin. Is this the converter from GitHub - fritzing/eagle2fritzing: Converters from EAGLE to Fritzing file format or somewhere else? I have heard that adafruit has an improved version of the above script on their site somewhere but that it is very complex to try and modify at least (I donā€™t know about usage). As I said Iā€™ve never used it so I donā€™t know whether it sets connector ids and the like or not.

Iā€™m strictly a Fritzing user (I came here after trying kicad for a bit, but Fritzting fits what I do which is typically one of projects on perf board better than anything else I know). Before that I was using Circuit Maker 2000 (a commercial product from the 1990s that has been gone since a year or two after I bought it :slight_smile: ) but that isnā€™t sharable with anyone else and Fritzing is,

The svg upload is broken. To upload an svg the usual trick is to rename it to .fzpz (which will upload) and then tell us that it is really an svg so it can be downloaded and then renamed to svg (you may have to zip it to keep the uploader happy). The forum upload button is seventh from the left on the reply toolbar

Peter

No, the script that I was using is an Eagle UWP script found here. It runs inside of Eagle, making it much less portable.

I really like Fritzing. I need to read up more on it and have a simple board made (who knows, maybe Iā€™ll make a Mojo board :slight_smile:).

Then the listed script (and/or the improved version from adafriut) may do more for you. It is my sense that they can do a complete (or at least more complete, I donā€™t know what they do for breadboard for instance) conversion but are not that easy to use. Many of the sparkfun parts in core are from that conversion program I think. Yes Fritzing is as far as I know unique in breadboard view and while it has bugs it also has source if we are smart enough to improve it.

Peter

1 Like

I read through all of the Adafruit tutorial and saw their breadboard creation software about two weeks ago. I wish I had seen it before I spent two weeks drawing the Mojo by hand in Illustrator. Especially because I have the library files and parts list for the board in Eagle. It seemed very complicated and involved, though. And it seemed that the end results were not guaranteed.

That is my impression too. although as noted I havenā€™t used it.

Peter