Mi Nokia 6230i y Debian :: por Bluetooth

Pues andaba yo queriéndome enviar unas fotos desde mi teléfono a mi linux-box de sobremesa y me puse manos a la obra. Decidido a pasar del gnome-bluetooth y del kbluetooth creo que se llaman, me propuse comprender el cómo y el porqué de la configuración del bluetooth en linux para poder realizar el envío correctamente desde la línea de comandos, el entorno más potente del mundo.

Me aseguré de que tenía el USB bluetooth al uso en el cajón y me dispuse a conectarlo fijándome en que mi kernel pre-compilado (2.6.16-2-686-smp) se enteraba de lo que pasaba, efectivamente así fue.

user:~$ dmesg
usb 4-2: new full speed USB device using uhci_hcd and address 2
usb 4-2: device descriptor read/64, error -71
usb 4-2: configuration #1 chosen from 1 choice
Bluetooth: HCI USB driver ver 2.9
usbcore: registered new driver hci_usb

Bien. Más tarde localizé mi teléfono con el Bluetooth operativo mediante la utilidad hcitool contenida en las previamente instaladas bluez-utils.

user:~$ hcitool scan
Scanning …
08:00:28:48:F1:FB Necro 6230i

Procedí a incluir en el archivo /etc/bluetooth/rfcomm.conf los datos obtenidos de la siguiente manera:

