Jump to content

DIN-module problem (edited)


macroman
 Share

Recommended Posts

Okay, here's my story that makes me feel total newbie and a bit shamed by testing everything in problem solving. In the positive side this is probably the best way to learn about things ans mistakes :-)

I managed to get Core and Sid with LCD fully working. 8 banksticks were formatted fine.

Then I let myself to have a pause while waiting DIN & DOUT parts to arrive. I soldered the DIN module and connected it to Core. Core was using the newer MBSID (V2.0 RC14) since it's PIC18F4685 so I assumed there was everything set that the DIN module works with "basic settings". I tried few buttons, but no activity.

I tried if things could be better with older MBSID software. Uploaded it in and after the boot it started to format banksticks again. It jammed on bankstick C with patch 67, rebooted, started to format bankstick C again, jammed on patch 67, rebooted, started to format... and this happened continuously.

I didin't find any other way out than upload the newer MBSID again (stupid be that I didn't unplug the bankstick module to stop that looping). The new software uploaded fine, but after the boot the LCD gave black boxes on the upper line. I heard the formatting sound again but no visual. After the formatting sound I rebooted the system, but this ongoing situation started: only black boxes on the upper row, and no sound.

Everytime the system is powered up it sends Sysex message: F0 00 00 7E 40 00 01 F7, but that's the only message for some sort of life in there. Could the PIC be dead?

Every other second I fight my way to get it work and finished no matter what it costs, but every other second I consider to give up with it and find another hobby. :-|

Link to comment
Share on other sites

It's also normal that the PIC18F452 version of MBSID V1.7303 behaves strangely, because the PIC18F4685 is not completely compatible.

Could you please create a SRAM dump from address 0x000, range 0x80 and address 0x500, range 0x100 and copy&paste it here? This give me the required informations about the LCD state.

The SRAM can be read with the debug tool of MIOS Studio like shown here:

sram_read.png

Best Regards, Thorsten.

Link to comment
Share on other sites

Jimp&TK: the PIC looks like jammed somehow, because it doesn't react to any MIDI command.

Like Jimp said, it sends the upload request, but it doesn't respond to software upload when using smart mode (manual mode doesn't work either).

TK: it's the same thing when trying to read SRAM, nothing's coming in.

I've done some research. I changed the optocoupler, no solution. I tried PIC18F452, and it worked. So there's something wrong with PIC18F4685. Perhaps it's not receiving midi?

While problem solving the 4685, I can continue building with 452.

Link to comment
Share on other sites

Did you also try to upload MIOS via 1st level bootloader, just to check that a corrupted installation isn't the issue?

You can do this the following way: power-off the core, enable smart mode, load the latest MIOS .hex file into MIOS Studio (mios_v1_9f_pic18f4685.hex), and press the upload button. Now power the core: MIOS Studio should start with the upload after the upload request has been received.

Best Regards, Thorsten.

Link to comment
Share on other sites

Did you also try to upload MIOS via 1st level bootloader, just to check that a corrupted installation isn't the issue?

That was it! Thank you TK! Now I'm also more aware about the structure of software hierarchy on the PIC so this helps me with later problems to know that it's not the end if fooling around with software uploads.

Link to comment
Share on other sites

Okay, now when the software part is taken care of, I'm back at the point where I've soldered the DIN module. I've connected it to Core module and I've connected only one button on the DIN, which is the menu button on mbsid code by default.

The problem is that nothing happens when connecting vss to some D0-D7 pins. Every D-pin has 5 volts. I've uploaded interconnection test, but modulation wheel doesn't have any effect on screen.

Any advices?

Link to comment
Share on other sites

Is there outdated information in schematics

No.....

since DINX4 J1 is labelled with "SI" pin and not "SO" pin like mine (version R5)? Does those stand for "Serial in" & "Serial out" ?
Yes (Serial in/out).....

To answer why the SO pin is on the DIN since it's only used by the DOUT, it's so a DIN->DOUT chain is possible without a "Y" cable.

From my DIN page:

DINR5J1.gif

Notice only half of that connector is labeled, due to it sitting on the edge of the board.  There is simply no room for that half of the silkscreen legend.....

DINR5J2.gif

At the other end of the board.  Again no room for a proper legend, but keep in mind the pinout for J1 and J2 are the same.

This seems to be an error in the PCB silkscreening, the labels which can be found in the original schematics are still valid, and it doesn't make sense to change them.

Best Regards, Thorsten.

The schematics are fine, and silkscreen is accurate when you look at the whole picture.  I did it this way so you can use a simple 1:1 ribbon cable with IDC connectors from CORE J8/9 to DIN J1 or DOUT J1 and it works as expected.

Best Regards

Smash

Link to comment
Share on other sites

To answer why the SO pin is on the DIN since it's only used by the DOUT, it's so a DIN->DOUT chain is possible without a "Y" cable.

SO is routed through the DIN module, so you can connect DOUT modules after a chain of DIN modules.

The inverse is not true, SI is not routed through a DOUT module.

Link to comment
Share on other sites

To answer why the SO pin is on the DIN since it's only used by the DOUT, it's so a DIN->DOUT chain is possible without a "Y" cable.

From my DIN page:

Notice only half of that connector is labeled, due to it sitting on the edge of the board.  There is simply no room for that half of the silkscreen legend.....

At the other end of the board.  Again no room for a proper legend, but keep in mind the pinout for J1 and J2 are the same.

Best Regards

Smash

Oh my god, I finally got it and this solves my problem ;D

I didn't realize that there's a possibility to chain DOUT modules with DIN, so I have soldered the connection for the core to the wrong side of J1 on DIN pcb. First this seemed to be ideal way to connect pcb "serial out" to "serial in" (like you do with MIDI) :-) I didn't consider why there's double holes on the pcb.

Thanks everyone!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...