Download program to multiple Picaxes at once

stevasm

New Member
Is there a way to download a program file to multiple Picaxes at once? I have eight 40X2 Picaxes and I want to download the same program file to all of them. Right now I am plugging the 3.5 mm stereo plug into each one and downloading the program one at at time.

Thanks
 

Minifig666

Senior Member
Short answer: NO
Each PICAXE talks back to the PC as the program downloads, you can't mix the signals together in case something different comes back from one and confuses the PC.
 

moxhamj

New Member
Assuming that all the chips are the same, and assuming they have no faults (which you probably can say since you have tested these), I wonder if the signal from just one of them could go back to the PC, and the return signal from the other 7 is ignored (not connected)?

The timing of each would likely be the same as they are the same chips.

Worth an experiment maybe?
 

Buzby

Senior Member
Hi stevasm,

Whilst not exactly what you need, I do have a method of programming the same code to multiple 20X2 without lots of plugging and unplugging, although it does require one round of plug/unplug to get it started.

The principle is :

Connect all 20X2 together using the i2c bus.
Add a 24LCxxx EEPROM to the bus.
Load each 20X2 with a 'bootstrap' code.
Load slot#4 ( i.e. the 24LCxxx ) with the 'common' code.
Trigger the 'bootstrap' in each 20X2 in turn to do a booti2c, thus copying the 'common' code to slot#0 each 20X2.

My project does the triggering via the I2C bus, as there is a 'Master' PICAXE, and each 20X2 can independently determine it's own slave address. You could just use an input pin to trigger the 'bootstrap' booti2c code in each 20X2.

The clever part is that the 'common' code includes the same bootstrap functionality, so the process can be repeated just by 'pushing a button'.

The only limitation is the #Revision number has to be incremented in each 'new' version of the 'common' code, but at least you get 253 'downloads' before you need to do a full plug/unplug round again.

I've breadboarded this with 3 x 20X2, and my final aim is a lot more.

---

Prior to the I2C method, I did have another idea, but never tested it.

The principle still uses a 'bootstrap' code, but the programme delivery method is different, and there is no #Revision limit.

Connect all the 'serin' pins together to the download cable.
Connect all the 'serout', via diodes, to the download cable.
Probably will need some pullup/pulldown resistors somewhere.

Each PICAXE starts up and runs the 'bootstrap', which issues a 'Disconnect' to disable any download, then loops waiting for a trigger pin.

Start PE download, press trigger on first PICAXE. The 'bootstrap' detects the trigger, and issues a 'Reconnect'. The PE download proceeds as normal. The PICAXE then starts up, and issues a 'Disconnect', thus preventing any more downloads.

Repeat the process for the second, third, fourth, etc. PICAXE.

As I said, I have not tried this physically, but as long as the diode-multiplexing on serout works I can see no reason why the whole idea wouldn't work.

( I was going to use a VB prog to talk serial to a second comms bus. This would tell each PICAXE in turn to enable download. The the VB would kick off the cmdline compiler, which would download to the currently active PICAXE. )

Hope this gives you some ideas to kick around.

Cheers,

Buzby
 

hippy

Ex-Staff (retired)
Assuming that all the chips are the same, and assuming they have no faults (which you probably can say since you have tested these), I wonder if the signal from just one of them could go back to the PC, and the return signal from the other 7 is ignored (not connected)?

The timing of each would likely be the same as they are the same chips.

Worth an experiment maybe?
There was some discussion on parallel programming of PICAXE previously. The bottom line is that it may work, but if one or more does not program correctly then you will never know until you come to run the program. Even then it might appear that all is well when it isn't.
 

moxhamj

New Member
Good point Hippy.

I wonder if one could think of a multiple pixaxe programmer? Of course, such a device would be picaxe based. Maybe with a way of switching between many picaxes (I'm thinking max232 and 4051 chips here). Then you would need a way of detecting when a chip is programmed. Perhaps after there has been no comms activity for a couple of seconds. The controlling picaxe would then switch to the next chip to be programmed.

And and the PC end, a batch command line programmer? Or a way to hit the appropriate function key repeatedly in software?

From the hardware side, it might be a row of ZIF sockets and a controlling picaxe plus a handful of supporting chips?
 
Last edited:

Andrew Cowan

Senior Member
I seem to remember seeing a USB PICAXE programmer that could have a program written to it, then the programmer could be used to program multiple PICAXEs away from a PC. What happened to that - I can't find it anymore?

Andrew
 

Buzby

Senior Member
And and the PC end, a batch command line programmer?
There is already a command line compiler/downloader. See near the bottom of : http://www.picaxe.com/software

I've used it, and it is easy to integrate into a VB or batch file programme.

My intention was to have a 'master' PICAXE enable the comms to each 'target' in turn, then send a message to the PC to trigger the download. The compiler returns a pass/fail status, and the 'master' would then enable the next 'target'.

It's not parallel programming, but it's a lot faster than swapping chips !.
 
Last edited by a moderator:

du1mga

New Member
Hi Buzby,
I have reading your comments about a command line compiler/downloader. Please can you tell me where I can get this software. The link you are mentioned show only a 404 error.
Please help me with this problem. I really need this Program to use with several picaxes for hobby-use.

Regards and God bless.

Erwin, du1mga

du1mga@gmail.com
 

hippy

Ex-Staff (retired)
Please can you tell me where I can get this software. The link you are mentioned show only a 404 error. Please help me with this problem.
Welcome to the PICAXE Forum.

The links have changed to the new www.picaxe.com site ...

http://www.picaxe.com/Software

And specifically, for the command line compilers and downloaders ...

http://www.picaxe.com/Software/Drivers/PICAXE-Compilers

If Programming Editor or a version of AXEpad is already installed, the compilers will have been already installed, and can be found beneath those application's home directories.
 

du1mga

New Member
Thanks every one how give me some hints about the batch-compiler. I will try it during the next days. Hopefully I can bring it to work.
Is will help me a lot.

Regards and thanks for the help.

du1mga
 
Top