Not so far as I'm aware. You would have to replace it with an ICX7400-4x10G* module instead. (GF for Fiber, GC for copper/10GBaseT.)Hi
Can you use a breakout cable on this ICX7400-1X40GQ module for the icx7400 serie ?
correct AFAIKNot so far as I'm aware. You would have to replace it with an ICX7400-4x10G* module instead. (GF for Fiber, GC for copper/10GBaseT.)
Ruckus Wireless Bootloader: 10.1.14T225 (Nov 15 2018 - 04:59:18 -0800)
Booted from partition 2
DRAM: Validate Shmoo parameters stored in flash ..... OK
ICX7150-12 (POE), PVT1
SYS CPLD VER: 0x4 Released Ver: 0xa
device 0 offset 0x0, size 0xc0000
Enter 'b' to stop at boot monitor: 0
device 0 offset 0x0, size 0xc0000
bootdelay: ===
Booting image from Primary
NAND read: device 0 offset 0x0, size 0x2000000
Skipping bad block 0x00a00000
33554432 bytes read: OK
But it's all shiny and newI would reflash the bootloader as well (it's on the same SPI flash chip) but it looks like it's detected the block and marked it off which is pretty normal, you should be fine. When you need to worry is when the number of bad blocks starts rising over time, then your flash is failing
I noticed that with the monoprice DAC breakout, it was showing up as absolutely nothing with the "show media" command. Even though it doesn't affect the behavior of the links, I figured something was up with the I2C EEPROM in the DAC cable (this is where vendor/serial/cable type info is stored for optics and DACs).
You can see the show media command can't find any vendor or cable type info for the monoprice DAC, so it shows EMPTY for the 4 breakout slots:
So I dropped down to the debug console (over serial, press ctrl+y, let go, then press m, then enter) to use some I2C read and write commands.Code:telnet@ICX3#show media | include 1/2/[2-5] Port 1/2/2: Type : EMPTY Port 1/2/3: Type : EMPTY Port 1/2/4: Type : EMPTY Port 1/2/5: Type : EMPTY
First, let's read the EEPROM from a proper official brocade DAC cable:
You can see the first half is mostly empty, and the vendor information does not begin until the second half of the EEPROM, where you get the byte specifying the cable type, the vendor string, a serial number, etc. This is as it should be.Code:OS>i2c read 3f 0 256 0000: 0d 00 06 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0010: 00 00 00 00 00 00 01 81-00 00 00 00 00 00 00 00 ................ 0020: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0030: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0040: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0050: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0060: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0070: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0080: 0d 00 23 08 00 00 00 00-00 00 00 00 67 00 00 00 ..#.........g... 0090: 00 00 01 a0 42 52 4f 43-41 44 45 20 20 20 20 20 ....BROCADE 00a0: 20 20 20 20 07 00 05 1e-35 38 2d 30 30 30 30 30 ....58-00000 00b0: 33 33 2d 30 31 20 20 20-41 20 04 05 00 00 46 08 33-01 A ....F. 00c0: 00 00 00 00 50 41 45 31-31 34 31 30 33 30 30 30 ....PAE114103000 00d0: 38 37 36 20 31 34 30 33-30 35 20 20 00 00 00 c2 876 140305 .... 00e0: 31 31 31 30 34 30 39 30-37 31 20 20 20 20 20 20 1110409071 00f0: 20 31 20 20 20 20 20 20-20 20 00 00 00 00 00 00 1 ......
Now let's read the Monoprice DAC that doesn't show up properly:
You can see they must have been in a rush programming these, as they stuck all the vendor and serial information in the incorrect section. No wonder it shows up as empty/unknown media type! Upon closer inspection, they programmed it like an SFP+ module. This first half of the EEPROM should be populated with these values like this in an SFP+, but for a QSFP+ module, it should be in the second half.Code:OS>i2c read 41 0 256 0000: 0c 00 21 00 00 00 00 00-04 80 00 06 67 00 00 00 ..!.........g... 0010: 00 00 01 a0 4d 4f 4e 4f-50 52 49 43 45 20 04 20 ....MONOPRICE . 0020: 31 32 30 36 39 20 2e 2e-2e 2e 2e 2e 2e 2e 2e 2e 12069 .......... 0030: 77 77 77 2e 6d 6f 6e 6f-70 72 69 63 65 2e 63 6f www.monoprice.co 0040: 6d f4 31 32 30 36 39 31-34 31 30 30 30 39 36 43 m.1206914100096C 0050: 48 49 4e 41 20 20 20 00-00 00 f4 ff ff ff ff ff HINA ......... 0060: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 0070: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 0080: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 0090: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 00a0: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 00b0: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 00c0: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 00d0: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 00e0: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................ 00f0: ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff ................
So I used a series of i2c write commands to copy byte for byte the contents of the official brocade DAC, to the monoprice DAC, overwriting the incorrectly placed vendor info with properly placed brocade info.
The monoprice DAC EEPROM contents now looks like this:
Look familiar? Our monoprice DAC now has identical EEPROM contents, compared to our actual official brocade DAC.Code:OS>i2c read 41 0 256 0000: 0d 00 06 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0010: 00 00 00 00 00 00 01 81-00 00 00 00 00 00 00 00 ................ 0020: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0030: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0040: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0050: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0060: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0070: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0080: 0d 00 23 08 00 00 00 00-00 00 00 00 67 00 00 00 ..#.........g... 0090: 00 00 01 a0 42 52 4f 43-41 44 45 20 20 20 20 20 ....BROCADE 00a0: 20 20 20 20 07 00 05 1e-35 38 2d 30 30 30 30 30 ....58-00000 00b0: 33 33 2d 30 31 20 20 20-41 20 04 05 00 00 46 08 33-01 A ....F. 00c0: 00 00 00 00 50 41 45 31-31 34 31 30 33 30 30 30 ....PAE114103000 00d0: 38 37 36 20 31 34 30 33-30 35 20 20 00 00 00 c2 876 140305 .... 00e0: 31 31 31 30 34 30 39 30-37 31 20 20 20 20 20 20 1110409071 00f0: 20 31 20 20 20 20 20 20-20 20 00 00 00 00 00 00 1 ......
And as expected, after unplugging and replugging the cable, the switch now ID's it as a DAC, and thinks it's an official brocade part:
I wouldn't think this has any effect on functionality, as I said the links worked perfectly fine beforehand. Re-coding it into a brocade part like this was only possible because the monoprice DAC did not have the EEPROM write protect bit set. This exact same procedure can be used to re-code optics to different vendors to bypass vendor locks, but many non-OEM optics have a bit set that prevents EEPROM writing without special unlock stringsCode:telnet@ICX3#show media | include 1/2/[2-5] Port 1/2/2: Type : 40GE-Passive Copper Port 1/2/3: Type : 40GE-Passive Copper Port 1/2/4: Type : 40GE-Passive Copper Port 1/2/5: Type : 40GE-Passive Copper ##even more details - still the monoprice DAC telnet@ICX3#show media e 1/2/2 Port 1/2/2:Type : 40GBASE-Passive Copper Vendor Name: BROCADE Serial Num: PAE114103000876 Revision: A
A little more information:
The SFP+ EEPROM data location layout, you can see the identity and vendor etc strings are at the beginning (like our QSFP+ monoprice incorrectly had) - http://files.siemon.com/sis/application-guide/sfp-plus-to-sfp-plus_eeprom_summary.pdf
The QSFP+ EEPROM layout, you can see that the vendor and cable type etc now does not start until around the middle. This is where the ICX was trying to read to figure out the cable type, and of course on the monoprice there was nothing there - http://files.siemon.com/sis/application-guide/qsfpplus_to_qsfpplus_eeprom_summary.pdf
Upon closer inspection, this could have potentially caused it refusing to link up, as it could not even read the ident bit to figure out what kind of cable it was. For QSFP modules, it reads byte number 128 (first byte on line 80 in the dump above). This byte is set to "0d" hex to tell the host it's a QSFP+ device. On the monoprice dac, when it read that byte, it was completely empty. You can see in the brocade dump, that bit is correctly set to 0d.
here's a table of possible values for that byte:
https://i.imgur.com/2Id6xp9.png
You can see that if we set that byte to 03 instead, we could make the switch think it's an SFP module. It would probably not like this, given it's a QSFP+ slot (or on second thought, it would just assume it's an SFP+ optic in an SFP+ to QSFP+ adapter)
And upon even further digging, the EEPROM also contains signal attenuation values for the given cable at both 2.5ghz and 5ghz (bytes 186 and 187 respectively), and the host (the switch) uses these values to set up it's transmitter and receiver EQ appropriately. Without it being able to read these on the stock monoprice DAC, the transmitter and receiver probably defaulted to "fallback" values, which could have also resulted in the not quite working links.
Again, copying over the brocade DAC contents should fix this, as it contains these values (4db and 5db, respectively). I'd imagine the attenuation values there are very close to what the monoprice DAC is supposed to have, given they are both the same length, and both 30AWG twinax. Given how much stuff the monoprices come with wrong from factory, I'm surprised they ever worked, especially with cisco equipment (which is what they're advertised for). Thankfully it's not write-locked, so all this is easily fixed with a few commands
That modification is for as QSFP breakout cable and the ICX6450 has no QSFP ports, so noHi,
Is it possible to made this modification with the ICX6450?.
Thanks.
ICX7150-Boot>nand info
Device 0: nand0, sector size 1024 KiB, Micron NAND 2GiB
Page size 4096 b
OOB size 224 b
Erase size 1048576 b
subpagesize 4096 b
options 0x 10200
bbt options 0x 0
ICX7150-Boot>nand bad
Device 0 bad blocks:
00a00000
05a00000
05b00000
Gah.Code:ICX7150-Boot>nand info Device 0: nand0, sector size 1024 KiB, Micron NAND 2GiB Page size 4096 b OOB size 224 b Erase size 1048576 b subpagesize 4096 b options 0x 10200 bbt options 0x 0 ICX7150-Boot>nand bad Device 0 bad blocks: 00a00000 05a00000 05b00000
nope. if it gets too hot it'll ramp the fans up no need to worry about itIs it possible to manually change the fan speed on the Brocade Ruckus 7150-24p? the ruckus website seems to say that fans can only be automatically controlled. I've tried fan-speed via CLI and it is not recognized as a command. I've swapped out the stock fans for some noctua ones going from an audible but quiet switch to a basically silent switch. Temps are good-ok, between 65-75c, but I think even at full speed these noctua fans would be near silent. 72c seems to be the temp threshold for high speed.