create account

Blinkit | Logitech RGB Keyboard preparation by flash4yard

View this thread on: hive.blogpeakd.comecency.com
· @flash4yard · (edited)
$1.36
Blinkit | Logitech RGB Keyboard preparation
![](https://i.imgur.com/zo10CiS.jpg)

Last week I made a post about the connection between the Logitech LCD and
the Steemit blockchain. [Here](https://steemit.com/programming/@flash4yard/python-programming-project-control-logitech-g510-lcd-and-show-steemit-stats)

A few days ago @techtek presented me his project 'Blinkit' on discord, and he asked me to make it possible to use Logitech Keyboards with RGB Backlight too.

## The plan
We talked about how the idea of a flashing keyboard can be integrated into his existing project.
Blinkit itself is written in VB.NET/VBScript. So I had to find a way to get this working.
Here are the things I have used to solve this task:
* Logitech LED SDK Wrapper.dll [You can get it here](https://www.logitechg.com/de-de/developers)
* VB.net as the programming language to create a new .dll
(I will tell you later why we need another .dll file)
* VBScript as the final project language
* Visual Studio Community Edition 2017 [Download](https://www.visualstudio.com/de/)
* Notepad ++ [Download](https://notepad-plus-plus.org/)
   
### The program I created runs by itself, but it is designed to be integrated into the BlinkIt project.
## The resulted problem
The problem is that the LogitechLedEnginesWrapper.dll is not coded in a vb.net
compatible format. So if I want to load this DLL in vbs it does not run and gives an error.
``` VBScript
dim dll
set dll = CreateObject("LogitechLedEnginesWrapper.dll")
```
# The solution
I created ,in VB.NET, a DLL that imports the functions needed from the Original .dll so VBScript can read the new dll.

To accomplish that follow these steps:
# Step 1
* open Visual Studio 2017 with administrator privileges
* file -> new Project
![](https://i.imgur.com/Fb0N4bA.png)
* choose Class Library(.net framework) and give it a name as you like
![](https://i.imgur.com/BsR0p4n.png)
* This should now pop up
* rightclick Class1.vb and delete it
* Now go to project -> add new item
![](https://i.imgur.com/aP64c59.png)
* There should pop up a new window:
![](https://i.imgur.com/NGtypK9.png)
* There you choose COM Class and press Add
* Visual studio created some lines of code for us:
![](https://i.imgur.com/IOg1joC.png)

(You can rename the ComClass1 if you like)

*At first there is a warning saying:*
``` 
'Microsoft.VisualBasic.ComClassAttribute' is specified for class 'ComClass1' but 'ComClass1' has no public members that can be exposed to COM; therefore, no COM interfaces are generated.
```
Don't get confused by that. We will fix it later.
### We have set everything up to start coding :D

## Step 2
To import native dll files we need to use the System.Runtime.InteropServices library.
* Import this library in the top of the project
![](https://i.imgur.com/2MWaDa3.png)
* Include the attribute as shown in the red box
After renaming the class and opening the #Region it should look like this:
![](https://i.imgur.com/4BS8aRU.png)
The ClassID, InterfaceID and EventsID variable is set by the IDE. Don't change these values.
We will need the ClassID later.

## Step 3
* Include the code that imports the functions from the Logitech DLL
![](https://i.imgur.com/acvIUH6.png)
We have to specify the correct name of the function in that specific dll like LogiLedInit()
and the right return value and also the right parameters have to be set. You can get these informations in the
documentary of the original dll.

## Step 4
* Create a function that make the keyboard flashing in different colors
![](https://i.imgur.com/Gsp6hGv.png)
The function is called LogiLed and it takes two parameters. The color as a string and the time how long the effect should be played. 
The return value is an integer. See now the error described above is gone :D

### Explanation of the function
* To start the connection with the keyboard we have to initialise the keyboard (line 39)
* This takes a little while so we put a Sleep function after that (line 40)
* The Select function chooses which color we want to be shown (line 42)
* If one case gets executed the LogiLedFlashLighting function gets called (lines 44,47,50)

#### The function takes 5 parameters:
* red - percentage of the color red 0-100
* green - percentage of the color green 0-100
* blue - percentage of the color blue 0-100
* time - how long the effect should show up in ms
* interval - the time between each on/off cycle in ms

If this function gets called the keyboard starts flashing but the programm goes on and does not wait
until the keyboard stopped. So we have to wait as long as we want the effect to go on.
After the effect is gone we disconnect our application from the keyboard with the
LogiLedShutdown function (line 54)
### Thats the hole program!

## Step 5
Now we have to add a "Strong name" to our dll. This is done by rightclicking the project.

![](https://i.imgur.com/J5XEmqX.png)

and go to properties.

![](https://i.imgur.com/m5cbKRe.png)

This should pop up.

On the left go to "Signing" and tick the box "Sign the assembly"
![](https://i.imgur.com/1zPQ6wh.png)

In the drop down menu choose <new..>
![](https://i.imgur.com/LnALkz4.png)

Choose a name and disable the "protect my keyfile with a password".
Now you can close the window in the tab menu.

![](https://i.imgur.com/K8izD3e.png)

If not done yet save the project. Go to file -> save all.

![](https://i.imgur.com/xh2Mjuu.png)
Make sure that the marked tick box is ticked^^

After that being done. We can build our dll file by rightclicking the project like we did last time
and hit build. You will get an error if Visual Studio is not opened with administrator privileges!

## Here is a picture of the complete code:
![](https://i.imgur.com/zpPzdTJ.png)

Now we can close Visual Studio.
Next go to the directory where you saved your project.
(pathtoproject\bin\Debug) There you can find your .dll file.

As the next step we have to register this dll to windows. 
This is done by the use of the RegAsm.exe found in: 
``` 
C:\Windows\Microsoft.NET\Framework\v4.0.30319
```
Open a command prompt and go to this directory. 
After that type:
``` Batch
RegAsm.exe pathtoproject\bin\Debug\name.dll /codebase
```
This registers the dll in windows. If you want to remove the registration type:
``` Batch
RegAsm.exe pathtoproject\bin\Debug\name.dll /u
```
To check everthing worked open regedit.exe.
There you press Ctrl+f to start a search. Put in there the ClassID from the beginning.

It should show something like this:

![](https://i.imgur.com/acj6WAc.png)

There you can see the path where the dll is located.

## Starting with VBScript

Create a new file and add .vbs as the format.
Open that file with an editor like Notepad++
and write in there:

``` VBScript
dim logi
set logi = CreateObject(LogitechDll.LogitechDll) 'or parameter that is shown in the registry under Class
logi.LogiLed "blue",3000
```

First we create a new variable called logi. After that we set it as a new object from the dll.
At this point we can access the functions inside the dll.
Then we call the function LogiLed and pass the string that defines the color and the time how
long the effect should be shown.
Make sure the LogitechLedEnginesWrapper.dll is in the same directory as the .vbs file!

If you run this file it should look like this:

![](https://i.imgur.com/utsx8S3.gif)

### And thats it!
You created your own "bridge" between a native dll and VBScript, if you dont want to make everything by yourself you can use the files i build and uploaded!

You can download the project files [here](https://github.com/flash4yard/blinkitLogitechLED).

Blinkit can be downloaded [here](https://github.com/techtek/Blinkit/).

I hope everything is easy to follow, and if anything is unclear please let me know in the comments or on the github project page.

<br /><hr/><em>Posted on <a href="https://utopian.io/utopian-io/@flash4yard/blinkit-or-logitech-rgb-keyboard-preparation">Utopian.io -  Rewarding Open Source Contributors</a></em><hr/>
πŸ‘  , , , , , , , , , , , , , , , , , , , , , , , , , ,
properties (23)
authorflash4yard
permlinkblinkit-or-logitech-rgb-keyboard-preparation
categoryutopian-io
json_metadata"{"community":"utopian","app":"utopian/1.0.0","format":"markdown","repository":{"id":130089085,"name":"blinkitLogitechLED","full_name":"flash4yard/blinkitLogitechLED","html_url":"https://github.com/flash4yard/blinkitLogitechLED","fork":false,"owner":{"login":"flash4yard"}},"pullRequests":[{"url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls/1","id":182547175,"html_url":"https://github.com/flash4yard/blinkitLogitechLED/pull/1","diff_url":"https://github.com/flash4yard/blinkitLogitechLED/pull/1.diff","patch_url":"https://github.com/flash4yard/blinkitLogitechLED/pull/1.patch","issue_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues/1","number":1,"state":"closed","locked":false,"title":"Create LICENSE.md","user":{"login":"flash4yard","id":38503589,"avatar_url":"https://avatars1.githubusercontent.com/u/38503589?v=4","gravatar_id":"","url":"https://api.github.com/users/flash4yard","html_url":"https://github.com/flash4yard","followers_url":"https://api.github.com/users/flash4yard/followers","following_url":"https://api.github.com/users/flash4yard/following{/other_user}","gists_url":"https://api.github.com/users/flash4yard/gists{/gist_id}","starred_url":"https://api.github.com/users/flash4yard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flash4yard/subscriptions","organizations_url":"https://api.github.com/users/flash4yard/orgs","repos_url":"https://api.github.com/users/flash4yard/repos","events_url":"https://api.github.com/users/flash4yard/events{/privacy}","received_events_url":"https://api.github.com/users/flash4yard/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-04-18T17:17:37Z","updated_at":"2018-04-18T17:19:09Z","closed_at":"2018-04-18T17:19:01Z","merged_at":null,"merge_commit_sha":"259858113644e05656e17ab45c2c1595f1c60ccd","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls/1/commits","review_comments_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls/1/comments","review_comment_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls/comments{/number}","comments_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues/1/comments","statuses_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/statuses/bbe9053968025732c7f5cdfb964a79de6a385c86","head":{"label":"flash4yard:add-license-1","ref":"add-license-1","sha":"bbe9053968025732c7f5cdfb964a79de6a385c86","user":{"login":"flash4yard","id":38503589,"avatar_url":"https://avatars1.githubusercontent.com/u/38503589?v=4","gravatar_id":"","url":"https://api.github.com/users/flash4yard","html_url":"https://github.com/flash4yard","followers_url":"https://api.github.com/users/flash4yard/followers","following_url":"https://api.github.com/users/flash4yard/following{/other_user}","gists_url":"https://api.github.com/users/flash4yard/gists{/gist_id}","starred_url":"https://api.github.com/users/flash4yard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flash4yard/subscriptions","organizations_url":"https://api.github.com/users/flash4yard/orgs","repos_url":"https://api.github.com/users/flash4yard/repos","events_url":"https://api.github.com/users/flash4yard/events{/privacy}","received_events_url":"https://api.github.com/users/flash4yard/received_events","type":"User","site_admin":false},"repo":{"id":130089085,"name":"blinkitLogitechLED","full_name":"flash4yard/blinkitLogitechLED","owner":{"login":"flash4yard","id":38503589,"avatar_url":"https://avatars1.githubusercontent.com/u/38503589?v=4","gravatar_id":"","url":"https://api.github.com/users/flash4yard","html_url":"https://github.com/flash4yard","followers_url":"https://api.github.com/users/flash4yard/followers","following_url":"https://api.github.com/users/flash4yard/following{/other_user}","gists_url":"https://api.github.com/users/flash4yard/gists{/gist_id}","starred_url":"https://api.github.com/users/flash4yard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flash4yard/subscriptions","organizations_url":"https://api.github.com/users/flash4yard/orgs","repos_url":"https://api.github.com/users/flash4yard/repos","events_url":"https://api.github.com/users/flash4yard/events{/privacy}","received_events_url":"https://api.github.com/users/flash4yard/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/flash4yard/blinkitLogitechLED","description":"Addon for the BlinkIt software","fork":false,"url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED","forks_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/forks","keys_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/keys{/key_id}","collaborators_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/teams","hooks_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/hooks","issue_events_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues/events{/number}","events_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/events","assignees_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/assignees{/user}","branches_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/branches{/branch}","tags_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/tags","blobs_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/refs{/sha}","trees_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/trees{/sha}","statuses_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/statuses/{sha}","languages_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/languages","stargazers_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/stargazers","contributors_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/contributors","subscribers_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/subscribers","subscription_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/subscription","commits_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/commits{/sha}","git_commits_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/commits{/sha}","comments_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/comments{/number}","issue_comment_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues/comments{/number}","contents_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/contents/{+path}","compare_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/compare/{base}...{head}","merges_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/merges","archive_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/downloads","issues_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues{/number}","pulls_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls{/number}","milestones_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/milestones{/number}","notifications_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/labels{/name}","releases_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/releases{/id}","deployments_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/deployments","created_at":"2018-04-18T16:09:41Z","updated_at":"2018-04-18T19:24:29Z","pushed_at":"2018-04-18T17:28:50Z","git_url":"git://github.com/flash4yard/blinkitLogitechLED.git","ssh_url":"git@github.com:flash4yard/blinkitLogitechLED.git","clone_url":"https://github.com/flash4yard/blinkitLogitechLED.git","svn_url":"https://github.com/flash4yard/blinkitLogitechLED","homepage":null,"size":53,"stargazers_count":1,"watchers_count":1,"language":"Visual Basic","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"gpl-3.0","name":"GNU General Public License v3.0","spdx_id":"GPL-3.0","url":"https://api.github.com/licenses/gpl-3.0"},"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"flash4yard:master","ref":"master","sha":"0b5a9a2cd790bd50e2ebb6d0e1920209c391db7c","user":{"login":"flash4yard","id":38503589,"avatar_url":"https://avatars1.githubusercontent.com/u/38503589?v=4","gravatar_id":"","url":"https://api.github.com/users/flash4yard","html_url":"https://github.com/flash4yard","followers_url":"https://api.github.com/users/flash4yard/followers","following_url":"https://api.github.com/users/flash4yard/following{/other_user}","gists_url":"https://api.github.com/users/flash4yard/gists{/gist_id}","starred_url":"https://api.github.com/users/flash4yard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flash4yard/subscriptions","organizations_url":"https://api.github.com/users/flash4yard/orgs","repos_url":"https://api.github.com/users/flash4yard/repos","events_url":"https://api.github.com/users/flash4yard/events{/privacy}","received_events_url":"https://api.github.com/users/flash4yard/received_events","type":"User","site_admin":false},"repo":{"id":130089085,"name":"blinkitLogitechLED","full_name":"flash4yard/blinkitLogitechLED","owner":{"login":"flash4yard","id":38503589,"avatar_url":"https://avatars1.githubusercontent.com/u/38503589?v=4","gravatar_id":"","url":"https://api.github.com/users/flash4yard","html_url":"https://github.com/flash4yard","followers_url":"https://api.github.com/users/flash4yard/followers","following_url":"https://api.github.com/users/flash4yard/following{/other_user}","gists_url":"https://api.github.com/users/flash4yard/gists{/gist_id}","starred_url":"https://api.github.com/users/flash4yard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flash4yard/subscriptions","organizations_url":"https://api.github.com/users/flash4yard/orgs","repos_url":"https://api.github.com/users/flash4yard/repos","events_url":"https://api.github.com/users/flash4yard/events{/privacy}","received_events_url":"https://api.github.com/users/flash4yard/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/flash4yard/blinkitLogitechLED","description":"Addon for the BlinkIt software","fork":false,"url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED","forks_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/forks","keys_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/keys{/key_id}","collaborators_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/teams","hooks_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/hooks","issue_events_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues/events{/number}","events_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/events","assignees_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/assignees{/user}","branches_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/branches{/branch}","tags_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/tags","blobs_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/refs{/sha}","trees_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/trees{/sha}","statuses_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/statuses/{sha}","languages_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/languages","stargazers_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/stargazers","contributors_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/contributors","subscribers_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/subscribers","subscription_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/subscription","commits_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/commits{/sha}","git_commits_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/git/commits{/sha}","comments_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/comments{/number}","issue_comment_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues/comments{/number}","contents_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/contents/{+path}","compare_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/compare/{base}...{head}","merges_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/merges","archive_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/downloads","issues_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues{/number}","pulls_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls{/number}","milestones_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/milestones{/number}","notifications_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/labels{/name}","releases_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/releases{/id}","deployments_url":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/deployments","created_at":"2018-04-18T16:09:41Z","updated_at":"2018-04-18T19:24:29Z","pushed_at":"2018-04-18T17:28:50Z","git_url":"git://github.com/flash4yard/blinkitLogitechLED.git","ssh_url":"git@github.com:flash4yard/blinkitLogitechLED.git","clone_url":"https://github.com/flash4yard/blinkitLogitechLED.git","svn_url":"https://github.com/flash4yard/blinkitLogitechLED","homepage":null,"size":53,"stargazers_count":1,"watchers_count":1,"language":"Visual Basic","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"gpl-3.0","name":"GNU General Public License v3.0","spdx_id":"GPL-3.0","url":"https://api.github.com/licenses/gpl-3.0"},"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls/1"},"html":{"href":"https://github.com/flash4yard/blinkitLogitechLED/pull/1"},"issue":{"href":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues/1"},"comments":{"href":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/issues/1/comments"},"review_comments":{"href":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls/1/comments"},"review_comment":{"href":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/pulls/1/commits"},"statuses":{"href":"https://api.github.com/repos/flash4yard/blinkitLogitechLED/statuses/bbe9053968025732c7f5cdfb964a79de6a385c86"}},"author_association":"OWNER"}],"platform":"github","type":"development","tags":["utopian-io","blinkit","logitech","programming","software"],"users":["flash4yard","techtek"],"links":["https://steemit.com/programming/@flash4yard/python-programming-project-control-logitech-g510-lcd-and-show-steemit-stats","https://www.logitechg.com/de-de/developers","https://www.visualstudio.com/de/","https://notepad-plus-plus.org/","https://github.com/flash4yard/blinkitLogitechLED","https://github.com/techtek/Blinkit/"],"moderator":{"account":"justyy","time":"2018-04-21T02:22:44.080Z","pending":false,"reviewed":false,"flagged":true},"questions":null,"score":null,"total_influence":null,"staff_pick":null,"config":{"questions":[{"question":"How would you rate the impact of the fixed bugs / new features on the project?","question_id":"dev-1","answers":[{"answer":"Very high - the amount of work is very high.","answer_id":1,"value":20},{"answer":"High - the amount of work is high","answer_id":2,"value":15},{"answer":"Average - the amount of work is average","answer_id":3,"value":10},{"answer":"Low - the amount of work is low.","answer_id":4,"value":5},{"answer":"Very Low - the amount of work is very little.","answer_id":5,"value":0}]},{"question":"How would you rate the quality of the provided code?","question_id":"dev-2","answers":[{"answer":"Very high - the code follows all the best practices and/or is the opposite of trivial.","answer_id":1,"value":20},{"answer":"High - the code follows nearly all the best practices and/or is not trivial at all. ","answer_id":2,"value":15},{"answer":"Average - the code follows most the best practices and/or some parts of it are trivial.","answer_id":3,"value":10},{"answer":"Low - the code doesn't really follow the best practices and/or a lot of it is trivial.","answer_id":4,"value":5},{"answer":"Very low - the code doesn't follow the best practices and is completely trivial.","answer_id":5,"value":0}]},{"question":"How do you rate the target project overall?","question_id":"dev-3","answers":[{"answer":"Very high - the project has a unique value, will (potentially) also be useful to a lot of people and has the potential to keep growing.","answer_id":1,"value":10},{"answer":"High - the project isn't really unique but it is well maintained.","answer_id":2,"value":8},{"answer":"Average - the project is limited or not very well maintained.","answer_id":3,"value":4},{"answer":"Low - quality of the project overall is low.","answer_id":4,"value":2},{"answer":"Very low - quality of the project overall is very low and not well maintained.","answer_id":5,"value":0}]},{"question":"Does the writing style meet the Utopian standard considering formalness, informativeness and clarity of the content?","question_id":"c-1","answers":[{"answer":"It is formal, informative and well written with clear content.","answer_id":1,"value":10},{"answer":"It is informative with clear content but not formal enough.","answer_id":2,"value":5},{"answer":"The contribution could be more informative or contains unrelated information, formality and clarity of the content are good enough.","answer_id":3,"value":4},{"answer":"Not all sections were clear enough but overall holds value for the project.","answer_id":4,"value":2},{"answer":"Not at all.","answer_id":5,"value":0}]},{"question":"Was the provided category template for the editor followed?","question_id":"c-2","answers":[{"answer":"All points of the template were included with additional points as well.","answer_id":1,"value":5},{"answer":"The template was followed without additions.","answer_id":2,"value":4},{"answer":"The template was edited but the points were covered in different way.","answer_id":3,"value":3},{"answer":"Not all points of the template were covered in the contribution but the structure is clear enough.","answer_id":4,"value":3},{"answer":"The template was not followed but the structure is clear enough.","answer_id":5,"value":2},{"answer":"The contents are not clearly structured at all.","answer_id":6,"value":0}]},{"question":"Did the contributor tag other users?","question_id":"c-3","answers":[{"answer":"No other users were tagged by the contributor.","answer_id":1,"value":5},{"answer":"Used tags are reasonable and all tagged people are connected to the project and/or the contribution.","answer_id":2,"value":5},{"answer":"The contribution contains mentions of other users that are not directly related to the contribution but related in other ways.","answer_id":3,"value":2},{"answer":"The contributor misuses tagging of other users.","answer_id":4,"value":0}]},{"question":"Did the contributor ask for upvotes, resteems, follows or witness vote?","question_id":"c-4","answers":[{"answer":"No","answer_id":1,"value":5},{"answer":"Yes, but not in a way that disturbs readability. ","answer_id":2,"value":5},{"answer":"Yes.","answer_id":3,"value":0}]},{"question":"Was a graphical content like images, charts, videos or screenshots included?","question_id":"c-5","answers":[{"answer":"Yes, the graphical content is included and adds more value to the contribution.","answer_id":1,"value":5},{"answer":"No but the contribution works well without graphical content well.","answer_id":2,"value":4},{"answer":"Yes, but most of the graphical content’s purpose is just for presentational matters.","answer_id":3,"value":3},{"answer":"No relevant or useful graphical content is included in the contribution.","answer_id":4,"value":0}]},{"question":"How would you rate the overall added value?","question_id":"c-6","answers":[{"answer":"Extraordinary value to both the project and the open source community overall.","answer_id":1,"value":20},{"answer":"Significant value to the project or open source community.","answer_id":2,"value":15},{"answer":"Some value to the project or open source community.","answer_id":3,"value":10},{"answer":"Little value to the project or open source community.","answer_id":4,"value":5},{"answer":"No obvious value to project or open source community.","answer_id":5,"value":0}]}]}}"
created2018-04-20 15:17:36
last_update2018-04-21 02:22:45
depth0
children6
last_payout2018-04-27 15:17:36
cashout_time1969-12-31 23:59:59
total_payout_value1.034 HBD
curator_payout_value0.327 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length7,927
author_reputation1,472,140,165,432
root_title"Blinkit | Logitech RGB Keyboard preparation"
beneficiaries
0.
accountutopian.pay
weight1,500
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id51,142,394
net_rshares269,767,866,319
author_curate_reward""
vote details (27)
@electronicsworld ·
$0.20
another fantastic way to receive notifications with Blinkit !! This really shows how Blinkit is flexible and awesome !! more to come soon with new integrations (by me) and new interface (by @techtek). Let's make the world blink with Blinkit
πŸ‘  
properties (23)
authorelectronicsworld
permlinkre-flash4yard-blinkit-or-logitech-rgb-keyboard-preparation-20180422t223850911z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"users":["techtek"],"app":"steemit/0.1"}
created2018-04-22 22:38:51
last_update2018-04-22 22:38:51
depth1
children0
last_payout2018-04-29 22:38:51
cashout_time1969-12-31 23:59:59
total_payout_value0.153 HBD
curator_payout_value0.049 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length240
author_reputation4,722,790,947,809
root_title"Blinkit | Logitech RGB Keyboard preparation"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id51,561,798
net_rshares29,869,377,382
author_curate_reward""
vote details (1)
@justyy ·
$1.77
I am afraid that your contribution cannot be accepted because it does not follow the rules:
1. Outdated or low quality code (such as [containing the local file path](https://github.com/flash4yard/blinkitLogitechLED/blob/master/LogitechKeyboardLED_post.vbs)) will lead to rejection.
2. Trivial code snippets, example code or simple templates will not be accepted.

---------------------------------------------------------------------
Need help? Write a ticket on https://support.utopian.io.
Chat with us on [Discord](https://discord.gg/uTyJkNm).

**[[utopian-moderator]](https://utopian.io/moderators)**
πŸ‘  , , , , ,
properties (23)
authorjustyy
permlinkre-flash4yard-blinkit-or-logitech-rgb-keyboard-preparation-20180421t022552200z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"}
created2018-04-21 02:25:54
last_update2018-04-21 02:25:54
depth1
children1
last_payout2018-04-28 02:25:54
cashout_time1969-12-31 23:59:59
total_payout_value1.774 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length603
author_reputation280,616,224,641,976
root_title"Blinkit | Logitech RGB Keyboard preparation"
beneficiaries
0.
accountutopian.pay
weight1,500
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id51,227,138
net_rshares469,950,115,905
author_curate_reward""
vote details (6)
@utopian.tip ·
Hey @justyy, I just gave you a tip for your hard work on moderation. Upvote this comment to support the utopian moderators and increase your future rewards!
properties (22)
authorutopian.tip
permlinkre-re-flash4yard-blinkit-or-logitech-rgb-keyboard-preparation-20180421t022552200z-20180421t173433
categoryutopian-io
json_metadata""
created2018-04-21 17:34:36
last_update2018-04-21 17:34:36
depth2
children0
last_payout2018-04-28 17:34:36
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length156
author_reputation238,310,597,885
root_title"Blinkit | Logitech RGB Keyboard preparation"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id51,346,311
net_rshares0
@steembottrackerr ·
<center>https://steemitimages.com/200x200/https://s-media-cache-ak0.pinimg.com/originals/81/28/3c/81283c6aed7bdb5b9f8ad73b8ce62c2f.jpg</center>
---
<center>Hello @flash4yard , Congratulations βœ… . Your content began to appear in the hot section.
I am the information account of "SteemBotTracker" site.
</center>
---
<center>
Your Informations
Total SBD: 1.217
Total STEEM: 0
</center>
---
<center>
I recommend to increase this;
You can make "Resteem" and advertise to the followers of the whale accounts.
"Resteem Bot" for you;
βœ… The most profitable Resteem Whale @hottopic  has 18.500 Followers + 5200 Sp + Upvote with min +45 accounts. 
</center>
---
<center>
You can purchase "upvote" by bid bots.
"Upvote Bot"
βœ… The most profitable whale in the last round. @appreciator
</center>
---
<center>
I'm taking this message once. You need to use the #steembottrackerr tag for more information.
Those who "upvote" this interpretation will be awarded a "UpVote" prize of 100 Sbd per week per person.
I am a bot, I can not answer the comment. I hope I could help. Good luck. Sorry if I disturbed you.
</center>
properties (22)
authorsteembottrackerr
permlink20180424t011025755z
categoryutopian-io
json_metadata{"tags":["advice"],"app":"steemjs/test"}
created2018-04-24 01:10:30
last_update2018-04-24 01:10:30
depth1
children0
last_payout2018-05-01 01:10:30
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,132
author_reputation-1,493,369,324,060
root_title"Blinkit | Logitech RGB Keyboard preparation"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id51,774,271
net_rshares0
@steemmakers ·
<div class='pull-right'><center><a href='http://www.steemmakers.com'><img src='https://www.steemmakers.com/img/comment_logo_makers.png' /></a></center></div><b>Congratulations</b> This post has been upvoted by SteemMakers. We are a community-based project that aims to support makers and DIYers on the blockchain in every way possible. <br/><br/>Join our <a href='https://discord.gg/EFGbRuW'>Discord Channel</a> to connect with us and nominate your own or somebody else's posts in our review channel.<br/><br/><b>Help us to reward you for making it !</b> Join <a href='https://www.steemmakers.com/steemmakerstrail.php'>our voting trail</a> or <a href='https://www.steemmakers.com/steemmakersdelegation.php'>delegate steem power</a> to the community account. <br/><br/>Your post is also presented on the community website <a href='http://www.steemmakers.com'>www.steemmakers.com</a> where you can find other selected content. <br/><br/>If you like our work, please consider upvoting this comment to support the growth of our community. Thank you.
properties (22)
authorsteemmakers
permlinkre-flash4yard-blinkit-or-logitech-rgb-keyboard-preparation-20180423t073715118z
categoryutopian-io
json_metadata""
created2018-04-23 07:37:03
last_update2018-04-23 07:37:03
depth1
children0
last_payout2018-04-30 07:37:03
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,045
author_reputation1,907,312,584,548
root_title"Blinkit | Logitech RGB Keyboard preparation"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id51,628,725
net_rshares0
@techtek ·
$1.32
Thank you for helping and contributing to the Blinkit project,  and for adjusting your code, to make it prepared for Blinkit. It was a lot of fun getting in touch, and your a very fast programmer, and i hope to see more contributions from you in the future.

The new interface for Blinkit is worked on and unfinished but it's going well, and i'm  looking forward to have it all in place and functional, Thanks again for your help.
πŸ‘  ,
properties (23)
authortechtek
permlinkre-flash4yard-blinkit-or-logitech-rgb-keyboard-preparation-20180421t015945481z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"app":"steemit/0.1"}
created2018-04-21 01:59:45
last_update2018-04-21 01:59:45
depth1
children0
last_payout2018-04-28 01:59:45
cashout_time1969-12-31 23:59:59
total_payout_value0.996 HBD
curator_payout_value0.327 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length430
author_reputation28,283,249,927,543
root_title"Blinkit | Logitech RGB Keyboard preparation"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id51,224,156
net_rshares224,236,582,750
author_curate_reward""
vote details (2)