I have a cash register of a Chinese manufacturer and I want to open its cash drawer using Delphi code.
The register and the drawer are connected by an RJ12 (6 pins) cable.
I've seen elsewhere mentioned "cash registers and POS system sends a 12V or 24V signal to the cash drawer to activate the solenoid to open the cash drawer."
sorry the web site of the manufacturer is here.
How can this be done in Delphi?
If you need just a 12V signal with low amperage, you can use a V24 RS232 classical serial line. The common voltage is +12V (ON) and for it you may use a control signal like DTR.
You have a lot of serial port libraries for Delphi.
Related
In my Android Things project using a RPi3 I connect MCP3008 ADC to the SPI CS/MISO/MOSI/SCLK pins BCM8/BCM9/BCM10/BCM11 respectively, open them service.openGpio(<pin>) and scan periodically to read analog input from connected pots. Full source: https://github.com/tomaszrykala/MidiMixerAndroidThings/blob/master/things/src/main/java/com/tomaszrykala/midimixerandroidthings/control/adc/MCP3008.java
I am trying to achieve the same result with a Pico i.MX7D board but whether I try to opent the CS port for example with "SPI3 (SS0)" or "SPI3.0" or GPIO6_IO26 I get every time android.os.ServiceSpecificException: Unknown I/O name SPI3 (SS0) (code 19) (replace the name with any of the preceding examples).
Is there a way to reuse my logic for the Pi by opening the SPI gpio on the Pico at all?
In Android Things, a signal name is tied to a function. The RPi3 board uses dynamic pinmux support which allows Peripheral I/O to open the same pin for alternate functions at runtime. Each function, though, has a unique signal name (e.g. BCM8 and SPI0.SS0 are the same physical pin). This is why the pinout diagram has a table with multiple signal names for certain pins.
The Pico boards do not have internal pinmux support at the moment, so there are no alternate signals available for each pin. Each pin has a dedicated function, which is why the pinout diagram only shows one signal name for each.
I am using a MX-106 Dynamixel Motor. For those who dont know about this motor, it is:-
A module actuator which incorporates all the function needed for joint of robot
It has a reduction gear + controller + driver + network = Dynamixel motor
Basically, the problem is that I can write to the motor using the required status packet but cannot read any response packets from it.
Things I tried:-
Checked my Hardware connections to ensure that proper serial communication is happening with the help of another Dynamixel motor
Checked my custom code for sending these data packets. It works for the second Motor.
Contacted the customer help and followed through standard procedures
Used the Dynamixel Wizard to check for Motor ID
I think the Firmware needs to be updated but that can be done by the Dynamixel Wizard only if the Dynamixel motor is recognized. Since no value can be read from dynamixel, the Wizard cannot recognize the motor id or device.
On the other hand, I know the motor ID since I am successfully able to write to the motor and the motor moves to that position.
Therfore, I believe, that the firmware can be rewritten into the motor using the motor ID.
I need help in finding a way to do that and the precautions I should take in order to prevent damaging the motor.
Please Help
I 'm using coremidi all right, but I want to also support an external USB function.
I 've tried an app called Midi Monitor which indeed finds my USB interface when connected.
The problem is how to enable this interface through my own app. As said in MIDIGetNumberOfExternalDevices documentation, "Their presence is completely optional, only when a UI (such as Audio MIDI Setup) adds them."
How am I supposed to add them?
Best Regards.
"External devices" are not what you want. Those are the things that a user can create in Audio MIDI Setup in OS X, to represent a synthesizer or keyboard or other device that is connected to the computer via a MIDI cable. The system does not automatically create them. (It can't, because MIDI is terribly primitive and has no device discovery protocol.)
External devices are only for the user's benefit in naming and arranging things. They can't be used to do MIDI input or output. They're especially useless in iOS, since there's no Audio MIDI Setup app.
Instead, use MIDIGetNumberOfSources and MIDIGetSource to find sources of MIDI data.
To actually get input, use MIDIInputPortCreate to create an input port, then MIDIPortConnectSource to connect one or more sources to that port. Then your port's MIDIReadProc will be called when MIDI comes in.
Similarly, for output, you would use MIDIGetNumberOfDestinations and MIDIGetDestination to find destinations, create an output port using MIDIOutputPortCreate, and MIDISend to send data through a port to a destination.
For reference, see the MIDIServices documentation.
This is a little off the beaten path. I've got a DLink DWL-G520 card I'm using under OpenBSD and it works fine. What I want to do is be able to access the radio part of it. Why? I want to use it in a radio telescope. It's a 2.4 GHz receiver with an external antenna connector. I want to connect some coax, some amplifiers, and an old TV dish and point the dish at the sky. It has an RSSI signal and variable RF gain (which it adjusts, from what I can find) so all I'd need to do is record those over time while pointed at a certain spot in the sky. I don't need to control the frequency really since most natural events are broadband.
I'm poking through the OpenBSD ath driver following nested structs but I don't want any of the normal network stuff, which is most of what the driver does. dmesg identifies it as an AR5212 which according to the Atheros PDF is always paired with an AR2112 radio. Is there any easier way than wading through PCI stuff to see what my options are? I need to turn the transmitter off so it doesn't fry my amps too. Trying to find low level documentation is about impossible from what I've seen. Ultimately I'd like to have this work with other WiFi cards too, but I'll start with this one. I've got a Cistron with an external antenna connector also.
Alan, ab1jx
I want to make application to control network traffic in blackberry java programming.
Example : I want to know how much traffic radio in or out today in my blackberry devices, like :
-Traffic radio in today : 1,29MB
-Traffic radio out today : 81.83kB
To get that number, what should i do?
Anyone can give me the source code to do that kind of stuff.
RadioInfo.getNumberOfPacketsSent
RadioInfo.getNumberOfPacketsReceived
But AFAIK, these methods return the number of bytes sent/received since the BB was powered on, so not sure you can have the number of bytes for a given day.
Hope it helps.