J2[17] and J2[18] on MOD54415 v1.9

Discussion to talk about hardware related topics only.
Post Reply
rhyde
Posts: 2
Joined: Sat Oct 18, 2014 10:31 am

J2[17] and J2[18] on MOD54415 v1.9

Post by rhyde »

I've been using J2[17] and J2[18] as input pins on v1.5 MOD54415 boards. On v1.9 these input pins no longer work. What do I have to do to get them functional again?

#define S1_BIT7() (J2[17])
#define S1_BIT6() (J2[18])

.
.
.

S1_BIT7().function( PIN_GPIO ); //DIB Switch Dip Switch bit 8 (67-SW8)
S1_BIT6().function( PIN_GPIO ); //DIB Switch Dip Switch bit 7 (68-SW7)

.
.
.
dipsw = S1_BIT7();
dipsw <<= 1;
dipsw |= S1_BIT6();


Bits 6 & 7 always return '1'. If I plug in a v1.5 board, it works fine.
Thanks,
Randy Hyde
rnixon
Posts: 833
Joined: Thu Apr 24, 2008 3:59 pm

Re: J2[17] and J2[18] on MOD54415 v1.9

Post by rnixon »

There is a product change notice on the MOD54415 product page. Have you looked at that yet?
User avatar
dciliske
Posts: 623
Joined: Mon Feb 06, 2012 9:37 am
Location: San Diego, CA
Contact:

Re: J2[17] and J2[18] on MOD54415 v1.9

Post by dciliske »

Post 1.6, 17 and 18 have been connected to the USB pins. It is possible to connect these back to their original configuration with a hardware stuffing per the change note. It looks like you are only using these pins as inputs. If that is the case, you can use the USB module to access the input state.

To use pins 17 and 18, you will need to read the "portsc1" register of the USB OTG module and look at bits 10 and 11.

A read for pin 17 would end up being:

bool pin17_state = sim2.usb_otg.portsc1 & 0x00000400;
bool pin18_state = sim2.usb_otg.portsc1 & 0x00000800;

-Dan
Dan Ciliske
Project Engineer
Netburner, Inc
rlupish
Posts: 26
Joined: Thu Oct 10, 2013 6:15 am

Re: J2[17] and J2[18] on MOD54415 v1.9

Post by rlupish »

I was looking into using J2[17] or J2[18] as in input-only GPIO, so went to pinconstant.h to see what the defined parameter to use for configuring one of these pins appropriately (i.e., PINJ2_nn_<USAGE> parameter) - obviously, I hadn't gotten to the point of finding and reading through this thread, as the need for an additional GPIO had just come up.

Anyway, here's what I found in pinconstant.h (as supplied with NNDK 2.7.5):
// Connector: J2 / Pin: 17 / CPU Pin: A14 / Available On: USB- On-the-Go [v1.7 and later (H/W default)]
// Connector: J2 / Pin: 17 / CPU Pin: A15 / Available On: USB- Host (v1.7 and later)

// Connector: J2 / Pin: 17 / CPU Pin: C12 / Available On: v1.6 and earlier (H/W default), v1.9 and later
#define PINJ2_17_SSI0_RXD ( 3 ) // Primary Function: SSI 0 - Serial Receive Data
#define PINJ2_17_I2C2_SDA ( 2 ) // Alternate Function 1: I2C 2 - Serial Data
#define PINJ2_17_SIM1_VEN ( 1 ) // Alternate Function 2: SIM 1 - Power Supply Enable Signal
#define PINJ2_17_GPIO ( 0 ) // Port H - 7

// Connector: J2 / Pin: 18 / CPU Pin: B14 / Available On: USB+ On-the-Go [v1.7 and later (H/W default)]
// Connector: J2 / Pin: 18 / CPU Pin: B15 / Available On: USB+ Host (v1.7 and later)

// Connector: J2 / Pin: 18 / CPU Pin: C13 / Available On: v1.6 and earlier (H/W default), v1.9 and later
#define PINJ2_18_SSI0_TXD ( 3 ) // Primary Function: SSI 0 - Serial Transmit Data
#define PINJ2_18_I2C2_SCL ( 2 ) // Alternate Function 1: I2C 2 - Serial Clock
#define PINJ2_18_SIM1_DATA ( 1 ) // Alternate Function 2: SIM 1 - Bidirectional Transmit/Receive Data Signal
#define PINJ2_18_GPIO ( 0 ) // Port H - 6
Curiously, it would appear from this, that v1.9 and later modules have reverted back to v1.6 and earlier pin configuration. Is this true? I have found no notice of this. It is not reflected in the current (October 13, 2016) MOD5441X datasheet.

ALSO, the version numbers above apparently apply to MOD54415 modules. What are the corresponding versions for MOD54417 modules?

Thanks,

Ron
User avatar
TomNB
Posts: 538
Joined: Tue May 10, 2016 8:22 am

Re: J2[17] and J2[18] on MOD54415 v1.9

Post by TomNB »

Please see the Part Change Notice (PCN) on the MOD5441X product page, it will explain in detail:
http://www.netburner.com/products/core-modules/mod5441x

There are steering resistors that can be moved to alter the functionality between usb host, usb device, and i2c2
beaker861
Posts: 1
Joined: Wed Nov 02, 2016 6:45 pm

Re: J2[17] and J2[18] on MOD54415 v1.9

Post by beaker861 »

I have much the same question that does not seem to have been answered.

The referenced product change notice, in both its topic and heading refers to MOD5441X, but actually only makes mention of MOD54415 revisions.
What is the case with MOD54417?
Do they also have any ability to revert to the older style pinout with steering resistor changes, or only from a particular rev or not at all?
Perhaps that could be made a bit more specific in your doco for the future? :)
Also the datasheet on your website even as of now for MOD5441X is not exactly compatible with your product change notice details.

Can you also advise what rev of MOD54415 is currently being shipped, as I just ordered some, and need to be prepared for whatever product changes I need to make at this end as a result.
rlupish
Posts: 26
Joined: Thu Oct 10, 2013 6:15 am

Re: J2[17] and J2[18] on MOD54415 v1.9

Post by rlupish »

To echo the previous post, could you let us know what version number of the MOD54417 module will be able to have J2[17] and J2[18] configurable for I2C use?

Thanks,

Ron
User avatar
TomNB
Posts: 538
Joined: Tue May 10, 2016 8:22 am

Re: J2[17] and J2[18] on MOD54415 v1.9

Post by TomNB »

Hello,

The current version of the MOD54415 is 1.9, and the resistors are configured for USB. The two resistors can be moved to get I2C or USB host mode operation.

I have been told the PCN does not address the 54417 because it was USB in it's first revision, so it has not changed. However, there needs to be clear instructions on the resistor operation. I will post it here and have a document put on the web site. It will not be a PCN since nothing changed, but will describe the options.
Post Reply