Connect up the power (5V) and GND lines, then connect the RX on the Host board to TX on the FTDI board and TX on the Host board to RX on the FTDI Board. You are now ready to install the new software.
To load the new software we use the free ds30loader application. This works with the bootloader on the Host board. Run the ds30loader application and...
However, the ds30loader is Windows only, and I'm on a Mac right now.
Is there a way I can use the Arduino Uno to program the usb host board? It uses a .hex file to program it which is why I am a bit skeptical.
You can use an Uno as the FTDI board. Just program the Uno with the BareMinimum example sketch, which does absolutely nothing. Then either cut the reset-enable trace or put a 10uF capacitor between GND and RESET. The RX pin on the Uno is the TX output of the USB-to-serial section of the Uno board, and the TX pin on the Uno is the RX input of the USB-to-serial section of the Uno board.
You will then need to use the Windows program or find a suitable Mac program that will use the Uno or FTDI to program the host board. I don't know much about PIC MCUs but I suppose there could be a Mac program available to program them. Or you may be able to use WineBottler to run the Windows program mentioned on your Mac, or run Windows in a VirtualBox on your Mac.
dmjlambert:
You can use an Uno as the FTDI board. Just program the Uno with the BareMinimum example sketch, which does absolutely nothing. Then either cut the reset-enable trace or put a 10uF capacitor between GND and RESET. The RX pin on the Uno is the TX output of the USB-to-serial section of the Uno board, and the TX pin on the Uno is the RX input of the USB-to-serial section of the Uno board.
I have successfully uploaded the sketch. I will look for a program to program the board.
dmjlambert:
Or you may be able to use WineBottler to run the Windows program mentioned on your Mac
Unfortunately, I can't get wine to recognise serial ports.
Riva:
The ds30 loader forum post here implies you can download mono on the mac and run it from that.
I did try that and it doesn't work. It just seems to hang for a long time when I open it, and then error (I did use the 'export' commands otherwise I get errors straight away)
My output:
iMac-269:bin everyone$ mono ds30LoaderGui.exe
WARNING: The runtime version supported by this application is unavailable.
Using default runtime: v4.0.30319
It is like this for about 2 minutes, then it just errors. I have tried uninstalling and reinstalling the latest version of mono, to no success.
How old is the ds30LoaderGui.exe as the forum post I linked to is a few years old so maybe the latest version of Mono is not compatible or you need to force X11 (as mentioned in a thread post). I notice a few references to X11 in the pastebin dump.
Riva:
Sorry, I don't use mac's so cannot really help.
How old is the ds30LoaderGui.exe as the forum post I linked to is a few years old so maybe the latest version of Mono is not compatible or you need to force X11 (as mentioned in a thread post). I notice a few references to X11 in the pastebin dump.
Looking at the ds30loader pager ds30 Loader - About
the copyright starts at 2013, and the manual says March 2013, so by that I will say it's around 6 years old. However, there is probably newer updates to it.
I will try downgrading my mono to around that time, if it's available.
Dream
EDIT: Unfortunately, I can't seem to download mono 3.0.7 from March 2013, so I'm stuck with the latest version.
EDIT2: Nevermind, I told a lie! I can download mono 3.0.7 from the download archive page.
Well, Microchip has an application for programming PIC MCUs called MPLAB X IDE. Perhaps you could use that to program a prebuilt hex file. There may be a PIC forum where they talk about using that USB host device or the PIC chip that is on it.
I was able to program my board successfully. I had a windows laptop at home that I was avoiding using becuase it is quite slow and just not funt to use for anything other than YouTube.
However, I tried anyway. I connected all the pins and uploaded the file while holding the reset button on the board and it programmed.