Brainpad .Net change from Scratch Firmware back to original Firmware to use with Visual Studio

I downloaded the Scratch.NET firmware to one of my BrainPads to test it out using Scratch, and I would to change it back to the original firmware so that I can use it with Visual Studio. I tried to go into FEZ Config but it is not recognized as connected. How do I go about doing this?

1 Like

The Scratch firmware is actually just a program like any program you write with Visual Studio. It does, however, take over the USB port, so to load new programs from Visual Studio, you need to hold down the MODE button (the left arrow button) while pressing RESET. The display should now say “Using secondary serial port”, indicating that the Scratch program is no longer using the USB port.

After rebooting with the MODE button, the BrainPad will show up once again as a NETMF board, ready to receive new programs. Once you have written something over the Scratch program, you won’t need to hold down MODE during reset.


@ mcalsyn - That did the trick. Thank you very much!

@ mrsdelgaudio - I did mis-state something though (it has been a while since I wrote the Scratch software). You will have to hold down the MODE button everytime you reboot, because the port change that Scratch does in order to work better is ‘sticky’. If you are going to use the boards mostly in non-Scratch mode, run this program. It will put the boards back in the default configuration for use with Visual Studio:

using System;
using Microsoft.SPOT;
using Microsoft.SPOT.Hardware;
using GHI.Processor;

namespace ResetDebugPort
    public class Program
        public static void Main()
            if (GHI.Processor.DebugInterface.Type == DebugInterface.InterfaceType.Serial)
                Debug.Print("Changing debug port to USB");
                GHI.Processor.DebugInterface.Type = DebugInterface.InterfaceType.Usb;
                GHI.Processor.DebugInterface.UseInTinyBooter = true;
            Debug.Print("Debug port did not need to be changed.");

To get the program to compile, you will need to add references to these assemblies (right click on the project, Add -> Reference):


1 Like