کتابخانه LL بخشی از نرم افزار STM32 CUBE MX است که در سطح Low Level ساخته می شود و بر خلاف کتابخانه HAL نیاز به راه اندازی به صورت رجیستری دارد.

بعد از انتشار کتابخانه HAL بسیاری از افراد از این گلایه داشتند که این کتابخانه پردازش را سنگین می‌کند و درون توابع خود به چیزهایی می‌پردازد که برایشان لزومی ندارد. به همین دلیل ST تصمیم گرفت در کنار این کتابخانه، کتابخانه‌ای سبک‌تر به اسم LL[note]Low Layer[/note] ارائه دهد که سطح پایین‌تر از HAL  باشد. این‌گونه دست افراد در برنامه‌نویسی بازتر است. هرچند که خودشان بایست نکات گفته‌شده در دیتاشیت و رفرنس منوال را رعایت کنند.  در پروژه‌های ایجادشده توسط CubeMX ما می‌توانیم صرفاً با اضافه کردن خطی برای #include این کتابخانه، در کنار کتابخانه HAL از توابع LL در قسمت‌هایی که می‌خواهیم، استفاده کنیم. اگر می‌خواهید در لایه بالاتر کد بزنید و البته کد نوشته‌شده را راحت‌تر برای میکرو دیگری از شرکت ST نیز استفاده کنید، بهتر است سراغ HAL بروید. اما اگر سرعت از اهمیت بیشتری برایتان برخوردار است و از شلوغی توابع HAL فراری هستید، بهتر است با LL برنامه خود را توسعه دهید.

اخیرا شرکت ST برای جلب رضایت کاربران و البته رفع برخی از مشکلات عنوان شده اقدام به تهیه بسته نرم افزاری درایور های جدیدی کرده است به نام (LL (Low Level که در حقیقت همان SPL است با کمی تغییرات(نام توابع تقریبا مانند قبل است و فقط اول آنها LL_ اضافه شده است) , که می توان آن را هم در کنار HAL استفاده کرد و هم به صورت تنها . منتهی به دلیل خاص شدن توابع امکان جابجایی آسان کد که در HAL وجود داشت در LL بسیار کمتر شده است.
برای راحتی کاربران ST یک نرم افزار گرافیگی به نام SPL2LL طراحی کرده است که توسط آن کد های قدیمی نوشته شده در SPL به آسانی به LL تبدیل می شوند.