spi1 on mangopi-r3 (f1c200s) - embedded-linux

I'm working with mangopi-r3 dev board (f1c200s) and for the buildroot package I'm using this repo —> https://github.com/mangopi-sbc/buildroot-mangopi-r.
I want to add spi1 but I don't know how. could someone help?
sorry if this was a silly question I'm a beginner
Thanks in advance
I tried editing the device tree but I have no experience and I didn't know how to configure it.

You mean SPI ?
You could use the make linux-menuconfig to get to
Linux Kernel Configuration
Enter into -> Device Drivers
Enable > SPI Support In SPI support verify if you need any other
settings if required.
I have used a buildroot 2019 version here, it should be similar on other versions

Related

modprobe: FATAL: Module lirc_rpi not found in directory /lib/modules/5.10.92-v7+

I am trying to Configure Lirc for my Rpi 3b+ for a personal project. I am using this guide. When running sudo modprobe lirc_rpiI get the error of modprobe: FATAL: Module lirc_rpi not found in directory /lib/modules/5.10.92-v7+ Can anyone help me solve this?
That LIRC should not work on Rpi is a misunderstanding. LIRC works on all linux systems, RPi included, but certainly not on Arduino (Arduino don't run Linux).
The basic problem is that the guide you refer to is severely outdated. In particular, the hardware.conf file is not used on modern LIRC installations.
As for the possible need for a lirc_rpi kernel moduled this depends on the actual use case. In most cases, LIRC uses either the serial ports or the lirc0 device, neither of which needing any specific kernel module.
The complete upstream docs are available at https://www.lirc.org/html/configuration-guide.html. It might be possible to give some more feedback if you describe your use case in more detail.
Lirc is not meant to work on raspberry pi, only other computers. You should use something else like an ardino. Good luck

What are the additional configurations/ additions for integrating USB3503 to Android on IMX8QM?

I'm trying to integrate the USB3503 HSIC hub to Android in IMX8QM. I have already done the same on Linux. However, even after integrating similar lines of code, which were added in Linux for the hub bringup- we are not able to get proper response from the device.
The driver is loading and the driver lists when checked with i2cdetect, but i2cdump and other i2c commands return I/O errors.
Please help.
Thanks & regards

NodeMCU version unknown

I'm new with NodeMCU firmware use. I have a Amica ESP-12E (v2?) dev kit connected to a DHT22 which I program using the Arduino IDE. All is setup and working fine.
My problem came when I wanted to update NodeMCU firmware. Since I don't really know what came pre installed from China, I downloaded ESPlorer to try to determine NodeMCU version. I get the following "error" when I reset the dev board:
Communication with MCU..Got answer! Communication with MCU established.
AutoDetect firmware...
Can't autodetect firmware, because proper answer not received (may be unknown firmware).
Please, reset module or continue.
{{a long string of weird characters that I can't copy and paste appear here}}
At this point I'm totally clueless about what version of firmware I have. Is there a way to obtain NodeMCU firmware version by software via Arduino IDE code, ESPlorer GUI or something similar?
On the other hand, is there a really easy way to compile/download latest NodeMCU firmware BIN file? Even one with all the modules active will be fine for me now, I'm just trying to understand and test things.
You seem to be confusing two very different platforms. I leave out some details as not to confuse you any further.
Arduino: you use Arduino programming in the Arduino IDE then build and install a binary to your device whenever the application changes. No NodeMCU firmware needed!
NodeMCU: you flash the NodeMCU firmware once (e.g. using esptool.py) and then upload Lua code (e.g. using ESPlorer) whenever the application changes. This is more lightweight than the Arduino platform.
On the other hand, is there a really easy way to compile/download
latest NodeMCU firmware BIN file?
Yes, have a look at the NodeMCU documentation at http://nodemcu.readthedocs.io/en/latest/en/build/. The easiest is to use the cloud builder at https://nodemcu-build.com/. I currently suggest to build from the dev branch because flashing is easier with it.
As pointed out you have several options for firmware and you'll need to make a choice as to which suits you going forward. If you are going to stick with the Nodemcu LUA firmware you can determine the version by typing:
print(node.info())
at the command line prompt.
There are alternatives to using ESPlorer e.g. Putty or Coolterm that will give you the raw output from the device with no interpretation. So if you have the correct serial port settings and the device plugged into the USB port it will show the banner when you reset giving an indication of the origin and version of the installed firmware.
In ESPlorer, there is an option under settings which if unchecked will stop looking checking for the version of the code.
For whatever reason, ESPlorer is not designed to read nodemcu version.
The error message throws you off, could lead you to think, there is an error.
At best, the above error can be ignored. It has no impact at all. In background, init.lua is up and running.

How can I edit a pinmux for BeagleBone Black on linux kernel 3.18?

I have just upgraded my kernel from 3.8.13 to 3.18 and need to control the pinmux options on the bbb. I understand that there is no cape manager anymore and i have used the following command to set the pin P8_10 to be a GPIO with pull down enabled. echo gpio_pd > /sys/devices/ocp./P8_10_pinmux./state
My issue arises when i try and use the same command for P8_26. I am able to set this pin to be a GPIO or to the default state but it does not recognise the gpio_pd or gpio_pu command.
The following answer has provided me a good deal of information and been very helpful:
How can I edit a pinmux for BeagleBone Black on linux kernel 3.17?
Can anyone point out what i am missing here?
Thanks in advance

Installing a driver using Inno Setup

I'm creating setup for my application in Inno Setup, and I will probably need to install driver sometime in the future. However, I need to know some tips about installing drivers in Inno Setup now, so I can easily add the driver into the setup when it's needed.
Should I force the user to install program only into C:\Program Files\<app>\, or it doesn't matter and I should let him install it even on network drive?
Should I install the driver in C:\Windows\, to make it available anytime (even without network drive), or it doesn't matter as well?
Is it possible to start driver on-demand? I want to release new versions of my program, and I need to create the setup so it doesn't require reboot after updating my app. So is it possible to shutdown the driver, overwrite it with new version, and turn on again (as you can with services) without restarting Windows?
Is it possible to overwrite the driver so easily (as mentioned in question 3), or is it recommended to always fully uninstall the program, and then again install the new version?
Could you please include some additional tips about installing/uninstalling/updating drivers you find important? I'm sure I've missed some important points.
I don't have much driver-experience nor knowledge, so I apologize for somewhat confused questions.
And it is probably important what kind of driver would it be, so there is a related question, which should answer that:
Low level mouse hook and DirectX
Driver Development Resources
I've found some helpful links regarding driver development. Use this as a reference.
Driver Development at CodeProject - Part 1, Part 2, Part 3, Part 4, Part 5, Part 6
http://www.catch22.net/tuts/kernel1.asp
Introduction to Device Drivers
Windows Driver Development Tutorial
Please don't do this, installing an upper-level filter driver on all HID devices is an extraordinarily bad idea. That being said, I'll answer your questions anyways.
When you install a driver, Windows manages where the driver itself gets put (in DriverStore), you don't worry about this.
See #1
For some drivers, yes. For a filter driver above HID, no. You'd have to force remove all mice and keyboards on their system and re-add them (which isn't possible with PS/2 devices).
Yes, it's fairly easy to update a driver given that you correctly version it and require a reboot.
Once again, while I don't want to be discouraging, you're only going to get yourself in a world of hurt via doing this.

Resources