Buy(Cart) Contact Devices Programmer NSDS Home


Support summary

  • NSDSP Programming - Yes
  • NSDSP Debugging - Yes
  • NSDS Compiler - In Progress
ICSP connection


LVP Limitations

Since NSDSP is a Low-Voltage Programmer (LVP), it can only program PIC devices if LVP configuration bit is enabled. Fresh (unprogrammed) devices have LVP bit set and therefore they can be programmed. It is impossible to disable LVP bit during LVP programming, but if the device has been previously programmed with HVP programmer, the LVP bit may have been disabled.

When brown-out is enabled with BOREN configuration bit, LVP is only possible when the VDD voltage is above the brown-out threshold.

These limitations may be avoided with High-Voltage Programming (HVP), however NSDSP requires an external circuit for HVP.


Target Voltage Below 2.7V

If voltage is less than 2.7V programming is severely limited - it is impossible to bulk erase the device, it is also impossible to erase configuration bits.

NSDSP cannot detect target voltage and it assumes that the voltage is above 2.7V. If the actual target voltage is less, programming will fail. However, if you tell NSDSP that the target voltage is below 2.7V through programming software, NSDSP will use special low-voltage programming mode. In this mode, NSDSP verifies if the desired programming can be performed at voltages below 2.7V, and if it is possible (device is not code protected, configuration bits do not change or only change from 1 to 0), it performs the programming. If such programming is impossible, NSDSP software will stop and show an error message.

Programming in low-voltage mode may be considerably slower. In addition, you may need to decrease programming speed to 3MHz or below.


Alternative ICSP pins

PIC16F1459 has an alternative pair of ICSP pins multiplexed with USB D-/D+ lines. These pins can be used for LVP programming, but they cannot be used for debugging.

Since they are used for USB, these pins cannot be used at voltages above 3.3V. Therefore, if your PIC runs at 5V, programming requires special considerations.

Alternative ICSP connection

First, you need to make sure that NSDSP runs at 3.3V. If you use NSDSP-1-3V3 then this is automatic. If you use NSDSP-1-U, set the jumper to supply 3.3V. The 3.3V power will not be used to power the target PIC. It only sets the voltage level which is suitable for the alternative ICSP pin pair.

Then you need to disconnect the NSDSP VDD line from the PIC. This is necessary because it uses 3.3V while your PIC is running at 5V. Make sure VSS line is still connected.

Finally, you need to make sure that the NSDSP's MCLR 3.3V output can drive PIC's MCLR pin at 5V. Theoretically this would require a level translator (as shown on the schematics), but in our tests straight connection worked sufficiently well.



NSDSP firmware contains all the necessary provisions for debugging PIC16F1459 with NSDS. Once NSDS support for this device is compliete, NSDS will be able to debug it.



Microchip PIC16F1459 page

Northern Software Home Development System Programmer/Debugger Supported Devices Contact Us Purchase/Vew Cart

© 2007-2017 Northern Software Inc. All Rights Reserved.