Jump to content

(SOLUCIONADO) Indicador de bateria no funciona (Dell N4050)

- - - - -

  • Please log in to reply
35 replies to this topic

#1
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

Estimados

 

Nuevamente saludos a todos. He estado por mi cuenta y leyendo varios posteos del foro para arreglar varios problemas de mi equipo. A la fecha aun quedan algunos por resolver pero de a poco se optimiza mi  hackintosh.

 

Les escribo para comentar el problema que estoy tratando de resolver actualmente que es el indicador de bateria. Cuando recien instale mavericks, utilize el kext AppleBatterySmartmonitor y en verdad el indicador funcionaba sin ningún problema. Pero cuando instale el DSDT en la carpeta extra, me dio un KP y tuve que eliminarlo.

 

He intentado varias versiones del AppleBatterySmartmonitor así como de AppleACPIBatteryManager sin ningún resultado. Algunos me dan KP, otros muestran la bateria pero con indicador 0 todo el rato.

 

¿Que se les ocurre que podría ser? Les adjunto el DSDT por si alguien quiere mirarlo.

 

Gracias de antemano

Attached Files



#2
Allaп

Allaп

    InsanelyMaestro

  • Moderators
  • 4,361 posts
  • Gender:Male
  • Location:Brazil

tente usar ACPIBatteryManager. aqui funcionou sem nenhum path para DSDT.



#3
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

tente usar ACPIBatteryManager. aqui funcionou sem nenhum path para DSDT.

 

Gracias por tu respuesta. Baje la ultima version desde el sitio de rehabman (la version 2014-0207) Sin embargo cuando reinicio, el icono no aparece. En la consola de registro al filtrar, me sale estos mensajes con alusion al kext

01-04-14 8:38:50,231 com.apple.kextd[12]: WARNING - Invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/System/Library/Extensions/ACPIBatteryManager.kext"
01-04-14 8:38:51,369 com.apple.kextd[12]: Can't load /System/Library/Extensions/ACPIBatteryManager.kext - authentication problems.
01-04-14 8:38:51,373 com.apple.kextd[12]: Load org.rehabman.driver.AppleSmartBatteryManager failed; removing personalities from kernel.

Que podra ser? Problema del DSDT?

 

Cualquier ayuda se agradece de antemano, gracias



#4
artur-pt

artur-pt

    InsanelyMacaholic

  • Local Moderators
  • 4,755 posts
  • Gender:Male
  • Location:Portugal
  • Interests:TechManiaco

hola

 

https://github.com/R.../master/battery

 

no dsdt

 

http://www.osx86.net...-mountain-lion/

 

bom hack



#5
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

 

Gracias por tu respuesta. Tengo una consulta, para mi computador (dell N4050) que patch utilizo de esos en el DSDT?

 

El kext no me sirvio, me arrojo KP

 

Gracias por toda su ayuda



#6
artur-pt

artur-pt

    InsanelyMacaholic

  • Local Moderators
  • 4,755 posts
  • Gender:Male
  • Location:Portugal
  • Interests:TechManiaco

hola

 

basico 

 

http://www.insanelym...nager-for-lion/

 

para lo dsdt

 

de rehab tienes de testar, se no tiene tu 4050



#7
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

hola

 

basico 

 

http://www.insanelym...nager-for-lion/

 

para lo dsdt

 

de rehab tienes de testar, se no tiene tu 4050

 

En primer lugar, muchas gracias por tu ayuda

 

Intente Parchear el DSDT pero tengo errores al compilar y me esta dando KP al reiniciar. Estoy ocupando el maciASL para el patch. Quizas lo estoy haciendo mal, seguire intentandolo



#8
WeBeRiO

WeBeRiO

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 109 posts
  • Gender:Male
  • Location:Motril (GR) - Spain
  • Interests:Hackintosh

Sube tu DSDT y quizás podamos corregirtelo.-



#9
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

Sube tu DSDT y quizás podamos corregirtelo.-

 

Gracias por tu ayuda

 

Lo subi en el primer post... Pero igual lo vuelvo a subir.

 

