Country Laboratory

FreeJALduino

I named it like this because I started from Freeduino project and it will be programmed by JALv2 (at least, at beginning). Is my first (functional) trial on Arduino board layout using PIC 18F2550. This project is using the pcb designer gEDA PCB (which have also a Windows version). A MAC OS X version is available via Fink project. Here is a library of components (is an addition to standard components which come with the program) for gEDA PCB.


This is the finished board (first version). Nothing fancy.

Project updates

Updated Feb 9, 2010: Added JAL pin definitions file for FreeJALduino4-01 board, named freejalduino4.jal - see it at Attachments from the end of this page.

Updated Feb 5, 2010:
Added "Component Sheet", "Arduino pinout sheet" and "Microchip pinout sheet" images for FreeJALduino4 board.

Updated Jan 30, 2010:
Added two .pdf files for PCB making, toner transfer and photo method. Are multipage files, and only page nr.3 is most important.

Updated Jan 16, 2010:
Uploaded FreeJALduino4-01.pcb instead of FreeJALduino4.pcb. Sorry! I don't know why is not displayed! So I had to rename it.

Updated Jan 10, 2010:
Added FreeJALduino4.pcb file at attachments as version 4 of the board. This board will have a true Digital 13 pin and will make possible the use of a Ethernet shield, by example.

Updated Jan 07, 2010:
Added FreeJALduino3.pcb file at attachments as a version 3 of the board. Corrected sockets position - all gEDA PCB files were affected by this error (50 millis more between up row and bottom row of sockets). When I started FreeJALduino project, I used the original Eagle files of Freeduino project to have the same footprint for sockets. On gEDA PCB I started from zero and I counted one more 50mil point from 50mil grid of points. My appologies!

Updated Nov 02, 2009: Added version 2 of the board.

Version 4

FULL SUPPORT

I spent a lot of time analyzing the Arduino shields and most of them are using digital pins much more than analog pins so, I decided to complete all digital pins and let Analog pin 5 unconnected (which is contrary to my training - I work in an area where analog pins are most important). This way, we can have a true Digital 13 pin, and SPI and I2C (Arduino) ports can be used at software level and Serial port can be used at hardware level. This will cover a large number of Arduino shields and I think this is the best way (design). This board will have freejalduino4.jal pin definitions library. The board file is named "FreeJALduino4-01.pcb" and can be downloaded from attachments. About analog inputs, you still have 10 analog pins at your disposal if you want.


Component layer (use for placing components on board). Click for zoom

Combined "Arduino" and "Microchip" pin out silk.
Use as programming reference (You can print it using Firefox, landscape and 100% scaling).
Click to zoom

Version 3

Rearranged a trace and changed another to allow shields to be powered directly from USB when "USB power source" is selected. This board will use freejalduino.jal as pin definitions library.


Version 2

Added a testing LED on Digital 12 pin, enabled/disabled by a jumper. I changed the pcb designer to gEDA PCB (which have also a Windows version). Here is a library of components (is an addition to standard components which come with the program) for gEDA PCB. The file is named "FreeJALduino.pcb" and you can download it from the bottom of the page. The board is a little larger and all LEDs are 3mm diameter. Also, it have more filtering capacitors, a 3.3V regulator on board, a socket to fix 100mil problem and PC USB protection. This board will use freejalduino.jal as pin definitions library.

No other pcb designers are supported, sorry.



Update:

Version 1

Board reworked, removed three bridges and one capacitor. File available at attachments as
freejalduino-reworked.brd. The virtual image illustrate the new changes. The silk image is from first variant (both are available) . This board will use freejalduino.jal as pin definitions library.

1. Goals

 - Using the same layout  as on Arduino.
 - Having the same functions if is possible (not sure on PWM). 
 - No SMD components.
 - The possibility to program the PIC on board with PicKit2 Microchip Programmer
 - A board that can be made by anyone in his own kitchen.

2. The Board

2.a. (design)

Somewhere at the middle, I lost the consistency between schematic and the board (I hate this at Eagle) so, I continued only with the board design (I will do it again in KiCAD soon).

Unfortunately, "AREF" and "Digital 13" from extension connectors are not connected because no more available pins. Also, only Reset button was fitted, no space for Start button. That hole from 7805 regulator must not be made because you can break the traces. Is more easy to place a ceramic resonator than a crystal but with care, is possible. Here, the capacitors from oscillator have a common hole. All components will be mounted horizontally including electrolytic capacitors from regulator, ceramic capacitors from oscillator and crystal if is tall.

Virtual image (is not really correct but it can give you an idea of how will look before starting making it):


All things:

The silk :-P


Schematic (click to zoom or download the package from Attachments at the bottom of the page)

2.b. (construction, advices, disclaimer)

Disclaimer:
Of course, I'm in no way responsible for any damage. You are on your own (as I am ).

Issues of this board:
See them here.

Building it:
Soon... right now I'm trying to transfer the toner onto board (failed at first trial)...
Ok, I did it at second trial. I didn't had glossy paper so I used an A4 sheet of labels. I removed the labels and printed on the same face of paper support.

