Thursday 9 November 2017

RC-Car-3 The fun is in the making, not the using.

I have always wanted to play with RC vehicles, but never wanted to spend the money on the finished product, thinking that I would be bored with it in five minutes.

The Raspberry Pi gives everybody the opportunity to build things, and I decided to build an RC car for starters, but again, I thought that buying the appropriate parts and putting them together would take a lot of the fun out of it, so I decided to see what I could do with the R-Pi and a defunct RC car that I picked up at the tip. This story is told  in my blog: http://madsmaddad.blogspot.co.uk/2016/04/raspberry-pi-to-drive-ex-rc-car.html

I keep on looking at what has been done by others, but I am not going to just follow their instructions.  A quick google:
http://www.instructables.com/id/Raspberry-Pi-Smartphone-Controlled-Rc-Car/  - Looks like I might have to learn some Javascript, and I don't want to.

https://www.raspberrypi.org/magpi/rc-car-raspberry-pi/   Not enough instructions, but sounds good.

https://www.raspberrypi.org/blog/self-driving-car/          Wow. Something to aspire to.

Now I have updated the OS to Raspbian Stretch, and WebIOPi doens't work any more. There are workarounds on the net, but it is obvious that WebIOPi is not being supported or developed any more. One of the comments in the forum recommends Blynk http://www.blynk.cc/ and at the top of the WebIOPi page there is an later generation of the program called Cayenne.

I will test each of these and see if their features  are any good.  My base Raspbian will be Stretch.


Cayenne:   I will try it on SD card #1. It is available at https://mydevices.com/

Looked like it was working smoothly, but:
Fri 10 Nov 16:36:10 UTC 2017 Installing myDevices agent
0
Fri 10 Nov 16:39:20 UTC 2017 Found Python 3.5.3...
(50%)
Fri 10 Nov 16:39:20 UTC 2017 Copying agent libraries
(55%)
Fri 10 Nov 16:39:30 UTC 2017 Installing python utils
(60%)
Fri 10 Nov 16:40:41 UTC 2017 Installing software components
Fri 10 Nov 16:40:42 UTC 2017 Cannot install for Python 3.5.3 : missing development headers\n
Fri 10 Nov 16:40:42 UTC 2017 Finished agent code
Fri 10 Nov 16:40:42 UTC 2017 ERROR: myDevices cannot be installed - please check errors above

Oops, I forgot to do all the usual things with a new installation of Raspbian. Will do an update and upgrade and then try it again.

Error reports on Cayenne forums suggest that Wheezy is the only version of Raspbian supported.

Le't move on to Blynk

Blynk  Looks like the support for the Raspberry Pi is an afterthought, and also needs a Blynk Server. It is available at http://www.blynk.cc/
Needs special  software on the  Android/Apple  controller.  I will try it on SD card #2

The documentation looks like it steps you through the startup process very clearly, but soon comes to a dead stop. I have my Raspberry Pi [Stretch] fired up and prepared, the App installed on my Tablet [Android] and logged in, and I am following the instructions on my PC. The instructions are to download, unzip and install the libraries in my Arduino IDE, wherever that is.

Also I have to use an Authorisation token that Blynk have sent me, that is in my email inbox on my PC. I suspect that it is needed on my tablet, but am not sure.

Eventually I find a section in the docs on preparing the Raspberry Pi. I noticed it in the Table of Contents on the left hand side of the screen.  It seems straightforward and as I am ssh'd into the Raspberry Pi I can easily copy and paste the Authorisation code into the Pi.

No, This does not work either. The first instruction that I paste into the Raspberry Pi gives the following error message:
curl -sL "https://deb.nodesource.com/setup_6.x" | sudo -E bash -

## You appear to be running on ARMv6 hardware. Unfortunately this is not currently supported by the NodeSource Linux distributions. Please use the 'linux-armv6l' binary tarballs available directly from nodejs.org for Node.js v4 and later.


I'll try to resolve it, but if this first command causes this sort of problem, what will the others do.


Can't fix this. At Node.js, I tried to download the armv6 for ARM and the response was '404 - file not found' 


May have to follow these instructions: 

https://raspberrypi.stackexchange.com/questions/48303/install-nodejs-for-all-raspberry-pi

Note that the Raspberry Pi being used is a Model B Rev. 1.


From a suggestion on that web page I went to where a number of scripts to install node.js had been created and used https://github.com/sdesalas/node-pi-zero/blob/master/install-node-v6.11.3.sh


I connected to my Raspberry Pi using ssh, then opened a new file with nano, and copied the contents of this script into it, and saved it. I then changed its properties to rwx.rwx.rwx and executed it.  This failed because a number of directories did not exist according to the unlink command. But they do.  


I am starting to think that this is a lot of work that is not getting anywhere, and I do not know what to do now, so will give up on Blynk.


If anyone knows of another system that I can use to control my Raspberry Pi Model B rev 1 running Raspbian Stretch, I am willing to give it a try. 


[13/11/17] Ben suggests that I could put Alexa on my Raspberry Pi 3, but that reveals a problem. I'll have to convert my SD cards back to Jessie to support WebIOPi on my car, and to free up my MicroSD cards.   So SD card #1 will now be Jessie and WebIOPi, MicroSD card #3 will be stretch and available. 

[14/11/17] SD card #1 is now Jessie, running python 2.7.9 and all fitted up with WebIOPi, BUT it doesn't quite work.   I get the header, but not the buttons.  

Should it be Python 3? 

BRANCH: I have finally got the header pins soldered on to my Raspberry Pi Zero, and powered it on using  Micro SD card #3 which is:

cat /etc/os-release       -- Jessie

Python                        -- 2.7.9

It works completely

/BRANCH

Changed Html  and python script to the examples in the WebIOPi site. They didn't work 


How do I remove webIOPi? I'll start again, but I don't want to have to reimage.

[16/11/17]
Reinstalled webIOPi but it doesn't work because it gives an error GPIO not defined. 
I did a search and found: https://www.raspberrypi.org/forums/viewtopic.php?t=98981
see remark at Wed Jan 06 2016 by Brian. 

here is his page: http://www.blavery.com/BotSoftware-RPI/brian2012class.nfshost.com/where-are-we/index.html

Went to his pages and downloaded new copy and will try it. 

Used unzip Web* to unzip it, 
installed it, changed config file back to mine, and started it

Nope failed "GPIO is not defined." 

[17/11/17]
Start from fresh. Prepared SD card with Raspbian Jessie dated 2017-01-11
Added ssh file to both partitions! 
Added Interfaces and Wpa_supplicant files.
Added RC-car/html/index.html and rc-car/python/script.py
added webiopi-1.0.7-p zip file - saves moving it there later. The only other file I will have to put on is the webiopi config file. (I hope)

Now ssh into it, raspi-config to expand system to use whole memory, and update. This time I will not upgrade.

All done, and when I connect I get the header and the 404 favicon.ico not found. 

D.A.M.N.


Move on.
http://madsmaddad.blogspot.co.uk/2017/11/webiopi-is-obsolete-long-live.html