Espero que me puedas ayudar :(

Attached Files



#10
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,486 posts
  • Gender:Male
  • Location:Tru, Venezuela

hydra1ysk, Hermano por favor ten en cuenta que NO es necesario que cites los comentarios inmediatamente anteriores al tuyo. Ya que se sobreentiende que estas respondiendo a dicho comentario, y así evitamos que el tópico se llene de más de lo mismo. Es decir, hagamos un uso adecuado de las citas. Gracias.

 

Por cierto, para corregir el medidor de batería usando el AppleACPIPlatform.kext vanilla (de cualquier versión de OS X), desde la aparición de la especificación ACPI 4.0a (2010) implementada por Apple a partir de Lion (incluyendo a Snow 10.6.8), se tienen que ajustar en la DSDT todos los registros a 8-bit, es decir que ningún registro por ejemplo en dispositivos como la batería y las zonas térmicas por encima de 8-bit serán reconocidos sin ese ajuste en la DSDT. Saludos.



#11
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

Gracias Juanerson por la aclaración y las dudas.

 

Manejo esa información, pero cuando edito el DSDT me arroja errores, asi que quizas estoy haciendo mal el patch. Voy a seguir intentandolo.

 

Gracias nuevamente



#12
WeBeRiO

WeBeRiO

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 109 posts
  • Gender:Male
  • Location:Motril (GR) - Spain
  • Interests:Hackintosh

DSDT corregida sin ningún fallo ni warning.

 

No tiene hecho nada de batería, como dice Juanerson, tienes que ajustarlo todo a 8 bits.



#13
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,486 posts
  • Gender:Male
  • Location:Tru, Venezuela

Bueno haz un esfuerzo para ajustar el código de la batería. Si no obtienes resultados te puedo ayudar. Ya tienes una base limpia de errores para trabajar. Estamos a la orden.

 

En lo que tenga un tiempito libre escribo una guía referencial sobre el tema. Porque material hay de sobra en ingles. Solo hay que recopilarlo, organizarlo y redactarlo en nuestro idioma. Saludos.



#14
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

Gracias a ambos por su ayuda y mejorar un poco mi DSDT.

 

Voy a intentar lo que me dices Juanerson. Voy a seguir esta guia que me dices

 

http://www.insanelym...nager-for-lion/

 

Tengo una consulta, en la guia de arriba aparte de los cambios en el DSDT, hay unos kexts....  debo tambien instalarlos? Ahora me pongo a trabajar en ello

 

EDIT: estoy editando el DSDT y no encuentro los registros de 16 bits para cambiarlos a 8. He vistos otros DSDT arreglados que si los trae. Mi consulta, puedo copiarlos y pegarlos dentro del DSDT? (obviamente en el lugar que corresponde)



#15
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,486 posts
  • Gender:Male
  • Location:Tru, Venezuela
http://www.insanelym...20-solucionado/

Mala idea eso de copiar codigo desde otra BIOS. Avisamos si pudiste y por favor comparte tu solución. Saludos.

#16
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,486 posts
  • Gender:Male
  • Location:Tru, Venezuela

Te doy una pista: Para convertir los registros de 16-bit(+) y llevarlos a registros de 8-bit debes seguir la secuencia que te llevará a la raíz del problema.

 

En síntesis, el metodo clave en tu DSDT relacionado con el Status (_BST) y la Información (_BIF) de la Batería... se llama Method ECRB. Por que?

 

Porque _BST depende de ECG6, y _BIF depende de ECG9. Y éstos dos últimos (ECG6 y ECG9) a su vez dependen de ECRB. Es una secuencia lógica.

 

Espero que entiendas porque lo que tienes que hacer es adaptar estos registros de 32-bit (ocho en total) en cuartetos de 8-bit cada uno (4 x 8):

            OperationRegion (MMBX, SystemMemory, 0xFE800000, 0x2000)
            Field (MMBX, AnyAcc, Lock, Preserve)
            {
                Offset (0x1000), 
                MZ00,   8, 
                MZ01,   8, 
                MZ02,   8, 
                MZ03,   32, /* este 1*/
                MZ04,   32, /* este 2*/ 
                MZ05,   32,  /* este 3*/
                MZ06,   32,  /* este 4*/
                MZ07,   32,  /* este 5*/
                MZ08,   32,  /* este 6*/
                Offset (0x104B), 
                MZ09,   32,  /* este 7*/
                MZ10,   32 /* este 8*/
            }
1) Es decir, que vas a convertir los ocho (8) registros de 32-bit actuales en treinta y dos (32) registros de 8-bit finales. Esa es la idea para hacer que los registros superiores a 8-bit sean compatibles con la especificación ACPI 4.0a (2010).
 
Nota: Ten presente que tienes que asignar nombres únicos e irrepetibles a los 32 nuevos registros, es decir que dichos nombres no estén siendo usados por otros registros. Es algo tedioso, pero se logra con concentración, tomando nota, todo en orden, registro a registro.
 
