These are components I’ve created for Eagle3D.

You may also want to check out the tutorials on how to create your own components.  http://blog.everythingrobotics.com/tutorials/eagle3d-tutorials/using-google-sketchup-to-create-components/


HopeRF RFM12B SMD 433Mhz/915Mhz RF Module


Microchip MR24J40MA FCC Approved 2.4GHZ 802.15.4 RF Module


Sparkfun SMA PCB Edge


PJ-326 3.5mm Jack http://www.switchcn.com/


900Mhz GSM SMA Antenna attached to PCB SMA Connector



Strobit Eagle3D Library (19/03/2009) Download



These are provided AS-IS and may contain bugs and or discrepancies and may not be to scale.

If you find any bugs or problems or make enhancements please feel free to contact me so I can update the downloads.

Step 4

Tweaking the Settings

Now we have added the component into Eagle3d we need to tweak and fine-tune the settings.

  1. Now render your PCB, more than likely a couple of problems will show up.  The first is your component is very small.  so we need to tweak the scaling from within the component file we recreated in the previous steps.

    Very Small component shown. (click to enlarge)
    07/08/09 update: (Thanks for the tip Jeremy)

    > Jeremy wrote:
    > Hey. I read over your tutorial on making Eagle3d components in Google
    > Sketchup, and I wanted to thank you for saving me a considerable
    > amount of time. I also found something you might have missed. Sketchup
    > records units in mm
    > (millimeters) but when su2pov plugin is run, it converts all the mm
    > into inches (1mm -> .03937 inch). The problem is that Eagle3D
    > interprets the numbers in the .inc files as in mm. So the best way to
    > fix the problem is to scale up your drawing in Sketchup by 25.4 times
    > (thus counteracting the plugin’s unit conversion).

  2. To scale the component scroll down to near the end of the file where you should see something like this
       2: #object {MRFceJeaMA
       3: matrix < 0.1,0.0,0.0,
       4: 0.0,0.1,0.0,
       5: 0.0,0.0,0.1,
       6: 0.0,0.0,0.0>
       7: }
  3. tweak the settings that have numbers in them, the following worked for me
       1: // Scale
       2: #object {MRFceJeaMA
       3: matrix < 2.55,0.0,0,
       4: 0.0,2.50,0.0,
       5: 0.0,0.0,2.55,
       6: 0.0,0.2,0.0>
       7: }
  4. Now the component should be close to the right size, but the offset is off.triggr-020
  5. We now need to get the correct offsets, which is a bit ht and miss, but I found the following works best.
  6. Locate the component in the generated POV file (step 8 above)
  7. Change the translate values just after the macro name as shown below, the hit and miss comes in by taking a guess in what direction and value to use.
       1: #ifndef(pack_U2) #declare global_pack_U2=yes; object {MRF24J40MA()translate<-5,0,0> rotate<0,0.000000,0>rotate<0,-270.000000,0> rotate<0,0,0> translate<61.569600,0.000000,15.240000>}#end        //MRF24J40MA FCC Approved module U2 MRF24J40MA MRF24J40MA
  8. We are heading in the right direction, so keep changing until it all lines up on that axis.


  9. looks like we are right on here, onto the next axis


  10. to change the next axis offset we need to modify the last value in the translate function
       1: MRF24J40MA()translate<-9,0,-5>
  11. Just about there


  12. finally looks right


  13. Now we have found the values we need to put them in the 3dusepac.dat file or else the next time we run the ulp script we will loose these settings
  14. In the line we added added to the 3dusrpac.dat file we need to add the values we have just fount to positions 15 and 1 7 as shown below.
       1: MRF24J40MA:0:0:0:0:0:0:0:0:0:0:0:0:0:0:-9:0:-8:0:0:0:0:0:0:0:0:0:0:0:0:0:MRF24J40MA(::
  15. If this file is changed we need to re-run the ulp script to re-generate the POV file, then check that your values are there and renders correctly.triggr-020
  16. The same process can be followed if the component is not rotated correctly.  such as shown below


  17. change this value in the POV file to tweak the rotation side of things. change the value show below (-180)  in this example the value that works for me is 90  once again this value must be updated in the 3dusrpac.dat file in position 14.
       1: {MRF24J40MA()translate<-9,0,-8> rotate<0,0.000000,0>rotate<0,-180.000000,0>
  18. Remember to re-run the ULP script to regenerate the POV file.Happy component creating !!!!!
<<Step 3

Using Google Sketchup to create components

This tutorial will show you how to use Sketchup to create and import components into Eagle3D


  1. Google Sketchup installed – I’m using v6, but I’m sure it will work in the latest  version
  2. su2pov plug-in – this is a sketchup plug-in written in ruby that exports the a sketchup scene into POV for more realistic rendering.
  3. Eagle3D and POV installed and working.  You should be able to at least render a board, even if no components are working.

Steps involved:

  1. Export Sketchup object to POV using SU2POV, and test.
  2. Create the component include file ready for Eagle3D
  3. Mapping the new component into the library.
  4. Fine tuning the placement.
Step 1 >>

RFM12 Tutorials


I’ve written these “How-To” articles to help get you started in using the RFM12 transceiver module from HopeRf. I found using these modules for the first time can have a bit of a steep learning curve, so I’ve put down to e-ink what I’ve learnt and hopefully you can benefit from my trials and tribulations 🙂

Other Articles

RFM12 Tutorial – Part1

During the development of the StrobIt Open Trigger Project I’ve been using the HopeRF RFM12B Tranceiver as the RF module. The learning curve was fairly steep so I’ve decided to create a series of How-To articles so that others can easily get the module up and running fairly quickly for their project of choice. So far I’ve already slated these for use in a few other projects around the house, both robotics, home control and weather station related.

Continue reading “RFM12 Tutorial – Part1”