Beign a geek, you know that you can never have enough USB ports lying around, similar to how a lady satechi 12 port usb hub bitcoin mining when she starts to build up an impressive collection of handbags and shoes. Read more about Brando, USB and USB HUB.
20 Icarus to one 650W ATX power is better. Icarus to your 12V yellow cables. If you have more Icarus like 40. Cables link: ATX cable 1 ATX cable 2 Power cable 5. Burned bad quality cable, it should be 4 yellow cables and 4 black cables. Burned power adapter, the case became uneven. Icarus connect to this power adapter not broken.
PWR_OK: power modules output are all in good voltage. TXD1 and RXD1: for display transport on the USB UART bridge, but by a design miss, they are difficult to discriminate, and this function is also implemented on other LEDs, so will be removed in the future. LED1: FPGA1 is busy, in the origin bitsteam, light means FPGA is working, but it changed to opposite. LED4: valid nonce found by FPGA1. LED8: valid nonce found by FPGA2. PC, it recognized as a ttyUSB device or COM on windows PC.
Send back the results if the fpga found a valid nonce, they will send back the 32bits nonce result immediately. Send a work pass the COM port, start a timer and a listener on the COM port. If any data send back by the COM port, then this is a valid nonce. FPGA and send the result back to the pool. If no data send back in 11.
FPGA will start the calculate when you push a work to them, even they are busy. The 2 FPGAs on one board will distribute the 32bit nonce to calculate. FPGA will stop work when: a valid nonce has been found or 32 bits nonce range is completely calculated. 2 FPGA both find valid nonce in the meantime, the 2 valid nonce will all be send back. 0 once it gets to the end!