         0:HardwareSPI(spiId:"0.0",isOutput:true),
         1:HardwareSPI(spiId:"0.1",isOutput:false)
     ]
-
+    
     // OrangePi
-    // The pins are ordered by name: A0-A21(P0-P16), C0-C7(P17-P22), D14(P23), G6-G9(P24-P27) 
+    // The pins are ordered by name: A0-A21(P0-P16), C0-C7(P17-P22), D14(P23), G6-G9(P24-P27)
     static let GPIOORANGEPI:[GPIOName:GPIO] = [
         .P0:GPIO(sunXi:SunXiGPIO(letter: .A,pin:0)),
         .P1:GPIO(sunXi:SunXiGPIO(letter:.A,pin:1)),

            fclose(fp)
        }
    }
 
}


public struct VirtualSPI : SPIOutput{
    let dataGPIO,clockGPIO:GPIO

    public init(dataGPIO:GPIO,clockGPIO:GPIO){
        self.dataGPIO = dataGPIO
        self.dataGPIO.direction = .OUT

            listening = true
        }
    }
    
    public func onRaising(_ closure:(GPIO)->Void){
        intFuncRaising = closure
        if intThread == nil {