2) Y no olvides la parte más importante, que es modificar TODAS (repito: TODAS) las declaraciones donde aparezcan MZ03, MZ04, MZ05, etc... con la ayuda del método B1B4 (que corresponde a registros de 32-bit) para no obtener errores de compilación. Cada uno será un cuarteto. Cita del método:
Method (B1B4, 4, NotSerialized) 
  {
  Or (ShiftLeft(Arg1,0x08), Arg0, Local0)
  Or (ShiftLeft(Arg2,0x10), Local0, Local0)
  Or (ShiftLeft(Arg3,0x18), Local0, Local0)
  Return (Local0)
   } //for 32bit


#17
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

Gracias por tu ayuda. No había tenido tiempo de escribir

 

He estado leyendo mucho y he aprendido algo de como configurar los DSDT, sin embargo aun me falta para conseguir el funcionamiento de la batería.

 

Me podrías enviar tu DSDT para ver como tienes configurado el metodo MMBX o como lo tengas puesto?



#18
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,486 posts
  • Gender:Male
  • Location:Tru, Venezuela
No hermano mi dsdt no tiene esa complicación como el tuyo, he visto muchos que si, ten en cuenta que solo estoy orientandote para que corrijas el tuyo. Creeme que no es difícil, subeme tu dsdt actual y te hago la corrección de MZ03 y tu haces los demás, te fijas como lo hice y podemos ir viendo progresos y aclarando tus dudas. Es trabajoso porque es una correccion detallada pero no difícil. Saludos.

#19
hydra1ysk

hydra1ysk

    InsanelyMac Protégé

  • Members
  • PipPip
  • 97 posts

Te dejare el archivo que estoy usando..... En verdad me enredo ya que veo otros DSDT y su configuración es diferente entonces no se como asilimar la información del metodo que debo modificar.

 

Estare atento, quiero aprovechar el findesemana largo para dedicarme a arreglar este problema. 

 

Muchas, pero muchísimas gracias amigo

Attached Files



#20
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,486 posts
  • Gender:Male
  • Location:Tru, Venezuela

Te adjunto la DSDT tanto para editar (.dsl) como también el resultante (.aml). Tiene corregido totalmente el registro MZ03 que ahora esta dividido y sus partes se llaman MZ31, MZ32, MZ33 y MZ34, por supuesto todos de 8-bit cada uno. Puedes ver los comentarios en el archivo base.dsl buscando la palabra "correccion" sin acento y sin comillas. Luego tienes la información que necesitas para hacer el resto de manera sencilla. El arreglo consta de 3 partes:

 

1) Donde se encuentran los registros, en estos momentos quedan así:

Attached File  Primera Captura de pantalla 2014-04-18 a la(s) 18.48.19.png   364.32KB   4 downloads

 

2) En el metodo ECRB, aparece la primera declaración de MZ03 que vamos a ajustar de manera automática gracias al metodo B1B4:

Attached File  Segunda Captura de pantalla 2014-04-18 a la(s) 18.50.11.png   370.6KB   1 downloads

 

3) En el metodo ECWB, se hace un ajuste MANUAL (sin utilizar B1B4) para lograr el cambio a 8-bit. Son cuatro lineas por registro:

Attached File  Tercera Captura de pantalla 2014-04-18 a la(s) 18.51.27.png   380.66KB   1 downloads

 

Nota: Como se darán cuenta, cuando no se puede utilizar el método B1B4 por encontrarse de segundo (a la derecha) dentro del Store, la presentación o formula del ajuste manual para vincular cuatro partes de 8-bit cada una (4x8) es: (cortesía de RehabMan)

Store(ShiftRight(Y,24), X3)
Store(ShiftRight(Y,16), X2)
Store(ShiftRight(Y,8), X1)
Store(Y, X0)

Y por supuesto, al final de la DSDT está agregado el nuevo metodo B1B4 compatible con registros de 32-bit, cortesia de RehabMan:

    Method (B1B4, 4, NotSerialized)
    {
        Store (Arg3, Local0)
        Or (Arg2, ShiftLeft (Local0, 0x08), Local0)
        Or (Arg1, ShiftLeft (Local0, 0x08), Local0)
        Or (Arg0, ShiftLeft (Local0, 0x08), Local0)
        Return (Local0)
    }

Para finalizar, de la misma manera se hace con los restantes siete registros MZ04, MZ05, MZ06, ... etc.

 

Esperemos que funcione. Cualquier duda estamos a la orden. Saludos.

Attached Files

  • Attached File  DSDT.zip   51.38KB   4 downloads






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy