- I'm sorry to have to give everyone some bad news......
It has become clear through testing the latest batch of PIC mcu's I
am using that the software which has already been sent out in the
past couple of weeks will not work as expected. It is possibly an
error of judgement on my behalf, or perhaps the result of a change in
specification of the Pic processors themselves.
I intend to rectify the problem by sending everyone replacement MCU's
The background to the problem covers the aspect of the smartsocket
software which makes the sockets enumerate themselves, assigning
themselves the correct position in the chain of sockets. In order to
perform this task a simple piece of communication takes place between
the sockets shortly after power is applied.
The PIC mcu's have a feature which is called 'power up timer'.It is
generally good practice to allow a short period of time to pass
before entrusting critical tasks to the processor, in order to allow
time for various voltage levels to settle and for the internal clock
to become stable. The power up timer of the pic runs very quickly but
manages to ensure that a suitable period of time is always allowed
to elapse to allow for this settling down period.
It has become apparent from testing that although the sockets operate
correctly individually, for some reason the self enumerating software
runs out of synch, and for that reason all sockets will just consider
themselves to be the first socket in the chain. They will respond
normally to all commands and no damage will be caused to them or to
any of the other components on the pcb, or any of the hardware which
is driving and controlling them.
I believe that the pic's I have sent to you have a broad range of
tolerance for the powerup timer, which is either a new situation or
one which I previously overlooked having only been treated to mcu's
which operated to the tightest part of the specification. The problem
appears to be that where different lengths of duration of powerup
timers are in effect the essential timing code which runs before any
other code is missing an essential timing window just after powerup
and the default setting of position 1 is being assumed by those
For that reason I have tested the pics with the powerup timer
disabled and can say that the sockets operate as designed, 100% of
the time. All new versions of software will come with the powerup
timer disabled, and all software in the files section will be updated
to reflect that change.
This situation means that the newest effect which I completed today
will be issued to everyone who has ordered software, mcu's and
completed sockets in the last 2 weeks.