Reading parallel port data meant for printer - linux

I have a 20 year old device that prints data through a 1994 HP Deskjet 550c printer using a parallel port. Now the printer is broken and so there's no way to view the device output. I was thinking of hooking the parallel port from the device to a Raspberry Pi 3 which will display the data on a computer screen. I can get a parallel to USB cable which connects the old device to the Raspberry Pi. When I press the print button on the device, data should be sent to the Pi, but what I'm worried about is the format of the data. Is there a standard protocol for print data, or does every printer manufacturer use their own protocol? Do you know of any open sourced python scripts that can directly parse the print data coming from the usb port? Do I need to install any drivers on the Pi?

Related

transfering data between 2 python programs on different devices

I'm working on a project to control a drone using an EEG headset. The EEG headset is connected to my laptop [runnig ubuntu 18.04] and the drone to the raspberry pi [raspbian].
The code for processing the EEG data on the laptop as well as the code to control the drone is written on python 3.6 and work without any problems.
setup:
the EEG headset[ neurosky mindwave mobile 2] and the drone[ parrot mambo] both use BLE[bluetooth low energy] to connect with the devices. since both of them use Bluetooth it would be hard to send and receive data simultaneously to both the devices using a single code and laptop as they require a continuous uninterrupted connection and high data rates. hence the EEG headset is connected to the laptop via BLE and similarly the drone to the raspberry pi 3b+. The laptop takes care of processing the EEG signal and determining the desired command, while the raspberry pi acts as a wireless controller for the drone.
system setup
I need to pass the values between these 2 codes[and devices] so as to control the drone using the EEG signal. For eg, if I want to make the drone go forward after processing the signal I need to send say "1" or "f" to the raspberry pi from the laptop.
A wired connection such as Ethernet cable or USB is preferred over a wireless method.
The data size and rate is very less as a single character is sufficient and it will be sent only once every few seconds.
Which would be the best method to achieve this sort of communication
Use kafka or 0mq to loosely couple the laptop sender to the rasp pi receiver.
If one of them reboots, that's ok, the other will keep plugging away.
In the kafka case, you will enjoy the advantage of being able to replay a laptop publisher session again and again as you tweak and test the rasp pi client code.

Raspberry Pi running Raspian in Telnet

I have a few Raspberry Pi devices (b3+) running a telnet session to our server at work. Warehouse employees scan bar codes to move product through the warehouse. These Raspberry Pi devices are running Raspbian and have replaced handheld scanners (since the warehouse staff kept breaking them). These Pi devices boot up into the terminal and establish a telnet connection with the server.
The handheld scanners that were replaced by these Pi devices, provided an audio warning tone if something didn't scan correctly (we're assuming it was an ascii generation), which allowed users to be notified of the error. After bashing my head against the wall - and pretty much anything else I can find - I'm hoping someone here can help me out.
I'm looking for a way for the Pi to generate a warning sound while in the telnet session...using ascii 7 (I'm not sure if any text is returned when the error is received or not). The sound will need to be transmitted from the Pi to the display speakers via an HDMI connection. Any suggestions?
NOTE: We can get wav files to play off the Pi using the CLI...we just can't quite get ascii 7 to return a warning/beep.
Thanks

Device to divert printing to PDF

I'm trying to build a device that is inserted between a client and a printer.
In the normal case this device should just allow the printing to occur as normal, but if a certain event happens it should instead divert the printing to a PDF file on disk.
In essence it should work as a print server that can decide where to send the data to be printed.
The problem is that I want to achieve this using an USB-A to USB-A cable between the client and the device, and the printer via USB to the device.
The device is at the moment a Raspberry Pie running Raspbian.
Printing from the Pie is tested using CUPS, so that works.
Now for the question(s):
How can I allow printing via USB cable from the client? Simply connecting the device and the client does not allow it to be recognised as a printer. CUPS does not seem to support this sharing option.
Can CUPS be configured to support sharing via USB?
Is there any other print software that supports this?
Is there another OS where this could be achieved easier?
Any input is appreciated!

cylon.js & arduino uno: execute program without cable connection to PC

I am new to this field, so this might be an odd question.
We can write a code(say blinking lights) in the aduino IDE and upload it to arduino and we can disconnect from the pc and the program will run. (blinking will happen).
Now when we are using cylon.js and write the program and execute say
$ node blinking.js
then as long as the arduino is connected to the pc(or laptop) the blinking happens and when I kill node js or disconnect arduino from pc the blinking stops. (this is how its suppose to happen, right?)
So my question is,
if I have a arduino with a temperature sensor some where outdoor and I have a cylon.js program to use those sensor data and do some things (say print them), then how can I achieve this ? Do I have to have two arduinos which are connected via wireless or gsm shields (one outdor and one connected to the pc where the cylon.js is running)?
or is there a simple way of doing this? Any insight on this is much appreciated.
Thank you
then as long as the arduino is connected to the pc(or laptop) the
blinking happens and when I kill node js or disconnect arduino from pc
the blinking stops. (this is how its suppose to happen, right?)
Correct. This is true for any Node.js program controlling an Arduino, whether with Cylon.js or Johnny-Five.
if I have a arduino with a temperature sensor some where outdoor and
I have a cylon.js program to use those sensor data and do some things
(say print them), then how can I achieve this ?
It's not possible with just an Arduino board. You can use a pair of Xbee modules, which will allow your Arduino to communicate with the host machine, or just use a board that has wifi or bluetooth capabilities, such as:
Spark Core
Electric Imp
Intel Galileo
Intel Edison
Raspberry Pi
BeagleBone
pcDuino

Raspberry Pi to PC over UART doesn't work

I am trying to send/receive data over serial connection (GPIO UART pins) between a Raspberry Pi (B model, raspian wheezy) and any pc (tried a netbook and desktop, both running with win 7).
I followed all the stepts found in several tutorials like: http://codeandlife.com/2012/07/01/raspberry-pi-serial-console-with-max3232cpe/
to build a 5V to 3.3V converter. (unfortunately i can't post a pic yet)
The settings for ttyAMA0 in files 'cmdline' and 'inittab' are ok. (like described in many tutorials)
Connecting RX/TX on rpi direct works fine, so i can send text over GPIO pins and receive it. But as i connect it to a pc there is no way to read or write any data. Baudrate 9600 or 115200 doens't matter. (Hardware connection: rpi GPIO -> voltage converter -> serial USB adapter -> pc)
On pc i used Putty. On the rpi:
'echo text >> /dev/ttyAMA0' on the terminal
Putty and
minicom
but no one had success
Is there anything i missed? Could you give me some advice i could look for please.
some ideas:
Whereever i plug the usb into one of 3 available netbook USB ports the win device manager always say it's on COM3... shouldn't it change?
is there a possibility to make some measurements inside the voltage converter wiring to insure that it's not a broken component in the hardware circuit? (i have no knowlegde of it's function)

Resources