But you can see on few areas I pressed to much and traces changed their shape (but you can do better than me).

And finally etched the board (yes, the board is white),
 
and cleaned it with acetone. Sorry for photo quality, it was night already. After etching the board, I realised that I forgot to use permanent marker pen to correct some traces :-( .

Tomorrow (23 Aug. 2009)  I must drill the board but I will put it on hold. The bit I have is 1 mm diameter and is too big. I need 0.8 or 0.7 mm diameter. And I'm out of budget too :( .

I cut the board to Arduino shape and painted it with a permanent marker pen - I had some black markings on the white board for other projects, ruining the aspect...
Should I rename it Blackduino?





And my "Blackie" is ready for tests, hurray! The tests will be made with JAL package (bootloader and PC hosting application from Albert). and with Pinguino (bootloader and IDE from Jean-Pierre Mandon) and Processing.

All holes have been made with 0.7mm bit and some enlarged with 1mm bit for LM7805, jumper, USB connector, switch, DC connector.  You must pay attention when you build this board to not make short circuit and when you place capacitors close to crystal. A FreeJALduino MEGA board will be more easy to build and I recommend it.

Here you have more details:

 
The PCB is not hard to do at home. After soldering all components, I used nail polish (colorless) to protect the traces but I recommend you to make a lacquer from rosin(colophony used by musicians to anoint the violin bow) and acetone. Is what I use but mine was consumed and I was in rush.


Here you can see how I placed the capacitors

As a key elements (from usage point of view), we have the reset push-button and the power selector jumper (which now is in USB power select position - see the silk at the beginning of page).

About the 27pF capacitors from oscillator, I wanted to have a common hole for the grounded pins but I was "forced" to make another one. Is enough space without touching any other component (remember, is about 0.7mm holes):

Click to zoom.


I will use this board for all my projects until I will get a 18F4550 micro controller...

I added three vias for LM3940, the 3.3 volts regulator. The LM3940 can be glued on board and connections made with wires.  I also made thicker routes, to be easy on toner transfer procedure.

Testing:
See a movie with the first test of this board.

Is a "blink a LED" test using Pinguino under Linux SuSE 11.1. I also tested Processing from where I was able to command the board (blinking LED's on mouse motion and reading a potentiometer).

3. The software

Because is about PIC18F2550, you have many choices. For me, is about JAL and in this page, you can find at the end, jal.zip file which you can download and test - read that page first. I made inside that archive  a library to simulate the functions from Arduino programming language (freejalduino.jal) but it will be great if Jean Pierre Mandon can make his software configurable at pin level...

And the good news are:
Jean Pierre Mandon has agreed to include support for this card on his Pinguino software. Thank you very much!
So, you will be able to program this board with Arduino language and using some of Arduino shields!
My next wish is to get acceptance  for this board from Jallib development team.

You can see here a reaction on Arduino forums to this board and Jean-Pierre's Pinguino project.
Or see this discussion and tell your opinion or comment here.

4. Tutorials and projects for this board

I hope here will be a huge list...

4.1 Developing with JAL and Jallib

- Getting started with FreeJALduino board - board description, jal software package, and how to burn the bootloader.
- FreeJALduino with Jallib - how to instal drivers, use the IDE, compile the program and how to upload it on board
- USB-CDC - Using keyboard to switch a LED on/off - how to use USB Serial library to command the board.
- USB-CDC - XYZ CNC Router - how to make a cnc router using USB-Serial library

4.2 Projects in JAL from users

Here you go (only links to your page)...

4.3 Developing with Pinguino (and JAL)

Jean-Pierre Mandon merged his Pinguino IDE with JALv2 compiler so, you will be able to program in C or in Jal without leaving the Pinguino IDE. This is expected to be Pinguino beta 8

5. Accessories

For Romanian  people, the shield proto kit can be found here.

User builds

Who is first? You can contact me at funlw65 at gmail dot com.

Attachments (8)

  • FreeJALduino 18F2550 Arduino like board.fzpz - on Sep 24, 2009 10:56 AM by vasi . (version 1)
    47k Download
  • FreeJALduino3.pcb - on Jan 6, 2010 8:48 PM by vasi . (version 2 / earlier versions)
    50k Download
  • FreeJALduino4-01.pcb - on Jan 25, 2010 6:30 PM by vasi . (version 2 / earlier versions)
    50k Download
  • both_boards.pcb - on Feb 2, 2010 10:26 PM by vasi . (version 1)
    91k Download
  • both_boards_photo.pdf - on Feb 2, 2010 10:26 PM by vasi . (version 1)
    249k View Download
  • both_boards_toner.pdf - on Feb 2, 2010 10:26 PM by vasi . (version 1)
    249k View Download
  • freejalduino-reworked.brd - on Aug 29, 2009 5:41 AM by vasi . (version 1)
    38k Download
  • freejalduino4.jal - on Feb 9, 2010 7:38 AM by vasi . (version 5 / earlier versions)
    4k Download

Recent site activity