car · 2017-10-08 17:58
Hey lainons:
I've been working as a linux sysadmin for a while, herding VMs and writing configuration management and writing a few monitoring webapps. However I've been interested in moving towards IoT since I want to deal with physical devices and work with what I see to be an emerging and interesting market. I've made a couple of raspi projects in the past few years with python scripts, like a music player or security camera, but am interested in learning more about the Internet of Things landscape, more specifically in industrial, business, or commercial settings rather than home goods like pic related.
Does anyone have books, websites, blogs, forums, irc rooms, code, or ANY resource to recommend? I've currently been searching around libgen for Springer-published books about it, but it's all either to simple or over my head. Bonus points if you could talk about the implementation of systems that you deal with or know about.
So far I've found the following:
- Internet of Things: Principles and Paradigms -- A book which introduces concepts like "Fog computing" and data processing/management, overall a good introduction
- Gobot -- A simple golang iot framework, integrates easily with stuff like opencv and standard SBCs
- Internet of Things Building Blocks and Business Models -- A book which abstracts IoT into 4 blocks, info generation, transmission, processing, and application. Pretty theoretical.
- Industrial Internet of Things Cybermanufacturing Systems -- A collection of discussions about industrial iot such as applications, trends, sensor networks, testing, and automation.
John Doe · 2017-10-09 14:45
>>4190
IoT is a big area. Lets split it down a little.
First there is the physical device a company sells. This may be very weak device running plain C with no operating system. Or it may be something powerful enough to run Linux and a Python interpreter.
Since you don't have much programming or electrical engineering experience you probably best off leveraging your Linux experience. Learn something called Yocto. It is a framework for cross compiling custom Linux images from source. Basically everyone uses that so knowing it beforehand will give you an advantage.
Second there is the backend databases and APIs which typically uses Web technology.
array · 2017-10-09 14:49
I work for an IoT company and I've never read a book with "IoT" in the title.
Some proper books I recommend are
The C Programming Language
Expert C
The Art of Designing Embedded Systems
Operating systems: Concurrent and distributed software design
Cowboy · 2017-10-10 05:01
>>4212
I would add 21st Century C to that list, and read it before Expert C (assuming Expert C refers to Expert C Deep C Secrets)
Meddler · 2017-10-11 03:37
>>4232
>Yocto
I appreciate the pointer! And I do have programming experience, some knowledge of data structures, and am still in the process of learning about them in school as the beginnings of a CompSci degree at a public uni. The biggest challenge is not knowing anything about the modern IoT ecosystem -- The divisions of labour you're talking about as well as the tools "everyone uses" that I've never heard about and have a hard time finding.
>>4212
>>4211
I've been learning C recently (read through K&R and am working on some class projects) and have been using the book attached as a reference too, but I'll check these books out as I'm sure they'll help me.
Do you have any experience with your work you could share, or could point me to some github repos that would represent embedded code used for IoT?
Thanks for the help!
Agent Jones · 2017-11-09 18:28
Bumping because IoT is the future of escape from the hordes.
Batou · 2017-11-09 19:03
>>4858
Thanks for bumping my thread! Since I made it, here's some more buzzwords or topics I've been looking into:
- MQTT is an easy-to-use MQ protocol that is used for a lot of IoT applications, and Mosquitto is an open source implementation of it.
- Yocto as >>4211 said would be very useful for applications where you would need to for example deploy 150 raspberry pis which do the same thing. https://layers.openembedded.org/layerindex/branch/master/layers/ would be a good place to start for specific architectures.
I still haven't done much more than make some test images with yocto and run them with qemu though.