News:

;) This forum is the property of Proton software developers

Main Menu

Programming with Proton and FT232RL FTDI adapter

Started by broderic, Mar 14, 2021, 08:15 AM

Previous topic - Next topic

broderic

Hello.
First of all, I'm very happy that this beautiful forum for this beautiful compiler has been restored.
Thank you, I appreciated a lot.

Coming to my issue:
I tested and developed my weather station using Amicus18 and now I transferred the circuit on a PCB.
I reproduced the use and connections with the FT232RL FTDI, as you see in the enclosed picture.
When I connect the FT232RL to the USB port of my PC, it is regularly recognized.
Now I wonder: how can I program the chip from Proton IDE using this arrangement directly on the PCB?


Thanks.ftdi.JPG

towlerg

I may have misunderstood but the answer is that you can't program a Pic device with an RS232 interface. You need a Pickit2 or 3 or 4 also NSDSP is a cheaper solution.Clones on eBay seem to be OK.

Bob (G8GFA)

#2
Sorry if this is a silly question, but have you installed the Amicus18 bootloader on your new board? Also can we assume that you are currently programming your Amicus18 via the USB port?

Bob
 

broderic

Thank you towlerg, Bob.
Yes I'm currently programming my Amicus18 via the USB port.

My intention now was to use the same principle trying to program the 18f25k20 on the pcb with USB and Proton.
If I load the Amicus 18 bootloader on the chip on the PCB with Pickit2, then I don't know how to go on.
I suppose I have to create a new programmer in Proton, like Amicus18 Loader for instance.
But I don't know how to tell Proton that I want to program via USB, not with Amicus18, but with FT232RL FTDI I'm using on the pcb.

Many thanks.

Bob (G8GFA)

I think all you need to do is put the bootloader onto your new board and program it the way you would your Amicus18. I'm making the assumption that the the new board is using an 18f25k20 as well.

As far as the Amicus18 loader is concerned I would think that it would just see your new board as another Amicus18.

RGV250

#5
Hi,
Have you added all the other components related to the MCLR/VPP IE R3, C12 and VDD, VSS.

Regards,
Bob

Reset pin.jpg

broderic

RGV250: yes I did, I added what you show. I didn't show in the scheme I posted since I didn't think it was important related to the problem I had to face, but they are present in my hardware.

Bob (G8GFA): what you wrote is exactly what I thought too and intended to do, but when I try to program specifying Amicus18 Loader, a message tell me that "Amicus18 is not found".

Many thanks for your kind replies.
Regards

DaveS

1/ You would need to programme the FT232RL chip so it is recognized as an Amicus board but then you will run into driver problems as the Amicus18
http://www.myamicus.co.uk/Files/?dir=Amicus_18/

2/ I released a version of the Amicus Loader a long while back, I believe it looks for the Amicus board first but it will use any serial port it finds so you don't need to re-programme the FT232RL chip.
There may be a copy of that around somewhere if not I could hunt for it.


3/ You could use the Tiny Multi Bootloader+ you would have to change the firmware https://sourceforge.net/projects/tinypicbootload/

Regards Dave

top204

#8
DaveS is correct.

I wrote the Amicus18 bootloader before the signed driver rip-off was brought in by Micro$oft, and the FTDI device was programmed with a unique name and VID-PID, so the bootloader executable could find it immediately and did not need to ask what port it was on. This was one of the things that made the Amicus18 board so easy to use. i.e. A single click programmed the device without any questions. It also made the serial terminal disconnect from the Amicus18 board's serial interface because the bootloader sent a signal to it, so the serial terminal disabled its serial port to the board until the bootloader was finished, then re-opened it (if it was open). Again, created to make the user's experience so simple.

However, Windows 10 has changed the way the registry operates and has removed the USB "Friendly Name " section from it, so the Amicus18 bootloader executable will not work with Windows 10.

I did release the software for the Amicus18 bootloader written in Delphi and some users did alter it to suit different operating systems, which is what the source code was intended for. However, the Amicus18 is now fully dead, and was never really alive because of no promotions, advertisements, or editorials etc, and I never made a single penny from them after the months of, my own time, work I put into the hardware, manuals, and software!!!! They were allowed to simply die by "Guess Who"?

The tiny bootloader+ will work on a 18F25K20, but it is, rather, dreadful software written in C#. But it works.




Bob (G8GFA)

Broderic, try using the attached file. It was one I downloaded from the old site. I've no idea who owns the code - maybe DaveS, but it does work for the clone FTI chips. 

Let us know how you get on.

Bob

broderic

Thank you so much, DaveS,top204,Bob for your kind replies.

As far as I understood I have to follow the 19 instructions of the readme text file on the new loader enclosed in the .zip.

