So I have spent the last two months looking at improving the code I wrote for the DESC.  There were still some stability issues when the board turned on and off it would sometimes write over the EEPROM.  This was extremely frustrating and no amount of error checking would get rid of it.  

Then I made a discovery.  The Attiny 4313 does not have brown out detection turned on by default, so when the board looses and regains power it can start anywhere in the code.  This is exactly what had been happening to me.  One simple change of the fuses and the board works great.

Since I went down the path of error checking I decided to include my subroutine anyways.  It records the calibration 3 times each.  Then on startup if one of the 3 is different from the other two it will be overwritten with the value that matches the others.  Finally if all three values are different the board will go into panic mode and prevent all movement (the led blinks rapidly)  All you have to do to restore function is to re-calibrate.  In testing I have been unable to get the board to fail with over 1000 resets.  The only way I could get it to fail was to disable portions of the code.  All in all I am very happy with this.

Lastly I have decided to add on board mixing as well.  This will be a factory option for now with no way to change it on the fly. (future board revisions may have a jumper).  I think that the mixing seems to be smoother than when it is done on the radio.

So far 2017 has been a very productive year.  The boards will again be for sale shortly after some final testing and updating of the documentation.  

 

 

Older Post Newer Post

0 comments

Leave a comment