Note: this is still a work in progress...
At this point, I'm still only seeing a black screen when I connect using Remote Desktop.
I also tried the RealVNC player: https://help.realvnc.com/hc/en-us/articles/360002249917-VNC-Connect-and-Raspberry-Pi#setting-up-your-raspberry-pi-0-0
The other issue I'm running into is that my mouse/keyboard doesn't work when I start the GUI (using startx).
Edit: Feb 23 update: I have decided to re-flash the firmware and start over. NOTE that Avnet has just released the new version 1.3 firmware, so I recommend going straight to that.
My Avnet SmartEdge IIoT has just been sitting on my desk since my initial evaluation of it, and I thought it was about time I put it to good use.
Given that at its heart this unit is a Raspberry Pi, my plan is to use it for things I've been using an older Raspberry Pi for, like my OpenSprinklerPi controller, as well as for some new things I would like to try out, which includes things like receiving and storing data from various WiFi sensors around the house and displaying them graphically in a browser.
Being an industrial Gateway, this unit didn't have to fit the tight budget of a regular Raspberry Pi and seems to be a much better overall build.
It has a nice solid design with what appears to be a good stable power supply as well as a sizeable heatsink.
It also uses eMMC flash rather than an SD card, and all of it is enclosed in a professional looking case.
I expect it will be a more reliable setup than a regular Raspberry Pi.
But to get there, I first need to get things set up to where I can comfortably work with it.
For me, that includes setting it up with the GUI environment and Remote Desktop.
I'll try to summarize the steps I took here.
I'm writing this after the fact, so I may be missing details, but it should serve as a guide in case I or someone else needs to do this in the future.
For many of these steps, you will find what you need right here on element14: SmartEdge Industrial IoT Gateway Solution - Connects to Innovate
1. Update to the newest Avnet firmware.
Jan Cumps has created a great tutorial for this: AVNET SmartEdge IIOT Gateway: the 2020 Linux Image and IoTConnect Scripts
These steps will update the SmartEdge from the original firmware to a more stable version, and also allow for recovery in case things stop working.
Note: Make sure you add the ssh file as per his suggestion.
Edit Feb 23:
Note Also: Use the latest firmware, v1.3 as of Feb, 2021. Without this you won't be able to provision the SmartEdge.
Edit Feb 23:
Remember to use the Avnet IoTConnect App to provision the SmartEdge!
This seems to be required to be able to use SSH.
-> At this point, I was using a monitor and keyboard connected to the Avnet for the first few steps. That's a bit of a hardware juggle pain for me, so it's best to get an ssh connection ASAP.
Part of the problem was that I had either forgotten to add the ssh file, or ran into some issues trying to do that.
For that case:
1.5: Enable SSH
Start the SmartEdge with monitor and keyboard.
Remember that the default username is avnet, with password avnet.
Now add the ssh file into the boot folder:
cd /boot
sudo touch ssh
For the following steps, I used an old article I wrote back in 2015 as a guide. Most of the steps still apply.
Connecting to a Remote Desktop on the Raspberry Pi
2. Find the IP address of the SmartEdge.
ifconfig
Then restart: (I'm pretty sure this is required for ssh to start up, but I could be wrong)
sudo shutdown -r now
note: it looks like you can now also simply use
sudo reboot
and to shutdown:
sudo poweroff
But I've found "sudo reboot" to take much longer than the shutdown command.
--> After restart you should be able to ssh to the SmartEdge. From my Mac that looks like:
ssh avnet@192.168.2.2
but use the IP address you found by using ifconfig.
Then login and you can comfortably work with your regular keyboard and monitor in a Terminal window.
3. Give the SmartEdge a new name (default is RaspberryPi)
To check the existing name:
hostname
Edit the file to update the name:
sudo nano /etc/hostname
I renamed mine to be "smartedge"
4. Update the Raspberry Pi system
For the rest of the updates, the system needs the usual Raspberry Pi updates. So let's run that now:
The SmartEdge manual, on page 27, includes the steps for installing the desktop GUI.
It says to set certain system files on hold, but that seems to already be in place with the new firmware, as the apt-mark hold commands all return the message "xxx was already set on hold."
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
ps, Note the use of "apt" instead of "apt-get" - from what I've read, these commands do the same thing but the newer "apt" makes things more "pleasant" - I've noticed the progress bar is nice to have, for example.
5. Add Bonjour to allow access using the hostname in the form of smartedge.local instead of the IP address
sudo apt install avahi-daemon
6. Install the desktop GUI
sudo apt install --no-install-recommends xserver-xorg xinit
sudo apt install raspberrypi-ui-mods
I didn't install the Chrome browser, and because I'm not using a directly connected monitor I don't want to boot to GUI at startup, so I skipped those steps.
I already had Microsoft Remote Access installed on my Mac (you can reference my 2015 article if you need that), so at this point I added the SmartEdge to the list.
For the settings, I set the PC name to "smartedge.local", making use of the name provided by the Bonjour service, to avoid issues with the dynamic IP address given to it by the router.
If you set the username (avnet) and password (avnet) right away, it will automatically login when you open a session.
For the display I tend to just set it to 1920x1080 and "fit session to window" because I have a 4k monitor, but you can choose whatever works best for you.
At this point you can clean up unused packages:
sudo apt clean
7. Turn off boot-to-GUI
Since I plan to use this SmartEdge via Remote Desktop, it doesn't make sense to start it up into the GUI.
Use raspi-config to turn that off:
sudo raspi-config
Set it to log in to the command line (not autologin).
Exiting raspi-config, say yes to "reboot now".
8. Enable VNC using raspi-config
sudo raspi-config
Then choose Interfacing Options and VNC
9. Install xrdp
sudo apt install xrdp
10. Re-install vnc4server again to avoid interference with RealVNC
sudo apt install vnc4server
Maybe reboot one last time...
Now we should be able to ssh to the SmartEdge, and we should also be able to use Remote Desktop to access it with a GUI interface.
Happy Computering,
-Nico
Top Comments