I saw it is for Windows10, but unfortunately I still have Windows XP on my pc:-), so I don't know if and how the procedure is applicable in this case.

Thank you again.
Regards.

m.kaviani

Quote from: broderic on Mar 14, 2021, 08:15 AMHello.
First of all, I'm very happy that this beautiful forum for this beautiful compiler has been restored.
Thank you, I appreciated a lot.

Coming to my issue:
I tested and developed my weather station using Amicus18 and now I transferred the circuit on a PCB.
I reproduced the use and connections with the FT232RL FTDI, as you see in the enclosed picture.
When I connect the FT232RL to the USB port of my PC, it is regularly recognized.
Now I wonder: how can I program the chip from Proton IDE using this arrangement directly on the PCB?


Thanks.ftdi.JPG
First, you need to download a bootloader software into your pic micro with pik3 or another programmer. your circuit will work if MCLR goes down for seconds. during micro
wakeup, the bootloader will check the RX pin if don't see any change on that pin will jump to the user program.
some bootloader developers like Top204 may define a pin for start or check the stat of the serial pins. it shall be defined by them.

Bob (G8GFA)

Broderic, I can't be certain as I don't have XP but I think you only need to carry out step 3.

Bob

top204

#13
The bootloader was developed in Windows XP, which I think was as close as it got to a "perfect" Operating System, then they changed it for little reason other than making money and ripping people off. It could have been updated to correct some of its minor issues,and add extra, optional, features, but it was not making "enough" money for Micro$oft, so they changed it and, essentially, broke a once excellent OS that was Windows. Windows 8 to Windows 10, have been, and still are, absolutely dreadful!

The bootloader PIC firmware was based upon the original Tiny Bootloader, and the bootl oader waits, for a short while, for a specific 8-bit value being sent from the PC and responds with a specific 8-bit value back to the PC application. If both receive and send the correct value, the bootloader starts. If not, the bootloader runs the main program.


GaryC

  is dead , Long liveXPp.  I dread the day I am forced to give up to Windows 10 +, so far most of the programs work on XP, but I think soon that won't be the case, My friend XP, I knew him well!

Gary

broderic

Hello.

I downloaded and followed the procedure as per .zip file sent by Bob (that's solution 2. in DaveS, I guess).

But the FTDI is still not recognized as an Amicus board.

In fact, when I connect the FTDI and I check on System\Ports, I have:
-USB Serial Port (COM55), driver works properly
-Producer:FTDI
-Driver: FTDI
-ID Hardware:FTDIbUS\COMPORT&VID_0403&PID_6001

So I think I'll give up.
One way to go around (not elegant and smart) I found is to free Amicus18 board from PIC and connect it to my PCB circuit, and of course it works.
In other words I use the FTDI equipped on Amicus18 board, and when I program with Proton using Amicus18 Loader, it is recognized.

Thank you very much for your kind suggestions and the time you spent for me.
I'm happy to be with you in this beatiful forum :-)
Regards

top204

You may need to refresh your registry to bring down the COM port number used by the virtual serial. COM55 is way too high.

Windows just keeps adding numbers to virtual ports and never refreshes them, and a lot of programs and drivers cannot use a COM port that is too high a value.

Bob (G8GFA)

Have you assigned the Amicus18 driver to the appropriate port (55 in your case)?

Bob

tumbleweed

There are some handy USB tools available at https://www.uwe-sieber.de/misc_tools_e.html
UsbTreeView
Device Cleanup Tool
COM Name Arbiter Tool

DaveS

Quote from: broderic on Mar 20, 2021, 09:21 AMHello.

I downloaded and followed the procedure as per .zip file sent by Bob (that's solution 2. in DaveS, I guess).

But the FTDI is still not recognized as an Amicus board.

In fact, when I connect the FTDI and I check on System\Ports, I have:
-USB Serial Port (COM55), driver works properly
-Producer:FTDI
-Driver: FTDI
-ID Hardware:FTDIbUS\COMPORT&VID_0403&PID_6001

So I think I'll give up.
One way to go around (not elegant and smart) I found is to free Amicus18 board from PIC and connect it to my PCB circuit, and of course it works.
In other words I use the FTDI equipped on Amicus18 board, and when I program with Proton using Amicus18 Loader, it is recognized.

Thank you very much for your kind suggestions and the time you spent for me.
I'm happy to be with you in this beatiful forum :-)
Regards

I guess I didn't remove all restrictions on that version of the loader, you would need to programme the FT232RL chip so it is recognized as an Amicus board, from memory if you have an Amicus board, you can grab the setup off the FT232RL chip and save to a file, you could then use that file to programme the other board, mat be a good idea to save that FT232RL chip setup as well.

Regards
Dave