Wednesday, March 1, 2017

RoboDyn and their bad support!

Greeting folks, I started buying some RoboDyn products from AliExpress and they were good boards and sensors and worked well.  Then about 4 months ago I had an issue with one of their Arduino DUE clones. The Programming Port stopped functioning.  So I wrote them using the builtin Messaging system about this issue and they asked for a photo/screenshot of the Arduino IDE and it’s error message, which I provided. 

Now, this board was working fine and just suddendly stopped working, so his response threw me, he asked me to use version 1.7 of the IDE.  So, I responded, that. “Why would the IDE verison 1.6.7, 1.6.8 and 1.6.9, work fine and then suddenly stop working, with only the Programming port affected: the Native port worked fine for it’s purpose. 

Screenshot 2016-11-09 02.27.39

The issue, was that it no longer showed up in the IDE, no matter what computer, 3 of them or what USB port I used or what IDE version I used, 6 of them.  Then the waiting game started, after a MONTH, he finally responded that he’d like to see a “video that you operated.”  This is really strange and after a day to think about how to do this with only my phone, tried to film it.

I posted it on Dec. 10th and I have NOT heard from at all since then and I have been messaging him about every 2 weeks since then.

This to me, and maybe to others is really bad form for a company doing business on the interent, no matter where they are from.  I didn’t take it from ICS Station and I am not going to take from RoboDyn or anywhere else that doesn’t support their products once it arrives at it’s destination.

What are you thoughts?

Saturday, July 9, 2016

Fried Circuits–Great Customer Support

 

I recently purchase some items from the Tindie store of Fried Circuits and was grateful for their awesome support.

 

Their store front is located here: https://www.tindie.com/stores/FriedCircuits/ and they have some good maker/hacker items worth a look.  So I ordered a USB Tester 2.0 and 2 VA Tester Scratch & Dents, when they arrived I looked them over and found that the VA Scratch & Dents were actually USB Scratch and Dents.

The items that came to me.
[Notice that the purple ones have the soldering pads for USB connections]

20160616_201259

I then contacted them through the Tindie Support mechanism and William responded to let know know that they were out of the USB S&D, but after I sent him a photo of what I received he recognized the error.

The updated items.
[These purple boards have the 2-pins holes on each end for those blue screw terminal blocks]

20160620_202328

 

So, after letting me know he would send replacements, another email came that he’d actually send the 2 of the regular products, I.e. non-Scratch and Dent!  I was floored there’s about a $10 difference between the 2 and I gracefully accepted.  About 5 days later they arrived and soldered them up.  They work great and Fried Circuits deserves Kudos for the great customer service that I am sure you will get too.

Sunday, February 14, 2016

Interview with Boian Mitov of Mitov Software by Kurt Roesener

 

[1]  How did you get into Computer hardware and other hardware related components?

When I was a kid, my father was mathematician, but his hobby was electronics. He was often building electronic gadgets. In the mean time I was increasingly getting fascinated with robots. My father had a number of books on electronics, and I tried few of them. The one that had real impact was a book on practical cybernetics, and electronics. It had a huge number of various electronic projects, everything from toys, to cybernetic animals, to robots, and even building your own lasers, and radio telescopes.

I was not able to build most of the project, but I felt the shear power you can get from the electronics, and I was hooked.

For couple of years, I played with simple electronic devices – photo relay, timers, and amplifiers. Slowly I drifted toward the idea of building my own cybernetic animal. At that time an article appeared in one of the Magazines that I was subscribed to about building a cybernetic chameleon. Basically, you put it on something colorful and it lights a light with the corresponding color. I decided to make a more complex version with multiple sensors, including sound, light sensor, bumper, and edge detector (So my chameleon will not fall off the table).

The project took about a year to complete, and it the process went trough few iterations, as I kept learning more and more. It started with mostly relay modules, and salvaged, germanium transistors, and ended with TI 74 series TTL components, and fairly modern silicon transistors.

