Amiga.org
Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: boing4000 on May 11, 2008, 10:12:14 PM
-
I used tiny bootloader to update the PIC via RS232 port and null-modem cable.
Problem is: tiny bootloader points out to write the flash memory "100% OK" but after a reset (power off) of minimig the old version is still inside the PIC.
Anyone else did update the PIC via RS232?
Sorry for having that much trouble with everything arround minimig... but I still like it!
-
Check the RS232 jumper.
-
It is set to MCU. Tiny bootloader can also read the PICs output while booting etc.
I also checked the cable, it is working.
-
boing4000 wrote:
Problem is: tiny bootloader points out to write the flash memory "100% OK" but after a reset (power off) of minimig the old version is still inside the PIC.
Anyone else did update the PIC via RS232?
I've updated the flash memory in the PIC many times and never had any problem.
Two possible reasons:
- You are updating the PIC with the old firmware (maybe it seems to be stupid but sometimes it happens).
- The WRTn (have a look at the chapter 19.4 in the PIC18FXX2 datasheet) Write Protect configuration bits are set to zero. If it is the reason the only solution is to erase the whole chip in an external programmer and program the bootloader once again.
BTW: Who has programmed the bootloader in your PIC?
-
Thank you yaqube for your detailed answer.
The firmware is downloaded from Dennis website and I also checked the file date several times to be sure.
This PIC was programmed by ACube, if there is a write protection set, it could be done by them and would not be nice if they did!
Is there any way to find out the write protection is set?
Tiny bootloader says the update succeed (100% OK).
Additional... ACube also provides the current firmware for PIC and FPGA on theirs website. It would be illogical that there is a WP set and no customer could use it.
Is it normal that the PIC can not be found by tiny bootloader?
I set it to "UDP send" and "$41 18F 252o/452o" by hand.
If this is wrong, please tell me what settings ware working in your case.
-
boing4000 wrote:
Is there any way to find out the write protection is set?
Hi,
I've not used tiny bootloader, but if you can read the PIC's program memory, then you should be able to check the configuration bits. If you read the data sheet for your PIC, then you should be able to find exactly where the relevant configuration bit is located. This is likely to not be in the user program memory space, but in configuration program memory (probably above address 30000h).
Hope that helps (sorry, I'm not really sure what your background is)
Oliver
-
Hi Oliver,
I will try to read out the PIC memory. Tiny bootloader can not do that afaik. What program did you use to read and write the PIC via minimigs RS232?
My background is trained electronic technician but a long time without practice in doing such things. Mostly working in IT business, fixing PC, networks and other crap ;-)
I am happy for any info, the rest I will do by myself and share my experience to others.
-
OH MAN !! I think ACube did not use any bootloader for the PIC at all!
That may be the reason why "tiny bootloader" tool can not find the PIC. The only output I receive via terminal or anything else is "Minimig Controller build 07-10-2007...".
That could be the explanation for having trouble in updating the PIC.
Is it still possible to reprogramm this PIC with a propper bootloader and then using the RS232 update?
-
boing4000 wrote:
Is it still possible to reprogramm this PIC with a propper bootloader and then using the RS232 update?
Yup, pull the pic and use a regular programmer. I use the pic kit 2 programmer from microchip. It's cheap and it actually works flawlessly now thanks to their recent software version.
-
Thanks koaftder, I will make it so but first have to build one.
Good to know that there is still a way to reprogram a PIC.
-
Hi Sascha,
I have no experience with the Minimig. I use PICs a lot in my work though. I generally use in circuit serial programming (ICSP) pins, rather than a bootloader. Acube really should have included the bootloader firmware in the PIC.
Just a few notes to explain the difference:
Dedicated PIC programming hardware uses dedicated pins on the PIC to write to the PICs program memory. In some designs (I guess the Minimig is included here), those programming pins on the PIC may not be available to plug in a header for the programming hardware. If using a bootloader, and not ICSP, then three I/O pins are made available for other uses. I'm guessing these pins are used in the Minimig.
A bootloader has two parts:
-PC software: interfaces to the PIC using a UART (RS-232), sends a command for the PIC to initiate a series of table write operations to program memory, and then dumps all the instructions to the PIC.
-PIC firmware: generally a set of instructions that sits in the start of program memory, which waits for the command to commence operation. When started, it buffers the instructions received from the PC, and writes the buffered data to program memory space usig table write commands. The PIC bootloader firmware must first be programmed in the PIC using programming hardware, such as the PIC Kit 2.
There are many programmers available now. At work I use the MPLAB ICD 2 (which is not very robust). At home I use a Willem from Sivava. There are many others available. I like the Willem as a hobby programmer, as it is quite versatile for use with other chips.
Hope that helps.
Oliver
-
Hi all.
I hope that the original author of the thread don't worry about use it to explain my problem with PIC update.
Recently, I've tried to update the PIC. The jumper set in the correct position, null modem cable attach on pc and minimig and, when click on "check pic" button (in tiny bootloader program) I turn on the minimig. In message box of the tiny bootloader appears a message saying the PIC "send a value 'K' <> ... , revise baudspeed when reset" or something like this. I've tried with all the baudspeeds but I can´t update the PIC... what are I'm doing wrong?
Excuse my poor english.
Thanks in advance.
-
Hello Oliver,
thank you very much for this amount of information!!
Now I am very sure that ACube did not use a bootloader at all.
The minimig firmware is apparently directly written in the PICs memory starting at $000000.
Problem is how to erase the flash memory and reprogram it with tiny bootloader. My trials until now did not work. I build an adaptive board for the PIC to use minimigs serial connection via MAX232 and the oscillator to make the PIC operating.
Its a kind of WLoader (http://www.voti.nl/wloader/index_1.html) clone of course with adapted pins to 18LF252. Only clock, rx, tx, Vss, Vpp and Vcc is connected.
I connected +5V at MCLR/Vpp and Vcc to make the flash memory writeable. Must Vpp also connected to any serial pin to be clocked/pulsed instead of permanent +5V?
The PIC is responding to tiny bootloaders terminal output but could not be found with "Check PIC" or "Write Flash", it only appears a timeout.
What software can I use to erase the PIC? Maybe tiny bootloader then is able to rewrite it.
Again many questions... It also annoys me to ask and have to make all this steps at all.
Kind regards
-
@BraindeaD
I dont mind you, in fact that is exactly the same problem I have. Also this message "send a value 'K' <> ... , revise baudspeed when reset" appears, I think the PIC is sending its startup string and tiny bootloader can not understand it as a valid code.
You do have the same problem, is it also an ACube minimig?
-
@Boing:
Not, mine isn't from ACube. Mine was built by a spanish guy that sold me a few months ago. I'm trying to contact to ask him how he flashed the PIC... with or without bootloader... As soon as I know something new about this, I'll put here...
-
Hey guys, just to be sure that you do everything correctly please follow the procedure:
- connect the Minimig to an appropriate serial port on a PC
- set jumper to MCU position
- switch the Minimig on
- run Tiny Bootloader program on the PC
- choose an appropriate COM port and rate (115200)
- press the "CheckPIC" button
Now you have ca 4 seconds for your PIC to respond.
The bootloader on the PIC responds to incoming transmission within ca a second after its reset. After that time it jumps to a stored program in the flash memory (Minimig firmware).
- Now you have to press the PGM RESET button on the Minimig to establish transmission with the Tiny Bootloader on the PC.
If you succeed you should see the following message in a log window:
Connected to \\.\COM1 at 115200
Searching for PIC ...
Found:18F 252o/452o
If you don't you will see:
Connected to \\.\COM1 at 115200
Searching for PIC ...Not found,
ERROR!
The same applies to the FLASH writting. After you choose a hex file you want to write you should press "Write Flash" and immediately reset the PIC on the Minimig.
If you succeed you will see the following message:
Connected to \\.\COM1 at 115200
HEX: 6 days old, INHX8M,18Fcode, total=14552 bytes.
Searching for PIC ...
Found:18F 252o/452o
WRITE OK at 20:55, time:7.173 sec
I hope it will be helpful for those people who want to update the PIC firmware. It is a must if you want the Minimig to be able to write to the ADF images (this feature will be available in the upcoming firmware release).
If you still have problems please describe them as much as possible so I could be able to help you.
-
Hi yaqube,
thank you for explaining the update procedure.
I did this again and again, all over again... thats what I see after the time of searching is over:
Connected to \\.\COM1 at 115200
Searching for PIC ...Not found,
ERROR!
When turning on the Minimig on or doing a PGM RESET short after pressing "Check PIC/Write Flash", this message appear:
Connected to \\.\COM1 at 115200
Searching for PIC ...
pic sending unknown data: "K" <> 4Dh=M
Check baudrate & Start Write while PIC is not sending serial data (e.g. in reset)
ERROR!
Means the tiny bootloader PC programm receive the startup string "Minimig Controller build 07-10-2007..." and nothing about bootloader is detected.
Today I was talking to Vesalia (trader) and they also was puzzled to this. A possible explanation is that there is no bootloader in ACubes PIC. This will be reproduce by Vesalia technician and I am currently waiting for response.
thanks again for this detailed depiction! Sometimes when nothing works, one get a bit doubt in everything you touch.
I still hope that thing will soon work.
-
@ yaqube:
Thanks for taking the type to type that. I needed an idiots guide. :-)
I'll try to update mine when I get home.
-
So what's the option if the Acube boards can't be reflashed via the serial port? Are we kind of buggered?
-
Darrin wrote:
So what's the option if the Acube boards can't be reflashed via the serial port? Are we kind of buggered?
You'll need a pic programmer. You can build one very cheaply that uses the serial port on your pc such as this:
http://www.semis.demon.co.uk/uJDM/uJDMmain.htm
(http://www.semis.demon.co.uk/uJDM/uJDMcct.GIF)
and a better one that does more chips here:
http://www.jdm.homepage.dk/newpics.htm
(http://www.jdm.homepage.dk/newpic22.gif)
and the programmer software, use winpicprog:
http://www.winpicprog.co.uk/
Or spend $50 and pickup the "pick kit 2" programmer from Microchip which is really nice and lets you program serial eeproms as well.
-
@ koaftder,
Cheers, it looks like I'm spending $50 then. :D
Unless someone decides to make some money by reflashing boards...
-
I would consider asking Acube to send you a new PIC chip, preprogrammed with the appropriate bootloader. I am not sure what the conditions of sale were/are, but if the contract of sale was to provide the PIC with bootloader, then users should not be out of pocket correcting their mistake.
If Acube deals with large numbers of chips, then their cost per unit will be pretty low, anyway.
It will be interesting to learn the result of Vesalia's tests.
I wouldn't mind programming a PIC for a few people, for the cost of postage. I live in Perth, Western Australia. People could PM me if interested. I would require the PIC, and the hex file with the bootloader assembled/compiled into it. I should note that I don't have a minimig with which to test any PICs, though I would of course verify the code against the provided hex file.
Regards,
Oliver
-
To all
Has anyone contacted ACube with these findings?
Surely you should be able to flash the PIC usng a PC (through serial) if you need to update it.
Let us know.
-
When I suggested ACube look into (if they hadnt already) "Tiny Bootloader" many months ago, their response was "We'll evaluate it" which, to me, meant they didnt use it yet. The MiniMig they loaned me is still in it's box (because I dont have a shaver adapter yet) I'll try and get one this week and test it.
I was wondering if people could use their old Elvis smart card programmer to program these PIC's?
Edit: Doesnt look good (http://www.adteknik.se/english/circuits.htm) :-(
ACube users: If you are based in the UK I can reprogram (or make you an alternative) PIC for the cost of postage (Send me a PIC + Stamps + return address).
-
Oliver & alexh - thanks greatly for offering the PIC reprogramming service.
alexh - I might take you up on this once there's an SD write upgrade available - this is the thing I'm really waiting for!
-
@ Oliver & Alex,
It's nice of you guys to offer to help people out like this. The good old Amiga community spirit in action. :-)
@ Oliver: My in-laws live in Perth (and I was there a couple of months ago). If I make another trip any time soon then I may take you up on that offer otherwise I'll be buying a reprogrammer or a new PIC.
-
Hi folk, it's a pleasure to help.
I think Alex's idea of including stamps and self adressed envelope is good. I would be happy to work on that basis.
Darrin wrote:
The good old Amiga community spirit in action...
I don't really have anything to do with Amiga anymore; I've moved on. I still really appreciate good will in any community, which is probably the main reason I still frequent this forum. Also, programming a PIC only takes a few seconds, and I usually have a programmer on my desk.
I still think a well made Willem is a worthwhile investment, for anyone who likes to muck around with hardware. I have had mixed results with things like the JDM, though.
-
@Oliver
also thank you for offering that kind service to us "poor" minimig users without bootloader!
Im still waiting for Vesalias response in this matter. My attempts with tiny bootloader has failed all the time, so the only way seems to reflash the whole PIC.
Minimig is using a 18LF252, that require a more complex PIC progger to build. I may have the skills but definitely missing some elektronic parts to set up one right now.
Lets see what the solution is :-)
EDIT:
Just found that very raw PIC18Fxxx progger diagram example:
http://home.earthlink.net/~davesullins/software/pic18f.html
Looks very simple, just a parallel inferface with only one resistor and an external 3V power source.
Do you think out of your experience that could work?
-
This may seem like a stupid question & I know it seems to have an obvious answer, but are ACube the only ones commercially producing the Minimig at the moment?
I ask as I'm about to order one from Amigakit.
As for the PIC help offered by Oliver & Alex...that's really cool of you guys.
The assumption here is that my new Minimig will have the latest code anyway, but it's nice to see people helping out for no financial gain :)
PZ.
-
It is a nice thought to make a programmer to reprogram the Pic, but one thing comes to mind...
If the PIC protection bits are active, then the PIC becomes a ROM. You cannot Reprogram it.
If the Aqube (sp?) minimig conforms to V1.1, then the Serial port SHOULD work.
Please be warned, the PIC listens for about 1 second on serial before booting the main code.
YOU MUST set the TinyBoot serial software to "Upload" the new firmware, it will then look for the pic, apply power to Minimig and the pic should be found and upload will take place.
One thing i suggest, is to just wait 30 seconds before Removing the power to minimig to remove the serial port, probably not needed, but just to make sure the Flash worked and it has rebooted properly.
I have re-flashed my pic on a number of occasions without hassle, on V1.1, mind you this is my one I built myself.
But as I said, this should not matter if they are selling V1.1 conforming boards.
If its Protection bits..., then you gotta buy a new PIC buddy :( As said before, protection bits will PREVENT any further updating.
-
whiteb wrote:
...If its Protection bits..., then you gotta buy a new PIC buddy :( As said before, protection bits will PREVENT any further updating.
Hi,
I'm pretty sure the code protection does not prevent an external erase function. It will prevent an external read function. When re-programming a PIC, an external erase function is performed prior to programming in the new code.
There are a few types of read/write possible:
1. Internal table read - reading program memory from within the PIC firmware
2. Internal table write - writing to program memory from within the PIC firmware
3. External erase - Using and exetrnal programmer to erase the PIC
4. External write - Using an external programmer to write to program memory
These read write processes effectively apply in the same fashion to both the flash program memory, and the EEPROM data memory.
It is my understanding that code protection can be applied separately to internal and external operations, though an external erase will always be available for anything other than a one time programmable version of a chip (PROM).
PROMs tend not to be used much in hobby projects, but can be appealing for large manufacturing runs.
Though I have only used code protection once, some time ago, I'm pretty sure it functions as I have described.
-
boing4000 wrote:
Do you think out of your experience that could work?
Yes, I think it could work, though it may not. To my understanding, the issue is that this type of programmer relies on the port to provide Vpp, the programming voltage. Ports on many modern computers tend not to be strictly standards compliant in this regard. You may get lucky. There are also Amiga based programmers of this type available (look at Aminet; I'm pretty sure I've seen some schematics there before).
Another issue is the port signal timing. Modern OS's tend to have the OS arbitrate port access, which can effect signal timing. I'm not sure if this is significant for PIC programming or not. There are some hacks available which allow direct low level port control. I've generally had no problem using these hacks, but some people have had less success.
If the Minimig operates on ~+3V supply, then you could probably use low voltage programming of the PIC with a simple port controlled programmer. This allows programming with a lower Vpp. However, this is not advised when the PIC is to be operated at a voltage above that at which Vpp is used for programming.
If you try to make your own programmer, I suggest you pay attention to voltages being generated, and which pins they are applied to. Check the pin numbers against the pin names in the data sheet for your particular PIC; be careful just blindly copying something you see online. Also, be wary of using substitute zener diodes of different volatges.
There are lots of programmers around, DIY, second hand, Microchip, and third party commercial. Here is one which has had some success with users who had issues with the JDM style: MBHP PIC Burner (http://www.ucapps.de/mbhp_burner.html) from the MIDIBox (http://www.ucapps.de/) site (I haven't used one of these).
Let us know how you go, as I'm pretty sure quite a few people on this forum have experience with PICs (with Amiga keyboard and mouse adapters, etc).
Cheers,
Oliver
-
Yes Oliver, thats the same information I found. Using an external progger the PIC can be totaly earsed and rewritten any time. It dont care about any software settings, thisis only for internal self programming.
Thanks for advising of this progger, I will be extremly careful because this is currently the only PIC I have!
For ACube (italy) I pointed out that there is no access via tiny bootloader possible. The only output of PIC via serial (terminal) is starting instantly with "Minimig build...." and even while resetting the PIC and let tiny bootloader software listen on RS232 it says "PIC is sending unknown data..." as mentioned in previous post.
-
Any customers who have purchased Minimig from us and have support questions, please get in contact.
-
Well, I'm glad I bought my board from Amigakit as I've been in contact with them and they assure me that if the PIC doesn't flash then it's covered by my waranty with then and they'll send me a new PIC! You can't get better than that. I'll send them the old one back in return if I can't upadte it. :-)
Oh, and any new boards they sell will have the PIC already updated apparently.
-
That's great news, thanks AmigaKit.
-
Great job and service Amigakit! I hope that Vesalia in germany (where Im located too) will do something like that. They sold me the Minimig that was build by ACube...
My attempt in reflashing the PIC via that very simple LPT progger failed until now. All wires and connections are correct and I checked it out many times. Also there is a portdiag tool to measure single line state. Everything is working but the PIC can not be detected or read out.
I feel a bit frustrated because nothing is working :madashell:
If only this Xilinx core compiling would work, I could at least try to fix some bugs in blitter.v or something else. Right now minimig feels a bit "closed" or static to me. But it is still working, even after that PIC read attempt!
-
boing4000 wrote:
I feel a bit frustrated because nothing is working :madashell:
Hmm, know that feeling. Maybe just leave it for a few days, and wait for Vesalia's response. Probably the worst case would be for you to pay for postage to and from the UK, and take Alex up on his offer to help you out. It shouldn't be too bad, either way.
-
Yes you are right, I will first wait for Vesalias response. Perhaps they also can reflash my pic or send another one in exchange. Minimig is operating also with the older version and makes a lot of fun too!
Thanks again for your time and information! It can always be helpful :-)
-
@Boing:
I just buy a PICKit 2 from Microchip, so next week I hope could write PICs. I'm in Spain, so if Vesalia doesn't flash yours, maybe I could.
Regards
-
Wow thats very nice BraindeaD :-) thank you for your offering!
Sending the PIC to Spain should be no problem. I will come back to this if necessary!
-
Today Vesalia insure me to swap the PIC with another one contain tiny bootloader, also for all their minimig customers :-)
They are still waiting for a response from ACube but will do this exchange anyway.
-
boing4000 wrote:
Today Vesalia insure me to swap the PIC with another one contain tiny bootloader, also for all their minimig customers :-)
They are still waiting for a response from ACube but will do this exchange anyway.
That is good news.
-
koaftder wrote:
That is good news.
Yes, a good result. Nice to see they take care of their customers.
-
Im also happy about this reaction and service. No matter if this exchange will take some days, minimig is still operating well with this (static) older firmware version.
When I have the new PIC, I will try to place the adf files into a subfolder (\adf) to make more images accessable as in main directory.
-
Hi guys,
I haven't been around for a while and I need a summary.
The pic on our Minimigs (I have one of the very first ones from ACube) from what I understand can't be flashed with new firmwares using serial/pc, is this correct?
Also which firmwares are we talking about?
Have new firmwares been released? If so what's new and where are they?
Have compatibility issues and writing to ADF been solved?
Thanks in advance. :-)
-
Sorry if it's off topic but I couldn't find my original Minimig thread about the case so here it goes:
@All
Just a quick update on the case for the Minimig:
I have been away for a bit because of some transport problems, basically my car broke and needs repairing but I also had to make a decision; repair the car or use the money to pay for the Minimig prototype case.
I have decided not to have the car repaired, sell it, and use the money to finance the Minimig case.
So the prototype case for the Minimig has now taken 4 months of my time, borrowing some money (loan) plus the money from the sale of my car...(mad, I know).
I am now using my bike....(push bike) :)
Anyway...the prototype should be ready soon, it will also depend on deciding if people need/want an internal anti-EMI/RFI coating or not and getting an answer back on whether the case will need a CE mark on it or not.
You won't believe the amount of things (plus money and time) you have to get through to create a product...(and a product for the tiny Amiga market)!
Anyway, let me know if you are interested in the EMI/RFI coating (this will add a bit extra on the final price obviously...).
Thank you,
:-)
-
TheDaddy wrote:
The pic on our (ACube) Minimigs can't be flashed with new firmwares using serial/pc, is this correct?
It would appear so, but I've not confirmed it yet.
TheDaddy wrote:
Also which firmwares are we talking about?
PIC & FPGA updates from Dennis
TheDaddy wrote:
Have new firmwares been released?
Where have you been?
TheDaddy wrote:
If so what's new and where are they?
New in this release is support for 256KB kickstart files as well as Amiga Forever encrypted Kickstart files. Improved error debug.
http://home.hetnet.nl/~weeren001/downloads.html
TheDaddy wrote:
Have compatibility issues and writing to ADF been solved?
No and no.
-
Thanks for updating me alexh...appreciated :-)
-
boing4000 wrote:
Today Vesalia insure me to swap the PIC with another one contain tiny bootloader, also for all their minimig customers :-)
They are still waiting for a response from ACube but will do this exchange anyway.
I noticed that AmigaKit stock supply has been delayed "due to firmware upgrade".
Maybe this means the new ones will be update capable?
I hope :-)
PZ.
-
Fingers wrote:
I noticed that AmigaKit stock supply has been delayed "due to firmware upgrade".
Maybe this means the new ones will be update capable?
I hope :-)
PZ.
I also hope that. Vesalia AND ACube ensure me that the new PIC do have the tiny bootloader inside, also the current firmware version. So this PIC should work fine and can be updated via RS232 and PC :)
-
@TheDaddy
ACube will also exchange your PIC for you if you contact them. I've been in touch with them but I might hold back until SD write access is sorted out - I'll be more worthwhile for me posting my PIC at that stage.
-
straycat wrote:
@TheDaddy
ACube will also exchange your PIC for you if you contact them. I've been in touch with them but I might hold back until SD write access is sorted out - I'll be more worthwhile for me posting my PIC at that stage.
If you're looking forward to SD write access I'd keep an eye on this Minimig development forum:
http://gamesource.groups.yahoo.com/group/minimigtg68/
There is a beta version of adf write access being discussed now, but please note that it would need extra work to be ported to Minimig v1.1.
-
@HenryCase
Thanks for letting me know. Good to know there's stuff going on :-)
-
If you're looking forward to SD write access I'd keep an eye on this Minimig development forum:
http://gamesource.groups.yahoo.com/group/minimigtg68/
There is a beta version of adf write access being discussed now, but please note that it would need extra work to be ported to Minimig v1.1.
I also asked for that and this "Minimig" is not based on a PIC but on a Z80 CPU to init the (Altera) FPGA and Floppy emulation. So this kind of code and write support will not work on the "original" minimig we have.
Perhaps I am able to test and try something out with the new PIC. There are some ideas for writing support and storing .adf files somewhere else for a higher amount of files.
-
@TheDaddy
Is this (http://www.amiga.org/forums/showthread.php?t=36114) your original thread about a Minimig case? Could you share some sketches of your design? :-D
-
>>Is this your original thread about a Minimig case? Could you share some sketches of your design?
How the heck did you manage to find the original thread? :-?
I couldn't! :-o
Anyway, yes that is the thread and no I can't share or show any sketches because I am in the final stages already. This is it.
This Wednesday I am going to the factory and they are going to make a prototype for me and for the money I got from selling my car, a loan and selling my beloved pc (Intel Quad, 4GB machine :-( )
Anyway, hopefully making a case for the Minimig would have been worth it, if people buy it obviously.
:-)
-
@TheDaddy
I entered 'minimig case' in the search field, I clicked on 'Show all results' and voilà there is a thread by TheDaddy about a Minimig case :lol: :-D
-
Argh! That is what I did this morning... :-?
Weird!
Anyway thanks :-)
-
@all
What are the following pins on the Minimig for?
JTAG
Spare I/O
FPGA
and 15KHz/31KHz
Thanks :-)
-
Hi TheDaddy,
JTAG is a basic communication with "intelligent" chips. some mobile CPU also have a JTAG interface. more to find with google search for the term.
Spare I/O is a user programable Input/Output part of the FPGA. It possible to create a jumper settings e.g. NoFastMem or in the NTSC-patch for bilinear video filtering. Also possible to program real data in/output.
ps: Closing pin 9+10 (jumper next to the FPGA) will disable the floppy simulation in the PIC.
FPGA/MCU is to select where the RS232 data will send FROM the minimig TO the RS232. Set to FPGA allow "Amiga" to use RS232, set to MCU allow PIC to use RS232 (Firmware update as in the thread name).
15/31KHz should be self-explanatory, it will set the VGA connector H-Sync signal to the selected frequence, in fact this is the onboard scandoubler of the Amiga3000 inside the FPGA to use a VGA compatible monitor/TFT.
-
>>JTAG is a basic communication with "intelligent" chips. some mobile CPU also have a JTAG interface. more to find with google search for the term.
Spare I/O is a user programable Input/Output part of the FPGA. It possible to create a jumper settings e.g. NoFastMem or in the NTSC-patch for bilinear video filtering. Also possible to program real data in/output.
ps: Closing pin 9+10 (jumper next to the FPGA) will disable the floppy simulation in the PIC.
FPGA/MCU is to select where the RS232 data will send FROM the minimig TO the RS232. Set to FPGA allow "Amiga" to use RS232, set to MCU allow PIC to use RS232 (Firmware update as in the thread name).
15/31KHz should be self-explanatory, it will set the VGA connector H-Sync signal to the selected frequence, in fact this is the onboard scandoubler of the Amiga3000 inside the FPGA to use a VGA compatible monitor/TFT.
Do any of these pins need to be accessed from outside my case? Or do you just open the case up, do what you need to do and then close the case again?
Thanks for your explanation!
:-)
-
For normal use you dont need to switch or access this jumpers or pins. The only one could be "15/31KHz" to switch between PAL/NTSC and VGA output.
All other jumpers are mostly static. JTAG is only necessary for raw testing or programming the FPGA without (working) PIC.
So you can set or leave the jumpers as it works for you and close the case :)
Access to SD/MMC card, Reset and maybe Menu should still be possible.
-
I am going to the factory tomorrow to talk about my design.
They should tell me if it's possible to do it and add the things I want.
I have this feeling that since I haven't told them how many I need they might charge me a fortune! :-(
-
Hi there!
Anybody knows which PICKit2's demo boards, from Microchip, are capable to program the Minimig's PIC?
Thanks in advance
-
Dennis used a PICKit-2 Programmer for his minimig. I dont know if this demo board can do the same job.
In pictures it looks like a programmer using USB connection, but Im not sure!
-
@Boing
Hi! I've the PICkit2 (the programmer itself) and a low pin demo board, which is not usable to program MiniMig's PIC. There are several boards for PICKit2, but I'm sure which of them are useful for the PIC18LF252. I think that this one is compatible:
Pickit 2 - 28 pin board (http://www.microchipdirect.com/productsearch.aspx?Keywords=pickit+2+28)
but I'm sure and it's unavailable, atm.
I don't know if there is any other board compatible...
Regars
-
Guys,
Question:
Can the Minimig load up other systems?
If so which ones?
:-)
-
This other system must be recompiled to a Spartan-3 FPGA core and has to be adapted to the board layout. It should be possible to run every other thing.
Simulating an Atari-ST is also possible, this could additional use the onboard 68000 and dont need to be simulate in FPGA :-)
I found some Spartan-3 code that simulates an old Pac-Man gaming machine, this should work on the minimig after pin-adapting the VHDL source.
Minimig is open-hardware if you want it this way.
Unfortunately I still dont know how to (re)compile, I would test much more and try to fix some bugs if I could.
-
TheDaddy wrote:
I am going to the factory tomorrow to talk about my design.
They should tell me if it's possible to do it and add the things I want.
I have this feeling that since I haven't told them how many I need they might charge me a fortune! :-(
Please don't take this the wrong way.
Nobody can deny your enthusiasm for the Minimig, but I'm worried when I read about you using money for your car to produce a board when you haven't even researched the function of every pin and connection on the Minimig to ensure your design is practical.
I'm also concerned about how many of these boards you will actually need to sell and at what cost in order to recover your money.
Don't get me wrong, I think it is great that you're doing this, but you don't seem to be using "spare cash" and I'm afraid that you could end up seriously out of pocket on this venture.
Before you sign and commit to anything, take a big deep breath, get someone else to go over the figures with you and make sure that you're convinced that your play is viable.
-
@boing4000
Thanks.
So if you wanted to run some other system you'd have to reprogram the FPGA?
Is it an easy task?
And do you have to do it every time you want to run a particular system?
Thanks. :-)
-
@Darrin
>>Please don't take this the wrong way.
No at all...
>>Nobody can deny your enthusiasm for the Minimig, but I'm worried when I read about you using money for your car to produce a board when you haven't even researched the function of every pin and connection on the Minimig to ensure your design is practical.
I am quite happy to use the money from my car, pc and some borrowings because the Minimig deserves a case. Even if it's just a metal or plastic enclosure, surely it's better than having it naked on the desk with all the things that could happen to it; liquid spillages, kids, static and so on.
Also I have just designed a case. The question I asked was to know if those pins are needed to be accessed all the time and as somebody else suggested they won't be needed to be accessed all the time, on this basis I have deducted that my case should be able to be opened quite easily without having to go through screws and all that.
>>I'm also concerned about how many of these boards you will actually need to sell and at what cost in order to recover your money.
The costs are high for a single individual who is using his own and some borrowed money. It is surely a huge risk. Consider this; the prototype alone is going to be very expensive but as you said if peole like it and want their Minimig protected then they'll buy it and I SHOULD get at least the production costs back...
>>Don't get me wrong, I think it is great that you're doing this, but you don't seem to be using "spare cash" and I'm afraid that you could end up seriously out of pocket on this venture.
I appreciate your concern, it is very kind of you but I think it needs to be done. I have already spent 4 months on this, through research, sketches, travelling, phone calls and gathering the money so I can't stop now. I just hope people will appreciate the massive effort.
>>Before you sign and commit to anything, take a big deep breath, get someone else to go over the figures with you and make sure that you're convinced that your play is viable.
I will. Thank you Darrin. :-)
-
TheDaddy wrote:
So if you wanted to run some other system you'd have to reprogram the FPGA?
Is it an easy task?
And do you have to do it every time you want to run a particular system?
Thanks. :-)
As long as each core is happy to run with the code on the PIC, all you will need is a flash card for each system you want to emulate loaded with the "core" for that system, any ROMS required plus the software you want to use.
In theory, you could have an SD card marked "Amiga", another marked "Atari ST", etc. You just insert the card for the machine you want to run and switch the Minimig on.
In theory. :-)
-
TheDaddy wrote:
It is surely a huge risk. Consider this; the prototype alone is going to be very expensive but as you said if peole like it and want their Minimig protected then they'll buy it and I SHOULD get at least the production costs back...
I appreciate your concern, it is very kind of you but I think it needs to be done. I have already spent 4 months on this, through research, sketches, travelling, phone calls and gathering the money so I can't stop now. I just hope people will appreciate the massive effort.
I will. Thank you Darrin. :-)
You're welcome.
OK, I feel better now. I just didn't want to find you living under a bridge in a few months, drinking meths and eating raw pigeons to survive. :-D
-
>>As long as each core is happy to run with the code on the PIC, all you will need is a flash card for each system you want to emulate loaded with the "core" for that system, any ROMS required plus the software you want to use.
In theory, you could have an SD card marked "Amiga", another marked "Atari ST", etc. You just insert the card for the machine you want to run and switch the Minimig on.
In theory.
This is good news...for my case too...in theory. Let's hope it can be done.
:-)
-
@Darrin
>>You're welcome.
OK, I feel better now. I just didn't want to find you living under a bridge in a few months, drinking meths and eating raw pigeons to survive.
:-D
Uhm...pigeons... :-)
-
@All
I have come back from my 2 hours meeting with the engineer. We have discussed my case design and solution for the Minimig and there are positives and negatives.
Negatives:
The original design will have to go through some SERIOUS revisions unless people are prepared to pay around the £75 (GBP) mark for it!
So to reduce costs and bring down the final price these are the things that I have been forced to drop:
1) The switches for the reset and menu buttons..............gone :-(
2) Fancy chromed bits..............gone :-(
3) LED acrylic window...............gone :-(
4) Aluminium cover....................gone :-(
5) Engraved lettering....................gone (replaced by printing) :-(
6) Power acrylic window (to display the power LED).........gone :-(
7) Choice of different colours cut from ANY to 2 :-(
Positives:
Price should be cut dramatically and the prototype for the new revisioned case should be ready next week.
And they want me to pay for it on delivery.
So there you have it...you are up to date.
I am a bit depressed but this is what is like creating a custom case for such a small market...
Anyway I am going to pay for the prototype next week and then post some pictures. If enough people want to buy it I can order a batch otherwise I will be the only one with a very expensive custom made case for the Minimig! :-)
Thanks.
-
@All
I have no pictures to show yet but these are the specs:
Plastic enclosure
IPod white/cream or metallic silver finish
It encloses the Minimig completely
All the ports are accessible
Hole for the reset switch
All the ports are identified/marked with their names
Rubber feet
No screws assembly (to be confirmed)
Also to be confirmed (this might push the price slightly up)
EMI/RFI screening
CE marking (if needed)
Thanks.
:-)
-
TheDaddy, should this be a new kind of minimig or "just" a new case?
If it is a complete new design and board, you are welcome to start a separate thread for it :-)
When I get my new PIC with tiny bootloader inside, I want to start testing and adding some features (e.g. write support in adf files) for the original minimig (Dennis' board).
A new design will make it impossible to test the same files because some wires or codes would be changed.
For other systems running "on" the minimig, the FPGA needs to know its hardware. Atari-ST custom chips or maybe Amstard CPC or C64 hardware has to be loaded into the FPGA via existing PIC or JTAG.
The PIC does not care what kind of "hardware" is going to upload into the FPGA. Once uploaded the FPGA will start its work and silulate/act as the loaded system.
Therefor the simulated system should "know" about the environment as the "Amiga" does. The same PIC also can provide .adf files for Atari-disk-files or big-D64 "adf" files for C64.
This is all theory now, but it can be done with knowledge of the emulated system and its behavior in accessing drives or external ports.
-
@boing4000
>>TheDaddy, should this be a new kind of minimig or "just" a new case?
Just the case, a custom made one just for our Minimigs.
>>When I get my new PIC with tiny bootloader inside, I want to start testing and adding some features (e.g. write support in adf files) for the original minimig (Dennis' board).
Cool I can't wait!
>>For other systems running "on" the minimig, the FPGA needs to know its hardware. Atari-ST custom chips or maybe Amstard CPC or C64 hardware has to be loaded into the FPGA via existing PIC or JTAG.
So this means that you could have an Atari on a SD Card and an Amiga or C64 on others? :-)
-
"So this means that you could have an Atari on a SD Card and an Amiga or C64 on others?"
Yes, absolutely. The FPGAARCADE board goes a step further and has a boot menu which allows you to pick a "platform", so it can be PACMAN, AMIGA, ATARIST, VIC20 etc etc (assuming you have the FPGA binaries for these platforms). I will try and back-port the AtariST code to the Minimig board when it is finished, but there a quite a lot of differences in the board.
My board also uses an AVR but it may be possible to port the firmware to the MiniMig PIC.
/Mike
-
>>Yes, absolutely. The FPGAARCADE board goes a step further and has a boot menu which allows you to pick a "platform", so it can be PACMAN, AMIGA, ATARIST, VIC20 etc etc (assuming you have the FPGA binaries for these platforms). I will try and back-port the AtariST code to the Minimig board when it is finished, but there a quite a lot of differences in the board.
My board also uses an AVR but it may be possible to port the firmware to the MiniMig PIC.
Excellent news! I have been following your site for a few years and I am impressed.
I will design a case for your FPGA board too!
:-)
-
mikej wrote:
Yes, absolutely. The FPGAARCADE board goes a step further and has a boot menu which allows you to pick a "platform", so it can be PACMAN, AMIGA, ATARIST, VIC20 etc etc (assuming you have the FPGA binaries for these platforms). I will try and back-port the AtariST code to the Minimig board when it is finished, but there a quite a lot of differences in the board.
My board also uses an AVR but it may be possible to port the firmware to the MiniMig PIC.
/Mike
Excellent. I look forward to following the work on that project. :-)
-
Thanks!
It should fit into a Mini-ITX case, even with the daughter port for port expansion. I am in the middle of redoing the website, but I'll start to put up some more details when I get time.
/Mike
-
TheDaddy wrote:
So to reduce costs and bring down the final price these are the things that I have been forced to drop:
1) The switches for the reset and menu buttons..............gone :-(
TheDaddy, I think it is very sensible of you to try and reduce the cost of the case. However, I would not get rid of the switches for reset and menu buttons. It is the difference between having a Minimig box and a proper Minimig case, so please reconsider.
TheDaddy wrote:
So this means that you could have an Atari on a SD Card and an Amiga or C64 on others? :-)
Even better than that, if the PIC was upgraded with new firmware and the C64 (and ST, CPC, Megadrive/Genesis etc...) firmware files for Minimig were created then you could run all games from one SD card without changing the hardware.
-
HenryCase wrote:
TheDaddy wrote:
So to reduce costs and bring down the final price these are the things that I have been forced to drop:
1) The switches for the reset and menu buttons..............gone :-(
TheDaddy, I think it is very sensible of you to try and reduce the cost of the case. However, I would not get rid of the switches for reset and menu buttons. It is the difference between having a Minimig box and a proper Minimig case, so please reconsider.
How Unamiga... Should not these functions be performed by the keyboard as is the Amiga way? I think so ;-)
-
bloodline wrote:
How Unamiga... Should not these functions be performed by the keyboard as is the Amiga way? I think so ;-)
D'oh! Got me there! However, I think my point still stands, as what happens when you create HDL-Megadrive for Minimig? No three finger salutes then eh?! ;-)
-
HenryCase wrote:
bloodline wrote:
How Unamiga... Should not these functions be performed by the keyboard as is the Amiga way? I think so ;-)
D'oh! Got me there! However, I think my point still stands, as what happens when you create HDL-Megadrive for Minimig? No three finger salutes then eh?! ;-)
Very good point... Perhaps the PIC should handle such functions, thus the keyboard would always offer a menu and reset option.
-
bloodline wrote:
HenryCase wrote:
bloodline wrote:
How Unamiga... Should not these functions be performed by the keyboard as is the Amiga way? I think so ;-)
D'oh! Got me there! However, I think my point still stands, as what happens when you create HDL-Megadrive for Minimig? No three finger salutes then eh?! ;-)
Very good point... Perhaps the PIC should handle such functions, thus the keyboard would always offer a menu and reset option.
That's a possibility, but it means keeping a keyboard plugged in all the time. What about when you want to take your Minimig around to your friends house to play a few games? Keyboard is a bit unnecessary then, you should be able to just have joysticks/joypads and the main Minimig unit itself. Which requires that you can use the Menu and Reset buttons on the Minimig, preferably without removing the case.
-
HenryCase wrote:
bloodline wrote:
HenryCase wrote:
bloodline wrote:
How Unamiga... Should not these functions be performed by the keyboard as is the Amiga way? I think so ;-)
D'oh! Got me there! However, I think my point still stands, as what happens when you create HDL-Megadrive for Minimig? No three finger salutes then eh?! ;-)
Very good point... Perhaps the PIC should handle such functions, thus the keyboard would always offer a menu and reset option.
That's a possibility, but it means keeping a keyboard plugged in all the time. What about when you want to take your Minimig around to your friends house to play a few games? Keyboard is a bit unnecessary then, you should be able to just have joysticks/joypads and the main Minimig unit itself. Which requires that you can use the Menu and Reset buttons on the Minimig, preferably without removing the case.
Then you should by the MiniMIG console case :-D If/when I get a MiniMIG I plan only to run it as an Aaiga...
-
@Henrycase and bloodline
The reset and the menu switch on the Minimig board are not that necessary. The keyboard can do what the Menu Switch does. The reset is slightly more important as when the Minimig doesn't answer to the three fingers salute the reset is the only option (together with unplugging the power). But implementing a solution for the case would mean making an expensive case, in the region of £75 (per unit in GBP), which in my opinion is too much. :-)
-
It is also possibe to change the PIC/FPGA core and let the OSD be controlled by joystick. Pressing the menu button will display/hide OSD then joy2 up/down/fire to move and select.
This will make it more easy and dont require a keyboard. If in menu the joystick input will also affect the Amiga/Hostsystem (Game) or could be disabled in active OSD.
Almost everything is possible and practicable, the whole Minimig is programming hardware to act/react as it should.
But lets come back to reality... :-) nice to speculate all this, still the real minimig needs some alignment and "bug fixing" to be a real A500.
First the blitter problem should be solved, many games act like running on an ECS Amiga (with kick 2.x), showing the same graphics error.
I will compare this in UAE using debug mode, checking copperlist and blitter access to find the problem.
somebody else could recompile the FPGA core and lets see what we can do.
-
TheDaddy wrote:
@Henrycase and bloodline
The reset and the menu switch on the Minimig board are not that necessary. The keyboard can do what the Menu Switch does. The reset is slightly more important as when the Minimig doesn't answer to the three fingers salute the reset is the only option (together with unplugging the power). But implementing a solution for the case would mean making an expensive case, in the region of £75 (per unit in GBP), which in my opinion is too much. :-)
You are quite correct, £75 is too much for a Minimig case. As you say, you can always unplug the power if the keyboard wouldn't allow resetting another way, but it's a shame that a keyboard will need to be used to get the Minimig to do something useful (though I suppose this could be fixed if joysticks/joypads could control the boot menu and if the boot menu was made to load by default after the Minimig was given power).
-
Hi there!
I'm trying to program my PIC with PICKit 2, and when I import the new minimig's hex file (27-04-2008 update) the pickit reports an message like "warning: no configuration words in hex file. In MPLAB use File-Export to save hex with config". If I program the PIC, the minimig doesn't works. I've tried to program the old firmware and pickit program the PIC without problems. I've tried the hex files from Dennis' and Acube's pages...
Anybody knows what I'm doing wrong?
Thanks in advance
-
Please try to write only the tiny bootloader file in PICs flash space. then you are able to update the actually pic firmware via minimigs RS232 port. thats the propper way.
-
Thanks boing, it works doing it as you say!!!
I'm blinded flashing the minimig1.hex directly with PICkit (*)
Regards
(*) it works with the original version but doesn't with the second version of minimig.hex
-
You are welcome. The next days I will receive the new PIC from my dealer containing tiny bootloader and the current firmware.
Then I will try to make adf files writeable.
-
Hello,
I finished a new FPGA core with some features and changes:
- slowmem can be deactivated via jumper (Spare-I/O pin 3-4) as in the real A500 (see included picture).
- power led will turn completely off, no dimming (as in my first A500 rev. 5).
- OSD color changed to design "nightshift".
Download (http://asc.dyndns.org/minimig/download/Minimig-29-05-2008.zip)
Since there was no source code for PAL60 patch, I could not include it.
This firmware still offer 15/31KHz @ 50Hz display mode.
Have fun :-)
-
boing4000 wrote:
Hello,
I finished a new FPGA core with some features and changes:
It's good to see you gettimg into the swing of the Minimig. I'm afraid I'll have to stick to the old core because this damn LCD monitor needs it. :-(
Any change you can knock up write support on the disk images and hard drive emulation before you go to bed tonight and then post the new core in the morning? :-D
Now I'm home again I'll get back to testing some more games and add them to the list
-
Today the new PIC with current (Dennis) firmware arrived here! This PIC also contain tiny bootloader so I am able to modify the firmware and re-flash via RS232.
Write support is my first priority. Also storing adf files in a sub folder, this should be more simple but I have to compile the C sources and generate the necessary .hex file.
Maybe I can realize my own PAL60 patch, but certainly without that additional video filtering. Too bad...
I'll let you know about any success.
-
Good news!
Writing support for ADFs and improved compatibility, very nice!
:-D
-
@boing4000
Remember you HAVE to release the source code with every release ... or dont do any releases.
-
Im doing the best I can... Until now VHDL is still a bit strange to me. In time and practice it will become easier. (as writing in english ;-) )
@alexh
you DONT need to remind me, I've already released a new core firmware with (comment) source code.
Also I was unhappy myself due to previous release with binary only.
In fact PAL60 is unnecessary to myself, its all for you who need it.
-
VHDL?? I thought MiniMig was written in Verilog?
My previous comment about releasing source was in response to the link to this ZIP file (http://asc.dyndns.org/minimig/download/Minimig-29-05-2008.zip) which has just a binary.
Nice to see active people... if I can just get round to getting a shaver power adapter for my MiniMig...
-
>>Nice to see active people... if I can just get round to getting a shaver power adapter for my MiniMig...
:)
Go on go and buy one, we need more developers (compatibility issues and adf writing), I am as active as I could possibly be with my case design, soon on a desk near you! :-D
-
@alexh
In my understanding VHDL is Verilog. There is also a HDL programming language. Xilinx Webpack can do both.
If you take a closer look to the .zip file, you will find this directory structure:
Minimig-29-05-2008
drwxr-xr-x 2 0 0 4,0K 29. Mai 02:24 build
-rwxr-xr-x 1 0 0 35K 22. Jul 2007 gpl.txt
-rwxr-xr-x 1 0 0 18K 29. Mai 14:03 Jumper.jpg
-rwxr-xr-x 1 0 0 320 29. Mai 14:34 readme_29-05-2008.txt
drwxr-xr-x 2 0 0 4,0K 29. Mai 14:30 source
So you can find the full FPGA sources AND binary inside the zip file.
-
OT.. but nice little minimig review!!
sorry if you all seen it before, at Retrothing (http://www.retrothing.com/2008/04/build-your-ow-1.html)
-
boing4000 wrote:
In my understanding VHDL is Verilog. There is also a HDL programming language. Xilinx Webpack can do both.
VHDL is not Verilog, but they are both HDLs.
-
Ah thanks :-)
-
Sorry, there was an error in zip file! Linux zip could unpack it but Winzip or Windows internal function had problems.
Now I fixed it!
-
Any news on ADF writing and/or compatibility improvements? :-)
-
Not by me, sorry. This compiler is too strange for me or I just don´t know the right steps.
Perhaps anyone else did some progress in this matter, it would be fine :-)
-
Thanks,
I got my minimig (Acube) to communicate with tiny.
Important is, that you press 'check pic' a few times right after you press 'pgm reset'. If i am to late, i get something like:
Connect COM1: ok
Searching for PIC ...
pic sending unknown data: "K" <> 2Ah=*
Check baudrate & Start Write while PIC is not sending serial data (e.g. in reset)
ERROR!
When I am really late, I get:
Searching for PIC ...Not found,
ERROR!
Proof: terminal window.
Minimig Controller
by Dennis van Weeren
build 27-04-2008
MMC device found
configuring FPGA
*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************
FPGA configured
waiting for FPGA to boot...done
loading kickstart
rom size: 512Kb
encrypted: no
****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************
kickstart loaded
System is up
-
Is this a question or a statement?
The new PIC from ACube do have tiny-bootloader. If the timing you mentioned is right, this message will appear:
Connected to COM1 at 115200
Searching for PIC ...
Found: 18F 252o/452o
Flashing the PIC is already working here.
Handling this HITECH C-Compiler is my problem ;-) But I will not try further because C is really too strange for me.
-
I can help you with the HI-TECH compiler. Send me a pm with your problem described.
PS. C isn't strange, it's only simple :-D
-
Thank you, here is the error message:
(500) undefined symbols:
_sprintf (main.obj)_printf (main.obj)
(908) exit status = 1
Right now I don't have the time to learn C. To me it is not as simple as 68k assembly. Verilog is also more like C but more logical to me :-)
-
Use STD not PRO edition. I don't know why but in PRO edition you cannot use sprintf and printf together.
-
Very interesting! I will try that, thank you :-)