Wacom driver crashes on OSX

update #1: I recently run in a situation with my Wacom that everything failed. So I uninstalled everything first.

  1. Open your Application folder, and locate any of the following folders:
    • Bamboo
    • Pen Tablet
    • Tablet
    • Wacom
    • Wacom Tablet
  2. In each of these located folders will be a Wacom Utility, double-click to launch the utility
  3. Select the option to ‘Remove’ in the ‘Tablet Software’ section of the utility
    • You may be prompted to enter your system’s password at this time
  4. The utility will notify you when the removal is complete

I use a Wacom table instead of a mouse. Most designers do.

That driver has a mind of its own. It crashes a lot.
It’s happens when I startup Illustrator or switch workplace or when it wakes up from sleep mode or connect to an external monitor.

Or just randomly.

And I don’t want to restart my computer every-time it happens.

So I googled the problem before I dive into the problem myself.
The post describes the same problem, but the solution doesn’t work for me.

So this is my solution.

First the specs:

  1. Mac OS 10.12.3
  2. Wacom Bamboo model CTH-470

Make sure you have the correct driver installed… duh!

In a working situation (driver is working) you can see it with “Activity monitor”, search for “PenTabletDriver”

So when your Wacom is not working you won’t see it (obviously).

Now how to restart it!

Now open the Finder > Go > Go to folder

And copy past this folder:

/Library/Application Support/Tablet/

It will open een folder with “PenTabletDriver.app” in it.
Double click it and you Wacom will work again.

Developers Solution

In the comments of earlier mention blog, someone mentions a “Automator script”.

I will be using bash: create a file named “WacomReboot.sh”


#!/bin/bash
echo 'Kill the PenTabletDriver (just to be sure)'
killall PenTabletDriver
echo 'Start the PenTabletDriver again'
open -a PenTabletDriver & exit

Save file in /usr/local/bin/

Now restart the Wacom:
Open terminal and type “WacomReboot.sh” and enter:


→ WacomReboot.sh
Kill the PenTabletDriver (just to be sure)
Start the PenTabletDriver again

Bam … back to work!

Filmpjes op de achterbank “the hard way”

Ik heb nog even tijd, maar het is bijna weer vakantie, tijd om uren in de auto te zitten om naar je vakantie adres te gaan. De kinderen mogen mee 😛 , maar alleen als ze niet zeuren onderweg.

Hihi, ik weet zelf dat een vliegreis sneller gaat als je filmpje kan kijken dus dat zal ook gelden voor mijn kinderen!

Dus ik koop via bol Salora DVP7048TWIN – Portable DVD-speler met 2 schermen – 7 inch.
Vooral het ophangsysteem lijkt erg handig.
Maar de belangrijkste reden is dat er een usb poort op zit.
De rest van de beweegreden mag je raden.

Naief dat ik ben ga ik er-van-uit dat het gebruik van usb gemakkelijk is. FF een filmpie overzetten en klaar.
Helaas is dat niet zo. Maar ik was voorbereid (eindelijk eens tijd om dat uit te zoeken) en heb dus net zolang gezocht totdat ik het antwoord vond.

En die heb ik… alleen het is “the hard way“.
Dat betekend dat dit document niet voor iedereen is, of de avontuurlijk papa/mama.

Misschien is het gemakkelijker op Windows, maar ik werk op OSX dus sommige dingen worden daardoor alleen wat moeilijker.

Hier wat extra info gehaald over de SALORA DVP7048TWIN en hier wat info specifiek over media-ondersteuning.

Continue reading

Documenting Haxe and Node.js

There used to be a website that got you started with Haxe and Node.js (it was really old, when Haxe was spelled “haXe”).

But that website is no more. So I decided to get some of that back. Based upon the information from the old site and my own need to document this.

How will this help me?

It will get you started with JavaScript/Node.js and Haxe. How to setup your project, install externs and how to work with them. This probably will never be a complete documentation but it will help you get started!

Documentation goals

I wanted to make contributing to this documentation as easy as possible.
That’s why I use Markdown; developers use it, but is really just plain English so everybody can write documentation!
And this documentation hosted on Github, developers favorite place to store code.
Even if you are not a developer and/or don’t want to clone everything, you still can modify the files on the website (you need account to login in and change the .md files).

HAXENODE

Go visit http://matthijskamstra.github.io/haxenode/, and let me know what you think of it

preview:

Documenting Haxe and Javascript

There used to be a website that got you started with Haxe and js (it was really old, when Haxe was spelled “haXe”).

But that website is no more. I already started with HaxeNode and it seems fitting to also document HaxeJS. So I decided to get some of that back. Based upon the information from the old site and my own need to document this.

How will this help me?

It will get you started with javascript and Haxe. How to setup your project, install externs and how to work with them. This probably will never be a complete documentation but it will help you get started!

Documentation goals

I wanted to make contributing to this documentation as easy as possible.
That’s why I use Markdown; developers use it, but is really just plain English so everybody can write documentation!
And this documentation hosted on Github, developers favorite place to store code.
Even if you are not a developer and/or don’t want to clone everything, you still can modify the files on the website (you need account to login in and change the .md files).

