Remote Programming I/F

Questions on other types of hardware and getting it talking to the ARM CPU
Post Reply
danlee58
Posts: 210
Joined: Thu Jan 17, 2013 2:29 am

Remote Programming I/F

Post by danlee58 »

I have built several boxes using a Coridium Pro Plus or Super Pro board. A point of difficulty has always been when I need to reprogram the board. It's not too bad, if I am in the development stage, but once the unit is in situ, it means nearly complete disassembly.

I would like to add a connector to the end panel of the box, and use a plugin cable that connects at the other end to a FTDI dongle. That FTDI dongle could be a stand alone unit or housed in another small box. The USB cable would plug into the FTDI dongle. The remote unit would also house a toggle switch, that supplies the ground connection to the programming pin on the Coridium board.

A panel mount Ethernet connector and a common Ethernet cable should do the job.

Has anyone done anything along this line?



basicchip
Posts: 1090
Joined: Fri Oct 19, 2012 2:39 am
Location: Weeki Watchee, FL
Contact:

Re: Remote Programming I/F

Post by basicchip »

This is quite easy in BASIC, your program only has to END and it is ready to download a new program. The BASIC firmware has a bootloader that reads a modified Intel hex file and programs the Flash. You can use BASICtools to create a new program or the program link included below to load a pre-compiled BASIC program.

http://www.coridium.us/files/BASICloaders.zip

You can do this a number of ways in C. It mostly depends on how you want to accomplish the download. If you run 5 pins out (the serial lines and 2 controls and GND), you can do a normal ISP download. If you want to just run 2 out, then you will have to write a bootloader or call the ISP from C (which can be launched with an IAP call).

danlee58
Posts: 210
Joined: Thu Jan 17, 2013 2:29 am

Re: Remote Programming I/F

Post by danlee58 »

I have decided to use mating DB9 connectors. I won't need a cable. I'll plug the programming box into the host. I can also eliminate the toggle switch, if I just ground the Boot pin in the programmer.

danlee58
Posts: 210
Joined: Thu Jan 17, 2013 2:29 am

Re: Remote Programming I/F

Post by danlee58 »

I built it, and it works. I included a toggle switch to short the Load pin on the Super Pro board to ground. I might need to open that connection to reset the board, or for any PRINTF statements in the code. Here is the pinout that I used on the DB9 connectors.

1 - 5 Volts
2 - RXD
3 - TXD
4 - DTR
5 - GND
6 - GND (for LOAD pin)
7 - LOAD (Boot)
8 - CTS
9 - unused

The USB to serial I/F that I used is a CP2104 USB-to-Serial Adapter Carrier. It has a DTR pin available. I didn't jumper DTR to RTS, I just wired the DB9-4 pin directly to the DTR pin, and bypassed RTS. I used a separate Ground for the LOAD pin, because it made my wiring of the toggle switch easier.

danlee58
Posts: 210
Joined: Thu Jan 17, 2013 2:29 am

Re: Remote Programming I/F

Post by danlee58 »

I intend to use this device as a direct plug-in to my Coridium based controller. I could also use a DB9 straight cable, or by swapping TX & RX pins, I could use a Null Modem Cable, since I kept the RS232 pinout for TX, & RX.

Post Reply