Everything You need to know about your M4 ATX
Ok this thread is like others of it's nature (ie FAQ type responses not for troubleshooting)
How do I connect my M4 to the USB Port on my computer?
You need a 4 core cable with header connections on either end.
Header connectors look like this: (image from melbpc.org.au)
Inside the manual for the M4 the pinout for the usb connector is incorrect,
the correct pinout is shown below:
Connect 1 end of the 4 pin cable to an onboard motherboard USB header, and the other to the correct pins on J8 shown above.
Or another way that this could be achieved i doing the following:
2x 10 pin female IDC connectors
2 lengths of 10 core flat cable
1 pin header connector
1 USB Type A socket.
Attach one of the 10 pin IDC connectors to one end of the 10 core cable, like this:
This will go to J8 on the M4 ATX.
Attach the other 10 pin IDC connnector to the other length of 10 core cable you have.
This will attach to the motherboard usb header.
On the cable that attaches to your M4 ATX, attach the 2 pin header on pins 7 & 8. This will go to the "on" pins on your motherboard.
Then attach Pins 2-5 on this cable to the other cable with a 10 pin IDC connector according to the pinout of the motherboard usb header. As most motherboard USB headers support 2 USB ports, I attached the Type A USB socket to this cable to make use of this so I didn't waste a usb port.
Here are pictures of this:
The M4 should be recognised as a HID device in windows. Mini-bos has yet to release software that will allow us to interact with the M4 via USB.
My M4 doesn't follow the timing diagram in the manual, rather it always takes 1min/30secs to issue the shutdown pulse, regardless of the dipswitches. It follows the timing diagram if the ignition goes off/on/off.
This is a known bug in version 1.0 of the firmware. The fix is detailed below.
How do I reprogram my M4 ATX?
This requires a bit of soldering and electrical know how, if in doubt just send it back to mini-box for them to upgrade the firmware.
Things you need:
New Firmware (v1.1 attached to this post)
an ICSP (In circuit serial programmer) for the 18F2450 microcontroller, if one of these is not available you will have to build one.
Parts to build an ICSP:
Q1,Q2 2N3904 NPN Transistors
R1 1.5k Ohm Resistor
R2 10k Ohm Resistor
R3 100 Ohm Resistor
D1,D2,D6,D7 1N4148 Diodes
D3 5mm LED
D4 6.2v Zener Diode
D5 5.1v Zener Diode
C1,C4 Capacitor in the range of 22->100pF
C2 100uF 16v Capacitor
C3 22uF 6.3v Capacitor
DB9F PCB Mount Connector
5 pin IDC Connector
5 core cable
Schematic is shown below: (original schematic from obddiag.net, modified to fit the M4 ATX)
Build the schematic
Attach unit to a free serial port on your computer
Make sure the M4 is connected to nothing, and connect the programmer to the M4.
To do this locate the header J5. Pin 1 on J5 is closest to the the dip switches (circled):
Click the Interface Tab
Select "JDM2 for serial port" under "Device type", select your com port and click "Initialize !"
Click the Device Tab
Select 18F2450 under "Part"
Click File then open and select the new firmware that is attached to ths post.
Click open and then click the "Code" tab. It should look like this:
Then all you do is click the button with the red arrow pointing at the microchip (on the rigt hand side of the floppy disk icon) to program the new firmware on.
Disconnect M4 from the programmer and you are done!
Winpic will fail on verification. I'm not too sure what impact this has on the programming itself, however my M4 works fine after loading the new firmware.
The reason is explained from obddiag.net
"Winpic doesn't check the configuration word properly, as the devices have user-configurable memory space from 300000h-30000Dh. Two config registers are missing, namely CONFIG3L(300004h) and CONFIG4H(300007h). WinPic is trying to program it as contiguous memory block and failing on verification."