By the end of the project I was reasonably proficient in digital circuitry and logic components.

It was exactly this time that I stumbled upon another important book by James Coffron.

At that time English language literature was not commonly available in Bulgaria, and rarely translated to Bulgarian. There were however couple of bookstores for Russian books and they were often stocked well with Russian translation of English language books. It was in one of those stores where I discovered the book. It is long gone, the name was in Russian, probably not translate word by word, but it most likely was “Practical Hardware Details for 8080, 8085, Z80 and 6800 Microprocessor Systems”.

I never was very good in Russian, but for this book, I scrambled whatever Russian I knew, and read it. It opened my eyes to the microprocessor architectures, and I was hooked for life. Other books soon followed and I gained decent knowledge, especially of the Motorola 8600 processors. At that time Bulgaria was manufacturing a Motorola 8600 copy, and I set to get myself one together with some EPROM, RAM, and PIA (A programmable I/O module). The parts were not sold to the public, so during my summer vacation, I visited as many institutes and factories, that I could, begging for parts.

At the end of the vacation, I had succeed to collect enough parts to put together my own small computer. I had the processor, the PIA, RAM, EPROM, some logic chips, decoders(for the addressing space), some keys, and 7 segment display.

While I was waiting for the parts, I was busy making different designs. I was also studying 6800 Assembler.

I knew that the parts alone are not enough. I needed some execution environment capable of controlling the keyboard, and the display. Nowadays this is called BIOS, at that time it was known as JBUG. I did not have access to any existing code, so I set to write my own JBUG. I did not have text editor, assembler, or access to any other computers, so I started writing it on paper, and debugging it on a blackboard. I would have my grandmother helping me by drawing pictures of the registers, and the stack on the black board, and updating the values in them, following my instructions, while I would be tracing the execution line my line, on the paper.

By the time the pars arrived, the software was already prepared and grandma, debugging.

I did not have any universal breadboards, so I made my own, and soldiered the components.

