Contract programmers for HCS12/ethernet

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Contract programmers for HCS12/ethernet

3,582 Views
qclaser
Contributor I
Can anyone point me to a good source for locating contract programmers with expertise in the HC12/HCS12? We are investigating a port of a relatively complicated project from an HC12A4 to an MC9S12NE64, and are having a hard time finding qualified programmers who could help us not only evaluate the scope of the task to decide whether the project makes sense technically and economically, but also to do the dirty work of revamping the existing software, or manage the process using other programmers. Thanks!
Labels (1)
0 Kudos
9 Replies

636 Views
mjbcswitzerland
Specialist V
Hi qclaser

Check out the Freescale Alliance Member directory at http://www.freescale.com/webapp/sps/site/dap.search.framework?NEXT_SCREEN=SEARCH

You can search based on qualifications, location etc. My company is listed under HCS12 networking applications and we offer a TCP/IP stack for the NE64 (see code sizes at http://www.utasker.com/docs/NE64/uTaskerV1.2-Tutorial.PDF page 17). I am not recommending us for your work since we are booked up for the foreseeable future but you may be interested to compare - note the unique uTasker simulator wich allows embedded networking devices like NE64 or M5223X to run in a simulated environment on a PC in real time - enabling quite dramatic reductions in embedded development time. (Code runs on NE64 or M5223X by modifying a compiler switch, making upgrades to the NE64's big brother during a development very easy)

Regards

0 Kudos

636 Views
qclaser
Contributor I
Thanks Mark ... very useful information.
0 Kudos

636 Views
JimDon
Senior Contributor III
Are you still looking for a programmer.
If so how would one contact you?

Thanks Jim
0 Kudos

636 Views
qclaser
Contributor I
JimDon ... I replied to your mail message through this site earlier today.
0 Kudos

636 Views
JimDon
Senior Contributor III
Big question - have you looked for and found a TCP/IP stack that will run on the target.
And drivers for the ethernet chips - if not I would select a target that already has these things.

I would not write the stack - this should be a requirement of the target.

Once you do this, this is a pretty easy job - at least in principle.
0 Kudos

636 Views
qclaser
Contributor I
Thanks. We were looking at something like this from CMX:

http://www.embeddedstar.com/press/content/2003/9/embedded10553.html

http://www.cmx.com/micronet.htm

and got more information from them on code byte sizes for various options. But we need more expertise on exactly how to manage the overall memory picture and scope out the problem before proceeding. We have a basic idea to replace our existing HC12A4 with the 'NE64 in order to maintain as much of our existing analog and ADC circuitry/code as possible, and to dispense with number crunching on the 'NE64 by sending the raw data via ethernet to a remote "master" computer. But how to actually implement all of this in code on the 'NE64 side is the problem (we have the hardware part taken care of), and we'd like to find a person or small company who could do the job as we don't have in-house expertise on the lower level issues.
0 Kudos

636 Views
mke_et
Contributor IV
Wow, thanks for the neat link! I'm going to look into that for something else that's been kicking around in my head.

I haven't been involved with ethernet for some time (I used to work for Racal/InterLan and wrote drivers there) and while I not currently up to snuff with TCP/IP I think I see a neat toy to play with! Hey, if nothing else, it builds marketable skills!

Mike
0 Kudos

636 Views
mke_et
Contributor IV
It might help to describe the project a bit. I mean, I just converted an 11 project that used a paged flash setup with a Waferscale part to the 9S12 with 128K flash. But it's 100% assembler. C is not foreign to me, but I'm not really conversant in it.

Mike
0 Kudos

636 Views
qclaser
Contributor I
I wasn't sure if this was an appropriate forum to ask a question like this as I just discovered it today, but here is a brief description of our situation.

We currently use a C development environment (from IAR) to develop our source code, and compile it into S-records. We then run the resulting the S-record file through a Perl program written to sort and manage the records before burning to a 128K EPROM that is interfaced to the HC12 and holds the main control program. This control program sets up all eight of the HC12 PWM outputs (which control analog circuitry), manages several interrupts that control data acquisition and timing, and talks to a Burr Brown 16-bit ADC (SPI interface) with 8-channel MUX in front for data collection. The system runs continuously to acquire ADC data at about a 16 KB/s rate (512 16-bit data points on 4 ADC channels in 256 ms).

With the existing HC12 code, these data are accumulated into four arrays and processed in real time, with the results output on an RS232C port. The data arrays are "ping-ponged" so that one pair is being processed while the other pair is being filled with data via the interrupt routines. This is necessary because a lot of floating point number crunching (emulated by the IAR compiler) is done on each group of raw data. The 4K of EPROM on the HC12 is used to hold various permanent variables, a 512 Kbit SRAM is interfaced to the HC12 for live array storage, and a 128K EPROM is interfaced to hold the control program.

Our plan with the 'NE64 is to eliminate the SRAM and external 128K EPROM, and use the larger 64K EPROM on the 'NE64 to hold the main (much smaller) control program and all variables. Then, eliminate all the number crunching and array ping-ponging by the microcontroller and send the raw data via the ethernet interface (which should be fast enough) to an external "real" computer which would handle the dirty work. So we would use the 'NE64 to simply collect a set of raw data, fire it out the ethernet port, collect the next group, etc. There would be some 2-way ethernet communication as we'd need to get control variables from the "master" computer at boot up (rather than having these live in the HC12's 4K EPROM as they do now).

The bulk of the work, then, is to eliminate all the existing complicated memory management and interface code dealing with the external SRAM and program EPROM, and replace that with the appropriate ethernet control code that talks to the outside world. It is a reasonably involved project and we are looking for a small company or very good HC12/HCS12 guru who could tackle it (I can write the C code once things are set up in IAR, but I don't understand all the gory memory management and interrupt code underneath). We haven't been able to find, via web searches, anything other than very large companies in the automotive or industrial areas who are used to massive development projects and very big $$$. I posted here with hopes of finding leads on where we might go for help with this sort of porting project, and appreciate any replies or suggestions.
0 Kudos