element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Raspberry Pi
  • Products
  • More
Raspberry Pi
Raspberry Pi Forum Raspberry Pi 3 und EnOcean Pi - Kompatibilitätsproblem
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Raspberry Pi to participate - click to join for free!
Featured Articles
Announcing Pi
Technical Specifications
Raspberry Pi FAQs
Win a Pi
Raspberry Pi Wishlist
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Suggested Answer
  • Replies 49 replies
  • Answers 10 answers
  • Subscribers 669 subscribers
  • Views 5326 views
  • Users 0 members are here
  • raspberry-pi3
  • raspberry_pi_space
  • enoceanpi
Related

Raspberry Pi 3 und EnOcean Pi - Kompatibilitätsproblem

robertheinze
robertheinze over 9 years ago

Als diese Woche der neue RPi3 rauskam, waren wir voller Ehrgeiz, künftig in unseren Systemen zu switchen.

Immerhin würde der RPi3 es ermöglichen auf einen USB Bluetooth Dongle zu verzichten und eine WiFi-Connectivity macht die Verbindung zu unseren Servern noch einfacher .

 

leider weit gefeht, denn das ganze funkt nur unter Verwendung der SDIOs und UART (durch Aktivierung der Devce Tree-Funktionwn, was dann jedoch den EnOceanPi, der ebenfalls /dev/ttyAMA0 (UART) verwendet, außer Betrieb setzt. Sprich, wir haben es noch nicht geschafft, EnOceanPi, WiFi und Bluetooth am RPi3 zum Laufen zu bringen.

 

Hat wer, der mehr Erfahrung mit HW-orientierter Programmierung hat eine Idee?

  • Sign in to reply
  • Cancel
  • shabaz
    0 shabaz over 9 years ago in reply to Former Member

    (overall summary)

     

    It appears, there are a few options, and as usual the information is splattered all over the place since raspberrypi.org use their forum comments as documentation, and so people have to read dozens (sometimes hundreds) of comments to understand the changes, since the first few comments are invariably wrong or have outdated information. And others have written blog posts all over the place, and many are outdated since the information has changed in releases and some people don't go back and edit their posts and mark the changes..

     

    I have tried to summarize. It could be wrong too. If it is, please let me know and I will edit this post and label it as edited. Once it is fleshed out, if people prefer, I'll write it up as a blog post/document when can have revisions and can have user comments, but the blog post ends up being the first thing read. So reduces the confusion.

     

    As far as I can tell, this is the latest information, these apply to recent software images only.

     

    Main issue: There are two serial interfaces on the Broadcom chip that the Pi uses. One works fine, the other has a speed dependent on the core clock speed. The core clock speed is usually dynamic and changes on the fly. When the core clock speed is high, the CPU performance can be high.

    One serial interface goes to Bluetooth, the other goes to the 40-pin connector. Which one goes where? That is selectable at boot; the Broadcom chip can internally reroute it. By default, the varying one goes to the 40-pin connector and that is clearly a problem if you wish to make use of it in any way.

     

    There are 4 options:

     

    Option 1. Have the serial interface (UART) functioning correctly, but no Bluetooth capability

       --> Swap the UARTs around. To do this, add the following to /boot/config.txt:  dtoverlay=pi3-disable-bt   dtoverlay=pi3-miniuart-bt

      and type the following to disable the Bluetooth (since it is now on the changeable speed UART):  sudo systemctl disable hciuart

     

    Option 2. Have the serial interface functioning and have Bluetooth functioning very well, but have the clock speed of the processor fixed (to a low speed [250MHz] or a high speed [500MHz?])

      --> Add the following to /boot/config.txt:   enable_uart=1

      It will affect the CPU performance because it controls the speed of the  L2 cache, and will reduce the analog audio quality (references are here and here respectively)

    For the high clock speed (which will require a fan and heatsink realistically) to get back the CPU perf and audio quality, also add the following to the same file:  force_turbo=1

     

    Option 3. Have a broken serial interface (varying speed) but have Bluetooth capability

        --> Do nothing. This is the default setting

     

    Option 4: Have the serial interface (UART) functioning correctly, also have Bluetooth working but slowly

        -->   Swap the UARTs around. To do this, add the following to /boot/config.txt:   dtoverlay=pi3-miniuart-bt

      and then set the core frequency to a low, fixed value by adding the following to /boot/config.txt: core_freq=250. It will affect the CPU performance. If you want

      higher performance then do not add the core_freq=250 line and instead have the line force_turbo=1 but this requires a fan and heatsink.

     

     

    The serial interface (i.e. UART) can be used for HATs/hardware etc., or can be used with a USB-Serial adapter to access a Linux shell (also known as a console session) using a PC and PuTTY, and it also dumps out startup text during boot. If you've got hardware connected (like Enocean Pi) then you don't want that startup text output during boot or Linux shell access because the hardware will be like "what was that?!"  when it sees it.

    For options 1 or 2 or 4, if you want the console session on the UART (i.e. you don't have hardware connected and just want to connect your USB-Serial to your PC and see the Linux shell), ensure you have the following in the text line within the file /boot/cmdline.txt:

    console=serial0,115200

    That line should be there by default.

    If you have hardware connected that needs the serial port then remove the text console=serial0,115200

     

    Is this understanding correct (looking at the Pi experts to help here like rew to keep me honest..)?

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • robertheinze
    0 robertheinze over 9 years ago in reply to shabaz

    In addition to shabaz explanations there is a "german" FHEMWIKI-instruction based on the experiences I experienced with an EnOceanPI (ttyAMA0) and using Bluetooth (ttySO) together

    Raspberry Pi 3: GPIO-Port Module und Bluetooth – FHEMWiki

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • cstanton
    0 cstanton over 9 years ago in reply to clem57

    When testing the Raspberry Pi 3 before release, this is the behavior the Pi exhibited when the starting .elf file didn't support the Raspberry Pi 3. When I received the necessary files which did, it operated properly.

     

    Almost all boot problems on the Raspberry Pi I find are down to out of date SDCard images or the device not writing to the SDCard properly or the SDCard failing.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 9 years ago in reply to shabaz

    thank you for your very detailed instructions which are highly appreciated. I have put both "dtoverlay=pi3-miniuart-bt" and "enable_uart=1" into /boot/config.txt, and I have specified sudo systemctl disable hciuart. To no avail, regrettably. The EnoceanPi seems to be still unreachable via ser2net. However, my ser2net.conf reads: "7970:raw:0:/dev/ttyAMA0:57600 8DATABITS NONE 1STOPBIT". Might that be incorrect? (Sorry for the potentially stupid question!).

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • shabaz
    0 shabaz over 9 years ago in reply to Former Member

    Hi Adriano,

     

    The pi3-miniuart-bt line and the enable_uart=1 line are not used together as I understand.

    It may be fine, but really they mean different things and I don't know which one overrides.

    It sounds like you don't wish to use Bluetooth, so in that case go with Option 1, and have the

    dtoverlay=pi3-miniuart-bt

    and   sudo systemctl disable hciuart

    in /boot/config.txt

     

    Then, you still need to go into the /boot/cmdline.txt file too, and ensure the text console=serial0,115200 is removed.

    It might say  console=serial1,115200 or something else instead, and if so that needs removing.

     

    This only applies with the latest Raspbian by the way.

     

    Could you try this, and let me know if it works? Unfortunately I have not tested these combinations.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 9 years ago in reply to shabaz

    Wow, I wonder what weird serial I/O adventures are in front of me w.r.t. the Pine A64+.  Allwinner as opposed to Broadcomm but A53-based too.  reading these RPi3 blogs has been interesting, einschließlich der tech-sprechen!

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • shabaz
    0 shabaz over 9 years ago in reply to Former Member

    Hi Richard,

     

    Hopefully no such adventures! It is a unique feature that one of the most important interfaces for hardware interworking and last-resort connectivity into a computer is broken by default.

    The workarounds are all sub-optimal.

    The current Pi has great features, but it is tiresome that such strange decisions are made in each iteration of it.

    Did they have an early field trial with any customer who had hardware interfaced to the Pi using the UART? Possibly not..

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • robertheinze
    0 robertheinze over 9 years ago in reply to shabaz

    Actually there is an overlay called dtoverlay=pi3-disable-bt for disable bluetooth and make ttyAMA0 usable as a HW-UART

     

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • shabaz
    0 shabaz over 9 years ago in reply to robertheinze

    Hi Robert,

     

    You're right, Option 1 can be simplified using that. I have updated the text.

     

    Also to be honest, the more I think about it, the more Option 3 (the "do nothing" option) seems to be very bad.

    I've hit situations where the Pi is misbehaving and I really need a serial (console) connection to inspect what is going on before I do anything else.

    I cannot do that if the console speed is unpredictable.

    it is coming to a point where I will always have to pick option 1,2 or 4 as part of initial configuration of the Pi, because Option 3 is so crippling at

    least for my workflow.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • aagaag
    0 aagaag over 9 years ago in reply to shabaz

    I regret to say that I am still having some trouble. I am probably doing something wrong, but I do not know what. Here is the log:

     

    root@rasp_sportzimmer:/home/pi# systemctl status ser2net -l

    ser2net.service - LSB: Allows network connections to serial ports

       Loaded: loaded (/etc/init.d/ser2net)

       Active: active (running) since Fre 2016-04-29 11:26:11 CEST; 8min ago

      Process: 551 ExecStart=/etc/init.d/ser2net start (code=exited, status=0/SUCCESS)

       CGroup: /system.slice/ser2net.service

               └─631 /usr/sbin/ser2net -c /etc/ser2net.conf -P /run/ser2net.pid

     

    Apr 29 11:26:11 rasp_sportzimmer ser2net[551]: Starting Serial port to network proxy: ser2net.

    Apr 29 11:26:11 rasp_sportzimmer systemd[1]: Started LSB: Allows network connections to serial ports.

    Apr 29 11:28:14 rasp_sportzimmer ser2net[631]: dev read error for port 7970: Resource temporarily unavailable

    Apr 29 11:29:16 rasp_sportzimmer ser2net[631]: dev read error for port 7970: Resource temporarily unavailable

     

    /etc/ser2net.conf:

    7970:raw:0:/dev/ttyAMA0:57600 8DATABITS NONE 1STOPBIT

     

    /boot/config.txt: all commented out except these three lines

    dtparam=audio=on

    gpu_mem=16

    dtoverlay=pi3-miniuart-bt

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
<>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube