Friday, September 23, 2016

Upgrading to macOS Sierra (v10.12) notes and observations

Here I'll compile some notes on my upgrade from ElCapitan to macOS Sierra (v10.12).

I'll update this post as I find new things. Please comment if you also find things.

Passwordless ssh authentication not working anymore

macOS Sierra brings in a newer version of openssh that deprecate DSA key by default. So if your using DSA keys your passwordless ssh will fait and you will be prompted for a password.

If you invoke your ssh in verbose mode you will see something like:

    debug1: Skipping ssh-dss key /Users/courchea/.ssh/id_dsa - not in PubkeyAcceptedKeyTypes

The fix is quite easy. Simply add the following in ~/.ssh/config:

    Host *        PubkeyAcceptedKeyTypes +ssh-dss

But for better security you should consider ditching DSA keys.

Brew upgrade complaining about missing xcrun


If you try to do a brew upgrade, you may get the following error:

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

READ THIS: https://git.io/brew-troubleshooting
If reporting this issue please do so at (not Homebrew/brew):
  https://github.com/Homebrew/homebrew-core/issues

To fix this you need to re-run the xcode command line tools install:

xcode-select --install

Monday, July 18, 2016

Flashing the ESP-01 under OSX

Ok, there are a LOT of post on how to flash the ESP-01 with either Arduino, NodeMCU ou the AT command firmware. I have not found one that gave a full answer and especially not how to do it from an OSX computer.

First let's talk about wiring. As you know the ESP-01 is based on the Espressif ESP8266 chip and it's a 3.3v device and it's not 5v tolerant, DO NOT power it with 5v or put 5v to one of the of the pin, you risk frying your device.

I have used a Sparkfun 3.3v FTDI Basic (https://www.sparkfun.com/products/9873). This USB to serial adapter provides a 3.3v output (voltage and I/O). The following is the wiring diagram I have used:




And the corresponding schematic:



Once you have done this wiring, plug it in your computer, add a jumper on the "Mode" header and press the reset button. The device will enter a mode where it's ready re receive a firmware.

If you want to upload an Arduino sketch, simply use the Arduino GUI or platform.io to do so. Once done, remove the "Mode" jumper, press the reset button and the ESP-01 will boot on your new Arduino sketch.

If you want to flash a pre-build AT firmware (I have used this one: http://esp8266.ru/download/esp8266-firmware/ESP_8266_v0.9.2.2.zip) from an OSX computer you will have to install esptool:

pip install esptool
Once done it's as simple as:

esptool.py -p /dev/tty.usbserial-A40081uk write_flash 0x000000 ESP_8266_v0.9.2.2\ AT\ Firmware.bin
(change dev/tty.usbserial-A40081uk to your actual serial port)

The output will look like this:

esptool.py v1.1
Connecting...
Running Cesanta flasher stub...
Flash params set to 0x0000
Writing 520192 @ 0x0... 520192 (100 %)
Wrote 520192 bytes at 0x0 in 45.1 seconds (92.3 kbit/s)...
Leaving...
Once done, remove the "Mode" jumper, press the reset button and the ESP-01 will boot on your new firmware.

I'm considering offering this small adapter as a PCB with connector populated. If your interested leave a comment or drop me an e-mail at courchea@net-forces.com. If I can get at least 10 person interested, I'll build a batch. Cost will probably be between 7 and 10$CAD plus shipping.


Tuesday, May 3, 2016

Review of the electronicgeek.ca PRUSA I3 EG-1 3D printer (part 4)

Ok, a bit late writing this part 4. I completed the assembly during the week-end with the help of Justin (my second boy):


The next step was the wiring, and man a Prusa design has a lot of wires ! ElectronicGeek, you should really beef-up the documentation regarding how and where to run the cables.

During assembly I had done one mistake in the orientation of the Z motors. The cables have to go out the back:

Bad
Good
With the kit comes a nice cable management plastic wrap. There is more than enough but I went overboard and used some of the same stuff that I already had handy. This cable wrap is pretty inexpensive and easy to install (even for a guy that sucks at cable management like me):


Now an other piece of advise for the EG folks. I would suggest that you install crimped terminals on the side of the wires that go to the power supply. Makes for a much more solid connection to the screw terminals:


I only had ring type terminal available but what you want is what they call "spad" terminals:


Now regarding the teminals on the power supply, the label showing the terminal position was a bit shifted on mine which made me do a wrong connection at first:

Bad
Good
Once all that was done and that I double checked cables (especially power) it was time to power-up the unit and try to move the axis with the RepetierHost software connected from my laptop to the printer using the supplied USB cable.

That went without much problem, I was able to move X, Y and Z just fine. 

My next test was to check the auto-level sequence. I'm used to this having added a similar induction sensor to my PrintrBot Simple Maker. It's as easy as homing X, Y and Z, and then sending the G29 GCode command. 

That is where I hit an issue... After homing X and Y, the head and induction sensor that is supposed to sense the metal of the bed was way out of the bed:


If I tried homing Z at that point it would NEVER sense metal and would crash when hitting the bottom of the Z threaded rods... You don't want that.

After some investigation I found that my Melzi board was running a Repetier firmware which it's not supposed to be as this printer is supposed to come with the open-source Marlin firmware. Not expecting much before Monday I fired an e-mail to ElectronicGeek support and to my surprise Eric responded a few hours after asking for picture of the display.

Following sending Eric the picture of the display et responded that indeed I had a Melzi board with a Repetier firmware and it was not supposed to be, should never have shipped that way. Unfortunately the only way to reprogram the board was using a USBISP adapter which amongst all the Arduino stuff I have I did not have that... Eric suggested that they ship me a replacement board which was fine with me. They shipped it Monday and I got it today Tuesday. 

During my lunch break I installed the new board and bingo auto-level probing was working. I proceeded with very basic manual bed level and Z-Offset calibration. I was eager to do a first print !

I was really surprised by my first print result, happily surprised:



This is the 50mm calibration angle found here: http://www.thingiverse.com/thing:53668

That is it for now. My next article will be about doing some Repetier configuration and providing some example config.




Monday, May 2, 2016

Expositions de finissants edition 2016

Ce mois-ci 2 événements à ne pas manquer.


Premièrement les élèves en technologie du génie Physique du Cégep Andre-Laurendeau présentes leurs projets le 6 mai de 11h00 à 19h00 dans la salle des pas perdus. Pour plus d'informations, visitez http://technophys.claurendeau.qc.ca

Ce sera la première fois que j'assisterai à leur présentation puisque mon plus vieux entamera ses études post-secondaires dans ce Cégep et dans cette concentration l'an prochain.



Deuxièmement le département des techniques du génie électrique du Cégep Lionel-Groulx vous invite à l'exposition annuelle 2016 des projets de fin d'études des étudiants. Cet événement aura lieu le vendredi 20 mai de 13h00 à 20h00 au pavillon d’ordinique. (150, rue Duquet à Ste-Thérèse).

J'ai moi meme étudier en TSO (l'ancêtre de TGE) au Cégep Lionel-Groulx et c'est a ne pas manquer !

Venez encourager la relève !

Thursday, April 28, 2016

Review of the electronicgeek.ca PRUSA I3 EG-1 3D printer (part 3)

Made some good progress tonight on the assembly with the help of my oldest Benjamin. We are not at step 18.

Had some frustration with missing screws, most of which I was able to replace by some 4-40 screws I had. Unfortunately around here metric screws are hard to find.

The only 4 screws I could not really replace are the 4 screws holding the bed. I temporarily used 4-40 screws but could not use the supplied thumb nut used to adjust the bed level. Sent an e-mail to ElectronicGeek, waiting for a reply.

On step 5, I really suggest that you insert a smooth rod in the two bearing assembly to keep them aligned while tightening the screws. Had to slack them as they were not aligned and the rod would not slide.


In step 6 for the auto-level option, careful about the screw length. 25mm screws are too long. Also on my assembly there were no threaded hole for the 10mm screw.


Nice note on the wire placement on step 17, but an indication in step5 would have been great also.


So that's where we are at tonight. Here are some picture of the assembly as I call it a night.





Review of the electronicgeek.ca PRUSA I3 EG-1 3D printer (part 2)

Well, spend some time starting the assembly last night. Went up to step 4 of 24.

My first iritant was the hardware kit. All screws, nuts and small metal parts in 2 bags.


Sorting them out took a good 10m. Would be a plus if they come in separate labeled bags. I guess it's would cost more, but I see that it could be a barrier for some.


I did not count all parts but the ones I counted seemed exact with some spares. I did have one part that I could not identify:


Next I started on the assembly.... Second irritant, the acrylic parts are not labeled which in some cases makes you wonder if you are assembling the right parts as the assembly guide uses CAD drawing.


Putting ID on each parts (like IKEA) would be a big bonus. Also when assembling the motors there is no note in the assembly guide to which side you should put the wires which may make the wiring a mess if you don't think ahead.

Now the acrylic come with protective wrap glued to both side of the parts. These are a pain in the b**t to remove. In fact last night I could only remove the brown side and never got the clear side to come off (ok, maybe 2 glass of wine did not help). I'll try again today.

Some steps are also missing some pointers. Like here there it is hard to tell in which hole the "sliding rod restriction" parts should be tied to:

Adding leader lines or splitting these into extra steps may help a lot.

Now I'm a big fan of lock washers:


Lock washers are great for keeping screws and nut tight under vibration. There are no lock washers in this design which makes me think that some parts may come loose after some time printing, but we will see and I'll add some if needs be.

That's it for now. I'll continue during my lunch break today and maybe tonight.










Wednesday, April 27, 2016

Review of the electronicgeek.ca PRUSA I3 EG-1 3D printer (part 1)

Got back from the office today with a nice delivery from Canada Post waiting for me at home. A brand new 3D printer from electronicgeek.ca:


First impression of the unboxing are good. Nice packaging, parts well protected and in foam trays:






Also a nice personal touch with a letter addressed to my name congratulating me on my purchase and a sticker. Nice personal touch !


Over the next days I will be documenting my build process and first prints. Stay tuned.




Embedding hardware parts in 3D prints

Yesterday I did my first attempt at embedding a nut in a print... The idea was to have the nut (8-32 hex nut) be captive in the print so i...