Author Topic: SBC44 with 18F4525......... IT WORKS !!!!!!  (Read 6111 times)

Jean-Marc DELPRAT

  • Sr. Member
  • ****
  • Posts: 36
    • View Profile
SBC44 with 18F4525......... IT WORKS !!!!!!
« on: June 25, 2007, 02:18:59 PM »
18F452 was really getting full with my application....

I have fitted the 18F4525 instead (24576 words of ROM   3986 bytes of RAM  1024 bytes of EEPROM)

AND IT WORKS !

not so easy, but if anyone is interested i'll wrote an HOWTO.

jean marc.

sparkcatcher

  • Sr. Member
  • ****
  • Posts: 31
    • View Profile
Re: SBC44 with 18F4525......... IT WORKS !!!!!!
« Reply #1 on: June 26, 2007, 01:51:25 PM »
could you provide a short description of what changes you had to implement to make this work?  The new beta code (3.04) for the sbc44 and 45 is large and probably getting larger.  Would be nice to know that a technique exists for making bigger code base work in these nice boards.

sp

Jean-Marc DELPRAT

  • Sr. Member
  • ****
  • Posts: 36
    • View Profile
Re: SBC44 with 18F4525......... IT WORKS !!!!!!
« Reply #2 on: June 26, 2007, 10:54:12 PM »
Here is what i made:

1) A small adaptor PCB to convert the small TQFP package to the larger PLCC.
the difficult part is that one must solder 44 small wires (wrapping wire) from top to bottom to act as the original pins of the 18F452.

2) Then the source code has to be modified due to the A/D converter configuration is different   (ADCON0...ADCON2)

3) Work out the new CONFIG options (there are much more than on the 452)

4) This one is optional : Adapt the BootLoader to the 18F4525.  I am using the nice Tinybootloader found here
    http://www.etc.ugal.ro/cchiculita/software/picbootloader.htm
    And as it is provided with the source, it was possible to adapt it to a new CPU.

I try to insert a picture, but as i have never done that and could not find any explanation in the forum help i'm not sure if it will work!!!!   




sparkcatcher

  • Sr. Member
  • ****
  • Posts: 31
    • View Profile
Re: SBC44 with 18F4525......... IT WORKS !!!!!!
« Reply #3 on: June 28, 2007, 09:37:04 PM »
thanks for the summary.  nice to know that an upgrade chip exists.  looks like they are same price as 18F452.  wonder if modtronix would ever consider a new rev of sbc44/45 using that chip.  Looks like the chip is smaller and so would fit into the existing form factor nicely.

Would be interesting to see the adaptor you developed!
thanks
sp

sparkcatcher

  • Sr. Member
  • ****
  • Posts: 31
    • View Profile
Re: SBC44 with 18F4525......... IT WORKS !!!!!!
« Reply #4 on: January 22, 2008, 11:39:28 AM »
Re: 18F4525
I found a PLCC-44 plug that brings all of the pins out of the socket to an exposed area allowing one to solder a pcb to connect the pins from the plcc to the 18f4525 tqfp.  The plug costs about $15.00.  Its made for prototypers.

JM:
can you post the CONFIG option changes that you had to make to get the 18F4525 working?

thanks,

spark,
 

Jean-Marc DELPRAT

  • Sr. Member
  • ****
  • Posts: 36
    • View Profile
Re: SBC44 with 18F4525......... IT WORKS !!!!!!
« Reply #5 on: January 22, 2008, 12:59:59 PM »
I'll prepare some document about the upgrade.
please wait.

Jean-Marc DELPRAT

  • Sr. Member
  • ****
  • Posts: 36
    • View Profile
Re: SBC44 with 18F4525......... IT WORKS !!!!!!
« Reply #6 on: January 22, 2008, 11:33:06 PM »
I have prepared some pictures of the adapter in my FTP site: (anonymous)
see PIC directory
 
ftp://gojouze.hd.free.fr

and the modifications I had to do on the 3.06 stack are:

          MODIFICATIONS TO THE MX 3.06 STACK
      TO GET IT RUNNING ON AN SBC44 with 18F4525

