diff --git a/bulldog.board.beagleboneblack/src/main/java/org/bulldog/beagleboneblack/sysfs/BBBSysFs.java b/bulldog.board.beagleboneblack/src/main/java/org/bulldog/beagleboneblack/sysfs/BBBSysFs.java index 83e751f9..d80da53d 100644 --- a/bulldog.board.beagleboneblack/src/main/java/org/bulldog/beagleboneblack/sysfs/BBBSysFs.java +++ b/bulldog.board.beagleboneblack/src/main/java/org/bulldog/beagleboneblack/sysfs/BBBSysFs.java @@ -3,6 +3,8 @@ import java.io.BufferedReader; import java.io.File; import java.io.FileReader; +import java.nio.file.Files; +import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; @@ -16,7 +18,9 @@ public class BBBSysFs extends SysFs { private String SYSFS_DEVICES_PATH = "/sys/devices"; public BBBSysFs() { - + if (!Files.isDirectory(Paths.get(SYSFS_DEVICES_PATH))) { + SYSFS_DEVICES_PATH = "/sys/devices/platform"; + } } public File getCapeManager() { @@ -40,6 +44,8 @@ public int getSlotNumber(String namePattern) { } public boolean isSlotLoaded(int slotIndex) { + if (slotIndex == -1) + return false; String slot = readSlots().get(slotIndex); return slot.charAt(11) == 'L'; } diff --git a/bulldog.devices/src/main/java/org/bulldog/devices/pwmdriver/PCA9685Pwm.java b/bulldog.devices/src/main/java/org/bulldog/devices/pwmdriver/PCA9685Pwm.java index 778851a1..e479fca8 100644 --- a/bulldog.devices/src/main/java/org/bulldog/devices/pwmdriver/PCA9685Pwm.java +++ b/bulldog.devices/src/main/java/org/bulldog/devices/pwmdriver/PCA9685Pwm.java @@ -33,7 +33,7 @@ protected void enableImpl() { @Override protected void disableImpl() { - driver.enableChannel(getPin().getAddress()); + driver.disableChannel(getPin().getAddress()); } }