HAXEJS

Go visit http://matthijskamstra.github.io/haxejs/, and let me know what you think of it

preview:

Scraping with Haxe

A quick post about something that grabbed my attention quickly.

Scraping

Web scraping (web harvesting or web data extraction) is a computer software technique of extracting information from websites.

Source: https://en.wikipedia.org/wiki/Web_scraping

I already did some research on the subject when I was playing around with my raspberry pi. There is a lot out there, especially for python.

But what about my favourite programming language Haxe?

Again this is a quick search! And this is what I found.

A (very?) old project from Jonas Malaco Filho on github. Check out this code : jonas-haxe and specificly the scraper part of it. Written for Neko, with primarily undocumented classes like neko.vm.Mutex Once you have the html page you can start getting the data from it!

You will need a html/xml parser; I found one written by Yaroslav SivakovHtmlParser haxe library It also can be found on haxelib: http://lib.haxe.org/p/HtmlParser/

I found a little (old) project haxe/php project that I will post as a reference https://github.com/andor44/old_scraper. But then it stops…

Not a field that a lot of haxe-developers walk. Fun!

Update #2

  1. The htmlparser doesn’t work with the html code I am scraping. So I need to focus the parts I want to use. Regular expressions are the way to go, and I suck at them. Luckily I found a online tool that helps with testing the regex: http://www.regexr.com/ from an old flash hero gskinner.
  2. Another thing I ran into, was the data from https sites. You need something “extra” to download html files from there: install hxssl via haxelib haxelib install hxssl and add it to your build.hxml -lib hxssl

Update #1

I am coding this with openfl/regular expressions, but perhaps a better way to-go is node.js! And you can use node.js with Haxe (perhaps not completely ready: hxnodejs but probably good enough for the examples below).

I can’t really say how to start with node.js and Haxe because I have never tried it, but what I have red about it shouldn’t be a big problem. Fun again!

Read this

Some interesting reads… somewhat related to haxe

Openfl papertoy art project

I love to create projects where you take stuff from the digital world (temporarily, intangible) and drag it into the “real” world. This project is a good example of that. I create a papertoy generated in code and cut by a machine.

Besides filling my blog with new content, I have two other reasons to write this post:

  1. You can use Haxe/Openfl for something else then game-developement! I know I am not the only one, but this group of developers are not as present as the game-defs.
  2. It’s a long and complicated process to get to the end result: it’s difficult to explain this in detail to others, so I wrote down the whole story for interested friend/family/colleagues/fans???

If I ever grow a pair, this post be one of the two talks I would give during wwx2015 just to balance the all tech talks during the event.
But nothing is growing besides my hair, so instead I will write about the process and end-result.

Feedback is always nice, so please don’t hesitate to comment!

Continue reading

navigateToURL for Openfl

I have a Flash background.
And I notice that I first think (or Google) what would the code be in Flash and then try to convert it to Haxe/Openfl

Same with:
<a href="open-link-in-new-window" target="_blank">

AS3

var myURL:URLRequest = new URLRequest("open-link-in-new-window");
navigateToURL(myURL, "_blank");

Openfl

var myURL:URLRequest = new URLRequest("open-link-in-new-window");
openfl.Lib.getURL(myURL, "_blank");

Using svg for assets in Openfl

I wanted to use svg for icons in an Openfl project.
It’s not intuitive to do this, so I wrote it down for future use.

What are svg files?

Scalable Vector Graphics (SVG) is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation.

Source: http://en.wikipedia.org/wiki/Scalable_Vector_Graphics

Good to remember that they scale awesomely without lost of resolution!

How to add it to your project

You can find the svg code on github.
But you can install it easier with haxelib

Open your terminal and write:

haxelib install svg

To add it to an OpenFL project, add this to your project file:

<haxelib name="svg" />

Code

import openfl.Assets;
import openfl.display.Shape;
import openfl.display.Sprite;
import format.SVG;
 
class SVGExample extends Sprite
{

  public function new()
  {
    var svg : SVG = new SVG(Assets.getText("assets/openfl.svg"));
    var shape : Shape  = new Shape();
    svg.render(shape.graphics);
    addChild(shape);
  }
}

NICE!!!
But now the cool part: it scales without losing resolution

Check the highlighted line for the changes,

import openfl.Assets;
import openfl.display.Shape;
import openfl.display.Sprite;
import format.SVG;
 
class SVGExample extends Sprite
{

  public function new()
  {
    var svg : SVG = new SVG(Assets.getText("assets/openfl.svg"));
    var shape : Shape  = new Shape();
    svg.render(shape.graphics,0,0,1000,1000);
    addChild(shape);
  }
}

for the curious: https://github.com/openfl/svg/blob/master/format/SVG.hx

Sources

  • I remembered this gist, which explains almost everything.
  • Get icons here, they are free for download as long as you credit freepik
  • Featured image from webdesignerdepot