>>>> CPU CLOCK:
add "|| defined(_18F4525)" in projdefs.h to have CPU clock = 20MHZ

>>>> SYSTEM LED:
bug fixed in mac.c where B6 port is wrongly forced as input if board is not an SBC65/68

>>> fuses
added 18F4525 specific fuses in cpuconf.h

    #elif  defined(__18F4525)
        #pragma   config   OSC=HS,   IESO=OFF, FCMEN=OFF, PWRT=ON, BOREN=SBORDIS, BORV=0
        #pragma   config   WDT=OFF, WDTPS=128
        #pragma   config   MCLRE=ON, LPT1OSC=OFF, PBADEN=OFF, CCP2MX=PORTC
        #pragma   config   STVREN=ON, LVP=OFF, XINST=OFF, DEBUG=OFF
        #pragma   config   CP0=OFF, CP1=OFF, CP2=OFF, CPB=OFF, CPD=OFF
        #pragma   config   WRT0=OFF, WRT1=OFF, WRT2=OFF, WRTB=OFF, WRTC=OFF, WRTD=OFF
        #pragma   config   EBTR0=OFF, EBTR1=OFF, EBTR2=OFF, EBTRB=OFF


>>> PWM
18F4525 PWM registers are different (CCWF). comment out offending lines
or fix if you really need PWM (i have just commented out)

>>> SERIAL PORT
18F4525 has a 16 bits baud rate generator like the 18F6621 but clock is 20Mhz instead of 40
then brg values have to be divided by 2

>>> ADCON
no changes needed except the well known bug:
//            AdcValues[adcChannel] = ((WORD)ADRESH << 8) || ADRESL;      //BUG !!!!!!!!!!
            AdcValues[adcChannel] = ((WORD)ADRESH << 8) | ADRESL;



sparkcatcher

  • Sr. Member
  • ****
  • Posts: 31
    • View Profile
Re: SBC44 with 18F4525......... IT WORKS !!!!!!
« Reply #7 on: January 23, 2008, 07:18:32 PM »
Hi JM:

thanks  :-) for posting the adaptor circuit and the text file.

Looks like making a pcb adaptor would be fairly easy using the eagle pcb layout software and then using your adaptor files as connection guide.

Here's a plug that plugs into the plcc-44 socket:

http://www.epboard.com/eproducts/parts/EPL-0044.htm

by building the adaptor circuit board with pads that match this adaptor on the bottom and pads that match the tqfp 18f4525 on the other side it would be fairly easy to make.  After soldering this plug and the controller to the adator card would be fairly reliable, though costly, but for prototype fine.

I'm using the sbc45 and 3.06 beta 3 code.  I have 200 bytes left in rom code.  I've had to take out debug, icmp, ms networking, remove much of the http server functionality but it is working.  I'm using dhcp, minimal http server, dns, and a hacked up http client.

I'm limited to only 3 udp connections and 2 tcp connections, which is working, but I'm at the limit.

An 184525 would greatly expand application space, plus it seems from reading the data sheet that it is a generation advanced from the 18f52 in terms of power usage and reliability.

I'm developing a lot of external software for this app now, it's nice having 256MB of ram, and not 1.5kB :cry: to build software apps with!

sparkcatcher,

Jean-Marc DELPRAT

  • Sr. Member
  • ****
  • Posts: 36
    • View Profile
Re: SBC44 with 18F4525......... IT WORKS !!!!!!
« Reply #8 on: January 23, 2008, 10:35:21 PM »
I've had a look to the adaptor you mentionned, it looks nice and sure you can make a PCB to carry the 18F4525.

I had chosen the "cheap" way, but it takes one hour of soldering with a Binocular microscope. the small 0.2mm silver plated wires soldered from top to bottom are quite tricky to solder. My solution is only acceptable for hobby applications where man time is free of charge.

Best would be that Modtronix upgrades the SBC44 to the 18F4525. I have seen that the SBC44 is NOT rhos compliant, so a new version is obviously to be expected and it would be a chance to get this CPU upgrade together with the rohs !  (David, please!!!!!!!!!!!!!!!!)

I had also thought of stripping the 3.06 but i had already size problems with the old stack, so you can imagine !!!

Best regards,
JM