• 0
Conéctate para seguir esto  
Seguidores 0
ibra

Ayuda GNU/Linux
error al iniciar script en raspbian

Pregunta

Hola, os escribo para ver podéis solucionarme un problema que me esta dando varios dolores de cabeza.

 

Estoy utilizando una raspberry, con el Raspbian, de cara a andar trasteando e introduciéndome en el mundillo de la frambuesa.

 

Una de las pruebas que estoy llevando a cabo, es la incorporación de un pulsador para poder apagar la Raspberry. He incorporado un script para ello. Es el siguiente:

 

# Import the modules to send commands to the system and access GPIO pins

from subprocess import call

import RPi.GPIO as gpio

 

# Define a function to keep script running

def loop():

raw_input()

 

# Define a function to run when an interrupt is called

def shutdown(pin):

call('halt', shell=False)

 

gpio.setmode(gpio.BOARD) # Set pin numbering to board numbering

gpio.setup(7, gpio.IN) # Set up pin 7 as an input

gpio.add_event_detect(7, gpio.RISING, callback=shutdown, bouncetime=200) # Set up an interrupt to look for button presses

 

loop() # Run the loop function to keep script running

 

Dicho programa consigo hacerlo correr en el terminal y funciona. O sea, cuando presiono el pulsador, se apaga.

 

El problema esta en que el script inicia con error al arrancar la maquina. Lo incorporo al archivo:

 

sudo nano /etc/rc.local

 

python /home/off.py

 

 

El error en sí viene marcado en la línea:

 

File "/home/off.py, line 17, in <module>

   loop() # Run the loop function to keep script running

​File "/home/off.py, line 7, in loop

   raw_input()

EOFError: EOF when reading a line

 

A ver si podéis ayudarme a solucionar el problema. Llevo poco tiempo en el mundo GNU/Linux y se me escapan muchas cosas de este amplio universo.

 

Salud y gracias por adelantado

Rohlling y wsn le gusta esto

Compartir este post


Enlace al post
Compartir en otros sitios

2 respuestas a esta pregunta

  • 0

Hola!

 

Aquí tienes una guía, creo que no es la misma que has seguido, quizás te sirva de ayuda.

 

-> http://www.instructables.com/id/Raspberry-Pi-Shutdown-Button/?ALLSTEPS

 

Parece que hay algunas diferencias entre tu código y el de la guía, posiblemente la clave este en como se ejecuta el "script" y con que permisos.

#!/usr/bin/python

# Import the modules to send commands to the system and access GPIO pins
import RPi.GPIO as gpio
import os

#Set pin numbering to board numbering
gpio.setmode(gpio.BOARD)

#Set up pin 7 as an input
gpio.setup(7, gpio.IN) 

# Set up an interrupt to look for pressed button
gpio.wait_for_edge(7, gpio.FALLING) 

# Shutdown
os.system('shutdown now -h')

Next we need a shell script that starts our Python script with root access.

Put the shell script in the same directory as our Python script.

 

pishutdown.sh

#!/bin/sh
cd / cd home/pi/pishutdown sudo python pishutdown.py cd /
Add a logging directory by typing:
mkdir /home/pi/pishutdown/logs

Use crontab to autostart the script.

Open the crontab editor by typing sudo crontab -e in the Console.

Append the following line:

@reboot sh /home/pi/pishutdown/pishutdown.sh >/home/pi/pishutdown/logs/cronlog 2>&1

Creo que este tema es para la sección http://gnulinuxvagos.es/forum/101-ayuda-y-consultas-raspberry-pi/

Editado por wsn
ibra, Rohlling y eMix le gusta esto

Compartir este post


Enlace al post
Compartir en otros sitios

Registra una cuenta o conéctate para comentar

Debes ser un miembro de la comunidad para dejar un comentario

Crear una cuenta

Regístrate en nuestra comunidad. ¡Es fácil!


Registrar una cuenta nueva

Iniciar Sesión

¿Ya tienes cuenta? Conéctate aquí.


Iniciar Sesión
Conéctate para seguir esto  
Seguidores 0