Closed Wookbert closed 4 years ago
Hi @Wookbert this is something the community would have to do. Core armbian team doesn't have the bandwidth to work on that.
I looked at their instructions, and for Linux their documentation is to apply a hack directly to the usb serial driver. That wouldn't be acceptable for armbian to do.
You could easily build a kernel and patch using the Armbian Build Tools
closing
something the community would have to do
Do I get you right in that the community could implement this into the „factory default“ kernel (which is basically what my request is about), as a commit? If so, where to ask the community. At https://forum.armbian.com/ (Home > Community forums > Feature Requests)?
If someone provides a PR that implements in an appropriate way, then yes it could be added...
You post there if you want, but as with most open-source projects you'll probably need to add this feature yourself.
@Wookbert there is Linux Application Note in the documents, have you checked that
4.2 Add VID and PID Find and modify source code file option.c in kernel. (Usually, it is located in the path: drivers/usb/serial/option.c) If kernel version is V3.2 or newer
0x1E0E /If you want to use VID=0x1E0E, and PID=0x9205./
0x9205 /If you want to use VID=0x1E0E, and PID=0x9206./
0x9206 static const struct option_blacklist_info simcom_SIM7080_blacklist = { }; Add into option_ids list ...... { USB_DEVICE(SIMCOM_SIM7080_VID, SIMCOM_SIM7080_PID), .driver_info = (kernel_ulong_t)& simcom_SIM7080_blacklist t }, ...... If kernel version is below V3.2
0x1E0E / If you want to use VID=0x1E0E, and PID=0x9205./
/If you want to use VID=0x1E0E, and PID=0x9206./
0x9206 Add into option_ids list static const struct usb_device_id option_ids[] = { { USB_DEVICE(SIMCOM_SIM7080_VID, SIMCOM_SIM7080_PID) }, }; static int option_probe(struct usb_serial serial, const struct usb_device_id id) { ...... if (serial->dev->descriptor.idVendor == SIMCOM_SIM7080_VID && serial->dev->descriptor.idProduct == SIMCOM_SIM7080_PID) return -ENODEV; ...... }
I think it could be merged to armbian if you create a patch, confirm that it's working with your hw and then create PR for the patch
@martinl
I think the problem is what @lanefu wrote:
I looked at their instructions, and for Linux their documentation is to apply a hack directly to the usb serial driver. That wouldn't be acceptable for armbian to do.
So your cited code from SIMCom’s Linux Application Notes seems to be a nasty hack (I have ZERO knowledge to judge that).
The question is: How would a proper USB implementation look like?
that looks like a normal way of adding USB VID and PID to serial usb driver
Does it? So what about @lanefu ’s concerns then?
Does it? So what about @lanefu ’s concerns then?
there's plenty of people that know more than me :)
So what's the way then to get this into the ”factory default build“ of Armbian? As soon as I have the USB modem in my hands, I follow the instruction according to SIMCom’s Linux Application Notes, build/compile a new Kernel, and assuming it works, then what!?
Do x number of people need to confirm that the setup works? How does one commit?
This project you are about to start is not an issue. Which is why we closed it. Make your self comfortable on forum https://forum.armbian.com/ -> make friends - you need them, study the documentation how to use our tool https://docs.armbian.com/Developer-Guide_Build-Preparation/ and when you are comfortable enough that someone will look into your contribution and accept it, make a pull request https://docs.armbian.com/Process_Contribute/
We have no resources whatsoever to deal with this on a hardware level. Sorry, Armbian is way way too small.
I would love to see support for modems based on the SIM7070G chip. Along with Quectel’s BG96, SIMCom’s 70x0 and 7x00 families seem to be the leading choice when it comes to IoT-related applications with LTE-M and NB-IoT.
Shenzhen-based AND Technology manufactures and offers two very affordable modems (< USD 25) using the SIM7070G:
Sidenote: Waveshare has a Raspberry Pi HAT based on the very same chip –> SIM7070G Cat-M/NB-IoT/GPRS HAT SIMCom as chip provider offers excellent documentation on their website. I've attached all files as ZIP archive below: