Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
03/29/05 15:15
Read: times


 
Msg Score: +1
 +1 Good Answer/Helpful
#90598 - I implemented something similar...
Responding to: ???'s previous message
I implemented something similar to this but rather than using a "random" approach (which I believe may be unreliable for this function) I had a serial EEPROM and a battery connected RTC on the PC board. A manufacturing level serial interface into the microcontroller device permitted setting of the time & date into the RTC and writing 12 monthly access codes into the serial EEPROM. The serial EEPROM also has a time tracking record written into it that permits the recording of the "last activated date/time". This time stamp is stored with check codes and in two copies to allow reliable recovery of the "last good" time tracking record in case there is a power glitch while writing one copy to the EEPROM. The software is setup to allow for an inital few hours of free accumulated device usage time after which the device prompts for the first of the access codes. The access codes are entered from the device keypad as 4 digit numbers. The customer is given the first code as they make the initial purchase payment for the equipment. The equipment is setup on a payment schedule to fully paid for after 12 payments and thus the reason for 12 access codes in the serial EEPROM data storage. As each access code is used an "access code index" is stored which tells how many codes have been used so far. This index is stored as a part of the the "last activated date/time" record as described before. At each power up the device (or passage of 24 hour period of continuous ON time) the RTC date is checked to see if there has been a passage of 31 days since the last activation. If there has been 31 or more days then the device prompts for the next access code. No unit functionality is available until the code is entered properly and of the improper code is entered up to 5 times and/or no entry is made in 30 seconds the device turns it self back off. I have a special feature wherein if the user happens to enter the 12th month access code at any point then the unit enters "paid up mode" and will never again prompt for an access code. This is used for when the user gets tired of the monthly payment system and decides to take advantage of the discount to pay up the resr of the bill all at once. At power on times there is a short display made when the time to the next access code requirement is less than 4 days, In such cases the display will show something like "3 days left". Finally there is in this product a set of product features that are turned on or off via a series of configuration flag bits stored in the serial EEPROM. One of these flags is used to completely disable the above described access code system for use when the product is sold out-right. The access code disable flag is also used when versions of the product are sold wherein it is considered too expensive to populate the RTC and its small 4 year lithium battery onto the PC board.


Hope that helps show a way...
Michael Karas


List of 29 messages in thread
TopicAuthorDate
Recovering Stuck Money.            01/01/70 00:00      
   tread softly            01/01/70 00:00      
      Re: Treat Softly.            01/01/70 00:00      
      Tread Softly            01/01/70 00:00      
         legality            01/01/70 00:00      
            Result            01/01/70 00:00      
               time boming            01/01/70 00:00      
   I implemented something similar...            01/01/70 00:00      
      RE: 'I Implemented something simillar.            01/01/70 00:00      
         Copy serial EEPROM not possible            01/01/70 00:00      
            Got the point.            01/01/70 00:00      
      I need to clarify,.....            01/01/70 00:00      
         One more clarification....            01/01/70 00:00      
   Didn't work for me            01/01/70 00:00      
      Did you store keycodes in SEEPROM.            01/01/70 00:00      
         1kb Add-Only Memory            01/01/70 00:00      
         RE:Did you store keycodes in SEEPROM            01/01/70 00:00      
      Also Tried and failed but..            01/01/70 00:00      
   Sounds familiar            01/01/70 00:00      
   It's all in the Money            01/01/70 00:00      
   Time Bomb Collecting            01/01/70 00:00      
   Challenge/response            01/01/70 00:00      
   engineers are rarely businessmen            01/01/70 00:00      
      Engineers are rarely businessmen            01/01/70 00:00      
   Time Bombing the product.            01/01/70 00:00      
      Money looks like Monkey            01/01/70 00:00      
         Monkey            01/01/70 00:00      
      Legal battles            01/01/70 00:00      
   Custom Project Payment            01/01/70 00:00      

Back to Subject List