<meta name="GENERATOR" content="OpenOffice.org 2.0 (Linux)" /><meta name="CREATED" content="20060619;16244900" /><meta name="CHANGED" content="16010101;0" /> </p> <style> <!-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } --> </style> <p style="margin-bottom: 0cm">rfcomm0 {<br /> device 08:00:28:48:F1:FB;<br /> channel 10;<br /> comment «Necro 6230i»;<br /> }</p> <p>Podríamos examinar el canal de comunicación Bluetooth que utiliza el teléfono y puede que obtengamos el canal 11, pero realmente es el 10 el que utilizan los dispositivos Nokia para envío y recepción de archivos.</p> <p>Tras esto y comprobar que el PIN del bluetooth era el establecido por defecto, localizado en <strong>/etc/bluetooth/pin</strong>, con valor «1234» procedí a cambiar la dirección del canal de transmisión para dejarlo de manera que sea mi terminal Nokia el que envíe y el linux-box el que reciba mediante el cliente-servidor openOBEX, haciendo la máquina de servidor que recibe la conexión. El paquete Debian para el OBEX se llama «obexserver», este cambio de dirección se realiza mediante el siguiente comando:</p> <p><meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE" /><title /><meta content="OpenOffice.org 2.0 (Linux)" name="GENERATOR" /><meta content="20060619;16244900" name="CREATED" /><meta content="16010101;0" name="CHANGED" /></p> <style>-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } --></style> <p><meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE" /><title /><meta content="OpenOffice.org 2.0 (Linux)" name="GENERATOR" /><meta content="20060619;16244900" name="CREATED" /><meta content="16010101;0" name="CHANGED" /></p> <style>!-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } --></style> <p>user:~$ sdptool add –channel=10 OPUSH<br /> OBEX Object Push service registered</p> <p>Abrí el obexserver y quedó esperando la conexión. Entonces envié el archivo desde el teléfono que me detecto la máquina entre los dispositivos bluetooth, le pedí enlace y establecimos conexión intercambiando el PIN. Se estableció la comunicación y se procedió a la transmisión del archivo con éxito.</p> <p>user:~$ obexserver<br /> Waiting for connection…<br /> <meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE" /><title /><meta content="OpenOffice.org 2.0 (Linux)" name="GENERATOR" /><meta content="20060619;16244900" name="CREATED" /><meta content="16010101;0" name="CHANGED" /> </p> <style> <!-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } --> </style> <p style="margin-bottom: 0cm">………………………HEADER_LENGTH = 27206<br /> put_done() Skipped header 42<br /> put_done() Skipped header 44<br /> Filename = chanante.amr<br /> Wrote /tmp/chanante.amr (27206 bytes)</p> <p><meta content="20060619;16244900" name="CREATED" /><meta content="16010101;0" name="CHANGED" /> </p> <style> <!-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } --></style> <p><title /><meta content="OpenOffice.org 2.0 (Linux)" name="GENERATOR" /><meta content="20060619;16244900" name="CREATED" /><meta content="16010101;0" name="CHANGED" />Ya tengo mi archivo recibido en /tmp/ </p> <style> <!-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } --> </style> <p><meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE" /><title /><meta content="OpenOffice.org 2.0 (Linux)" name="GENERATOR" /><meta content="20060619;16244900" name="CREATED" /><meta content="16010101;0" name="CHANGED" /></p> <style> <!-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } --></style> <p>user:~$ ls /tmp/chanante.amr<br /> 28K /tmp/chanante.amr</p> <p>That’s all folks!</p> <p>usb 4-2: USB disconnect, address 2</p> <div class="addtoany_share_save_container addtoany_content addtoany_content_bottom"><div class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://www.pumpkinking.es/mi-nokia-6230i-y-debian-por-bluetooth/" data-a2a-title="Mi Nokia 6230i y Debian :: por Bluetooth"><a class="a2a_button_telegram" href="https://www.addtoany.com/add_to/telegram?linkurl=https%3A%2F%2Fwww.pumpkinking.es%2Fmi-nokia-6230i-y-debian-por-bluetooth%2F&linkname=Mi%20Nokia%206230i%20y%20Debian%20%3A%3A%20por%20Bluetooth" title="Telegram" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Fwww.pumpkinking.es%2Fmi-nokia-6230i-y-debian-por-bluetooth%2F&linkname=Mi%20Nokia%206230i%20y%20Debian%20%3A%3A%20por%20Bluetooth" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_twitter" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Fwww.pumpkinking.es%2Fmi-nokia-6230i-y-debian-por-bluetooth%2F&linkname=Mi%20Nokia%206230i%20y%20Debian%20%3A%3A%20por%20Bluetooth" title="Twitter" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fwww.pumpkinking.es%2Fmi-nokia-6230i-y-debian-por-bluetooth%2F&linkname=Mi%20Nokia%206230i%20y%20Debian%20%3A%3A%20por%20Bluetooth" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share"></a></div></div> </div><!-- .entry-content --> <footer class="entry-footer"> <p class="entry-meta"><span class="cat-links"><span class="screen-reader-text">Categorías</span><a href="https://www.pumpkinking.es/category/software-libre/" rel="category tag">Software Libre</a></span><span class="tags-links"><span class="screen-reader-text">Etiquetas</span><a href="https://www.pumpkinking.es/tag/software-libre/" rel="tag">Software Libre</a></span></p><!-- .entry-meta --> </footer><!-- .entry-footer --> </div><!-- .entry-container --> </article><!-- #post-## --> <nav class="navigation post-navigation" aria-label="Entradas"> <h2 class="screen-reader-text">Navegación de entradas</h2> <div class="nav-links"><div class="nav-previous"><a href="https://www.pumpkinking.es/la-ninera-echa-de-menos-a-sus-chikis/" rel="prev"><span class="meta-nav" aria-hidden="true">← </span><span class="screen-reader-text">Entrada anterior:</span><span class="post-title">Sofi y Tico: La pareja ideal</span></a></div><div class="nav-next"><a href="https://www.pumpkinking.es/party-quijote-2006/" rel="next"><span class="screen-reader-text">Entrada siguiente:</span> <span class="post-title">¡Party Quijote 2006!</span> <span class="meta-nav"> →</span></a></div></div> </nav> <div id="comments" class="comments-area"> <div id="respond" class="comment-respond"> <h3 id="reply-title" class="comment-reply-title">Deja una respuesta <small><a rel="nofollow" id="cancel-comment-reply-link" href="/mi-nokia-6230i-y-debian-por-bluetooth/#respond" style="display:none;">Cancelar la respuesta</a></small></h3><form action="https://www.pumpkinking.es/wp-comments-post.php" method="post" id="commentform" class="comment-form"><p class="comment-notes"><span id="email-notes">Tu dirección de correo electrónico no será publicada.</span> <span class="required-field-message">Los campos obligatorios están marcados con <span class="required">*</span></span></p><p class="comment-form-comment"><label for="comment">Comentario <span class="required">*</span></label> <textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" required="required"></textarea></p><p class="comment-form-author"><label for="author">Nombre <span class="required">*</span></label> <input id="author" name="author" type="text" value="" size="30" maxlength="245" autocomplete="name" required="required" /></p> <p class="comment-form-email"><label for="email">Correo electrónico <span class="required">*</span></label> <input id="email" name="email" type="text" value="" size="30" maxlength="100" aria-describedby="email-notes" autocomplete="email" required="required" /></p> <p class="comment-form-url"><label for="url">Web</label> <input id="url" name="url" type="text" value="" size="30" maxlength="200" autocomplete="url" /></p> <p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes" /> <label for="wp-comment-cookies-consent">Guarda mi nombre, correo electrónico y web en este navegador para la próxima vez que comente.</label></p> <p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="Publicar el comentario" /> <input type='hidden' name='comment_post_ID' value='59' id='comment_post_ID' /> <input type='hidden' name='comment_parent' id='comment_parent' value='0' /> </p><p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="6e90a26979" /></p><p style="display: none !important;" class="akismet-fields-container" data-prefix="ak_"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="12"/><script>document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );</script></p></form> </div><!-- #respond --> </div><!-- #comments --> </main><!-- #main --> </div><!-- #primary --> </div><!-- .wrapper --> </div><!-- #content --> <footer id="colophon" class="site-footer"> <div id="site-generator" class="site-info" role="contentinfo"> <div class="wrapper"> <span>Copyright ©2025 <a href="https://www.pumpkinking.es/"></a>. Todos los derechos reservados. | Rock Star por <a target="_blank" href="https://catchthemes.com/">Catch Themes</a></span> </div><!-- .wrapper --> </div><!-- .site-info --> </footer><!-- #colophon --> </div><!-- end site --> </div><!-- #page --> <div class="backtotop genericon genericon-collapse"> <span class="screen-reader-text">Desplazar hacia arriba</span> </div><!-- .backtotop --><script id="ckyBannerTemplate" type="text/template"><div class="cky-overlay cky-hide"></div><div class="cky-btn-revisit-wrapper cky-revisit-hide" data-cky-tag="revisit-consent" data-tooltip="Configuración de cookies" style="background-color:#0056a7"> <button class="cky-btn-revisit" aria-label="Configuración de cookies"> <img src="https://pumpkinking.es/wp-content/plugins/cookie-law-info/lite/frontend/images/revisit.svg" alt="Revisit consent button"> </button></div><div class="cky-consent-container cky-hide" tabindex="0"> <div class="cky-consent-bar" data-cky-tag="notice" style="background-color:#FFFFFF;border-color:#f4f4f4;color:#212121"> <div class="cky-notice"> <p class="cky-title" role="heading" aria-level="1" data-cky-tag="title" style="color:#212121">Valoramos tu privacidad</p><div class="cky-notice-group"> <div class="cky-notice-des" data-cky-tag="description" style="color:#212121"> <p>Usamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.</p> </div><div class="cky-notice-btn-wrapper" data-cky-tag="notice-buttons"> <button class="cky-btn cky-btn-customize" aria-label="Personalizar" data-cky-tag="settings-button" style="color:#1863dc;background-color:transparent;border-color:#1863dc">Personalizar</button> <button class="cky-btn cky-btn-reject" aria-label="Rechazar todo" data-cky-tag="reject-button" style="color:#1863dc;background-color:transparent;border-color:#1863dc">Rechazar todo</button> <button class="cky-btn cky-btn-accept" aria-label="Aceptar todo" data-cky-tag="accept-button" style="color:#FFFFFF;background-color:#1863dc;border-color:#1863dc">Aceptar todo</button> </div></div></div></div></div><div class="cky-modal" tabindex="0"> <div class="cky-preference-center" data-cky-tag="detail" style="color:#212121;background-color:#FFFFFF;border-color:#F4F4F4"> <div class="cky-preference-header"> <span class="cky-preference-title" role="heading" aria-level="1" data-cky-tag="detail-title" style="color:#212121">Personalizar las preferencias de consentimiento</span> <button class="cky-btn-close" aria-label="[cky_preference_close_label]" data-cky-tag="detail-close"> <img src="https://pumpkinking.es/wp-content/plugins/cookie-law-info/lite/frontend/images/close.svg" alt="Close"> </button> </div><div class="cky-preference-body-wrapper"> <div class="cky-preference-content-wrapper" data-cky-tag="detail-description" style="color:#212121"> <p>Usamos cookies para ayudarle a navegar de manera eficiente y realizar ciertas funciones. Encontrará información detallada sobre cada una de las cookies bajo cada categoría de consentimiento a continuación.</p><p>Las cookies categorizadas como “Necesarias” se guardan en su navegador, ya que son esenciales para permitir las funcionalidades básicas del sitio web.</p><p>También utilizamos cookies de terceros que nos ayudan a analizar cómo usted utiliza este sitio web, guardar sus preferencias y aportar el contenido y la publicidad que le sean relevantes. Estas cookies solo se guardan en su navegador previo consentimiento por su parte.</p><p>Puede optar por activar o desactivar alguna o todas estas cookies, aunque la desactivación de algunas podría afectar a su experiencia de navegación.</p> </div><div class="cky-accordion-wrapper" data-cky-tag="detail-categories"> <div class="cky-accordion" id="ckyDetailCategorynecessary"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Necesaria" data-cky-tag="detail-category-title" style="color:#212121">Necesaria</button><span class="cky-always-active">Siempre activas</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchnecessary"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Las cookies necesarias son cruciales para las funciones básicas del sitio web y el sitio web no funcionará de la forma prevista sin ellas. Estas cookies no almacenan ningún dato de identificación personal.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No hay cookies para mostrar.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryfunctional"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Funcional" data-cky-tag="detail-category-title" style="color:#212121">Funcional</button><span class="cky-always-active">Siempre activas</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchfunctional"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Las cookies funcionales ayudan a realizar ciertas funcionalidades, como compartir el contenido del sitio web en plataformas de redes sociales, recopilar comentarios y otras características de terceros.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No hay cookies para mostrar.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryanalytics"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Analítica" data-cky-tag="detail-category-title" style="color:#212121">Analítica</button><span class="cky-always-active">Siempre activas</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchanalytics"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Las cookies analíticas se utilizan para comprender cómo interactúan los visitantes con el sitio web. Estas cookies ayudan a proporcionar información sobre métricas el número de visitantes, el porcentaje de rebote, la fuente de tráfico, etc.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No hay cookies para mostrar.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryperformance"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="El rendimiento" data-cky-tag="detail-category-title" style="color:#212121">El rendimiento</button><span class="cky-always-active">Siempre activas</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchperformance"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Las cookies de rendimiento se utilizan para comprender y analizar los índices de rendimiento clave del sitio web, lo que ayuda a proporcionar una mejor experiencia de usuario para los visitantes.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No hay cookies para mostrar.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryadvertisement"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Anuncio" data-cky-tag="detail-category-title" style="color:#212121">Anuncio</button><span class="cky-always-active">Siempre activas</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchadvertisement"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Las cookies publicitarias se utilizan para entregar a los visitantes anuncios personalizados basados ​​en las páginas que visitaron antes y analizar la efectividad de la campaña publicitaria.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No hay cookies para mostrar.</p></div> </div> </div> </div></div><div class="cky-footer-wrapper"> <span class="cky-footer-shadow"></span> <div class="cky-prefrence-btn-wrapper" data-cky-tag="detail-buttons"> <button class="cky-btn cky-btn-reject" aria-label="Rechazar todo" data-cky-tag="detail-reject-button" style="color:#1863dc;background-color:transparent;border-color:#1863dc"> Rechazar todo </button> <button class="cky-btn cky-btn-preferences" aria-label="Guardar mis preferencias" data-cky-tag="detail-save-button" style="color:#1863dc;background-color:transparent;border-color:#1863dc"> Guardar mis preferencias </button> <button class="cky-btn cky-btn-accept" aria-label="Aceptar todo" data-cky-tag="detail-accept-button" style="color:#ffffff;background-color:#1863dc;border-color:#1863dc"> Aceptar todo </button> </div></div></div></div></script><script type="text/javascript" src="https://www.pumpkinking.es/wp-content/themes/rock-star/js/navigation.min.js?ver=20120206" id="rock-star-navigation-js"></script> <script type="text/javascript" src="https://www.pumpkinking.es/wp-content/themes/rock-star/js/skip-link-focus-fix.min.js?ver=20130115" id="rock-star-skip-link-focus-fix-js"></script> <script type="text/javascript" src="https://www.pumpkinking.es/wp-includes/js/comment-reply.min.js?ver=6.7.1" id="comment-reply-js" async="async" data-wp-strategy="async"></script> <script type="text/javascript" src="https://www.pumpkinking.es/wp-content/themes/rock-star/js/scrollup.min.js?ver=20072014" id="rock-star-scrollup-js"></script> <script defer type="text/javascript" src="https://www.pumpkinking.es/wp-content/plugins/akismet/_inc/akismet-frontend.js?ver=1738758670" id="akismet-frontend-js"></script> </body> </html>