CCS C Software and Maintenance Offers
FAQFAQ   FAQForum Help   FAQOfficial CCS Support   SearchSearch  RegisterRegister 

ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

CCS does not monitor this forum on a regular basis.

Please do not post bug reports on this forum. Send them to CCS Technical Support

Distributing protected code 12f683

 
Post new topic   Reply to topic    CCS Forum Index -> General CCS C Discussion
View previous topic :: View next topic  
Author Message
tinley



Joined: 09 May 2006
Posts: 67

View user's profile Send private message Visit poster's website

Distributing protected code 12f683
PostPosted: Wed Nov 24, 2010 9:53 am     Reply with quote

I wish to make available a f/w update for a client, but don't want them being able to program more than a small number of units. I have not delivered any yet, although I have no room left to implement code to 'unlock' anyway.

I think the only way to do this would be to write a PC application to interface to the in circuit programmer directly so that it can decode a coded hex file provided 'security' criteria are met.

Does anyone have a better idea, or have experience driving ICP devices directly please?
temtronic



Joined: 01 Jul 2010
Posts: 9244
Location: Greensville,Ontario

View user's profile Send private message

PostPosted: Wed Nov 24, 2010 12:08 pm     Reply with quote

One way is to design and build a 'hand held' programmer for the client. It would contain the new firmware for the upgrades. The handheld's program would be limited to x number of data transfers, maybe read the target device IDs and verify from a master list. Newer firmware updates could be downloaded from a PC connected to the WEB for FTP transfers from your office.
Hardware cost is minimal,might take a week or two fro design of handheld program(longer as you'll want to add more 'features' once you get started!)
The 'trick' is to have a secure masterlist of legal targets to reprogram that way illegal copies cannot be made by the client.
tinley



Joined: 09 May 2006
Posts: 67

View user's profile Send private message Visit poster's website

PostPosted: Wed Nov 24, 2010 3:42 pm     Reply with quote

Thanks temtronic. That's not a bad idea, although it would be quicker to use an existing piece of hardware with a PC application to control it. I seem to recall seeing example code for one of the ICP devices a few years back, but maybe I'm thinking of a different processor family???

I was hoping that there was one part of memory that could be excluded from the bulk erase on this device, but the only three locations that are, are the id, which is very readily read and changed, or two locations for the calibration.
dbotkin



Joined: 08 Sep 2003
Posts: 197
Location: Omaha NE USA

View user's profile Send private message Send e-mail Visit poster's website

PostPosted: Wed Nov 24, 2010 8:07 pm     Reply with quote

Take a look at the 12F1822. It's an upgrade to the 12F683 with some additional features that may prove useful to you - including the ability to write to its own program memory, and you can write-protect a boot block. It's also *cheaper* than the 12F683, and there's a WPU on A3 - meaning one less resistor in many designs (like mine) that currently use the '683.

If they ever get around to releasing it, the 12F1840 looks like an absolute killer 8-pin device. Cap sense, XLP, 4K words of program memory, internal 32 MHz oscillator... I'm waiting for it! My current '683 based product uses 1020 words of 1024. I need more space!
pdl



Joined: 01 Jun 2005
Posts: 45
Location: UK

View user's profile Send private message

PostPosted: Tue Dec 07, 2010 7:55 pm     Reply with quote

Hi, take a look at the this item: TEAclipper by flexipanel.com

Does what you want.

Pete
tinley



Joined: 09 May 2006
Posts: 67

View user's profile Send private message Visit poster's website

PostPosted: Wed Dec 08, 2010 4:34 am     Reply with quote

Thanks dbotkin and pdl,

I see the TEAclipper is a great device, but doesn't let me email the code securely. If I had the USB protocol to drive one of the Microchip or CCS ICD's I could quickly write a VB application to decrypt code and program. My thought now is to purchase a CCS ICD-S40 and watch the serial port to get the protocol.

I had looked at the 12F1822... and I must have not looked well enough, as I thought I couldn't program internally... must double check now! Besides, getting these devices is not easy in the UK, but I have just ordered the last few, (until Feb), from Microchip Direct. It still has a lack of memory though, and my application is already compromised because of lack of space... mind you the UART will save some space. I have been watching the 12F1840 with interest... and yes, that would solve my problem… but when!?!

! Oh… I have just noticed the serial port on the ICD2… I forgot it had one of those!

Thanks for your input.
Display posts from previous:   
Post new topic   Reply to topic    CCS Forum Index -> General CCS C Discussion All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group