While I was doing that, some Apple ][ clones, became available, and I got access to them. I also found an MC6800 Cross Assembler called Merlin 6800. I also got access to Apple ][ EPROM programmers, so I entered my code in the assembler, and programmed it.

I plug the chip, and it worked... well almost. The keyboard did not work, because I had not noticed that the IRQ is disabled by default after reset, and you need to enable it. After enabling the IRQ, my first computer was fully operational.

From there I set to build a mobile robot with the new computer, adding sensors to the PIA, and motors to drive the robot – essentially a smart car.

I went on to win 2 national prizes in “Practical physics” for students 2 years in a row with the cybernetic chameleon, and the robot.

[1Q2]  Which do you think was the most innovative product for you during this time in your life?

With no doubt the most innovative product was the 6502 processor. This chip was revolutionary on many levels. Unlike 6800 it was able to be clocked with a single TTL signal. When introduced it was order of magnitude cheaper than anything else on the market, and forced other processor vendors to drop prices. It also is probably the first processor to introduce RISK like concepts. It had a reduced number of instructions, but increased number of addressing modes for them. Very much all instructions were vary fast executing at 2-3 clock cycles. Finally it had a special treatment for addresses 0-255, treating them almost like a set of 256 slightly slower registers. This made it extremely fast processor outperforming most 16 bit processors at the time, even when they were clocked at much higher frequencies.

[2]  What got you interested in Software and Software Development?

The development of the JBUG for my first computer surely was a crash-course in Assembler software development. At the same time as I mentioned the Apple ][ clones also became accessible and I started learning Applesoft Basic, and 6502 Assembler. In the years to follow I gained more knowledge of software development, and learned some UCSD Pascal for Apple ][. Most of the software I wrote in those early years was focused on hardware control, and communications, although I also did some small modifications of a Basic interpreter for MC6800 as part of work I did on another MC6800 personal computer design of my own. In the late 80s I started learning some C as it was the language of choice for cross-platform hardware related development. In 1989, as the PCs were becoming more accessible, I got my hands on an Borland C++ 1.0 Beta, and loved it from the start. Here was an Object Oriented language with the full power of C to access hardware. In the following few years while still doing a number of hardware designs, and writing firmware and Assembly code including development of a software simulator for Oric clone, I also gained increasing experience with Object Oriented Programming. By 1993 I was working with couple of other people on joined development of controllers for 8 bit computers – Apple ][ and Oric compatible. The development was cool, but the market was shifting away from the 8 bit systems and into PCs and the need for controllers was decreasing. At that time another company with which we had business relationship suddenly needed help, and hired us to develop a fairly complex PC Based telex system. Since I was the only one with some C++ knowledge, I ended up developing most parts of the software. In retrospect, this was the moment in time when I transitioned from hardware designer into software. In the following 3 years, I worked on a number of Object Oriented Software projects with increasing complexity. They all had some form of interaction with specialized hardware, but the majority of the code was pure software. By 1996 I had become practically purely software developer, although I did one last hardware development in 1995-96 – an Internal Circuit Emulator for Z80 with a Z80 disassembler.

In 1996 I moved from Bulgaria to the US, and continued with more and more complex software development, although always related with some custom hardware control, ending up with the latest development of Visuino, so the truth is that what got me interested in the software was my desire to control the hardware.

[2Q2]  Since you now develop in Delphi, which is an off shoot of Pascal, is it your all-time favorite language now?

It is difficult to say all time favorite. I used to be a huge C++ fan, and for long time C++ served me well, and was at the cutting edge of the technology, introducing object oriented programming, and templates. Unfortunately C++ had fallen significantly behind, and has completely lost its edge over the rest of the languages. In the mean time Delphi has evolved from a relatively conservative old fashion procedural programming language to a very modern cross platform one, introducing Object Oriented Programming, advanced modern RTTI, Anonymous methods and support for functional programming, and attributes, and support for multiple platforms. Although there are a lot of things I don't like in Delphi, at present there are simply no other choices. C++ has only symbolic RTTI, and lacks any support for Attributes, while Java has no support for low level real time hardware control, real time tasks, and due to its non deterministic Garbage Collection implementation is very error prone, and memory/resource leak prone. Java also lacks attributes support. .NET has the same Garbage Collection issues, in addition for most parts is Windows only, and is not well suited for real time tasks. So while I don't really love Delphi, I use it as it is the only available choice that has the features I need.

[3]  When and How did you notice Arduinos and other MCU type hardware?

2014 was a very stressful year. I had been handling 3 big contracts, as well as maintaining all the Mitov Software products. One of the contracts was a particular worry. I was paid only a small fraction of the work, and that barely covered the money I paid to some subcontractors to help me with some of the involved items, but I was promised 6% shares in the company, as compensation for the rest. The problem was that the CEO made similar deals with other people, and then accusing them of not delivering what they were supposed to do refusing to give them the shares, and threatening to sue them in order to make them quit. By the end of 2014, there were all indications that the same play was in motion in my case. I will not bore you with all the details of this nasty game and how it played out at the end, but all this had taken heavy toll on me. I needed to have something to help me relax my nerves.

I always wanted to make a version of OpenWire Studio to program Firmware. I tried 2 times before, and each time the other side decided not to pursue it. In the mean time I have been watching the Raspberry Pi and Arduino development, and got increasingly excited about them. Since of the two, the Arduino is closer to a micro-controller, I liked it better for controlling hardware. I thought that playing with Arduino will be the perfect way to relax my nerves, and since it was Christmas, I ordered myself and Arduino KIT. It arrived, but I did not have a chance to really start playing with it until January 2015.

When I finally started digging into it, I was a bit shocked. It was supposed to be an easy to use platform for everyone. I was supposed to be able to put together and program whatever I want in just few minutes. The hardware, was fine, I was able to hook my projects in no time, however the first time I tried to control multiple sensors and outputs, it became apparent that the software is a considerable challenge even for me. Hooking Servo, photo resistor, LED and Ultrasonic Ranger simultaneously was not an easy task to solve, especially with the different timings on the Servo. A stepper motor was even more challenging. While trying to come up with some way to make it easy to manage, I came up with an architecture that was also perfect for OpenWire Studio integration, I started working on the idea, and in 5 days I got my first working Visuino prototype, and demonstrated it during the Delphi Week in February, just few hours after it became operational.

[3Q1]  I know you are a bit partial here, but do you think Visuino will be the WAY to program and other visual IDE solutions OR do you think the old coding by hand method won't fade away?

Traditional procedural programming has been around for about 200 years, ever since Ada Lovelace developed the first code for the Charles Babbage's mechanical computer. Much the same way as high level languages have not made Assembly language development disappear, graphical programming is unlikely to make other forms of programming to disappear. It simply is higher level of programming. The concept is not completely new. As most of the modern computing concepts it can be traced back to PARC (Palo Alto Research Center), and the team there. I was shocked to see last year, and old presentation of Small Talk graphical programming. It was not at the same level as OpenWire and Visuino, but the vision was there. It seems like everything we have come to enjoy nowadays really comes from PARC, from the Graphical Windows based UI, the document drag and drop, the mouse, the networking, the object oriented programming, and finally the graphical programming. It all was envisioned and initially prototyped at PARC, and we all are just following in the footsteps of those PARC giants. While all of the other concepts have finally been adopted, and have come to dominate the industry, the graphical programming is yet to reach it's full potential. Visuino is a small step in this direction. If the success of the other PARC technologies, is any indication, the Graphical Programming holds a huge promise, to become the dominant way of programming.

Conclusion by Boian Mitov

When Apple ][ arrived with built in Basic, it made programming popular among non developers, and inspired a whole generation to pursue carrier in technology. The Arduino boards make it very easy to connect sensors, displays, and actuators, but do not make software development easy for the average person. Visuino was envisioned, and created from the ground-up to make it possible even for somebody with absolutely no programming knowledge to be able quickly and easily to design software to control those peripherals, and thus holds the promise to inspire another technology generation in the same way.

When the computer industry was born, two aspects of it emerged. The Hardware and the Software. While we all know that a hardware element, can be modeled and implemented in Software, the tools and approaches to design software and hardware differ a lot. With the introduction of FPGAs the difference between Hardware and Software capabilities became even smaller, but the difference in the development approaches remains. The Graphical data-flow development tools offer a way to bridge the gap and to introduce a more uniform way of designing software and hardware, really blending the two together for first time.

Saturday, December 5, 2015

Raspberry Pi Zero - Screenshots - Sunday Dec. 6th Update!

Here are the screenshots that I promised in my first post about the Pi Zero.



First off, we have a "Jessie" screenshot of the Pi 2 B,
you can see that it is running at 900mHz and that it has almost 1gb of RAM.



Secondly, we have the same SD image of "Jessie" in the Zero and
it shows it running at 1gHz with 512mbs of RAM.



Here is the next shot of the default web browser with a DuckDuckGo search page, GIMP in the lower right-hand corner and the Task Manager; showing about 1/3 of the RAM being used with very little CPU time.





Finally we have the MagPi website up, Libre Office Writer and the Task Manager shows the about the same amount of RAM being used as before, but due to the activity of the web page the CPU is maxed out, which isn't surprising.


I will add to this same page with additional screenshots Sunday afternoon.  They will include the menus off of the "Menu" button.


Please stay tuned!


Sunday Dec. 6th.  Update!
The Following screenshots, are of the the items in the MENU bar, but I was not able to take direct screenshots of it.  These are the same items just in their 'file explorer' under 'Applications' view, instead.

Accessories

Games

Internet

Office [Libre Office]

Preferences

Programming

Applications



Thursday, December 3, 2015

Raspberry Pi Zero - Initial Thoughts

My Pi Zero arrived this evening and here are some of my first experiences with it.

I bought mine from Adafruit in the wee hours of the 26th and right after I checked out and confirmed my order, I went back to the page for the Pi Zero and saw that it had already sold out.  It has been re-stocked at least twice, that I know of, and has sold out again within an half an hour each time.

Here is what I got:  Pi Zero, Pi Protector, HDMI Mini to Standard HDMI adapter, USB OTG host cable, and 2 sets of headers for the GPIO; the straight ones - male to male and male to 90° angle female.  All for less than the cost of 5 *bucks coffee drinks.



The Adafruit box, in it's glory, at least to me.  
I have had many of these boxes arrive before but this one seemed to be special



What appeared inside, after I pulled the pulled the important stuff to the surface.



Now the Zero out of it's ESD bag.



Here we see the Zero hooked up and some other items for size comparison.
The standard SD card shows that this is just about the same size, in height and about 3 across in width.




This is the current USB hub that I am using with power.


As prepared as I was, I still ran into some snags.  First, before it arrived I imaged a couple of micro SD cards with the latest Raspbian, Jessie on them.  So, when I had it setup and connected I just plugged one in and booted it up.  Upon start-up I was greeted by the new interface and realized that I couldn't do any updates yet, due to, my fault really, in unable to find the WPA-GUI program.  This was my first issue that I researched, from another computer and found the answer pretty quickly.  The Network icon down near the clock had all the functionality of the old program but none of the clunky stuff , which is great!

After this, I loaded the new Add-Remove Software program, and found it really easy to use, with the caveat being, that you can only use either the Install OR the Uninstall at one time, you can't install one thing while uninstalling something else.

One thing that I did find, while using some of my Wheezy cards, I had to update them with  my Pi 2 B, first, then load them up in the Zero, so having a B+ and/or a Pi 2 B very handy if you want/need to keep Wheezy around for use in your Zero.

Next time:  Some screenshots and some stats for your enjoyment!



Friday, November 13, 2015

ICStation [Final Update–Refund Received]

I got interested in Arduino towards the beginning of this year and ICStation came up in some Google Plus groups over and over again, so I decided to check out their site. They carry a wide assortment of Arduino related boards and accessories.  So I bought an Ethernet Shield for my Arduino UNO from them.  After a short week and a half it arrived then I tried to use it, it didn't work at all!  Turns out after putting the board under a USB microscope, that there were shorts of solder beads across about 6 of the pins of the main chip, I contacted their Support and was told to try to de-solder them myself??

That is when I should have just known that they had bad Quality Control and just forgot about my $20.  But, that isn't what I did, after several more email threads, I finally got them to agree to send me another one as a replacement.  In the course of the next week, I created a wish list on their site and kept debating whether to trust that this issue was a one time thing or place another order to see if it got better...again I chose wrong.  The replacement board came and this time I looked at it under the USB microscope first and guess what I found, more shorted pins with solder beads.  Once again I contacted Support, and asked for a Refund, after sending them pictures of the shorts through my microscope.  This has been the same woman, Wanita, that I have been exchanging emails with, she asked me to try to de-solder the shorts again and I explained that I have neither the tools or the knowledge to deal with SMT chips.

Stupid but I then ordered other items to the tune of around $100 over the course of the next 3 months. Yes, I was na├»ve thinking that something would change this time, but they had cool stuff at good prices.  In May I ordered a Nano clone and it worked for about a week, then stopped being detected but either Windows 7 or 8.  We traded emails back and forth for a short time, and later I received a replacement, but it failed to work at all.  I asked if this was a Genuine FTDI and if they could instead send me a CH340 chip based Nano, I never received another response from them at all!!

Nothing for going on 5 months now and So I decided to write this Blog piece and hope to warn others against Supporting ICStation in the future.

The Moral of this story is, go with your instinct and if it looks too good to be true, it probably is!

Update #1
Late last night I actually received an email response, from a support member name Sherry.
She said the Wanita resigned and she is now taken over her duties and mentioned that she saw my posts on Google Plus and the post.

So, one of my issues is now being looked into, there may be hope yet.

Update #2
I received an email from Sherry that she has contacted the Supplier and will take about 5 days to get a new board ready to be shipped to me.  So things are now moving and I hope to get resolution to the other issues soon.

Update #3
I contacted the ICS Station Google Plus account Person/People and after some back and forth and sending her/them emails detailing out that remaining issues, they stopped responding all together.

So, even though they offered to help, initially that all dried up and they still have horrible Customer Service.

You have been informed!

 

Final Update – Refund Received!

Just hours after posting Update #3 I was contacted by ICStation and I received a Refund in the amount for the remaining 2 items that were malfunctioning from the start.  It took a year plus, but since I am a Taurus, I am much more stubborn then any of the Chinese zodiac. 

They indicated while waiting for confirmation of the PayPal transfer, that Visuino is popular among some of their people.  So, maybe Boian can expect some sales from ICStation when they buy some more licensees…

  Winking smile 

They hope to improve their support mechanism so others don’t have to go through what I did.

Saturday, October 24, 2015

Setting up Visual Studio and Visual Micro for Coding the Arduino.

In this post I will explain out how to setup, Visual Studio 2015 Community Edition and Visual Micro, the plug-in that allows users to code INO files like a Professional.

The Visual Micro plugin allows for greater control over your sketches.  


This is from the main page, 

"IDE features such as:- see/edit library sources, jump to code definition, jump to compiler error, class explorer, intellisense, remembers board and Arduino version per project, code completion and a super fast compiler make learning and programming Arduino faster and easier."

First, we need to download VS 2015 Community, you can get it here:

https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx
Be sure to choose the left most option button.

Now for Setup of VS 2015 Community, This is an Important note from the Visual Micro Site:

Visual Micro requires C++ to be installed as a Visual Studio language. If you did not activate C++ when you installed Visual Studio, click "Download" and follow the instructions on that page to add C++ to your Visual Studio installation.



 All three of the C++ options need to be checked off for the Visual Micro plugin to work correctly!  
During this is install, it will take a while, you can download the plugin, from here:
http://www.visualmicro.com/page/Arduino-Visual-Studio-Downloads.aspx
The default options for the install should be fine.

Once you have that installed you are ready to setup VS 2015.
The first thing I did was Turn Off Tutorial mode, if you leave it on, and sometimes you might want to, it creates 'Breakpoints' in your sketch.  All you need to do is 'un-check' it under the Visual Micro menu option.



Next you will want to make sure you have the 'Micro' tool-bars loaded, they look like this:



If you don't have this you'll need to 'Right-Click' some place on the existing Menu bar and make sure all 4 of the 'Micro' ones are 'Checked':




Now on to opening a new sketch, When you either select the menu option FILE>NEW>ARDUINO PROJECT or Click on the NEW button then the TEMPLATES>VISUAL C++>VISUAL MICRO, you will presented with this screen:


This allows for 2 options, one is a Blank Sketch and the other is a Blink sketch.  I choose a Blink sketch for this Demo.  On the Right hand side of VS 2015 you should see something similar to this:


If Solution Explorer isn't selected you will need to click on the tab at the bottom to select it.  Then select the Blink.ino file, it should now display in the main window.  At this point it is Important to note that you want to select "Release" just to the left of "x86" at the very top, middle, in this screenshot.


The 'Release' Option allows for actually uploading the entire sketch to your board of choice.
When you are ready to 'Upload' your version of the Blink.ino sketch, you will click on the button that looks like a PLAY button with a circle around it; far right and at the bottom of this screenshot:



That is a brief Tutorial on how to setup these tools for a coding experience that is lacking in the Arduino IDE.

If you have any questions, Please comment below and I will try my best to answer them!

Please note, these setup instructions assume that you already have either the Arduino.cc or Arduino.org IDE installed.