Package: adafruit-circuitpython-funhouse
IntroductionHelper library for the Adafruit FunHouse boardDependenciesThis driver depends on:Adafruit CircuitPythonPlease ensure all dependencies are available on the CircuitPython filesystem.
This is easily achieved by downloadingthe Adafruit library and driver bundleor individual libraries can be installed usingcircup.Adafruit FunHouse Home Automation boardPurchase one from the Adafruit shopUsage ExampleimportboardfromdigitalioimportDigitalInOut,Direction,Pullimportadafruit_dps310importadafruit_ahtx0fromadafruit_funhouseimportFunHousefunhouse=FunHouse(default_bg=0x0F0F00,scale=2,)i2c=board.I2C()dps310=adafruit_dps310.DPS310(i2c)aht20=adafruit_ahtx0.AHTx0(i2c)funhouse.peripherals.set_dotstars(0x800000,0x808000,0x008000,0x000080,0x800080)# sensor setupsensors=[]forpin(board.A0,board.A1,board.A2):sensor=DigitalInOut(p)sensor.direction=Direction.INPUTsensor.pull=Pull.DOWNsensors.append(sensor)defset_label_color(conditional,index,on_color):ifconditional:funhouse.set_text_color(on_color,index)else:funhouse.set_text_color(0x606060,index)# Create the labelsfunhouse.display.root_group=Noneslider_label=funhouse.add_text(text="Slider:",text_position=(50,30),text_color=0x606060)capright_label=funhouse.add_text(text="Touch",text_position=(85,10),text_color=0x606060)pir_label=funhouse.add_text(text="PIR",text_position=(60,10),text_color=0x606060)capleft_label=funhouse.add_text(text="Touch",text_position=(25,10),text_color=0x606060)onoff_label=funhouse.add_text(text="OFF",text_position=(10,25),text_color=0x606060)up_label=funhouse.add_text(text="UP",text_position=(10,10),text_color=0x606060)sel_label=funhouse.add_text(text="SEL",text_position=(10,60),text_color=0x606060)down_label=funhouse.add_text(text="DOWN",text_position=(10,100),text_color=0x606060)jst1_label=funhouse.add_text(text="SENSOR 1",text_position=(40,80),text_color=0x606060)jst2_label=funhouse.add_text(text="SENSOR 2",text_position=(40,95),text_color=0x606060)jst3_label=funhouse.add_text(text="SENSOR 3",text_position=(40,110),text_color=0x606060)temp_label=funhouse.add_text(text="Temp:",text_position=(50,45),text_color=0xFF00FF)pres_label=funhouse.add_text(text="Pres:",text_position=(50,60),text_color=0xFF00FF)funhouse.display.root_group=funhouse.splashwhileTrue:funhouse.set_text("Temp%0.1F"%dps310.temperature,temp_label)funhouse.set_text("Pres%d"%dps310.pressure,pres_label)print(aht20.temperature,aht20.relative_humidity)set_label_color(funhouse.peripherals.captouch6,onoff_label,0x00FF00)set_label_color(funhouse.peripherals.captouch7,capleft_label,0x00FF00)set_label_color(funhouse.peripherals.captouch8,capright_label,0x00FF00)slider=funhouse.peripherals.sliderifsliderisnotNone:funhouse.peripherals.dotstars.brightness=sliderfunhouse.set_text("Slider:%1.1f"%slider,slider_label)set_label_color(sliderisnotNone,slider_label,0xFFFF00)set_label_color(funhouse.peripherals.button_up,up_label,0xFF0000)set_label_color(funhouse.peripherals.button_sel,sel_label,0xFFFF00)set_label_color(funhouse.peripherals.button_down,down_label,0x00FF00)set_label_color(funhouse.peripherals.pir_sensor,pir_label,0xFF0000)set_label_color(sensors[0].value,jst1_label,0xFFFFFF)set_label_color(sensors[1].value,jst2_label,0xFFFFFF)set_label_color(sensors[2].value,jst3_label,0xFFFFFF)DocumentationAPI documentation for this library can be found onRead the Docs.For information on building library documentation, please check outthis guide.ContributingContributions are welcome! Please read ourCode of Conductbefore contributing to help this project stay welcoming.