Custom component for Home Assistant that integrates Candy/Haier Wi-Fi washing machines (also known as Simply-Fi).

Overview

Candy Home Assistant component

hacs_badge

Custom component for Home Assistant that integrates Candy/Haier Wi-Fi washing machines (also known as Simply-Fi).

This is still work-in-progress, it only supports washing machines and may not work with all models. Open a PR or issue if you have a model that's not supported.

Features

  • Uses the local API and its status endpoint
  • Displays the machine status, wash cycle status, remaining time and some other attributes

Installation

  1. Install HACS
  2. Add this as a custom repository to HACS (https://github.com/ofalvai/home-assistant-candy)
  3. Go to the integrations list in HACS and install this custom repo
  4. Restart Home Assistant
  5. Go to the Integrations page, click Add integrations and select Candy
  6. Complete the config flow

Configuration

You need the IP address of the machine and the encryption key. This can be guessed with CandySimplyFi-tool.

Comments
  • Problem with candy oven, no key required

    Problem with candy oven, no key required

    Hi,

    i've a problem with candy oven model fct896x-wifi.

    by CLI

    With command curl -s http://IP/http-read.json?encrypted=1 | xxd -r -p | jq i've reveived :

    {

    "statusForno": { "StatoWiFi": "0", "CodiceErrore": "E0", "RecipeId": "0", "RecipeStep": "0", "StartStop": "0", "Pausa": "0", "SicurezzaBambini": "0", "Selettore": "0", "Program": "0", "TempSet": "0", "TempRead": "210", "TempSetRaggiunta": "0", "DelayStart": "0", "RemainingTimeProgr": "65535", "ora": "16", "min": "11", "sec": "2", "FWver": "001A", "ts": "0"

    } }

    instead with this command curl -s http://IP/http-read.json?encrypted=0 | xxd -r -p | jq i've reveived no response and with curl -s http://IP/http-read.json?encrypted=0 i've reveived : {"response":"BAD REQUEST"} So, by HASSIO Integration, i've uncheck key but i've reveived the same error (BAD REQUEST)

    Logger: homeassistant.config_entries Source: config_entries.py:335 First occurred: 09:32:47 (4 occurrences) Last logged: 16:10:32

    Config entry 'Candy' for candy integration not ready yet: Error communicating with API: TimeoutError(); Retrying in background Config entry 'Candy' for candy integration not ready yet: Error communicating with API: Exception('Unable to detect machine type >from API response', {'response': 'BAD REQUEST'}); Retrying in background

    Thanks for support

    opened by skillcodeone 14
  • Drying machine

    Drying machine

    Hello,

    I have a Candy Simply-fi dryer, but the integration fails.: "Error communicating with API: KeyError('statusLavatrice')"

    The start of the chain is different, change statusLavatrice to statusTD. As well as other parameters, I can collaborate with tests.

    I attach the extracted data with ./simplyfi IP KEY read

    { "statusTD": { "StatoWiFi":"1", "StatoTD":"1", "CodiceErrore":"0", "Pr":"1", "PrPh":"0", "RemTime":"150", "DryLev":"2", "Time":"0", "Rapido":"0", "Opt1":"1", "Opt2":"1", "Opt3":"0", "Opt4":"0", "Opt5":"0", "Opt6":"0", "Opt7":"0", "Opt8":"0", "Refresh":"0", "CleanFilter":"0", "WaterTankFull":"0", "DryingManagerLevel":"1", "DelVal":"0", "DoorState":"1", "RecipeId":"NULL", "CheckUpState":"0" } }

    Thanks!

    opened by rogodra 12
  • Possibility to not creating area

    Possibility to not creating area

    Please add the option to not automatic create an area when starting HA

    After removed area loke kitchen or bathroom (automatic created from integration), restarting HA cause a re-creation

    opened by antoweb 11
  • backoff - Requirements not found

    backoff - Requirements not found

    Logger: homeassistant.setup Source: setup.py:184 First occurred: 09:57:27 (1 occurrences) Last logged: 09:57:27

    Home Assistant: 2022.11.0b0

    Setup failed for custom integration candy: Requirements for candy not found: ['backoff>=1.8.0,<2.0.0'].

    opened by IonutNeagu 9
  • Error communicating with API: KeyError('Pr')

    Error communicating with API: KeyError('Pr')

    Hello, my washing machine is Candy CO4 1062D3/2-S and im trying to add your integration to my Home Assistant. I got needed ip and found a key with CandySimplyFi-tool then i completed your config flow. But after, error appear in the integrations section image Am i doing something wrong or my model isnt supported?

    opened by lemeshovich 9
  • Dishwasher

    Dishwasher

    Hi, I can't integrate my dishwasher in home assistant: I have this error:

    Config entry 'Candy' for candy integration not ready yet: Error communicating with API: Exception('Unable to detect machine type from API response', {'statusDWash': {'StatoWiFi': '1', 'StatoDWash': '0', 'CodiceErrore': 'E0', 'StartStop': '0', 'Program': 'P1', 'OpzProg': 'p', 'DelayStart': '0', 'RemTime': '0', 'TreinUno': '0', 'Eco': '0', 'MetaCarico': '0', 'ExtraDry': '0', 'MissSalt': '0', 'MissRinse': '0', 'OpenDoor': '0', 'Reset': '0', 'FWver': 'L1.12'}}); Retrying in background

    if i connect at site: http://x.x.x.x/http-read.json?encrypted=0 i view this parameters: { "statusDWash":{ "StatoWiFi":"1", "StatoDWash":"0", "CodiceErrore":"E0", "StartStop":"0", "Program":"P1", "OpzProg":"p", "DelayStart":"0", "RemTime":"0", "TreinUno":"0", "Eco":"0", "MetaCarico":"0", "ExtraDry":"0", "MissSalt":"0", "MissRinse":"0", "OpenDoor":"0", "Reset":"0", "FWver":"L1.12" } }

    Have any suggestions?

    Thank you!!!

    help wanted 
    opened by scaramatto 8
  • Support for oven

    Support for oven

    hi,i have oven. You can add it on custom_component? If you want i can try some testing. tell me what i have to do. For now i get this informations:

    simplyfi 192.168.188.51 key read { "statusForno":{ "StatoWiFi":"0", "CodiceErrore":"E0", "RecipeId":"NULL", "RecipeStep":"0", "StartStop":"1", "Pausa":"0", "SicurezzaBambini":"0", "Selettore":"1", "Program":"2", "TempSet":"0", "TempRead":"310", "TempSetRaggiunta":"0", "DelayStart":"0", "RemainingTimeProgr":"65535", "ora":"9", "min":"2", "sec":"5", "TimeProgr":"0", "FWver":"004B", "ts":"0" } }

    Anyway i tried to integrate it but i have this error:

    Error communicating with API: Exception('Unable to detect machine type from API response', {'statusForno': {'StatoWiFi': '0',

    Ty so much.

    help wanted 
    opened by Altar82 8
  • Hoover Washerdryer

    Hoover Washerdryer

    Hey guys,

    the Haier group also offers devices under the Hoover brand, so I was wondering if they are similar enough to be supported?

    I got the HDPD696AMBC/1-S Model.

    I tried the CandySimplyFi-tool but it shows only a connection error since port 80 is closed on the device.

    opened by RubenKelevra 6
  • Setup Error

    Setup Error

    Hi Oliver

    Thanks for creating this integration.

    I seem to be struggling to get it to execute. I have added the device IP and encryption key (detemined using CandySimplify-tool) but I get the following error on the integrations page in HA....

    Retrying setup: Error communicating with API: 'FillR'

    Any idea? Thanks Alan

    opened by alancoleman1972 6
  • Brute force encryption key automatically

    Brute force encryption key automatically

    Context: #46

    Changes

    • Remove "Use encryption" and "encryption key" config inputs
    • Detect if ?encrypted=1 needed or not for requests
    • If needed, brute force encryption key based on the encrypted response
    • Also handles the case of #35 where ?encrypted=1 is required but the response is not encrypted, just hex encoded
    opened by ofalvai 5
  • Find the encryption key automatically

    Find the encryption key automatically

    This would avoid the need for the user to do the slightly complex process necessary by hand.

    The script I posted on the forum should be robust enough if you handle the case where the key is full of zeros.

    opened by dzamlo 5
  • Bump pytest-homeassistant-custom-component from 0.12.20 to 0.12.40

    Bump pytest-homeassistant-custom-component from 0.12.20 to 0.12.40

    Bumps pytest-homeassistant-custom-component from 0.12.20 to 0.12.40.

    Release notes

    Sourced from pytest-homeassistant-custom-component's releases.

    Release 0.12.40

    Automatic release homeassistant version: 2023.1.0b4

    Release 0.12.39

    Automatic release homeassistant version: 2023.1.0b3

    Release 0.12.38

    Automatic release homeassistant version: 2023.1.0b2

    Release 0.12.37

    Automatic release homeassistant version: 2023.1.0b1

    Release 0.12.36

    Automatic release homeassistant version: 2022.12.8

    Release 0.12.35

    Automatic release homeassistant version: 2022.12.7

    Release 0.12.34

    Automatic release homeassistant version: 2022.12.6

    Release 0.12.33

    Automatic release homeassistant version: 2022.12.5

    Release 0.12.32

    Automatic release homeassistant version: 2022.12.4

    Release 0.12.31

    Automatic release homeassistant version: 2022.12.3

    Release 0.12.30

    Automatic release homeassistant version: 2022.12.1

    Release 0.12.29

    Automatic release homeassistant version: 2022.12.0

    Release 0.12.28

    Automatic release

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Please add a setting to change the device's IP address

    Please add a setting to change the device's IP address

    Today, I had an unexpected problem: my automation didn't report the washing machine's state. At first I thought that maybe the machine's wifi signal strength was too weak. But when looking through the DHCP logs, I discovered that rather it's IP address had changed.

    So the wifi was working as expected, but the integration tried to connect to the wrong IP. Of course, I don't think there's a way to automatically update the integration with the new IP address. And it shouldn't happen too often, anyway. But the only way to set the new address was to go edit HA's config files manually. Therefore, I'd like to suggest exposing this vital setting via the GUI.

    At the moment, the only settings for the device are in regards to name, area and enabled/disabled state of the device: image

    opened by mh166 2
  • Update backoff requirement from ~=2.0 to ~=2.2

    Update backoff requirement from ~=2.0 to ~=2.2

    Updates the requirements on backoff to permit the latest version.

    Release notes

    Sourced from backoff's releases.

    v2.2.1

    [v2.2.1] - 2022-10-05

    Changelog

    Sourced from backoff's changelog.

    [v2.2.1] - 2022-10-05

    [v2.2.0] - 2022-10-05

    • Improve type annotation for wait generators from @​hauntsaninja
    • Include exception in details dict of call handlers from @​petamas
    • Improve type hints for call handlers from @​cdce8p

    [v2.1.2] - 2022-06-08

    Fixed

    [v2.1.1] - 2022-06-08

    Fixed

    [v2.1.0] - 2022-06-07

    Changed

    [v2.0.1] - 2022-04-27

    Changed

    • Allow None for jitter keyword arg (typing)

    [v2.0.0] - 2022-04-26

    Added

    • Add raise_on_giveup keyword arg for decorators
    • Add backoff.runtime wait generator for dynamically setting wait times based on target function return value or exception details

    Changed

    • Improve type hints for on_success, on_backoff, on_giveup handlers
    • Use decorator-specific detail and handler type hints
    • Optionally use typing_extensions for python 3.7 type hinting
    • Drop python 3.6 support
    • Add python 3.10 support

    [v1.11.1] - 2021-07-14

    Fixed

    • Update version in backoff module

    [v1.11.0] - 2021-07-12

    Added

    • Configurable logging levels for backoff and giveup events

    Changed

    ... (truncated)

    Commits
    • d9d80a9 Prepare v2.2.1 release
    • 6cb1a4e Fix type hint for wait generator
    • 9a20a7f Merge pull request #159 from edgarrmondragon/docs/backoff-runtime-readme
    • d322dc4 Prepare v2.2.0 release
    • 3f491ca Merge branch 'fix-typing'
    • 77f4209 Refrain from adding Details to backoff namespace
    • 31d973f Merge branch 'add-exception-to-details'
    • d9b9f01 Improve type hints for runtime, constant wait gens
    • e7677e8 Make flake8 happy with line lengths
    • 52aef92 Update backoff/_wait_gen.py
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Candy Oven in Celsius

    Candy Oven in Celsius

    Hi, Thanks for creating this plugin 🙏🏼.

    I tried the plugin with my Candy oven and noticed that the plugin is showing wrong temperature value, after investigating a little bit in the code I found out that you are using Fahrenheit to Celsius function which is completely unnecessary for me, I tried to create the request to the oven and saw that it gets the temperature already in Celsius but it needs to be devided by 10.

    So I'm getting from the request 2200 for 220 degrees Celsius.

    Hope you can make the proper adjustments to make it work. Thanks again :)

    help wanted 
    opened by nitaybz 1
  • Local control

    Local control

    Hi

    I have managed to intercept the messages to control the washer. All of it are actually done locally.

    Right now I'm able to start and stop the machine, and I have begun to "decode" the parameters.

    Maybe you can extend this awesome plugin, so one are able to also control the washer from Home Assistant :-)

    enhancement 
    opened by smulle48 1
Releases(0.8.0)
  • 0.8.0(Nov 14, 2022)

    Additions

    • Rate limit API requests by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/214. This fixes connection issues for devices that can't handle too frequent API requests (details: #53, #61)
    • Expose washing machine program code if available by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/215

    Translations

    • Create sensor.es.json by @asiersan in https://github.com/ofalvai/home-assistant-candy/pull/178
    • sensor.pt.json by @carlosmfalves in https://github.com/ofalvai/home-assistant-candy/pull/150
    • pt.json by @carlosmfalves in https://github.com/ofalvai/home-assistant-candy/pull/149
    • French Traduction by @morzingrath in https://github.com/ofalvai/home-assistant-candy/pull/206

    Everything else

    • Bump pytest-homeassistant-custom-component from 0.9.17 to 0.12.18 by @dependabot in https://github.com/ofalvai/home-assistant-candy/pull/209
    • Add devcontainer config by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/208
    • Bump backoff from 1.11.1 to 2.2.1 by @dependabot in https://github.com/ofalvai/home-assistant-candy/pull/185
    • Update HACS URL by @wrt54g in https://github.com/ofalvai/home-assistant-candy/pull/145
    • Lint fixes by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/216

    New Contributors

    • @wrt54g made their first contribution in https://github.com/ofalvai/home-assistant-candy/pull/145
    • @morzingrath made their first contribution in https://github.com/ofalvai/home-assistant-candy/pull/206
    • @asiersan made their first contribution in https://github.com/ofalvai/home-assistant-candy/pull/178
    • @carlosmfalves made their first contribution in https://github.com/ofalvai/home-assistant-candy/pull/150

    Full Changelog: https://github.com/ofalvai/home-assistant-candy/compare/0.7.1...0.8.0

    Source code(tar.gz)
    Source code(zip)
  • 0.7.1(Nov 7, 2022)

    ⚠️ This releases fixes the installation error on Home Assistant 2022.11 (#204)

    What's Changed

    • Bump aresponses from 2.1.4 to 2.1.5 by @dependabot in https://github.com/ofalvai/home-assistant-candy/pull/67
    • Fix encryption without key in status call by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/68
    • Update dependencies, refactor client tests by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/138
    • Add periodic validation GH workflows by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/139
    • Bump actions/cache from 2 to 3.0.1 by @dependabot in https://github.com/ofalvai/home-assistant-candy/pull/86
    • Bump actions/checkout from 2 to 3 by @dependabot in https://github.com/ofalvai/home-assistant-candy/pull/71
    • Bump codecov/codecov-action from 2 to 3 by @dependabot in https://github.com/ofalvai/home-assistant-candy/pull/92
    • Bump actions/setup-python from 2 to 4 by @dependabot in https://github.com/ofalvai/home-assistant-candy/pull/131
    • Relax test dependency constraints by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/140
    • Align dependency constraint with latest HA by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/207

    Full Changelog: https://github.com/ofalvai/home-assistant-candy/compare/0.7.0...0.7.1

    Source code(tar.gz)
    Source code(zip)
  • 0.7.0(Dec 5, 2021)

    Find encryption key automatically

    [#52] No longer need to define an encryption key in the config flow. The integration now tests whether the device can respond without encryption. If it requires encryption, the integration can also find the key by brute force.

    Migration: If you have an existing device configured with or without an encryption key, the integration will work without any manual change. But if you run into a problem, try removing and adding the device again.

    Source code(tar.gz)
    Source code(zip)
  • 0.6.2(Nov 28, 2021)

    What's Changed

    • Handle missing TimeProgr oven field in https://github.com/ofalvai/home-assistant-candy/pull/50

    Full Changelog: https://github.com/ofalvai/home-assistant-candy/compare/0.6.1...0.6.2

    Source code(tar.gz)
    Source code(zip)
  • 0.6.1(Nov 22, 2021)

    What's Changed

    • Tumble Dryer - Add Cycle State by @terminet85 in https://github.com/ofalvai/home-assistant-candy/pull/32
    • Fix program number parsing for some washing machine models by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/39
    • Simplify state enums by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/44

    Full Changelog: https://github.com/ofalvai/home-assistant-candy/compare/0.6.0...0.6.1

    Source code(tar.gz)
    Source code(zip)
  • 0.6.0(Oct 23, 2021)

    What's Changed

    • Add more dishwasher attributes by @ofalvai in https://github.com/ofalvai/home-assistant-candy/pull/31

    Full Changelog: https://github.com/ofalvai/home-assistant-candy/compare/0.5.1...0.6.0

    Source code(tar.gz)
    Source code(zip)
  • 0.5.1(Oct 15, 2021)

    What's Changed

    • Fix failure for dishwasher without "OpzProg" by @dzamlo in https://github.com/ofalvai/home-assistant-candy/pull/27

    New Contributors

    • @dzamlo made their first contribution in https://github.com/ofalvai/home-assistant-candy/pull/27

    Full Changelog: https://github.com/ofalvai/home-assistant-candy/compare/0.5.0...0.5.1

    Source code(tar.gz)
    Source code(zip)
  • 0.5.0(Oct 13, 2021)

    [#26] Initial dishwasher support [#22] Extended tumble dryer support, added Italian translation - thanks @terminet85 [#24] Fixed inconsistent washing machine remaining time across main sensor and remaining time sensor

    Source code(tar.gz)
    Source code(zip)
  • 0.4.0(Oct 8, 2021)

  • 0.3.0(Sep 25, 2021)

  • 0.2.0(Sep 4, 2021)

  • 0.1.0(Sep 3, 2021)

Owner
Olivér Falvai
Olivér Falvai
Used python functional programming to make this Ai assistant

Python-based-AI-Assistant I have used python functional programming to make this Ai assistant. Inspiration of project : we have seen in our daily life

Durgesh Kumar 2 Dec 26, 2021
For use with an 8-bit parallel TFT touchscreen using micropython

ILI9341-parallel-TFT-driver-for-micropython For use with an 8-bit parallel TFT touchscreen using micropython. Many thanks to prenticedavid and his MCU

3 Aug 02, 2022
Simple python3 implementation of microKanren with lots of type annotations for clarity

MicroKanren-py This is (yet another) python implementation of microKanren. It's a reasonably 1:1 translation of the code provided in the paper, but ev

Erik Derohanian 3 Dec 10, 2022
Simple Weather Check base on Hefeng api, Work on raspberry Pi

Simple Weather Check base on Hefeng api, Work on raspberry Pi

Retr0mous 28 Sep 17, 2022
ESP32 recording button presses, and serving webpage that graphs the numbers over time.

ESP32-IoT-button-graph-test ESP32 recording button presses, and serving webpage via webSockets in order to graph the responses. The objective was to t

f-caro 1 Nov 30, 2021
Home Assistant component to handle key atom

KeyAtome Home Assistant component to handle key atom, a Linky-compatible device made by Total/Direct-Energie. Installation Either use HACS (default),

18 Dec 21, 2022
A Python class for controlling the Pimoroni RGB Keypad for Raspberry Pi Pico

rgbkeypad A Python class for controlling the Pimoroni RGB Keypad for the Raspberry Pi Pico. Compatible with MicroPython and CircuitPython. keypad = RG

Martin O'Hanlon 43 Nov 11, 2022
🎃 Some spooky code samples to hack yourself a pumpkin 👻

🎃 Tech Or Treat 👻 It's spooky season for those who celebrate Halloween, and to get in the spirit (spirit - get it? 👻 ) we thought it would be fun t

Jim Bennett 5 Feb 07, 2022
This is a collection of python modules that interact with the Ryze Tello drone.

This is a collection of python modules that interact with the Ryze Tello drone.

DJI-SDK 1.2k Jan 03, 2023
The project is an open-source and low-cost kit to get started with underactuated robotics.

Torque Limited Simple Pendulum Introduction The project is an open-source and low-cost kit to get started with underactuated robotics. The kit targets

34 Dec 14, 2022
Raspberry Pi Pico support for VS Code

Pico-Go VS Code Extension Pico-Go provides code auto-completion and allows you to communicate with your Raspberry Pi Pico board using the built-in REP

Chris Wood 114 Dec 28, 2022
DNP3 Stalker is a project to analyze and interact with DNP3 devices

DNP3 Stalker Purpose DNP3 Stalker is a project to analyze and interact with DNP3

Cutaway Security, LLC. 2 Feb 10, 2022
DIY split-flap display

The goal is to make a low-cost display that's easy to fabricate at home in small/single quantities (e.g. custom materials can be ordered from Ponoko or similar, and other hardware is generally availa

Scott Bezek 2.5k Jan 05, 2023
Software framework to enable agile robotic assembly applications.

ConnTact Software framework to enable agile robotic assembly applications. (Connect + Tactile) Overview Installation Development of framework was done

Southwest Research Institute Robotics 29 Dec 01, 2022
A python file which I wrote to allow the Dorna Robots API to draw an Image on a 3D plane

Dorna-Robotics-Internship Code In the directory "Code" is a python file which I wrote to allow the Dorna Robots API to draw an Image on a 3D plane. I

Stephen Otto 2 Dec 06, 2021
Various programs in Atari BASIC for #FujiNet for Atari 8-bit

FujiNet Various programs in Atari BASIC for #FujiNet for Atari 8-bit FujiNet-3D Tic Tac Toe In 1978, Scott Adams wrote a 3-D Tic Tac Toe game, for pla

Kay Savetz 2 Jan 01, 2022
AERO 421: Spacecraft Attitude, Dynamics, and Control Final Project.

AERO - 421 Final Project Redevelopment Spacecraft Attitude, Dynamics, and Control: Simulation to determine and control a satellite's attitude in LEO.

Gagandeep Thapar 3 Dec 16, 2022
A python script for Homeassistant that counts down the days to birthdays, anniversaries etc

Date Countdown A python script for Homeassistant that counts down the days to birthdays, anniversaries etc Important note I no longer use homeassistan

Marc Forth 21 Mar 12, 2022
A Python program that makes it easy to manage modules on a CircuitPython device!

CircuitPython-Bundle-Manager-v2 A Python program that makes it easy to manage modules on a CircuitPython device! The CircuitPython Bundle Manager v2 i

Ckyiu 1 Dec 18, 2021
Run this code to blink your ThinkPad LED with a hidden mysterious Morse code! ;)

TMorse Run this code to blink your ThinkPad LED with a hidden mysterious Morse code! ;) Compatible with python3.9+. No third-party library is required

Mahyar 2 Jul 11, 2022