Send virtual MIDI events from PortMIDI - virtual

I have portMidi on win 8 and I want to create a virtual keyboard that sends midi events to Fruity Loops Studio, but when I try to select a device from the Midi Input I can't find any device. Can you help me link these two softwares?

Windows has no built-in mechanism to connect multiple MIDI applications together; all MIDI ports must be implemented by some driver.
You would have to install a driver for a virtual MIDI port/cable.

Related

How to stream RTMP direct from an android divice to a windows pc in the fild without any Network

i would like to stream Dron video from the controler (Dji mavic air 2 with a RC-N1 controler) via RTMP direktly from the controler/my Phone to my PC wihl i am in the fields without having any internet conection or an extra Network. Is that some how possible?
First, you still need a network. You can create a hotspot using a computer (laptop) or a device that connects to the RC-controller (phone, tablet).
Secondly, you need an RTMP server that will be located in this network. As a quick example, I can recommend MonaServer2, it is easy to install and run.
Thirdly, you need someone who will "listen" to the server when the stream comes to it. For example, you can use a VLC player. Launch it and specify RTMP stream as a source.
So, you start the RTMP-server, let's say it is located at 192.168.0.1:1935. On your device connected to the RC-controller, using the standard DJI-Fly application or your own app developed using Mobile SDK, select the option to start streaming, specify the address: rtmp://192.168.0.1:1935/live. Next, launch VLC-Player, select File->Open Network Stream and type rtmp://192.168.0.1:1935/live in URL field. Now you will be able to watch live-stream in your VLC window.
This is the fastest and easiest way I can recommend.
Also you can take raw h264 frames from camera, send them to decoder and do whatever you want. If you need some more info about it feel free to ask. Hope it helps!

How to use a mobile provider's UUSD code service via an automated process?

If I have a SIM card from a mobile operator - for example, Vodacom in South Africa, I can use their USSD services via dialling *111#. Then I can navigate the options via using my mobile phone keyboard.
I would like to create a script that does this in an automated way. Is there a way to do this?
I see this is possible on an Android application (Make USSD call in android). Is there a way to consume a specific mobile operator's UUSD service without first purchasing a SIM card from that operator? (i.e. running this from a server over http/tcp).
To access the USSD menu you need to be on the mobile network. USSD is not internet, nor even data network. USSD is transported on mobile signaling network. Thus you need to have a SIM.
To navigate on a USSD menu via scripts, you may need few steps.
You need a GSM device connected to your computer. A USB Modem is OK but all modems don't have this functionality. I have been using a Huawei 180E model.
You'll need to talk to your modem over a serial line. On Linux, USB Modems can be reached as tty devices, typically on /dev/ttyUSB0 (there is no absolute rule: some models only define 2 devices, some models define 4). For tests, you can use some terminal software. I use miniterm.py, a Python program, but minicom is OK as probably many others. For automation you may need a serial library for your preferred language. On the command line, there is atinout but I didn't manage to make it work properly, socat - /dev/ttyUSB0 should also work.
Finally, to talk to your modem, you need to use the Hayes Modem AT commands. You can read the AT command reference [3GPP 27.007][1], chapter 7.15 for a formal documentation, but basically, sent to the modem (without the #... part):
ATZ # to reset the modem
AT+CUST=2 # to close any ongoing USSD session
AT+CUSD=1,"#111#",15 # to initiate the navigation
and if you get the menu, you're fine; if not, well, things are not desperate, but it may be more difficult as you'll probably need to play with character encoding.
[1]: https://www.etsi.org/deliver/etsi_ts/127000_127099/127007/10.03.00_60 (/ts_127007v100300p.pdf

Touch events via HDMI

I need touch capable LCD panel that I need to connect to some sort of external computer. Panel itself does not contain any embedded computer, so no OS will run on it that could process touch events. Panel will be connected to external computer similar to Intel NUC via HDMI.
My question: Would I be able to handle touch events send from panel via HDMI without much trouble (special drivers, configuration etc.)?
External computer will have some flavor of Linux installed, which one is yet to be decided.
Touch events are similar to mouse events so I think X.org server would handle them transparently, or with some minor configuration.
I have seen it working with USB but not with HDMI.
There are USB ports on panel, but im not sure if it will transfer touch event through them when connected.
Note: I don't have panel yet, so can't just plug it in and try.
Panel will be something akin tho this (but not exactly) https://www.alibaba.com/product-detail/Wall-Mounted-LCD-Touch-Screen-Advertising_60650200010.html?spm=a2700.7724838.2017115.235.50af4611aIelfv&s=p

iOS / oSX midi connection using CoreMidi

I 'm making an iOS generic customizable MIDI and DMX controller. This controller sends MIDI data to hosting systems.
In Windows, I 've created a virtual midi driver and connect it via TCP with the iOS app. So far so good.
In OSX now. I 've been trying to use coremidi. I 've created a MIDINetworkHost (from the OSX setup in Audio Midi setup), a MIDINetworkConnection and then added this to the MIDINetworkSesion.
Here are the steps:
I create a MIDINetworkHost
I create a MIDINetworkConnection based on the host
I add it to the MIDINetworkSession.
I create a client with MIDICreateClient
I create an output port with MIDIOutputPortCreate
When I want to send data, I create a packet with MIDIPacketListInit, I add data with MIDIPacketListAdd, I get the destination endpoint from MIDINetworkSession and I send the buffer using MIDISend, using the output port.
Nothing seems to be sent. What am I missing?
Thx.

iPad accessory communication through UART

We manufacture a new accessory for iPad/iPhone which should transfer commands to the iPad. We like to use UART (through a certain Apple-protocol called Lingo). My research shows that I can only use USB (30PIN Connector) and custom protocols.
Question:
Is there any way to use UART to connect to the iPad accessory from APP side?
If the protocol is implemented in UART, we should be able to move it to USB, if it's not available to my App via USB.
My main guess is that the UART commands & access are protocols reserved to the iPhone OS and not available to Apps. Certain UART commands also include settings for volumes and Audio re-routing etc, so I guess that's secured.
Without jailbreak, you will not be able to access UART on iPad/iPod/iPhone as a normal developer. If you need access to the serial port or USB, you need to join Apple's MFi ("Made for iPhone") program and you will get full access to all relevant information. Unfortunately, you'll have to convince Apple that you're doing serious business and have a high volume manufacturing facility at hand (see also this thread).

Resources