You are here

Jallib 0.6.0 released !

Jallib 0.6.0 is available in download section of the Jallib project site. 

The standard jallib-pack-2.4n-0.6.0 package contains:

  • Tested device files for about 300 PICs
  • About 100 libaries for all kind of functions, like: JAL language extensions, control of PIC peripherals and external devices, communications functions of different types, etc.
  • For each device file and library there is at least one *tested* relatively simple example program to show the use of the library.
  • A few 'projects': more extensive programs than an simple example.
  • Extensive documentation of all libraries in html format, a starters guide and a tutorial in PDF-format.
  • The latest JalV2 compiler (version 2.4n) complete.

There are two additional packages available for download:

  • jallib-0.6.0 contains the same as above package excluding compiler and tutorials.
  • jallib-all_devices-0.6.0 contains all available device files and blink-a-led samples, even for about 80 untested PICs.

Major enhancements in Jallib version 0.6.0 compared to 0.5.0:

  • About 100 more and improved device files, based on MPLAB 8.53,and enhanced documentation.
  • Several new libraries and many improvents in existing libraries.
  • Many more interesting simple and advanced example programs.
  • Upgrade to the latest JalV2 compiler: version JalV2 2.4n.


We recommend to use the latest version 2.4n because it fixes several issues with 2.4m.

Have fun, and inform us about your experiences with Jallib 0.6.0!

The Jallib Team.

List of places with information related to JAL:

Jallib project
Jallib team
Jallib group
JalV2 compiler
JAL users
Jaluino project


Complete Changelog for 0.6.0:



  • Device files
    • Based on MPLAB 8.53.
    • Added many device files, of which more than 100 tested and released.
    • Added aliases for the first of two USARTs to be able to use the current hardware serial libs for the first of these USARTs.
    • Revised memory specifications for _pic_accum and _pic_isr_w for some PICs.
    • Added T0CON_T0xx aliases for timer 0 related fields in OPTION_REG of midrange PICs to be able to use the timer libraries for both midrange and 18F series.
    • Added some extra bitfields to RTC register declarations for convenience.
    • Pseudo variables for port nibbles changed to 'inline' functions/procedures.
    • Revised and added new ADC_group assignments based on MPLAB C18 V3.35 Lite.
    • Fixed errors in declarations of JANSEL aliases for ADC channels.
    • Fixed errors and missing 'pragma fuse_def OSC' declarations of several newer PICs.
    • Added missing comparator disable procedure with several of the newer PICs.
    • Added a section to devicefiles.html with a list of corrections of MPLAB .dev files after install of a new release of MPLAB.
  • Externals
    • Added temperature sensor libraries: mcp3424.jal mcp9800.jal
    • Added library for CANbus mcp2515.jal
    • Added library for Eur/Javi's STERM: lcd_sterm_master.jal
    • Added zero-crossing library: period_skip.jal
    • Added library for 'mac address chip' ee_25aa02e48.jal
    • Added library for small eeprom (also supports i2c mac address chip): eeprom_24lc02.jal
    • Added library for SHT humidity sensor
    • Added mp3 decoder sta015 lib mp3_decoder_sta015.jal
    • Added mp3 decoder vs1053b lib mp3_decoder_vs1053b.jal
    • 23k256 moved "const byte SRAM_23K256_ALWAYS_SET_SPI_MODE = TRUE" from lib to sample files
    • Added lcd_dsm0822a library for this i2c star-burst display.
    • Added 1 microsecond delay in keyboard library to support higher OSC frequencies.
    • Added RC servo library to control up to 24 servos that are the type used in the radio control (RC) hobby.
    • Added i2c RC servo slave library. A slave PIC can control RC servos.
    • Added RTC ISR for TMR3
  • Jal extension
    • pintools.jal: used to map pins with arbitrary numbering scheme, allowing to access pins by numbers in sequence
    • bit_array_1: Allows creation of bit arrays.
  • Peripherals
    • Added CANbus library for 18F devices have 'ECAN': can_legacy.jal
    • Serial_hw libraries support 16 bit baudrate register of eusart.
    • ADC libraries now supports PIC with 28 analog pins. Some Vref setups have been fixed,   callstack usage optimized, Vref- only can now be selected
    • ADC configuration can now be dynamic and eval'ed at runtime when using  "const bit ADC_DYNAMIC = true", allowing to change number of channels, resolution, ...
    • timer0_isr_interval uses T0CON_T0xx to support 16F and 18F chips
    • timer0_poll_interval.jal is a polled version of timer0_isr_interval
    • fix of error recovery bug in i2c_hardware (master)
    • fix of error in data_eeprom_write_dword() (pic_data_eeprom.jal)
    • Added rtc_hardware library supporting the RTCC module of several 18Fxxjxx.
  • Protocols
    • libraries to support CANbus: can_adapter.jal, can_ascii.jal, can_bicolor_leds.jal, canopen.jal
  • Samples
    • Added blink-a-led samples for all new device files (more than 100).
    • Added sample for using the polled variation of the timer0 interval library: 18f4585_tmr0_poll_interval.jal
    • Added CANbus samples: 16f819_canopen_mcp2515_txhb.jal 16f819_mcp2515_can_monitor.jal
    • 16f819_mcp2515_canid4_monitor.jal 18f2585_can_monitor.jal
    • 18f2585_can_serial_adapter.jal 18f2585_can_serial_hw.jal 18f2585_canid4_monitor.jal
    • 18f2585_canid4_serial_adapter.jal 18f4585_canid4_monitor.jal
    • Added sample for 'ethernet mac' chip 16f819_ee25aa02e48_lcd.jal
    • Added sample for writing and verifying 1024 bytes of eeprom with 18f6722
    • Added 2 samples of serial comms with 16F1937 (different libraries and oscillators)
    • Added samples for mp3_decoder_sta015 with SD Card on 18f4620 & 18f452.
    • Added samples for mp3_decoder_sta015 with Hard Disk on 18f4620 & 18f452.
    • Added samples for mp3_decoder_vs1053b with SD Card on 18f4620.
    • Added samples for mp3_decoder_vs1053b with Hard Disk on 18f4620.
    • Added 18f4550 sample using pintools.jal
    • Added samples for new i2c star-burst display library lcd_dsm0822a.
    • Added samples with code from the Jallib Startersguide.
    • Added sample for usage of timer3 module on 18f452, 18f4620 (outputs 1khz square wave)
    • Added static and dynamic ADC setup samples for 18f4550
    • Added sd card sample for 18f4620
    • Added hard disk sample for 18f4620
    • Added fat32 sd card sample for 18f4620
    • Added fat32 hard disk sample for 18f4620
    • Added RC servo samples to control up to 24 RC servos. 16f877a, 18f452, 18f4620
    • Added RC servo I2C master samples. Will control RC slave PIC(s).
    • Added RC servo I2C slave samples. RC slave PIC can be controlled by RC master PIC
    • Added sample for use of new rtc_hardware library with a 18f26j11
    • Added sample for RTC ISR on TMR3 for 18f2620
  • Compiler
    • JalV2 2.4n